About This Manual
About This Manual
What You Need to Know
Manual Organization
Notation
Typographic Conventions
Naming Conventions
Creating GUI Applications with Rogue Wave Views Studio
Introducing the Gadgets Extension of Rogue Wave Views Studio
Loading the GUI Application and GUI Generation Plug-In
The Main Window
Buffer Windows
The Menu Bar
The Action Toolbar
The Editing Modes Toolbar
The Palettes Panel
Gadgets Palette
Menus Palette
Matrix Palette
Miscellaneous Palette
View Rectangles Palette
Gadgets Extension Commands
AddPanel
EditApplication
Generate
GenerateAll
GenerateApplication
GenerateMakeFile
GeneratePanelClass
GeneratePanelSubClass
InspectPanel
KillTestPanels
MakeDefaultApplication
NewApplication
NewGadgetBuffer
NewPanelClass
OpenApplication
RemoveAllAttachments
RemoveAttachments
RemovePanel
RemovePanelClass
SaveApplication
SaveApplicationAs
SelectAttachmentsMode
SelectFocusMode
SelectMatrixMode
SelectMenuMode
ShowAllTestPanels
ShowApplicationInspector
ShowClassPalette
ShowPanelClassInspector
TestApplication
TestDocument
TestPanel
Gadgets Extension Panels
Application Inspector
The Panel Class Inspector
The Panel Instance Inspector
Editing Gadget Panels
Creating a New Panel
Creating Gadget Objects
Inspecting an Object
Testing a Panel
Using Active Mode
Setting the Keyboard Focus in Panels
Using the Attachments Mode
Setting the Guides
Attaching Objects to Guides
Attachment Operations
Editing Menus
Menu Bars
Pop-up Menus
Toolbars
Using Matrices
Setting Up Matrix Items
Extracting Matrix Items
Inspecting Matrix Items
Editing Spin Boxes
Inserting a Spin Box
Setting the Type of Spin Box Item
Editing Applications
The Application Buffer
Application Description File
Other Generated Files
The Application Inspector
The General Page
The Options Page
The Header and Source Pages
The Script Page
The Application Inspector Buttons
Editing an Application
The Panel Class Palette
Panel Classes
The Panel Class Inspector
Panel Instances
Testing an Application
Using the Generated Code
Building the Application
Setting Up the Application Class
Creating the First Panel Class
Creating the Second Panel Class
Generating the C++ Code
FirstPanelClass Header File
FirstPanelClass Source File
MyApplication Header File
MyApplication Source File
Testing the Generated Application
Extending the Generated Code
Defining a Derived Class
Using the Derived Class
Defining Callbacks without Deriving Classes
Customizing the Gadgets Extension of Rogue Wave Views Studio
Configuration Options for the Gadgets Extension
Extending Rogue Wave Views Studio
Extending Rogue Wave Views Studio Components
Defining a New Command
Defining a New Panel
Rogue Wave Views Studio Messages
Defining a New Buffer
Defining a New Editing Mode
The Class IlvStExtension
Integrating your Own Graphic Objects
Defining a New Command to Add an Object
Adding the Include File and Library File of a New Class to the Generated Code
Customizing the Palettes Panel
Defining and Integrating an Inspector Panel
Extending Rogue Wave Views Studio: An Example
Defining a New Buffer Class
Defining a New Command
Defining a New Panel
Providing Container Information
Registering Callbacks
Using Inspector Classes
What Is an Inspector?
Components of an Inspector Panel
Preconditions and Validators
Editors
Defining a New Inspector Panel
Example
Creating the Color Combo Box Inspector Panel
Rogue Wave Views Gadgets
Introducing Rogue Wave Views Gadgets
Gadgets Main Features
Gadgets in a Snapshot
Menus
Common Gadgets
Matrices
Gadgets Libraries
Code Sample
Understanding Gadgets
Gadget Holders
List of Available Gadget Holders
Handling Events
Focus Management
Gadgets Attachments
Common Gadget Properties
Gadget Appearance
Associating a Callback with a Gadget
Localizing a Gadget
Associating a Mnemonic with a Gadget Label
Setting Tooltips
Gadget Resources
Gadgets Look and Feel
Using the Default Look and Feel
Using Several Look and Feel
Dynamic Loading of Look and Feel
Changing the Look and Feel Dynamically
Using the Windows XP Look and Feel
Dialogs
Predefined Dialog Boxes
IlvIMessageDialog
IlvIQuestionDialog
IlvIErrorDialog
IlvIWarner
IlvIInformationDialog
IlvIFileSelector
IlvFileChooser
IlvIPromptString
IlvFontSelector
IlvColorSelector
IlvGradientSelector
Customizing Predefined Dialog Boxes
IlvFileChooser
Creating Your Own Dialog Box
Showing and Hiding Dialog Boxes
Setting a Default Button
Using Common Gadgets
Using IlvArrowButton
Using IlvButton
Displaying a Bitmap in a Button
Displaying the Button Frame
Associating a Mnemonic with a Button
Event Handling and Callbacks
Using IlvComboBox and IlvScrolledComboBox
Setting a Combo Box as Noneditable
Setting and Retrieving Items
Changing or Retrieving the Selection
Using Large Lists
Setting the Number of Visible Items
Localizing Combo Boxes
Event Handling and Callbacks
Using IlvDateField
Formatting a Date
Setting and Retrieving a Date Value
Year 2000 Management
Using IlvFrame
Associating a Mnemonic with a Frame
Using IlvMessageLabel
Associating a Bitmap with a Message Label
Making the Message Label Opaque
Laying Out the Message Label
Localizing a Message Label
Associating a Mnemonic
Using IlvNotebook
Customizing Notebook Tabs
Handling Notebook Pages
Event Handling and Callbacks
Using IlvNumberField
Selecting an Editing Mode
Choosing a Format
Defining a Range of Values
Setting and Retrieving a Value
Specifying the Thousand Separator
Specifying the Decimal Point Character
Event Handling and Callbacks
Using IlvOptionMenu
Setting and Retrieving Items
Changing and Retrieving the Selected Item
Localizing Option Menus
Event Handling and Callbacks
Using IlvPasswordTextField
Using IlvScrollBar
Setting the Scrollbar Values
Setting the Scrollbar Orientation
Event Handling and Callbacks
Using IlvSlider
Setting the Slider Values
Setting the Slider Orientation
Setting the Thumb Orientation
Event Handling and Callbacks
Using IlvSpinBox
Adding and Removing Fields to a Spin Box
Working with Text Fields
Working with Numeric Fields
Event Handling and Callbacks
Using IlvStringList
Manipulating String List Items
Customizing the Appearance of String List Items
Displaying Tooltips
Localizing String List Items
Handling Events and Callbacks
Using IlvText
Setting and Retrieving Text
Event Handling
Using IlvTextField
Aligning Text
Setting and Retrieving Text
Localizing a Text Field
Limiting the Number of Characters
Event Handling and Callbacks
Keyboard Shortcuts
Using IlvToggle
Changing the State and Color of a Toggle Button
Toggle and Radio Button Styles
Displaying a Bitmap on a Toggle Button
Aligning and Positioning the Label
Changing the Size of the State Marker
Localizing a Toggle Button
Associating a Mnemonic with a Toggle Button
Handling Events and Callbacks
Grouping Toggle Buttons in a Selector
Using IlvTreeGadget
Changing the Tree Hierarchy
Navigating Through a Tree Hierarchy
Changing the Characteristic of an Item
Expanding and Collapsing a Gadget Item
Changing the Look of the Tree Gadget Hierarchy
Event Handling and Callbacks
Gadget Items
Introducing Gadget Items
Using Gadget Items
Creating a Gadget Item
Setting a Label
Setting a Picture
Specifying the Layout of a Gadget Item
Nonsensitive Gadget Items
Dynamic Types
Using Palettes with Gadget Items
Drawing a Gadget Item
Gadget Item Holders
Gadget Item Features
Finding Gadget Items
Redrawing Gadget Items
Creating Gadget Items
Editing Gadget Items
Dragging and Dropping Gadget Items
List Gadget Item Holders
Modifying a List
Accessing Items
Sorting a List
Menus, Menu Bars, and Toolbars
Introducing Menus, Menu Bars, and Toolbars
Menus and Menu Items
Using IlvAbstractMenu
Using IlvMenuItem
Pop-up Menus
Aligning Item Labels in a Pop-up Menu
Using Tear-Off Menus
Using the Open Menu Callback
Using Checked Menu Items
Using Stand-alone Menus
Using Tooltips in a Pop-Up Menu
Menu Bars and Toolbars
Using IlvAbstractBar
Using IlvMenuBar and IlvToolBar
Matrices
Introducing Matrices
Using IlvAbstractMatrix
Subclassing IlvAbstractMatrix
Drawing Items Over Multiple Cells
Setting Fixed Rows and Columns
Handling Events
Using IlvMatrix
Handling Columns and Rows
Handling Matrix Items
Handling Events
Using Gadget Items in a Matrix
Using IlvSheet
Using IlvHierarchicalSheet
Changing the Tree Hierarchy
Navigating through a Tree Hierarchy
Changing the Characteristic of a Tree Item
Expanding and Collapsing a Gadget Item
Changing the Look of the Tree Gadget Hierarchy
Event Handling and Callbacks
Panes
Introducing Panes
Creating Panes
Creating a Graphic Pane
Creating a View Pane
Showing or Hiding a Pane
Adding Panes to Paned Containers
Creating a Paned Container
Modifying the Layout of a Paned Container
Retrieving Panes
Encapsulating a Paned Container in a View Pane
Resizing Panes
Setting the Resize Mode and the Minimum Size of a Pane
Resizing Panes With Sliders
Docking Panes and Containers
Introducing Docking Panes and Dockable Containers
Creating Docking Panes
Creating Orthogonal Dockable Containers
Controlling Docking Operations
Connecting an Instance of the IlvDockable Class to a Pane
Docking and Undocking a Pane
Filtering Docking Operations
Using Docking Bars
Using the IlvAbstractBarPane Class
Customizing Docking Bars
Building a Standard Application With Docking Panes
Defining a Standard Layout
Using the IlvDockableMainWindow Class
View Frames
Introducing View Frames
Creating a Desktop with View Frames
Creating a Desktop
Creating View Frames
Managing View Frames
Creating a Client View
Changing the Title Bar
Changing the View Frame Menu
Minimizing, Maximizing, and Restoring View Frames
Normal View Frames
Minimized View Frames
Maximized View Frames
Closing View Frames
Changing the Current View Frame
Customizing the Look and Feel
Understanding the Architecture
IlvLookFeelHandler
IlvObjectLFHandler
Class Diagram
Making a User-Defined Component Look-and-Feel Dependant
Creating a New Component
Defining the Object Look-and-Feel Handler API
Subclassing the Object Look-and-Feel Handler
Installing the Object Look-and-Feel Handlers
Changing the Look and Feel of an Existing Component
Subclassing the Component Object Look-and-Feel Handler
Replacing an Object Look-and-Feel Handler
Creating a New Look-and-Feel Handler
Registering a New Look-and-Feel Handler
Registering Object Look-and-Feel Handlers Into a New Look-and-Feel Handler
Rogue Wave Views Application Framework
Introducing Rogue Wave Views Application Framework
What is Application Framework
The Document/View Architecture
Using the Application Framework Editor
Starting Up the Application Framework Editor
Application Framework Editor Main Window
Components Palette
Workspace
Creating a New Application
Selecting a Document Type
Creating and Configuring an Options File (.odv file)
Setting Application Parameters
Adding Menu Items
Adding Toolbar Items
Setting Document Parameters
Setting General Document Parameters
Setting Parameters for a Selected Document
Setting Window Parameters
Setting Toolbar Parameters for a Document Type
Setting Action Parameters
Action Definition
Creating an Action
Setting Popup Menu Parameters
Popup Definition
Creating a Popup Menu
Adding a Popup Item
Adding a New Popup Submenu
Setting Dialog Parameters
Dialog Definition
Creating a Dialog Box
Setting Data Parameters
Data Definition
Generating Parameters
Parameters Command
GUI Action Summary
Implementing an Application
How Application Framework Functions
Option Files
Main File
Implementation of a Document Class
New Document
Serialization
Commands
Undo / Redo / Repeat Actions
Reflecting Changes Made In the Data to Associated Views
Implementation of a Document View Class
Interactions
Application Framework Interfaces
The Interface Mechanism
Declaring an Interface
Naming Convention for Macros
Actions
Activating an Action Event
Processing an Action Event
Editing States
Creating a Simple Application
Creating the First Panel
Creating the Second Panel
States Panels
Editing the Show State
Chaining States
Changing the Label and the Callback of the Show Button
Creating a Substate: the Edit State
The State File
About This Manual
The State File