組み込みGUI(ウィンドウ・システム)環境の設計と実装
Chapter1 GUIの変遷とGUI環境
1-1 マンマシンを担うGUIの変遷
モノクロLCDの時代
カラーLCDの登場とCPUパワー
ウィンドウ・システムの登場と意義
1-2 GUI環境とウィンドウ
  作業の効率とウィンドウというインタフェース
  Macintoshに見るオブジェクト指向とウィンドウ操作

Chapter2 ウィンドウ・システム製作記
2-1 執筆に至る経緯
  ウィンドウ・システムの製作
  執筆のはなし
  開発の背景
2-2 全体的な方針
  複数のアプリケーションプログラムから同時に利用できるようにする
  実装依存性をなるべく少なくする
  ウィンドウサーバ
  一方通行の関数呼び出しおよびイベントキュー
  ウィンドウ・システムの汎用性を高める
  ウィンドウ・システムの部品の使用
2-3 ミューテックス
  ミューテックスの必要性
  ミューテックスによる解決
  再入可能なミューテックス
  ミューテックスの使用

2-4 ウィンドウ・システム開発作業の進め方
  模擬動作環境
  模擬動作環境アプリケーションプログラム
  模擬動作環境アプリケーションプログラムの構造
  「OS共通化部分」を使用した模擬動作環境
  動作確認用コマンド
  小型端末機器への応用
2-5 ユーティリティ
  メモリ管理
  単方向リンクリスト
  柔軟な配列
  文字列

Chapter3 描画システム
3-1 座標系の定義
  描画システムの座標系
  描画の基本単位である四角形
3-2 領域
  複雑な形の表現
  領域の演算
  領域形状
3-3 色
  色成分の型
  アルファブレンド
  計算の工夫
3-4 ビットマップ
  ピクセルによる画像の表現
  ピクセルタイプ
  ビットマップ3
  ビットマップ画像の使用

3-5 フォント
  フォントデータ
  ビットマップフォントの仕様
  FreeTypeの使用
3-6 描画コンテキスト
   アプリケーションプログラムから見た描画操作
アプリケーションプログラム向けの機能
  描画コンテキストのしくみ
3-7 サーフェース
  サーフェースのしくみ
  逆カラーテーブル
  パターン
3-8 サーフェース描画コンテキスト
  サーフェース描画コンテキストの生成
  サーフェース描画コンテキストのしくみ
  ビットマップオペレータ
  四角形を単一色で塗りつぶす
  ビットマップ画像を描画する
  パターンビットマップ画像を描画する
  ビットマップ画像の大きさを変えて描画する
  ピクセル値が1ビットのビットマップ画像を描画する
  階調のあるビットマップ画像を描画する
  ピクセル値が1ビットのビットマップ画像をアンチエイリアス処理して描画する

Chapter4 ウィンドウ・システム
4-1 ウィンドウマネージャ
  ウィンドウマネージャとは
  ウィンドウマネージャの課題
  ウィンドウマネージャの変遷
4-2 初期のウィンドウマネージャ
  1つの画面に複数のウィンドウを同時に表示する
  ウィンドウ内容の描画
  マウスカーソル
4-3 簡単なウィンドウマネージャ
  ウィンドウのサーフェース
  半透明ウィンドウ
  更新処理
  マウスカーソル
4-4 複合ウィンドウマネージャ
  特徴の併存
  無効な部分を作る
  無効な部分をなくす
  更新処理の枠組み
  マウスカーソル
  ウィンドウの親子関係
  ウィンドウ・システムの応用例
4-5 スクリーン
  表示画面を管理する部品
  実装依存のスクリーンをウィンドウ・システムで使用できるようにする
  実装依存のレイヤをウィンドウ・システムで使用できるようにする
  簡単なウィンドウ・システムを動作させる
4-6 イベントキュー
  イベントキューの役割
  イベントバッファ
  イベントデータ
  イベントキュー
4-7 マウスとキーボード
  ウィンドウ・システムへの入力
  マウス
  キーボード
4-8 ウィンドウ・システムのインタフェース
  クライアントインタフェース
  ウィンドウ・システムの部品
  簡単なウィンドウサーバの例
  シンプルウィンドウサーバのプログラム

Chapter5 操作部品プログラム
5-1 操作部品プログラムのしくみ
  操作部品プログラムを作る前に
  操作部品の実現のしかた
  操作部品のしくみ
  アプリケーションプログラムによる操作部品への介入
5-2 操作部品のデザイン
  見た目の変更
  デザインのしくみ
5-3 各種操作部品
  Image
  Pattern
  Button
  Checkbox
  RadioButton
  ScrollBar
  List
  TextField
  ImageBox
  SizeBox
  Window
  PopupList
  Choice
  ComboBox
5-4 デザインの例
  Light
  Bitmap
5-5 入力メソッド
  入力メソッドのしくみ
  入力メソッド
  入力メソッドアダプタ
  入力コンテキスト
  入力メソッドの例
5-6 操作部品プログラムのインタフェース
  操作部品プログラム インタフェースの使用
  操作部品プログラム グローバル
5-7 より良いウィンドウ・システムを目指して
  改良案
  機能追加

Appendix A 既存のウィンドウ・システムとその特徴
A-1 Linux用ウィンドウ・システム
  組み込み向けのLinux
  Qtopia
  GTK+
  DirectFB
A-2 iTRON用ウィンドウ・システム
  PEG
  GENWARE2

Appendix B これからのウィンドウ・システム
B-1 ウィンドウ・システムとは
  ウィンドウ・システムの役割
  GUIエディタの役割
B-2 統合開発環境
  共通のGUIエディタ
  共通のGUIエディタ紹介