GUIFramework (GFW) is the basic module for developing Swing GUIs at SLAC.
Requirements TO-DO
Developer's Guide
Abstract
This guide describes in detail how to use GFW in a Swing application. In general, you create your own Swing components (either programmatically, or with a GUI builder) and add them to the appropriate GFW frame.
Overview
We recommend the following steps:
- #Check out GFW from CVS into Eclipse.
- #Read and run the example code.
- #Create custom components for the desired GFW frame
- #Write code that adds custom components to GFW.
- #Add event listeners to the appropriate widgets.
- #Test the application.
- #Optional features.
Check out GFW from CVS into Eclipse
GFW is located in $CVSROOT/physics/GUIFramework
Read and run the example code
An example can be found in the class
edu.stanford.slac.gfw.example.GfwExample
When running the example, please observe
- the different GFW frames
- the various areas in which the custom components end up
- how the GUI behaves when it is resized
Create custom components for the desired GFW frame
For a quick development (e.g. GUI mock ups), we recommend the Netbeans GUI Builder.
Write code that adds custom components to GFW
- Instantiate the custom components.
- Create an appropriate GFW frame and an instance of BasicFrameController
final BasicFrame myFrame = new BasicFrame("My Frame"); //'final', because it's used later in an anonymous class BasicFrameController bfc = new BasicFrameController(myFrame);
- Using the BasicFrameController instance, add custom components to various areas of the GFW frame, such as
- Title Bar
bfc.addToTitleBar(myComponent);
- Tab 1
bfc.addTopTab1(myComponent);
- Tab 2
bfc.addTopTab2(myComponent);
- New Tab
bfc.addTopTab(myComponent, "My Label");
- New Tab
* bfc.addToBottomScrollPane(myComponent);
- Display the GFW frame
SwingUtilities.invokeLater(new Runnable() { public void run() { myFrame.setVisible(true); } });