00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00033 #include "nsISupports.idl"
00034
00035 interface nsISimpleEnumerator;
00036 interface sbILayoutDescription;
00037 interface sbISkinDescription;
00038
00039 interface sbIFeathersManagerListener;
00040
00041
00051 [scriptable, uuid(61c28aec-66a6-49f2-85df-9629c7e3d84f)]
00052 interface sbIFeathersManager : nsISupports
00053 {
00057 readonly attribute AString currentLayoutURL;
00058
00062 readonly attribute AString currentSkinName;
00063
00067 readonly attribute AString previousLayoutURL;
00068
00072 readonly attribute AString previousSkinName;
00073
00077 nsISimpleEnumerator getSkinDescriptions();
00078
00079
00083 readonly attribute unsigned long skinCount;
00084
00085
00089 nsISimpleEnumerator getLayoutDescriptions();
00090
00091
00095 readonly attribute unsigned long layoutCount;
00096
00097
00098
00108 void registerSkin(in sbISkinDescription aSkin);
00109
00114 void unregisterSkin(in sbISkinDescription aSkin);
00115
00122 sbISkinDescription getSkinDescription(in AString aInternalName);
00123
00124
00125
00135 void registerLayout(in sbILayoutDescription aLayout);
00136
00141 void unregisterLayout(in sbILayoutDescription aLayout);
00142
00149 sbILayoutDescription getLayoutDescription(in AString aLayoutURL);
00150
00151
00152
00167 void assertCompatibility(in AString aLayoutURL,
00168 in AString aInternalName,
00169 in boolean aShowChrome,
00170 in boolean onTop);
00171
00172
00173
00184 void unassertCompatibility(in AString aLayoutURL,
00185 in AString aInternalName);
00186
00187
00188
00202 void setDefaultLayout(in AString aLayoutURL, in AString aInternalName);
00203
00204
00205
00219 AString getDefaultLayout(in AString aInternalName);
00220
00221
00222
00230 boolean isChromeEnabled(in AString aLayoutURL,
00231 in AString aInternalName);
00232
00233
00234
00242 boolean isOnTop(in AString aLayoutURL,
00243 in AString aInternalName);
00244
00245
00253 void setOnTop(in AString aLayoutURL,
00254 in AString aInternalName,
00255 in boolean aOnTop);
00256
00257
00265 boolean canOnTop(in AString aLayoutURL,
00266 in AString aInternalName);
00267
00268
00269
00277 nsISimpleEnumerator getSkinsForLayout(in AString aLayoutURL);
00278
00279
00287 nsISimpleEnumerator getLayoutsForSkin(in AString aInternalName);
00288
00289
00303 void switchFeathers(in AString aLayoutURL,
00304 in AString aInternalName);
00305
00306
00310 void switchToNextLayout();
00311
00319 void openPlayerWindow();
00320
00321
00327 void addListener(in sbIFeathersManagerListener aListener);
00328
00334 void removeListener(in sbIFeathersManagerListener aListener);
00335 };
00336
00337
00338
00339