Developer:Addons

From Spicebird

Jump to:navigation, search

This page aims serve as a tutorial for extensions developers looking to write new addons for Spicebird or port existing Mozilla Thunderbird/Sunbird addons to Spicebird.

Contents

Writing New Addons

Writing extensions for Spicebird is similar to writing extensions for any other Mozilla application. See Mozilla [http://goo.gl/qVP89century 21 broker properti jual beli sewa rumah Indonesia flash player century 21 broker properti jual beli sewa rumah Indonesia developer documentation] and MozillaZine documentation on writing extensions for any Mozilla application. Also see the notes section for Spicebird specific information you should know. mivo tv

Porting Thunderbird/Sunbird Addons

  <em:targetApplication>
    <Description>
      <em:id>{ee53ece0-255c-4cc6-8a7e-81a8b6e5ba2c}</em:id>
      <em:minVersion>0.7</em:minVersion>
      <em:maxVersion>0.8.*</em:maxVersion>
    </Description>
  </em:targetApplication>

Notes

Spicebird Application ID

To make an extension for Spicebird you will need to know Spicebird application GUID. It is

{ee53ece0-255c-4cc6-8a7e-81a8b6e5ba2c}

Spicebird 0.7.1 UI Changes

Spicebird 0.8 UI Changes

As of now, there are no plans to change UI in a manner that will effect any applications.

Application Specific UI Elements

In Spicebird, a certain user interface element can appear in one only application, multiple applications or all applications. So, for example, it is possible to add a menu in such a way that it appears in Calendar and Tasks tabs and no other application. It is also possible to add a menu that appears in all the applications. The UI elements that work with this specification are: menus in main menubar, status bar elements and toolbar buttons.landscaping houston

This feature is triggered using the app attribute.

app="APPCODE"

For example, to define a menu item for the Chat application:

<menuitem id="my-chat-addon-menuitem1"
          label="My Chat Addon"
          app="im"/>
app="APP1CODE,APP2CODE..."

For example, to make a toolbar button appear in Calendar and Tasks application:

<toolbarbutton typeid="my-calendar-addon-toolbarbutton1"
               label="My Calendar Addon"
               app="calendar,tasks"/>
Application Name Code
Home home
Mail & Newsgroups mailnews
Contacts contacts
Chat im
Calendar calendar
Tasks tasks

Toolbar Buttons

Application Specific Addons

In Spicebird there are multiple applications in the same window. The user may choose to not load any of the applications during startup. This means that if an addon is meant to work with only a specific application, it should be kept in mind that the application may not be available based on user preferences. To avoid problems with UI and functionality, it is recommended that the addons overlay onto individual applications rather than the entire window. So, when an application is not loaded, the corresponding addons also don't show up. Each application has a main XUL UI file that gets overlaid onto the main application window. Addons have to overlay onto these overlay files instead of the main window.

Application Name Main Overlay File
Home chrome://collab/content/collab.xul (might change soon)
Mail & Newsgroups chrome://messenger/content/csMailnewsOverlay.xul
Contacts chrome://messenger/content/addressbook/csContactsOverlay.xul
Chat chrome://im/content/csIMOverlay.xul
Calendar chrome://calendar/content/csCalendarOverlay.xul
Tasks chrome://calendar/content/csCalendarOverlay.xul

Some Important IDs

pest control houston

spicebird
contributing to wiki
Toolbox