DOM Inspector

From MozillaWiki
Jump to: navigation, search

UI Improvements

There is considerable scope for improvement to the UI of the DOM Inspector.

… more DOM Inspector enhancement bugs


DOM Inspector's interfaces are not formalized, but if they were, they'd look something like this:

 interface domiIViewer : domiIObservable {
   readonly attribute AString uid;
   readonly attribute domiIPanel pane;
   // bug 570879 is concerned with renaming selection to object
            attribute nsISupports subject;
   readonly attribute nsISupports selection;
   void destroy();
   boolean isCommandEnabled(in string aCommandName);
   nsITransaction getCommand(in string aCommandName);
 interface domiIPanel : domiIObservable {
   readonly attribute domiIPanelset panelset;
   readonly attribute domiIPanel linkedPanel;
   attribute nsISupports subject;
   attribute nsIVariant params;
   readonly attribute domiIViewer viewer;
   readonly attribute nsIDOMDocument viewerDocument;
   void initialize();
   void notifyViewerReady(in domiIViewer aViewer);
   void onViewerListCommand(in nsIDOMElement aViewerMenuItem);
 interface domiIPanelset : domiIObservable {
   readonly attribute domiIViewerRegistry registry;
   readonly attribute boolean initialized;
   readonly attribute nsIStringBundle stringBundle;
   readonly attribute domiIFlasher flasher;
   readonly attribute aString clipboardFlavor;
   void initialize();
   void onViewerRegistryLoad();
   void onViewerRegistryLoadError();
   readonly attribute long panelCount;
   domiIPanel getPanel(in unsigned long aIndex);
   void updateAllCommands();
   AString getCommandAttribute(in AString aCommandName,
                               in aString aAttributeName);
   AString setCommandAttribute(in AString aCommandName,
                               in aString aAttributeName,
                               in AString aValue);
   void execCommand(in AString aCommandName);
   void setClipboardData(in nsIVariant aData, in AString aFlavor,
                         in AString aTextRepresentation);
   nsIVariant getClipboardData();
 interface domiIObserver : nsISupports {
   void onEvent(domiIEvent aEventData);
 interface domiIEvent : nsISupports {
   readonly attribute domiIObservable target;
   readonly attribute AString type;
 interface domiIObservable : nsISupports {
   void addObserver(in string aEventName, in domiIObserver aObserver);
   void removeObserver(in string aEventName, in domiIObserver aObserver);