McCoy:UI

From MozillaWiki
Jump to: navigation, search

The McCoy main UI is based around the view that the application is designed to provide a number of "tasks" for the extension developer. The splits the tasks up into different sections, "Development", "Packaging", "Updates". This list can grow if additional types of tasks are added.

A task's UI is a simple xul page that is displayed in an internal frame in the main window.

Each task is presented in the surrounding UI as a <menuitem> in the appropriate main menu, and a <radio> in the appropriate <radiogroup>. The <menuitem> should include a "task" attribute with the id of the corresponding radio as its value. The <radio> should include a "href" attribute. This contains the chrome url for the task UI.

Task Template

Every task should start with a standard template to ensure all the additional widgets and standard task formatting is available:

 <?xml version="1.0"?>
 
 <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
 <?xml-stylesheet href="chrome://mccoy/content/taskui.css" type="text/css"?>
 <?xml-stylesheet href="chrome://mccoy/skin/task.css" type="text/css"?>
 
 <page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
 </page>

Widgets

keychooser

The keychooser is a standard widget for tasks that perform key related activities. Its standard presentation is as a menulist to select the key an a button to create a new key.

Attributes

  • disabled

Properties

  • disabled
  • key

filechooser

The filechooser allows selection of a file or directory. It displays the currently selected file and allows the user to browse for a different file.

Attributes

  • disabled
  • label
  • types
  • mode

Properties

  • disabled
  • label
  • types
  • file

helplink

The helplink allows the user to click for more information about what a task is performing. This should be used to link to an MDC article wherever possible.

Attributes

  • href