--- title: nsIDynamicContainer slug: nsIDynamicContainer tags: - Developing Mozilla - Extensions - Interfaces - 'Interfaces:Scriptable' - Places - XPCOM - XPCOM API Reference ---
nsIDynamicContainerインタフェースは一時的なコンテンツのコンテナを提供するベースクラスを提供します。この機能はコンテナがオープンされたタイミングで、ノードを直接満たすことができます。すべてのリザルトノードのプロパティをそれぞれのアイテムに関連したデータを保存するのに利用できます。(例えばディスク上でのフルパスなど)また、それぞれのコンテナに対してサービスに関連付けられた追加のコンテナを作成することができます。
継承元: 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);
与えられたコンテナノードが新たにノードが作成されようとするときに呼ばれます。
必要であればノードの作成を実行することができます。
void onContainerNodeOpening( in nsINavHistoryContainerResultNode aContainer, in nsINavHistoryQueryOptions aOptions );
与えられたコンテナがなくなるときに呼ばれます。従って、必要なクリーンアップ処理を実行することができます。このメソッドが呼びだされることは保証されていません。具体的にはクエリがどこかへ行ってしまったときには呼ばれません。この現象はコンテナ自身がopen状態からclose状態へ遷移したときにのみ起こります。実際の処理ではかなり大量の動的に生成されたノードがこのメソッドをクリーンアップ処理のために呼び出します。
void onTainerNodeClosed( in nsINavHistoryContainerResultNode aContainer );
与えられたコンテナがブックマークテーブルから削除されようとするときに呼ばれます。従って、必要なクリーンアップ処理を実行することができます。このメソッドはコンテナが削除される前に呼ばれます、従って処理では依然としてコンテナを参照することができます。
void onContainerRemoving( in long long aItemId );
与えられたコンテナが丁度移動されようとしているときに呼ばれます。bookkeepingを行う処理に備えて存在します。このメソッドはコンテナが移動された後に呼ばれます。