/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ /* The Sidebar API for 3rd parties */ #include "nsISupports.idl" [scriptable, uuid(41a22fb6-39e2-45e1-95c5-7e8cea36575d)] interface nsISidebar : nsISupports { void addPanel(in wstring aTitle, in string aContentURL, in string aCustomizeURL); void addPersistentPanel(in wstring aTitle, in string aContentURL, in string aCustomizeURL); void addSearchEngine(in string engineURL, in string iconURL, in wstring suggestedTitle, in wstring suggestedCategory); }; [scriptable, uuid(4350fb73-9305-41df-a669-11d26222d420)] interface nsISidebarExternal : nsISupports { void AddSearchProvider(in string aDescriptionURL); unsigned long IsSearchProviderInstalled(in string aSearchURL); }; %{ C++ // {577CB744-8CAF-11d3-AAEF-00805F8A4905} #define NS_SIDEBAR_CID \ { 0x577cb744, 0x8caf, 0x11d3, { 0xaa, 0xef, 0x0, 0x80, 0x5f, 0x8a, 0x49, 0x5 } } #define NS_SIDEBAR_CONTRACTID "@mozilla.org/sidebar;1" %} /* var isidebar = Components.interfaces.nsISidebar; var csidebar = Components.classes['@mozilla.org/sidebar;1']; var sidebar = csidebar.createInstance(isidebar); */