デフォルトのフレームとその余白の定義と描画

マネージャーが入れ子マネージャーの場合は、含まれるオブジェクトの回りにフレームを描画できます。
デフォルトのフレームは入れ子マネージャーを作成する際に提供されます。デフォルトのフレームは、クラス IlvDefaultManagerFrame で定義されます。
defaultmanagerframe.gif
デフォルトのマネージャー・フレーム

フレームの定義

入れ子マネージャーの回りのフレームは、 IlvManagerFrame インターフェースで定義されます。この IlvManagerFrame インターフェースは、マネージャーの回りに追加する余白を定義します。フレームの描画方法と、フレーム上でのヒット・テストの実施方法を定義します。
マネージャーの回りに描画する必要のあるフレームを指定するには、IlvManager クラスの次のメソッドを使用します。
void setFrame(IlvManagerFrame frame)  
IlvManagerFrame getFrame()  
setFrame メソッドと null パラメーターを使用して、マネージャーからフレームを削除できます。

余白の定義

IlvManagerFrame インターフェースの次のメソッドは、マネージャーの回りに追加される余白を定義します。
float getBottomMargin(IlvManager manager, IlvTransformer t)  
float getLeftMargin(IlvManager manager, IlvTransformer t)  
float getRightMargin(IlvManager manager, IlvTransformer t)  
float getTopMargin(IlvManager manager, IlvTransformer t)  
framemargins.gif
マネージャー・フレームの余白

デフォルトのフレームの描画

IlvManagerFrame インターフェースは、フレームを描画するメソッドを提供します。
void draw(IlvManager manager, IlvRect bbox, Graphics g, IlvTransformer t)  
このメソッドはマネージャーに、既に余白を考慮済みのビュー座標系のバウンディング・ボックスを提供します。 IlvDefaultManagerFrame は、背景を塗りつぶし、マネージャーの周りに枠を作成します。 このクラスは、マネージャー・フレームの余白に表示されているように、マネージャーの名前に対応するタイトルもマネージャーの上部に描画します。
フレームを実装するとマネージャーの背景が塗りつぶされる場合は、フレームは不透明フレームで、次のメソッドは true を返す必要があります。
boolean isOpaque(IlvManager manager)  
IlvDefaultManagerFrame は、不透明または透明にできます。
  • フレームが不透明の場合は、入れ子マネージャーの下のグラフィック・オブジェクトは非表示になります。この場合は、これらのグラフィック・オブジェクトは操作できません。
  • フレームが透明の場合は、入れ子マネージャーの下のグラフィック・オブジェクトは表示されます。この場合、グラフィック・オブジェクトがフレームで覆われていなくても操作できます。