ボックス
ウィジェットクラス階層でのFl_Boxクラス
ボックスのクラスはFl_Boxクラスです。 クラス階層でFl_Boxクラスの前後は次のようになっています。
Fl_Widget | +----Fl_Box
このように極めてシンプルです。 ウィジェットのルートであるFl_Widgetクラスから直接派生しています。 なおかつFl_Boxクラスから派生するクラスは提供されていません。
ボックスの用途
ボックスはマウスやキーボードの入力といったユーザーのアクションに対して応答しません。 コールバック関数を登録することは可能ですが呼び出されることはありません。 主に視覚的な効果を目的として利用します。
例えば、Hello Worldではテキストを表示するためのラベルとして利用しました。 FLTKでは純粋なラベルのみを目的としたウィジェットは提供されていません。 その目的のためにはボックスを使うことができます。 他にも画像をセットすることが可能であることから、画像表示するための領域として利用することも考えられます。 FLTKを使い込んでいけばまだまだ必要になる場面は出てくるでしょう。
Fl_Boxクラス自体は単純で、ベースクラスであるFl_Widgetクラスとの差分は小さいです。 それでも、Fl_Widgetクラスから継承した性質が盛り込まれているため、最小限のウィジェットとしての役割を果たします。 抽象クラスであるFl_Widgetが表現するウィジェットの概念をストレートに具体化したものと言えるでしょう。