Songbird / Development / Songbird Add-Ons API Documentation

components/playlistcommands/public/sbIPlaylistCommandsBuilder.idl

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  
00027 #include "nsISupports.idl"
00028 #include "sbIPlaylistCommands.idl"
00029 
00030 interface nsIDOMNode;
00031 interface nsIDOMDocument;
00032 interface sbIPlaylistCommandsBuilderSimpleCallback;
00033 interface sbIPlaylistCommandsBuilderGetStringCallback;
00034 interface sbIPlaylistCommandsBuilderGetBoolCallback;
00035 interface sbIPlaylistCommandsBuilderSetValueCallback;
00036 interface sbIPlaylistCommandsBuilderInstantiationCallback;
00037 interface sbIPlaylistCommandsBuilderRefreshCallback;
00038 interface sbIPlaylistCommandsBuilderPCCallback;
00039 
00044 // ----------------------------------------------------------------------------
00045 
00114 [scriptable, uuid(5a4b21df-afc7-4270-a9b9-fc70565ca309)]
00115 interface sbIPlaylistCommandsBuilder : sbIPlaylistCommands 
00116 {
00127   void appendSubmenu(in AString aParentSubMenuId, 
00128                      in AString aSubMenuId, 
00129                      in AString aLabel, 
00130                      in AString aTooltipText);
00131   
00142   void insertSubmenuBefore(in AString aParentSubMenuId, 
00143                            in AString aBeforeId, 
00144                            in AString aSubMenuId, 
00145                            in AString aLabel, 
00146                            in AString aTooltipText);
00147 
00158   void insertSubmenuAfter(in AString aParentSubMenuId, 
00159                           in AString aAfterId, 
00160                           in AString aSubMenuId, 
00161                           in AString aLabel, 
00162                           in AString aTooltipText);
00163   
00164   // --------------------------------------------------------------------------
00165 
00178   void appendAction(in AString aParentSubMenuId, 
00179                     in AString aActionId,
00180                     in AString aLabel, 
00181                     in AString aTooltipText, 
00182                     in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback);
00183   
00195   void insertActionBefore(in AString aParentSubMenuId, 
00196                           in AString aBeforeId,
00197                           in AString aActionId,
00198                           in AString aLabel, 
00199                           in AString aTooltipText, 
00200                           in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback);
00201 
00213   void insertActionAfter(in AString aParentSubMenuId, 
00214                          in AString aAfterId,
00215                          in AString aActionId,
00216                          in AString aLabel, 
00217                          in AString aTooltipText, 
00218                          in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback);
00219 
00220   // --------------------------------------------------------------------------
00221 
00231   void appendSeparator(in AString aParentSubMenuId, 
00232                        in AString aSeparatorId);
00233 
00242   void insertSeparatorBefore(in AString aParentSubMenuId, 
00243                              in AString aBeforeId,
00244                              in AString aSeparatorId);
00245   
00254   void insertSeparatorAfter(in AString aParentSubMenuId,
00255                             in AString aAfterId,
00256                             in AString aSeparatorId);
00257 
00258   // --------------------------------------------------------------------------
00259 
00271   void appendFlag(in AString aParentSubMenuId, 
00272                   in AString aFlagId,
00273                   in AString aLabel, 
00274                   in AString aTooltipText, 
00275                   in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback,
00276                   in sbIPlaylistCommandsBuilderGetBoolCallback aValueCallback);
00277 
00290   void insertFlagBefore(in AString aParentSubMenuId, 
00291                         in AString aBeforeId,
00292                         in AString aCommandId,
00293                         in AString aLabel, 
00294                         in AString aTooltipText, 
00295                         in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback,
00296                         in sbIPlaylistCommandsBuilderGetBoolCallback aGetValueCallback);
00297 
00310   void insertFlagAfter(in AString aParentSubMenuId, 
00311                        in AString aAfterId,
00312                        in AString aCommandId,
00313                        in AString aLabel, 
00314                        in AString aTooltipText, 
00315                        in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback,
00316                        in sbIPlaylistCommandsBuilderGetBoolCallback aGetValueCallback);
00317 
00318   // --------------------------------------------------------------------------
00319 
00331   void appendValue(in AString aParentSubMenuId, 
00332                    in AString aValueId,
00333                    in AString aLabel, 
00334                    in AString aTooltipText, 
00335                    in sbIPlaylistCommandsBuilderSetValueCallback aSetValueCallback,
00336                    in sbIPlaylistCommandsBuilderGetStringCallback aGetValueCallback);
00337 
00350   void insertValueBefore(in AString aParentSubMenuId, 
00351                          in AString aBeforeId,
00352                          in AString aValueId,
00353                          in AString aLabel, 
00354                          in AString aTooltipText, 
00355                          in sbIPlaylistCommandsBuilderSetValueCallback aSetValueCallback,
00356                          in sbIPlaylistCommandsBuilderGetStringCallback aGetValueCallback);
00357 
00370   void insertValueAfter(in AString aParentSubMenuId, 
00371                         in AString aAfterId,
00372                         in AString aValueId,
00373                         in AString aLabel, 
00374                         in AString aTooltipText, 
00375                         in sbIPlaylistCommandsBuilderSetValueCallback aSetValueCallback,
00376                         in sbIPlaylistCommandsBuilderGetStringCallback aGetValueCallback);
00377 
00378   // --------------------------------------------------------------------------
00379 
00390   void appendChoiceMenu(in AString aParentSubMenuId, 
00391                         in AString aChoiceMenuId,
00392                         in AString aLabel, 
00393                         in AString aTooltipText,
00394                         in sbIPlaylistCommandsBuilderGetStringCallback aItemCallback);
00395 
00407   void insertChoiceMenuBefore(in AString aParentSubMenuId, 
00408                               in AString aBeforeId,
00409                               in AString aChoiceMenuId,
00410                               in AString aLabel, 
00411                               in AString aTooltipText,
00412                               in sbIPlaylistCommandsBuilderGetStringCallback aItemCallback);
00413 
00425   void insertChoiceMenuAfter(in AString aParentSubMenuId, 
00426                              in AString aAfterId,
00427                              in AString aChoiceMenuId,
00428                              in AString aLabel, 
00429                              in AString aTooltipText,
00430                              in sbIPlaylistCommandsBuilderGetStringCallback aItemCallback);
00431 
00432   // --------------------------------------------------------------------------
00433 
00444   void appendChoiceMenuItem(in AString aParentSubMenuId, 
00445                             in AString aChoiceMenuItemId,
00446                             in AString aLabel, 
00447                             in AString aTooltipText, 
00448                             in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback);
00449 
00461   void insertChoiceMenuItemBefore(in AString aParentSubMenuId, 
00462                                   in AString aBeforeId,
00463                                   in AString aCommandId,
00464                                   in AString aLabel, 
00465                                   in AString aTooltipText, 
00466                                   in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback);
00467 
00479   void insertChoiceMenuItemAfter(in AString aParentSubMenuId, 
00480                                  in AString aAfterId,
00481                                  in AString aCommandId,
00482                                  in AString aLabel, 
00483                                  in AString aTooltipText, 
00484                                  in sbIPlaylistCommandsBuilderSimpleCallback aTriggerCallback);
00485 
00486   // --------------------------------------------------------------------------
00487 
00497   void appendCustomItem(in AString aParentSubMenuId, 
00498                         in AString aCustomItemId,
00499                         in sbIPlaylistCommandsBuilderInstantiationCallback aInstantiationCallback, 
00500                         in sbIPlaylistCommandsBuilderRefreshCallback aRefreshCallback);
00501                           
00512   void insertCustomItemBefore(in AString aParentSubMenuId, 
00513                               in AString aBeforeId,
00514                               in AString aCustomItemId,
00515                               in sbIPlaylistCommandsBuilderInstantiationCallback aInstantiationCallback, 
00516                               in sbIPlaylistCommandsBuilderRefreshCallback aRefreshCallback);
00517                           
00528   void insertCustomItemAfter(in AString aParentSubMenuId, 
00529                              in AString aAfterId,
00530                              in AString aCustomItemId,
00531                              in sbIPlaylistCommandsBuilderInstantiationCallback aInstantiationCallback, 
00532                              in sbIPlaylistCommandsBuilderRefreshCallback aRefreshCallback);
00533                           
00534   // --------------------------------------------------------------------------
00535 
00546   void appendPlaylistCommands(in AString aParentSubMenuId, 
00547                               in AString aCommandsId,
00548                               in sbIPlaylistCommands aPlaylistCommands);
00549 
00559   void insertPlaylistCommandsBefore(in AString aParentSubMenuId, 
00560                                     in AString aBeforeId,
00561                                     in AString aCommandsId,
00562                                     in sbIPlaylistCommands aPlaylistCommands);
00563 
00573   void insertPlaylistCommandsAfter(in AString aParentSubMenuId, 
00574                                    in AString aAfterId,
00575                                    in AString aCommandsId,
00576                                    in sbIPlaylistCommands aPlaylistCommands);
00577 
00578   // --------------------------------------------------------------------------
00579 
00591   void setCommandShortcut(in AString aParentSubMenuId, 
00592                           in AString aCommandId, 
00593                           in AString aShortcutKey,
00594                           in AString aShortcutKeyCode,
00595                           in AString aShortcutModifiers,
00596                           in PRBool aShortcutIsLocal);
00597 
00608   void setCommandEnabledCallback(in AString aParentSubMenuId, 
00609                                  in AString aCommandId, 
00610                                  in sbIPlaylistCommandsBuilderGetBoolCallback aEnabledCallback);
00611 
00621   void setCommandVisibleCallback(in AString aParentSubMenuId, 
00622                                  in AString aCommandId, 
00623                                  in sbIPlaylistCommandsBuilderGetBoolCallback aVisibleCallback);
00624 
00631   void setInitCallback(in sbIPlaylistCommandsBuilderPCCallback aInitCallback);
00632 
00639   void setShutdownCallback(in sbIPlaylistCommandsBuilderPCCallback aInitCallback);
00640 
00648   void setVisibleCallback(in sbIPlaylistCommandsBuilderPCCallback aVisibleCallback);
00649 
00657   void removeCommand(in AString aParentSubMenuId,
00658                      in AString aCommandId);
00659 
00665   void removeAllCommands([optional] in AString aParentSubMenuId);
00666 
00672   void shutdown();
00673 };
00674 
00675 // ----------------------------------------------------------------------------
00676 
00682 [scriptable, uuid(c68a8813-7df9-41f4-888c-30f8a63cef60)]
00683 interface sbIPlaylistCommandsBuilderContext : sbIPlaylistCommandsContext
00684 {
00688   attribute nsISupports implementorContext;
00689 };
00690 
00700 [scriptable, function, uuid(d93a113b-348a-4050-8c03-3806228f9293)]
00701 interface sbIPlaylistCommandsBuilderSimpleCallback : nsISupports
00702 {
00711   void handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00712                       in AString aSubMenuId,
00713                       in AString aCommandId,
00714                       in AString aHost);
00715 };
00716 
00726 [scriptable, function, uuid(2474bfcf-bf50-4f27-b76e-b2472a126c08)]
00727 interface sbIPlaylistCommandsBuilderGetStringCallback : nsISupports
00728 {
00739   AString handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00740                          in AString aSubMenuId,
00741                          in AString aCommandId,
00742                          in AString aHost,
00743                          in AString aData);
00744 };
00745 
00755 [scriptable, function, uuid(68dde54c-5157-4650-addd-79ad331cf9ee)]
00756 interface sbIPlaylistCommandsBuilderGetBoolCallback : nsISupports
00757 {
00768   PRBool handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00769                         in AString aSubMenuId,
00770                         in AString aCommandId,
00771                         in AString aHost,
00772                         in AString aData);
00773 };
00774 
00784 [scriptable, function, uuid(24b5f0d8-424f-43ee-8f97-4efbfad6500f)]
00785 interface sbIPlaylistCommandsBuilderSetValueCallback : nsISupports
00786 {
00796   void handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00797                       in AString aSubMenuId,
00798                       in AString aCommandId,
00799                       in AString aHost,
00800                       in AString aValue);
00801 };
00802 
00812 [scriptable, function, uuid(fb4694de-ba89-4097-843b-a00091cc430b)]
00813 interface sbIPlaylistCommandsBuilderInstantiationCallback : nsISupports
00814 {
00825   nsIDOMNode handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00826                                in AString aSubMenuId,
00827                                in AString aCommandId,
00828                                in AString aHost,
00829                                in nsIDOMDocument aParentDocument);
00830 };
00831 
00841 [scriptable, function, uuid(d5f091e8-9b14-47f5-bf48-0f64c9d23a0a)]
00842 interface sbIPlaylistCommandsBuilderRefreshCallback : nsISupports
00843 {
00853   void handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00854                                in AString aSubMenuId,
00855                                in AString aCommandId,
00856                                in AString aHost,
00857                                in nsIDOMNode aElement);
00858 };
00859 
00869 [scriptable, function, uuid(9f578767-7f92-486d-b0a9-f760ff6e22d0)]
00870 interface sbIPlaylistCommandsBuilderPCCallback : nsISupports
00871 {
00880   PRBool handleCallback(in sbIPlaylistCommandsBuilderContext aContext,
00881                         in AString aHost,
00882                         in AString aData);
00883 };
00884 
00885  // end of playlistcommands group
00887 
00888 

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