- 1. 序言
- 2. 安装
- 2.1. 依赖关系
- 2.2. Unix 和 Linux
- 2.3. Microsoft Windows
- 3. 基础
- 3.1. 简单的例子
- 3.2. 头文件和链接
- 3.3. 组件
- 3.4. 信号
- 3.5. Glib::ustring
- 3.6. 中间类型
- 3.7. 混合使用 C 和 C++ API
- 3.8. 用 gtkmm 写 Hello World
- 4. Changes in gtkmm 3
- 5. 按钮
- 5.1. Button (按钮)
- 5.2. ToggleButton (开关按钮)
- 5.3. CheckButton (多选按钮)
- 5.4. RadioButton (单选按钮)
- 6. Range 组件
- 6.1. 滚动条组件 (Scrollbar)
- 6.2. 比例组件 (Scale)
- 6.3. 示例
- 7. Miscellaneous Widgets
- 7.1. Label
- 7.2. Entry
- 7.3. SpinButton
- 7.4. ProgressBar
- 7.5. InfoBar
- 7.6. Tooltips
- 8. Container Widgets
- 8.1. Single-item Containers
- 8.2. Multiple-item widgets
- 9. The TreeView widget
- 9.1. The Model
- 9.2. The View
- 9.3. Iterating over Model Rows
- 9.4. The Selection
- 9.5. Sorting
- 9.6. Drag and Drop
- 9.7. Popup Context Menu
- 9.8. Examples
- 10. Combo Boxes
- 10.1. The model
- 10.2. The chosen item
- 10.3. Responding to changes
- 10.4. Full Example
- 10.5. Simple Text Example
- 10.6. ComboBox with an Entry
- 11. TextView
- 11.1. The Buffer
- 11.2. Widgets and ChildAnchors
- 11.3. Examples
- 12. Menus and Toolbars
- 12.1. Actions
- 12.2. UIManager
- 12.3. Popup Menus
- 12.4. Examples
- 13. ToolPalette
- 13.1. Drag and Drop
- 13.2. ToolPalette Example
- 14. Adjustments
- 14.1. Creating an Adjustment
- 14.2. Using Adjustments the Easy Way
- 14.3. Adjustment Internals
- 15. Widgets Without X-Windows
- 15.1. EventBox
- 16. Dialogs
- 16.1. MessageDialog
- 16.2. FileChooserDialog
- 16.3. ColorChooserDialog
- 16.4. FontChooserDialog
- 16.5. Non-modal AboutDialog
- 17. The Drawing Area Widget
- 17.1. The Cairo Drawing Model
- 17.2. Drawing Straight Lines
- 17.3. Drawing Curved Lines
- 17.4. Drawing Arcs and Circles
- 17.5. Drawing Text
- 17.6. Drawing Images
- 17.7. Example Application: Creating a Clock with Cairo
- 18. Drag and Drop
- 18.1. Sources and Destinations
- 18.2. 方法
- 18.3. 信号
- 18.4. DragContext
- 18.5. 示例
- 19. The Clipboard
- 20. Printing
- 20.1. PrintOperation
- 20.2. Page setup
- 20.3. Rendering text
- 20.4. Asynchronous operations
- 20.5. Export to PDF
- 20.6. Extending the print dialog
- 20.7. Preview
- 20.8. 示例
- 21. Recently Used Documents
- 21.1. RecentManager
- 21.2. RecentChooser
- 22. Plugs and Sockets
- 22.1. Overview
- 22.2. Plugs and Sockets Example
- 23. Keyboard Events
- 23.1. Overview
- 23.2. Event Propagation
- 24. Timeouts, I/O and Idle Functions
- 24.1. Timeouts
- 24.2. Monitoring I/O
- 24.3. Idle Functions
- 25. Memory management
- 25.1. 组件
- 25.2. Shared resources
- 26. Glade and Gtk::Builder
- 26.1. Loading the .glade file
- 26.2. Accessing widgets
- 26.3. Using derived widgets
- 27. Internationalization and Localization
- 27.1. Preparing your project
- 27.2. Marking strings for translation
- 27.3. Expecting UTF8
- 27.4. Pitfalls
- 27.5. Getting help with translations
- 28. Custom Widgets
- 28.1. Custom Containers
- 28.2. Custom Widgets
- 29. Multi-threaded programs
- 29.1. The constraints
- 29.2. Using Glib::Dispatcher
- 29.3. 示例
- 30. Recommended Techniques
- 30.1. Application Lifetime
- 30.2. Using a gtkmm widget
- 31. Contributing
- A. The RefPtr smartpointer
- A.1. Copying
- A.2. Dereferencing
- A.3. Casting
- A.4. Checking for null
- A.5. Constness
- B. 信号
- C. Creating your own signals
- C.1. 示例
- D. Comparison with other signalling systems
- E. gtkmm and Win32
- F. Working with gtkmm's Source Code
- G. Wrapping C Libraries with gmmproc
- G.1. The build structure
- G.2. Generating the .defs files.
- G.3. The .hg and .ccg files
- G.4. Hand-coded source files
- G.5. Initialization
- G.6. Problems in the C API.
- G.7. Documentation