Flakeは、KOffice 2で利用される予定のプログラミング
ライブラリであり、「形」(Shape)という概念を中心に構築されています。このShapeは、エンドユーザーから見ると画像やテキストなどのコンテンツとして認識されますが、実際には四角形や円などの様々な形状を持つことができ、描画そのものに関わるため、あらゆる種類のメディアを包含できます。
現在、KOfficeのすべてのコンポーネントでFlakeの機能を最大限に活用するための開発が進められています。
機能
Flakeの機能は、コンテンツを表示するShapeと、コンテンツやユーザーインターフェースを操作するToolsの2つに大別されます。Shapeは、コンテンツの種類に応じて作成され、例えばテキストShapeはKWordで.txtや.odt形式のファイルを、KChartのShapeは.odc形式のような表関連のドキュメントを扱います。
ShapeはToolsのセットと組み合わせてパッケージ化することで、コンテンツとユーザーインターフェース要素の両方を操作できます。これにより、アプリケーションに必要な機能を追加したり、他のアプリケーションのShapeを簡単に埋め込むことが可能です。また、Shapeは必要に応じて他のShapeを読み込むことができます。例えば、文書内に含まれる画像を扱う際には、画像Shapeが読み込まれます。
Flakeは、KOffice 1シリーズにおけるウィジェットをベースにした埋め込み機能の後継となるものです。従来のウィジェットには、常に四角形でなければならない、回転できない、ピクセル単位でのみ測定されるといった制約がありました。Flakeはこれらの問題を解決し、埋め込まれたドキュメントのデータを拡大縮小、回転、歪ませるなど、あらゆる形式での操作を可能にします。単位もミリメートルなどが使用されます。
さらに、Flakeは拡張性などの面でオリジナルデザインを改良しています。例えば、Google Summer of Code 2007では、Marijn Kruisselbrink氏が
記譜法のShapeとToolsをベースにした
MusicXMLを発表しました。あるShapeに対して他のShapeの位置を認識させることができ、例えば、画像をテキストの上に移動させると、テキストが画像の周りを動的に配置されるようになります。また、Shapeをグループ化することで、複数のShapeを一つのShapeとして扱うことも可能です。
KOfficeでの利用
KOfficeの各コンポーネントにおいて、Flakeは以下のような機能を提供すると期待されています。
KWord: テキストをShapeとして扱います。
KSpread: 複数のセルを1つのShapeにまとめます。
KPresenter: Flakeの一部として組み込まれます。
Kivio: Flakeの一部として組み込まれます。
Karbon14: ベクター画像をより高度に扱います。
Krita: レイヤーを含めた画像をShapeとして扱います。
KChart: グラフ全体を1つのShapeとして扱います。
KFormula: 数式を1つのShapeとして扱います。
Kexi: データをKWordやKSpreadに組み込みます。
KPlato: 各工程をShapeとして扱います。
脚注
この情報は、Flakeの導入によってKOfficeの各アプリケーションがより柔軟で強力になることを示しています。Shapeという概念を中心に、様々なコンテンツの表現と操作が統一的に扱えるようになるため、ユーザーはより直感的で効率的な作業が可能になるでしょう。
関連項目
KDE
KOffice