Panorama:TabGroupsAPI: Difference between revisions
Jump to navigation
Jump to search
Raymondlee (talk | contribs) |
Raymondlee (talk | contribs) m (→Schema) |
||
| Line 1: | Line 1: | ||
The purpose of this TabGroups API is to provide a simple storage for Panorama and its tab groups. Other add-ons which would like to access tab groups' data can use this API to do that. | |||
= Schema = | = Schema = | ||
Revision as of 09:00, 14 November 2011
The purpose of this TabGroups API is to provide a simple storage for Panorama and its tab groups. Other add-ons which would like to access tab groups' data can use this API to do that.
Schema
Compatibility
Example
{windows: [{
tabs: [
{entries: [{url: "about:mozilla"}]},
{entries: [{url: "http://example.com/#1"}],
extData: {"tabgroups": "{\"group\": \"group1-id\", \"title\": \"first tab title\",
\"url\": \"first tab url"}"}},
{entries: [{url: "http://example.com/#2"}],
extData: {"tabgroups": "{\"group\": \"group2-id\", \"title\": \"second tab title\",
\"url\": \"second tab url"}, \"active\":\"last active tab in group it belongs\"}"}
],
extData: {
"tabgroups": "{\"group1-id\": {\"id\": \"group1-id\", \"title\": \"first title\",
\"bounds\": {\"left\": 35, \"top\": 45, \"width\": 330, \"height\": 310},
\"userSize\": {\"x\": 330, \"y\": 310}},
\"group2-id\": {\"id\": \"group2-id\", \"title\": \"second title\",
\"bounds": {\"left\": 450, \"top\": 45, \"width\": 330, \"height\": 310},
\"userSize\": {\"x\": 330, \"y\": 310}},
\"additions\": {\"activeGroup\":\"group2-id\", \"showOnStartup\":true,
\"pageBounds\" :{\"left\":0, \"top\": 0, \"width\": 1000, \"height\": 750}}}"
}
}]}
Applications
Panorama
Vertical Tabs
Tree Style Tabs
API Description
TabGroups
[Methods]
createGroup(DOMWindow aWindow)
getGroups()
getGroupsByWindow(DOMWindow aWindow)
getWindowStorage(DOMWindow aWindow)
[Events]
tabgroup-added
tabgroup-removed
window-closing
TabGroup
[Properties]
id : string
title : string
tabs : xulTab[]
storage : object
[Methods]
addTab(xulTab aTab)
removeTab(xulTab aTab)
close()
[Events]
rename
tab-added
tab-removed
close