User:Jminta

From MozillaWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

'jminta' is Joey Minta. irc: jminta mail: add @gmail.com

Random notes

Scratchpad

SearchDialog.js has a dependency map that looks something like: (as of 6/20/2008)

 *  commandglue.js
 *    isNewsUri
 *    MSG_FOLDER_FLAG_VIRTUAL
 *  mailWindowOverlay.js
 *    MsgOpenSelectedMessages
 *      -GetDBView (SearchDialog.js)
 *      -GetSelectedIndices (msgMail3PaneWindow.js)
 *      -gPrefBranch (mailWindowOverlay.js)
 *      -MsgOpenSelectedMessageInExistingWindow (mailWindowOverlay.js)
 *        -GetWindowByWindowType (mailWindowOverlay.js)
 *      -gMessengerBundle (SearchDialog.js)
 *      -MsgOpenNewWindowForMessage (mailWindowOverlay.js)
 *        -(none if passed a message-uri and folder-uri)
 *    MsgOpenNewWindowForMsgHdr
 *      -MsgOpenNewWindowForFolder (mailWindowOverlay.js)
 *        -(none if passed a uri)
 *  threadPane.js
 *    GetThreadTree
 *    EnsureRowInThreadTreeIsVisible
 *      -GetThreadTree (threadPane.js)
 *  searchTermOverlay.js
 *    initializeSearchWidgets
 *    onMore
 *      -getSearchRowIndexForElement (searchTermOverlay.js)
 *        -gSearchTermList (searchTermOverlay.js)
 *      -createSearchRow (searchTermOverlay.js)
 *      -gTotalSearchTerms (searchTermOverlay.js)
 *      -updateRemoveRowButton (searchTermOverlay.js)
 *    hideMatchAllItem
 *    onReset
 *      -onMore (searchTermOverlay.js)
 *        -(see above)
 *      -removeSearchRow (searchTermOverlay.js)
 *      -gSearchTermList (searchTermOverlay.js)
 *    setSearchScope
 *      -gSearchScope (searchTermOverlay.js)
 *      -gSearchTerms (searchTermOverlay.js)
 *    updateSearchAttributes
 *      -gSearchTerms (searchTermOverlay.js)
 *  mailWindow.js
 *    CreateMessenger
 *    messenger
 *    nsStatusFeedback
 *  msgFolderPickerOverlay.js
 *    SetFolderPicker
 *      -SetFolderPickerElement (msgFolderPickerOverlay.js)
 *        -GetMsgFolderFromURI (widgetglue.js)
 *        -gMessengerBundle (SearchDialog.js)
 *  mailCommands.js
 *    mailSessionContractID

calls from SearchDialog.xul expands this by

 *  globalOverlay.js
 *    goDoCommand
 *  threadPane.js
 *    ThreadPaneKeyPress
 *      -ThreadPaneDoubleClick (threadpane.js)
 *        -IsSpecialFolderSelected (threadpane.js)
 *          -GetThreadPaneFolder (threadpane.js)
 *        -MSG_FOLDER_FLAG_DRAFTS (commandglue.js)
 *        -MsgComposeDraftMessage (threadpane.js)
 *        -MSG_FOLDER_FLAG_TEMPLATES (commandglue.js)
 *        -GetLoadedMsgFolder (msgMail3PaneWindow.js)
 *        -GetSelectedMessages (msgMail3PaneWindow.js)
 *        -ComposeMessage (mailCommands.js)
 *          -getIdentityForServer (mailCommmands.js)
 *          -msgComposeService (mailWindow.js)
 *          -accountManager (mailWindow.js)
 *        -MsgOpenSelectedMessages (mailWindowOverlay.js)
 *          -(see above)
 *    ThreadPaneSelectionChanged
 *      -gMsgFolderSelected (commandglue.js)
 *      -UpdateStatusMessageCounts (commandglue.js)

SearchDialog.xul also imports 2 overlays, searchTermOverlay.xul, which adds the following dependecies

 * searchTermOverlay.js
 *   booleanChanged
 *     -setSearchScope (searchTermOverlay.js)
 *       -(see above)
 *     -GetScopeForDirectoryURI (searchTermOverlay.js)
 *     -onMore
 *       -(see above)
 *     -updateSearchTermsListbox (searchTermOverlay.js)

and utilityOverlay.xul, which adds the following dependencies

 * utilityOverlay.js
 *   goToggleToolbar
 *   goUpdateGlobalEditMenuItems
 *   goUpdateSelectEditMenuItem
 *   goUpdateUndoEditMenuItems
 *   goUpdatePasteMenuItems
 * globalOverlay.js
 *   goQuitApplication
 *   goDoCommand

Additionally, the dialog uses widgets defined in searchWidgets.xml, which have the following additional dependencies

 * FilterEditor.js
 *   getScopeFromFilterList
 *   gFilterActionStrings
 *   gPromptService
 *   gFilter
 *   GetFilterEditorMsgWindow
 * msgFolderPickeryOverlay.js
 *   SetFolderPickerElement
 * widgetglue.js
 *   GetMsgFolderFromUri