前言
第1章 UNIX經驗
1.1 GNOME是什么
1.2 工具
1.2.1 獲得方法
1.2.2 編輯器、編譯器和調試器
1.2.3 Autoconf和Automake
1.2.4 Libtool
1.2.5 國際化
1.2.6 CORBA
1.3 X Window系統(tǒng)
1.3.1 系統(tǒng)
1.3.2 客戶端和服務器
1.3.3 X的服務和延展
1.3.4 事件隊列
1.3.5 X資源
1.3.6 圖形
第2章 GTK+/GNOME系統(tǒng)
2.1 GLib
2.1.1 簡單的數據類型
2.1.2 名稱空間
2.1.3 登錄
2.1.4 容器
2.1.5 其他工具
2.2 GDK
2.2.1 GTK+連接
2.2.2 空洞的軟件包
2.2.3 GDK事件
2.2.4 繪圖的基本要素
2.2.5 參考計數
2.3 GTK+
2.3.1 小控件
2.3.2 GTK+鍵入系統(tǒng)
2.3.3 對象類
2.3.4 對象屬性
2.3.5 信號
2.4 GNOME
2.4.1 核心庫
2.4.2 圖形庫
2.4.3 組件
2.4.4 Gnome-xml
第3章 GNOME構建環(huán)境
3.1 配置腳本
3.1.1 運行configure命令
3.1.2 configure腳本內部結構
3.1.3 Makefile變量替換
3.2 創(chuàng)建自己的配置
3.2.1 autoconf系統(tǒng)
3.2.2 配置頭文件
3.2.3 檢查工具
3.2.4 檢查頭文件
3.2.5 自定義檢查
3.2.6 輔助工具
3.3 生成makefile
3.3.1 GNU makefile規(guī)范
3.3.2 使用automake工具
3.3.3 Automake變量
3.3.4 條件編譯
3.3.5 削減一個分布
3.4 處理庫
3.4.1 Libtool支持
3.4.2 libtool化
3.4.3 GRUMPY實例
3.4.4 顯示結果
3.4.5 版本號參考
3.5 添加GNOME
3.5.1 GNOME宏
3.5.2 gnome-config工具
3.5.3 GNOME Makefile變量
3.5.4 autogen.sh腳本
3.5.5 Grumpy GNOME實例
第4章 國際化
4.1 國際化怎樣工作
4.2 準備源文件
4.3 設置環(huán)境
4.4 創(chuàng)建翻譯文件
4.5 升級翻譯文件
4.6 集成到GNOME中
第5章 GNOME應用程序
5.1 頭文件
5.2 GnomeApp小控件
5.3 主循環(huán)
5.4 命令行選項
5.4.1 popt庫
5.4.2 增加命令行選項
5.5 存儲選項
5.6 GNOME桌面文件
第6章 菜單和工具欄
6.1 GTK+菜單系統(tǒng)
6.1.1 GTK+菜單
6.1.2 GtkMenuItem窗口
6.1.3 GtkMenuBar和GtkMenu
6.2 GNOME菜單系統(tǒng)
6.2.1 GnomeUIInfo結構
6.2.2 菜單項目類型
6.2.3 菜單中的圖形
6.2.4 菜單回調函數
6.2.5 菜單宏
6.2.6 菜單數組實例
6.3 GNOME菜單API
6.3.1 創(chuàng)建菜單
6.3.2 創(chuàng)建工具欄
6.4 彈出式菜單
6.4.1 單擊后彈出
6.4.2 在事件中彈出
6.5 狀態(tài)欄
6.5.1 GnomeAppBar與GtkStatusbar
6.5.2 創(chuàng)建GnomeAppBar窗口部件
6.5.3 設置消息
6.5.4 更新進度條
第7章 對話框
7.1 消息對話框
7.1.1 信息框
7.1.2 問題框
7.1.3 消息框
7.1.4 GnomeApp消息
7.2 GnomeDialog控件
7.2.1 創(chuàng)建GnomeDialog控件
7.2.2 運行對話框
7.2.3 對話框屬性
7.2.4 關閉對話框
7.3 About對話框
7.4 屬性框
7.4.1 創(chuàng)建屬性框
7.4.2 屬性框信號
第8章 GNOME多文檔界面
8.1 GNOME系統(tǒng)中的MDI
8.1.1 Gnome MDI對象
8.1.2 MDI樣式
8.1.3 菜單模板
8.1.4 轉換
8.1.5 注冊
8.2 GnomeMDI的子對象
8.2.1 子對象
8.2.2 GnomeMDI子對象的回復
8.2.3 使用一般子對象
8.2.4 通過反饋函數創(chuàng)建菜單
8.3 MDI信號
8.3.1 添加和刪除信號
8.3.2 改變信號
8.4 MDI應用程序的示例
第9章 會話管理
9.1 GnomeClient
9.2 會話指令
9.3 會話信號
9.4 在應用程序中加入會話管理
第10章 圖形
10.1 X Window系統(tǒng)中的圖形
10.1.1 幀緩沖區(qū)
10.1.2 顏色表
10.1.3 視件
10.1.4 可繪區(qū)
10.1.5 圖像
10.2 GDK封裝
10.2.1 簡單API
10.2.2 在GDK中使用顏色
10.3 GdkRGB
10.3.1 RGB緩沖區(qū)
10.3.2 繪圖函數
10.3.3 顏色管理
10.4 Libart
10.4.1 向量通道
10.4.2 貝濟埃通道
10.4.3 分類向量通道
10.4.4 微平鋪數組
10.4.5 仿射變換
10.4.6 像素緩沖區(qū)
10.5 Gdk-pixbuf
10.5.1 創(chuàng)建
10.5.2 繪制
10.5.3 縮放
10.5.4 分段加載
10.5.5 自動配置支持
10.5 Gdk-pixbuf應用程序實例
第11章 GNOME Canvas工具
11.1 概述
11.1.1 雙緩沖圖紙表面
11.1.2 Canvas的抽象概念
11.1.3 Canvas群
11.1.4 事件
11.2 坐標系
11.2.1 通用坐標
11.2.2 對象坐標
11.2.3 Canvas坐標系
11.2.4 視窗坐標系
11.3 使用Canvas
11.3.1 GDK模式和AA模式
11.3.2 滾動區(qū)
11.3.3 添加Canvas對象
11.3.4 移動Canvas對象
11.3.5 變換
11.4 Canvas對象
11.4.1 基于向量的繪圖對象
11.4.2 線條類型
11.4.3 對象的形狀
11.4.4 Canvas中的窗體
11.4.5 文本Canvas對象
11.4.6 圖形Canvas對象
11.5 Canvas事件
11.5.1 事件回應
11.5.2 單擊和雙擊鼠標
11.5.3 鼠標移動
11.5.4 滾動
11.5.5 鍵盤事件
11.5.6 捕獲對象
11.5.7 拖拉和放置Canvas對象
第12章 文檔編制
12.1 書寫文檔
12.1.1 HTML文檔
12.1.2 DoxBook文檔
12.2 安裝文檔
12.2.1 幫助目錄
12.2.2 設置Makefile.am
12.2.3 添加topic.dat文件
12.3 調用幫助系統(tǒng)
12.3.1 幫助瀏覽器
12.3.2 URL處理器
12.3.3 提出幫助
12.3.4 在菜單中添加幫助
12.3.5 在屬性框中添加幫助
12.4 幫助應用程序實例
12.4.1 HTML幫助文件
12.4.2 topic.dat文件
12.4.3 configure.in文件
12.4.4 Makefile.am文件
12.4.5 main.c文件
12.4.6 編譯和運行應用程序
附錄A GNOME FAQ