mailr15717 - /1.3/gui/user_functions/structure.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on April 16, 2012 - 00:12:
Author: bugman
Date: Mon Apr 16 00:12:23 2012
New Revision: 15717

URL: http://svn.gna.org/viewcvs/relax?rev=15717&view=rev
Log:
Created the GUI front end to the structure.read_xyz user function.


Modified:
    1.3/gui/user_functions/structure.py

Modified: 1.3/gui/user_functions/structure.py
URL: 
http://svn.gna.org/viewcvs/relax/1.3/gui/user_functions/structure.py?rev=15717&r1=15716&r2=15717&view=diff
==============================================================================
--- 1.3/gui/user_functions/structure.py (original)
+++ 1.3/gui/user_functions/structure.py Mon Apr 16 00:12:23 2012
@@ -86,6 +86,14 @@
 
         # Create and execute the wizard.
         wizard = self.create_wizard(size_x=800, size_y=600, 
name='structure.read_pdb', uf_page=Read_pdb_page)
+        wizard.run()
+
+
+    def read_xyz(self):
+        """The structure.read_xyz user function."""
+
+        # Create and execute the wizard.
+        wizard = self.create_wizard(size_x=800, size_y=600, 
name='structure.read_xyz', uf_page=Read_xyz_page)
         wizard.run()
 
 
@@ -336,6 +344,51 @@
 
 
 
+class Read_xyz_page(UF_page):
+    """The structure.read_xyz() user function page."""
+
+    # Some class variables.
+    #image_path = WIZARD_IMAGE_PATH + sep + 'structure' + sep + 
'read_xyz.png'
+    uf_path = ['structure', 'read_xyz']
+
+    def add_contents(self, sizer):
+        """Add the structure specific GUI elements.
+
+        @param sizer:   A sizer object.
+        @type sizer:    wx.Sizer instance
+        """
+
+        # Add a file selection.
+        self.file = self.file_selection(sizer, "The XYZ file:", message="XYZ 
file selection", wildcard="XYZ files (*.xyz)|*.xyz;*.XYZ", style=wx.FD_OPEN, 
tooltip=self.uf._doc_args_dict['file'])
+
+        # The read_mol arg.
+        self.read_mol = self.input_field(sizer, "Read molecule number:", 
tooltip=self.uf._doc_args_dict['read_mol'])
+
+        # The set_mol_name arg.
+        self.set_mol_name = self.input_field(sizer, "Set the molecule 
name:", tooltip=self.uf._doc_args_dict['set_mol_name'])
+
+        # The read_model arg.
+        self.read_model = self.input_field(sizer, "Read model number:", 
tooltip=self.uf._doc_args_dict['read_model'])
+
+        # The set_model_num arg.
+        self.set_model_num = self.input_field(sizer, "Set the model 
number:", tooltip=self.uf._doc_args_dict['set_model_num'])
+
+
+    def on_execute(self):
+        """Execute the user function."""
+
+        # The args.
+        file = gui_to_str(self.file.GetValue())
+        read_mol = gui_to_int_or_list(self.read_mol.GetValue())
+        set_mol_name = gui_to_str_or_list(self.set_mol_name.GetValue())
+        read_model = gui_to_int_or_list(self.read_model.GetValue())
+        set_model_num = gui_to_int_or_list(self.set_model_num.GetValue())
+
+        # Execute the user function.
+        self.execute('structure.read_xyz', file=file, read_mol=read_mol, 
set_mol_name=set_mol_name, read_model=read_model, set_model_num=set_model_num)
+
+
+
 class Write_pdb_page(UF_page):
     """The structure.write_pdb() user function page."""
 




Related Messages


Powered by MHonArc, Updated Mon Apr 16 00:20:02 2012