1   
  2   
  3   
  4   
  5   
  6   
  7   
  8   
  9   
 10   
 11   
 12   
 13   
 14   
 15   
 16   
 17   
 18   
 19   
 20   
 21   
 22   
 23   
 24  """The results user function GUI elements.""" 
 25   
 26   
 27  from os import sep 
 28  import wx 
 29   
 30   
 31  from base import UF_base, UF_page 
 32  from gui.misc import gui_to_bool, gui_to_float, gui_to_int, gui_to_str, int_to_gui, str_to_gui 
 33   
 34   
 35   
 37      """The container class for holding all GUI elements.""" 
 38   
 45   
 46   
 53   
 54   
  61   
 62   
 63   
 64 -class Display_page(UF_page): 
  65      """The results.display() user function page.""" 
 66   
 67       
 68      uf_path = ['results', 'display'] 
 69   
 70 -    def add_contents(self, sizer): 
  71          """Add the specific GUI elements. 
 72   
 73          @param sizer:   A sizer object. 
 74          @type sizer:    wx.Sizer instance 
 75          """ 
  76   
 77   
 78 -    def on_execute(self): 
  79          """Execute the user function.""" 
 80   
 81           
 82          self.execute('results.display') 
   83   
 84   
 85   
 86 -class Read_page(UF_page): 
  87      """The results.read() user function page.""" 
 88   
 89       
 90      uf_path = ['results', 'read'] 
 91   
 92 -    def add_contents(self, sizer): 
  93          """Add the specific GUI elements. 
 94   
 95          @param sizer:   A sizer object. 
 96          @type sizer:    wx.Sizer instance 
 97          """ 
 98   
 99           
100          self.file = self.file_selection(sizer, "The results file:", message="Results file selection", wildcard='relax results files (*.bz2)|*.bz2|relax results files (*.gz)|*.gz|relax results files (*.*)|*.*', style=wx.FD_OPEN, tooltip=self.uf._doc_args_dict['file']) 
 101   
102   
103 -    def on_execute(self): 
 104          """Execute the user function.""" 
105   
106           
107          file = gui_to_str(self.file.GetValue()) 
108   
109           
110          if not file: 
111              return 
112   
113           
114          self.execute('results.read', file=file) 
  115   
116   
117   
118 -class Write_page(UF_page): 
 119      """The results.write() user function page.""" 
120   
121       
122      height_desc = 400 
123      uf_path = ['results', 'write'] 
124   
125 -    def add_contents(self, sizer): 
 126          """Add the specific GUI elements. 
127   
128          @param sizer:   A sizer object. 
129          @type sizer:    wx.Sizer instance 
130          """ 
131   
132           
133          self.file = self.file_selection(sizer, "The results file:", message="Results file selection", wildcard='relax results files (*.bz2)|*.bz2|relax results files (*.gz)|*.gz|relax results files (*.*)|*.*', style=wx.FD_SAVE, tooltip=self.uf._doc_args_dict['file']) 
134   
135           
136          self.force = self.boolean_selector(sizer, "Force flag:", tooltip=self.uf._doc_args_dict['force']) 
137   
138           
139          self.compress_type = self.combo_box(sizer, "The compression type:", ["0:  No compression.", "1:  Bzip2 compression.", "2:  Gzip compression."], tooltip=self.uf._doc_args_dict['compress_type'], read_only=True) 
140          self.compress_type.SetSelection(1) 
 141   
142   
143 -    def on_execute(self): 
 144          """Execute the user function.""" 
145   
146           
147          file = gui_to_str(self.file.GetSelection()) 
148   
149           
150          if not file: 
151              return 
152   
153           
154          compress_type = gui_to_int(self.compress_type.GetValue()) 
155          force = gui_to_bool(self.force.GetValue()) 
156   
157           
158          self.execute('results.write', file=file, force=force, compress_type=compress_type) 
  159