--- title: nsIDynamicContainer slug: nsIDynamicContainer tags: - Developing Mozilla - Extensions - Interfaces - 'Interfaces:Scriptable' - Places - XPCOM - XPCOM API Reference ---

nsIDynamicContainerインタフェースは一時的なコンテンツのコンテナを提供するベースクラスを提供します。この機能はコンテナがオープンされたタイミングで、ノードを直接満たすことができます。すべてのリザルトノードのプロパティをそれぞれのアイテムに関連したデータを保存するのに利用できます。(例えばディスク上でのフルパスなど)また、それぞれのコンテナに対してサービスに関連付けられた追加のコンテナを作成することができます。

toolkit/components/places/public/nsIDynamicContainer.idlScriptable
Please add a summary to this article.
  最終更新: Gecko 1.9 (Firefox 3)

継承元: nsISupports


メソッドの概要

void onContainerNodeOpening(in nsINavHistoryContainerResultNode aContainer, in nsINavHistoryQueryOptions aOptions);
void onContainerNodeClosed(in nsINavHistoryContainerResultNode aContainer);
void onContainerRemoving(in long long aItemId);
void onContainerMoved(in long long aItemId, in long long aNewParent, in long aNewIndex);

メソッド

onContainerNodeOpening()

与えられたコンテナノードが新たにノードが作成されようとするときに呼ばれます。
必要であればノードの作成を実行することができます。

註: 状態を保存したい場合は全てのリザルトノードはプロパティバッグをインプリメントします

void onContainerNodeOpening(
  in nsINavHistoryContainerResultNode aContainer,
  in nsINavHistoryQueryOptions aOptions
);
引数
aContainer
これから開かれようとしているコンテナノード
aOptions
このクエリを生成するために使われるオプション。コンテナは可能ならばこれらに従います。もしクエリとフォルダノードをコンテナに追加しようとしている場合、実装は可能ならばこの値を使用しないといけません。この値を変更してはいけません。

onContainerNodeClosed()

与えられたコンテナがなくなるときに呼ばれます。従って、必要なクリーンアップ処理を実行することができます。このメソッドが呼びだされることは保証されていません。具体的にはクエリがどこかへ行ってしまったときには呼ばれません。この現象はコンテナ自身がopen状態からclose状態へ遷移したときにのみ起こります。実際の処理ではかなり大量の動的に生成されたノードがこのメソッドをクリーンアップ処理のために呼び出します。

void onTainerNodeClosed(
  in nsINavHistoryContainerResultNode aContainer
);
引数
aContainer
hoge

onContainerRemoving()

与えられたコンテナがブックマークテーブルから削除されようとするときに呼ばれます。従って、必要なクリーンアップ処理を実行することができます。このメソッドはコンテナが削除される前に呼ばれます、従って処理では依然としてコンテナを参照することができます。

void onContainerRemoving(
  in long long aItemId
);
引数
aItemId
コンテナアイテムのアイテムID。

onContainerMoved()

与えられたコンテナが丁度移動されようとしているときに呼ばれます。bookkeepingを行う処理に備えて存在します。このメソッドはコンテナが移動された後に呼ばれます。

関連記事