Songbird / Development / Songbird Add-Ons API Documentation

components/library/base/public/sbIMediaListView.idl

Go to the documentation of this file.
00001 /*
00002 //
00003 // BEGIN SONGBIRD GPL
00004 //
00005 // This file is part of the Songbird web player.
00006 //
00007 // Copyright(c) 2005-2008 POTI, Inc.
00008 // http://songbirdnest.com
00009 //
00010 // This file may be licensed under the terms of of the
00011 // GNU General Public License Version 2 (the "GPL").
00012 //
00013 // Software distributed under the License is distributed
00014 // on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
00015 // express or implied. See the GPL for the specific language
00016 // governing rights and limitations.
00017 //
00018 // You should have received a copy of the GPL along with this
00019 // program. If not, go to http://www.gnu.org/licenses/gpl.html
00020 // or write to the Free Software Foundation, Inc.,
00021 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00022 //
00023 // END SONGBIRD GPL
00024 //
00025 */
00026 
00033 #include "nsISupports.idl"
00034 
00035 interface nsIMutableArray;
00036 interface nsIStringEnumerator;
00037 interface nsITreeView;
00038 interface sbICascadeFilterSet;
00039 interface sbIMediaItem;
00040 interface sbIMediaList;
00041 interface sbIMediaListView;
00042 interface sbIMutablePropertyArray;
00043 interface sbIMediaListViewSelection;
00044 
00051 [scriptable, uuid(bb26d18e-8387-4512-9d99-8ce9b18f929b)]
00052 interface sbIMediaListViewState : nsISupports
00053 {
00054   AString toString();
00055 };
00056 
00063 [scriptable, uuid(378fc540-9592-43df-908c-ed84ac0e1221)]
00064 interface sbIMediaListViewListener : nsISupports
00065 {
00069   void onFilterChanged(in sbIMediaListView aChangedView);
00070 
00074   void onSearchChanged(in sbIMediaListView aChangedView);
00075 
00079   void onSortChanged(in sbIMediaListView aChangedView);
00080 };
00081 
00088 [scriptable, uuid(53cefc7c-0967-4cab-84bd-11b52b1bf081)]
00089 interface sbIMediaListView : nsISupports
00090 {
00094   readonly attribute sbIMediaList mediaList;
00095 
00099   readonly attribute unsigned long length;
00100 
00104   readonly attribute nsITreeView treeView;
00105 
00109   readonly attribute sbICascadeFilterSet cascadeFilterSet;
00110 
00116   sbIMediaItem getItemByIndex(in unsigned long aIndex);
00117 
00125   unsigned long getIndexForItem(in sbIMediaItem aMediaItem);
00126 
00133   unsigned long getUnfilteredIndex(in unsigned long aIndex);
00134 
00143   AString getViewItemUIDForIndex(in unsigned long aIndex);
00144 
00152   unsigned long getIndexForViewItemUID(in AString aViewItemUID);
00153 
00154   /*
00155    * \brief Return the distinct values in the view for a given property
00156    * \param aPropertyID Propery ID to get distinct values for
00157    * \return String enumerator of distinct values for the given property
00158    */
00159   nsIStringEnumerator getDistinctValuesForProperty(in AString aPropertyID);
00160 
00166   sbIMediaListView clone();
00167 
00174   sbIMediaListViewState getState();
00175 
00191   void addListener(in sbIMediaListViewListener aListener,
00192                    [optional] in boolean aOwnsWeak);
00193 
00207   void removeListener(in sbIMediaListViewListener aListener);
00208 
00212   readonly attribute sbIMediaListViewSelection selection;
00213 
00217   void removeSelectedMediaItems();
00218 };

Generated on Tue Mar 10 14:28:55 2009 for Songbird by  doxygen 1.5.2