Firebug Internals
From FirebugWiki
Revision as of 04:36, 7 November 2009 by Johnjbarton (Talk | contribs)
Contents |
Resources
Source
Firebug source is available via subversion
Don't use /trunk, its just old code.
The Firebug source is under branches, eg branches/firebug1.5.
- fbtest/ Firebug test harness
- tests/content contains the FBTest suite.
- lite/ Firebug for non-Firefox browsers
- chromebug/ Debugger for Firebug (and other Firefox extensions)
- Most of the remaining directories are extensions (to be under extensions/ some day).
Overview of Firebug
How are the XUL files used?
- browserOverlay.xul : puts Firebug into the bottom of the browser window by "overlay" on to Firefox's browser.xul
- firebug.xul: puts Firebug into its own window.
- firebugOverlay.xul: overlays browserOverlay.xul or firebug.xul to add placement-independent features by XUL.
How are panels created?
Basically follow the pattern of an existing panel.
- extend Firebug.Panel
- add methods
- use 'this.context' for context dependence
- Add UI to 'this.panelNode' as HTML.
- Learn about domplate to create the HTML
- registerPanel
How does debugging work?
See the Chromebug User Guide
How to write a firebug extension?
A Firebug extension is just a Firefox extension that happens to work on top of Firebug.
How to use FBTrace?
if (FBTrace.DBG_YOUREXT) FBTrace.sysout(<string>, object);