OpenWindows Developer's Guide: OLIT Code Generator Programmer's Guide
  Search only this book
Download this book in PDF

............................Contents


Preface
xiii

1. Introduction
1
...Devguide and Golit 1
...Names and Terminology 2
...Installing Devguide and Golit 2
...How you interact with Devguide and Golit 2
...How Golit and libgolit Work 3

2. Getting Started with Golit
5
...Summary of How to Create an Application with Golit 5
...Designing an Interface in Devguide 6
......Configuring Devguide to Generate GIL files for Golit 6
......Using Connections to Handle Events 7
...Generating User Interface Code from GIL Files 8
......Generating Code from the Command Line 8
......Generating Code with the Code Generator Tool 8
......Golit Generated Files 11
...Compiling and Testing Interface Code 12
...Integrating Application Code with Golit Interface Code 13
......Setting Widget Resources 13
...Regenerating Code for a Modified Interface 14
...A Simple Example 15

3. Tutorial
21
...Building an Interface 23
......Creating a Directory for GIL and Project Files 23
...Creating the Base Window Interface 24
......Creating the Base Window 24
......Adding a Control Area to the Base Window 25
......Adding Buttons to the top_controls Control Area 25
......Adding a Text Pane to the Tutorial Base Window 27
......Creating Layered Control Areas 28
......Adding Controls to the Layered Control Areas 29
......Saving the Tutorial Base Window Interface 31
......Creating a Menu 31
...Creating the Pop-up Window Interface 32
......Creating the Pop-up Window 33
......Adding a Control Area to the Pop-up Window 34
......Adding a Slider to the Control Area 34
......Saving the Pop-up Window Interface 35
......Creating and Saving a Project 35
...Setting up Connections 35
......Creating a Connection to Display the Format Menu 36
......Creating Connections to Switch between Layered Control
........Areas 37
......Creating a Connection to Display the Text Size Pop-up Window
.......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
......Creating a Connection to Set the Text Size with the Slider. 38
......Creating Connections to Set the Font and Style 39
...Experimenting with Test Mode 39
...Generating Interface Source Code 40
...Modifying the Golit-Generated Code 41
......Creating a Header File 41
......Customizing the tutorial.c File 41
......Customizing the tutorial_main_stubs.c File 43
......Customizing the tutorial_popup_stubs.c File 45
...Compiling and Running the Tutorial Application 46

4. Golit Functionality in Detail
47
...Designing Golit Interfaces in Devguide 47
......Handling Events With Connections 47
......Setting up Create Procs to Conduct Your Own Widget Creation
.......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
...Using Golit to Generate Code 50
......GolitCommand-Line Options 51
...Files Generated for a Single GIL File 52
......_ui.c File 54
......_ui.h File 56
...... _stubs.c 57
......Makefile 58
...Files Generated for a Project 59
......<project_name>.c File 59
......<project_name>.h File 59
......<project_name>.make File 60
...Regenerating Code for a Modified Interface 60
......Regenerating Code for an Individual GIL File 60
......Regenerating Code for a Project 60
......Removing Obsolete Callbacks 61
...Integrating Your Application Code with the Interface Code 61
......Changing Widget Resources 62
......Instantiating Parts of the Widget Tree with libgolit 66
......Using Create Procs to Provide Your Own Widget Creation 70
...Compiling 77

5. Advanced Topics
79
...Specifying an Icon for an Application 79
...Making a Text Field Read-Only 81
...Specifying a Label Image for a Button 81

6. Internationalization
83
...Overview of Internationalization Concepts 83
......Levels of Internationalization 83
......Golit Support for Internationalization 85
...Generating Code for an Internationalized Application 85
......Using Golit Command Line Options 85
......Generated Resource Files 85
...Level-3 Resources 86
......Common Resources 86
......PopupWindowShell Resources 86
......TextEdit Resources 87
......Scrollbar Resources 87
...Using XFILESEARCHPATH 88

A. Files Shipped with Golit
89
......The Bin Subdirectory 89
......The Demo Subdirectory 89
......The Include Subdirectory 89
......The Lib Subdirectory 90
......The Man Subdirectory 90
......The Src Subdirectory 90
......The Doc Subdirectory 90

B. Unsupported Devguide Features
91
...Bold Labels 91
...Help 92
...Connections Between Base Windows 92
...Miscellaneous Unsupported GUI Elements 92

C. libgolit Library Function Reference
95
...GolitNameToWidget() 95
...GolitFetchLastWidgetID() 95
...GolitMergeArgLists() 96
...GolitFetchWidget() 96
...GolitFetchWidgetUnmanaged() 97
...GolitFetchChildren() 98
...GolitFetchChildrenUnmanaged() 99
...GolitFetchPopups() 100
...GolitFetchPopupsUnmanaged() 100
...GolitFetchWidgetHier() 101
...GolitFetchWidgetHierUnmanaged() 102
...GolitFetchShellHier() 103

Index
105