mailRe: GUI status: Prettifying the GUI, release show-stoppers, the sequence data problem, etc.


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

Header


Content

Posted by Michael Bieri on February 08, 2010 - 00:52:
Hi Edward

I am at the Lorne conference and will have a look at your suggestions more 
closely when I am back.Nevertheless, i hope to have sometime to work on he 
noe code to implement it as the others.

Cheers
Michael

-------- Original-Nachricht --------
Datum: Sat, 6 Feb 2010 14:58:45 +0100
Von: "Edward d\'Auvergne" <edward@xxxxxxxxxxxxx>
An: relax-devel@xxxxxxx, Michael Bieri <michael.bieri@xxxxxx>, Gary 
Thompson <garyt@xxxxxxxxxxxxxxx>
Betreff: GUI status: Prettifying the GUI, release show-stoppers, the 
sequence         data problem, etc.

Hi Michael,

I've finished playing around prettifying the GUI.  Most of this was
done in my spare time - now I will concentrate on fixing the last bits
of Gary's multi-processor code and the BMRB integration and the
merging of these 2 branches (these features can then be integrated
into the GUI).

The GUI is now more polished like other high quality software programs
- with splash screen, set up, execution, about screens, iconified menu
entries with separators, shortcut keys, open-save-save as, STDOUT
printouts, etc.  The core of your code has been segregated into
modules, except for the NOE which I'm leaving to you as a coding
exercise.  Once the NOE code has been spun out, making radical changes
to the GUI will be trivial!

I have removed the duplicated code from the sample scripts.  The
status as shown by the relax controller needs discussed as to exactly
how it will be shown.  For the core part of this, I am leaning towards
something called a singleton - a single data container that everything
can access from anywhere (i.e. GUI, web UI, etc.).  The user functions
then place their name in the container as they are called, and then
the controller reads this and displays it as a status.  The MC code
places the MC sim number in there, and the calculation/grid
search/minimisation code places the spin number in there, and again
the controller reads this and displays it.

As for the current status, we have the following show-stoppers to
resolve before a release:

* A major GUI problem with inputting sequence data into the R1, R2,
and NOE analyses.  This is currently taken from the PDB file, but this
is not sufficient.  The current set up excludes the RNA/DNA people,
and the organic chemists!  We need to have the full functionality of
the following 2 user functions:

structure.load_spins()
sequence.read()

How do I do a protein analysis using backbone NH, side chain NH,
backbone Ca, and Me group data simultaneously?  Or a model-free
analysis on the natural abundance 13C relaxation of Taxol?

* The unresolved spins has this problem as well, and this must be
resolved.  How do I specify that the Trp indole NH is unresolved in a
protein?  Or that carbon number 28 (C28) of a small molecule is
overlapped with C11 and both should be skipped?

* The relax controller is not 100% functional, and must have the log
window contents limited to 10,000 or 100,000 lines.

* The model-free model selection method selection GUI element in the
automatic model-free window must go.

* It would be very useful to have in the repository all the files
required to recreate the artwork in the GUI.  For example to easily
update the copyright notice on the splash screen and 'about gui'
dialog.  Or to touch up or add to the R1 and R2 pictures.

* The NOE picture is difficult!  It doesn't really demonstrate the
concept.  Maybe a picture of a structural ensemble with mobile ends,
and underneath the 2D NOE plot could be used?

* Not all menu entries are functional!  I would suggest shifting the
extras menu entries into help, and use wx HTML dialogs to display this
information.  'File -> New' should reset the relax data store and
synchronise the GUI - i.e. it should just blank everything.  'File ->
New analysis' could be added later (NOE must be spun out first) and
the analysis selection window integrated as a type of Wizard (see the
wx demo in wxPython/demo/Wizard.py).  All the settings menus are
broken.  These are badly designed anyway and I don't think they should
exist.

* Can gui_bieri/res/easygui.py be deleted?

*  There are other issues that can be resolved later, after the first
stable release.  For example if I have relaxation data at 500, 600 and
800 MHz, but the 500 MHz NOE was not measured?


Now I'll pass the development on to you.  I may still do a few things
here and there, but it's up to you to fix the last GUI issues.  I will
help of course, especially with the discussion of design and
implementation, but patches need to be sent.  Once you have patches
and commit messages that I can apply and cut and paste - importantly
with zero modifications - you will be granted commit access to the
repository (after a private vote among the current developers).
relaxGUI v1.00 is coming close to being one permanent and very
powerful faces of relax!

Cheers,

Edward



P. S.  An idea for the next version would be to have each analysis
create a data pipe just for setting up.  The sequence data (mol, res,
and spin) can be loaded from a PDB file or a text file and shown using
a tree view (see the demos Treebook.py, TreeCtrl.py, TreeListCtrl.py).
 Clicking on each element then displays the data in the main frame.
Buttons could be used instead of all the current data input methods.
Then user functions are called by the user to update the data therein
- i.e. setting parameter values, deselecting spins by file or by hand,
loading data, etc.  'Execute relax' will then tell the user what they
have forgotten to do.  Once all data is set up, the pipe is passed
into the automatic analysis code and that code then worries about the
rest.  We could also have windows for each analysis, windows for
displaying the structure and the results superimposed onto the
structure, windows for the 3D canvas of the custom analysis, etc.  It
will be a long road to having the full functionality as the
prompt/script UIs, but in the end it should be amazing!

-- 
Michael Bieri
Kardiologie, HTx
Inselspital, Pathologie L621
Murtenstr. 31, CH-3010 Bern
Switzerland

Tel.: +41 31 632 13 82
Fax: +41 31 632 88 37

michael.bieri@xxxxxx
www.cvrc.dkf.unibe.ch
www.insel.ch


GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01



Related Messages


Powered by MHonArc, Updated Tue Feb 09 16:00:29 2010