sbImageLabelLinkPropertyBuilder.h
Go to the documentation of this file.
1 /*
2  *=BEGIN SONGBIRD GPL
3  *
4  * This file is part of the Songbird web player.
5  *
6  * Copyright(c) 2005-2010 POTI, Inc.
7  * http://www.songbirdnest.com
8  *
9  * This file may be licensed under the terms of of the
10  * GNU General Public License Version 2 (the ``GPL'').
11  *
12  * Software distributed under the License is distributed
13  * on an ``AS IS'' basis, WITHOUT WARRANTY OF ANY KIND, either
14  * express or implied. See the GPL for the specific language
15  * governing rights and limitations.
16  *
17  * You should have received a copy of the GPL along with this
18  * program. If not, go to http://www.gnu.org/licenses/gpl.html
19  * or write to the Free Software Foundation, Inc.,
20  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  *
22  *=END SONGBIRD GPL
23  */
24 
25 #ifndef __SBIMAGELABELLINKPROPERTYBUILDER_H__
26 #define __SBIMAGELABELLINKPROPERTYBUILDER_H__
27 
29 
30 #include <sbIPropertyManager.h>
31 #include <sbIPropertyBuilder.h>
32 
33 #include <nsClassHashtable.h>
34 #include <nsCOMPtr.h>
35 #include <nsStringGlue.h>
36 #include <nsTHashtable.h>
37 
39 
43 {
44  NS_DECL_ISUPPORTS_INHERITED
46  NS_DECL_SBIIMAGELABELLINKPROPERTYBUILDER
47  NS_DECL_SBICLICKABLEPROPERTYBUILDER
48 
49 public:
52 
53 public:
54  nsresult Init();
55 
56  /* partial implementation of sbIPropertyBuilder */
57  NS_IMETHOD Get(sbIPropertyInfo** _retval);
58 private:
59  nsClassHashtable<nsCStringHashKey, nsCString> *mImages;
60  nsClassHashtable<nsCStringHashKey, nsString> *mLabels;
61  nsTHashtable<nsISupportsHashKey> *mClickHandlers;
62 };
63 
64 #endif /* __SBIMAGELABELLINKPROPERTYBUILDER_H__ */
65 
An interface used to describe a metadata property for use by the UI and other sbILibrary interfaces (...
#define NS_FORWARD_SBIPROPERTYBUILDER_NO_GET(_to)