gridchem best practices. outline separate the gui and the model common look and feel help buttons...

9
GridChem Best Practices

Upload: frederica-shaw

Post on 14-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

GridChem Best Practices

Page 2: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Outline

• Separate the GUI and the model • Common look and feel• Help buttons• Preferences

Page 3: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

MVC Pattern

• Design GUIs using the Model-Viewer-Controller design pattern

• This means separate the GUI classes from the worker classes within a package– Model manages data (business logic)– Viewer handles display of data– Controller handles interaction b/w model and

viewer.

Page 4: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Common Look and Feel

• Create each GUI with the same look and feel.– Tool tips for buttons– Right click menus for text boxes, lists, and trees– Consistent button position– Common spacing and boarders– Consistent use of color, images, and icons.– Consistent menu placement and terminology.

Page 5: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Help Buttons

• Need to be added to every panel.– Will open help panel at the specific place in the

help corresponding to what the user is doing on that panel at that time.

– Represented by a button icon showing a round circle with question mark in it.

– Button should be placed a the bottom left corner of each panel.

– If right click menu or window menu exist on the panel, then help sould be it’s own menu item.

Page 6: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Preferences

• Needs a complete overhaul.• Small pref file should be written at shutdown

or logout.• When saved, pref file should exist in user

data directory– $HOME/gridchem/data/<username>/user.pref– Write as xml-based file– backed by Hashtable.

Page 7: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Preferences

• Prefs should be named and grouped by the panel with which they’re associated.– login.username– gridchem.prompt_at_close– submitjob.default_editor– etc…

Page 8: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Preferences

• Each Controller class should read these prefs in at initialization and update them as needed.

• If we provide a pref window, then it needs to be exhaustive and provide settings for every pref for every gui– use a tree and a editor design like the metadata

editor

Page 9: GridChem Best Practices. Outline Separate the GUI and the model Common look and feel Help buttons Preferences

Job Submission GUI & Workflow

Sudhakar Pamidighantam

Scott Brozell