ko

Classes

class objectTimer

Constructor

objectTimer(instance, func, args)

Class variables

args - args


func - func


instance - instance


interval - window.setInterval()


running - Boolean


timeout - window.setTimeout()


timer - Number


Class functions

free()

monitor()

startInterval(timer)

startTimeout(timer)

stop(timer)

stopInterval()

stopTimeout()


ko.abbrev

Functions

expandAbbrev(abbrev, lang, sublang)

Expands the abbreviation, if any, at the current cursor position.

Arguments

abbrev - String

Optional. The abbreviation to expand. If not given, then the current selection or word before the cursor is used.

lang - String

The language name to scope the search. Optional.

sublang - String

The sub-language name top scope the search. Optional.

Returns - Boolean


findAbbrevSnippet(abbrev, lang, sublang)

Find a snippet for the given abbreviation name. Abbreviations used for snippets are looked for in "Abbreviations" groups in these places: 1. the current project (if any) 2. the toolbox 3. the shared toolbox (if any) And for these languages: A. the current buffer sub-lang (for multi-lang files) B. the current buffer lang (if different than A) C. the "General" lang (i.e. not language-specific)

Arguments

abbrev - String

The abbreviation name.

lang - String

The language name to scope the search. Optional. If not given, then the language of the current view is used. Specify "General" to *not* search for a lang-specific abbreviation.

sublang - String

The sub-language name top scope the search. This can be relevant for multi-language files (e.g. HTML can have HTML and JavaScript and CSS). Optional. If not given, then the sub-lang of the current cursor position in the current view is used. Specify "General" to *not* search for a sub-lang-specific abbreviation.

Returns - Components.interfaces.koIPart_snippet


insertAbbrevSnippet(snippet, view)

Insert an abbreviation snippet into a buffer.

Arguments

snippet - Components.interfaces.koIPart_snippet

The snippet part to insert. You can use `ko.abbrev.findAbbrevSnippet()` to get one.

view - Components.interfaces.koIView

The buffer view in which to insert the snippet. Optional. If not specified then the current view is used.


ko.browse

Functions

about()

show our about dialog XXX DEPRECATE, this should be dialog.about or ko.about


aspnMailingList(topic)

show mailing list archives on ASPN that are related to the topic

Arguments

topic - String


browseTag(tag)

browse to a predefined url on activestate.com see tag2uri in ko.browse


localHelp(app)

show the url defined in "localHelpFile" in an instance of koIAppInfoEx

Arguments

app - String

the app identifier from the CID of a koIAppInfoEx implementation (eg. @activestate.com/koAppInfoEx?app=Perl)


openUrlInDefaultBrowser(url, browser)

open the given url or complain appropriately

Arguments

url - String

browser - String

optional, retreived from prefs if not used


showCommandIds()

show a list of command id's in the browser


showKeybindings()

show a list of keybindings in the browser


updateHelpLanguagesPopup()

Hide or show the local help entries in the Help->Languages popup depending on whether an actually help file to launch can be found.


webHelp(app)

show the url defined in "webHelpURL" in an instance of koIAppInfoEx

Arguments

app - String

the app identifier from the CID of a koIAppInfoEx implementation (eg. @activestate.com/koAppInfoEx?app=Perl)


ko.commands

Functions

doCode(cmdId, code)

doCodeAsync(cmdId, code)

doCommand(command)

Returns - rc


doCommandAsync(command, event)
Arguments

event - Event

Returns - Boolean


setCommandEnabled(id, node, supported, enabled)

updateCommand(command, commandNode, controller)

Returns - found


updateCommandset(commandset)

ko.dialogs

Variables

alert - parent.opener.ko.dialogs.alert


yesNo - parent.opener.ko.dialogs.yesNo


yesNo()


Functions

alert(prompt, text, title, doNotAskPref, options)

authenticate(title, message, loginname, allowAnonymous, allowPersist)

Returns - ko.dialogs.authenticate2()


authenticate2(prompt, server, username, allowAnonymous, title, login)

Returns - Object


customButtons(prompt, buttons, response, text, title, doNotAskPref, style)

Returns - obj.response


editEnvVar(name, value, title, mruName, interpolateValues)

handleEnterKey()

internalError(error, text)

okCancel(prompt, response, text, title, doNotAskPref)

Returns - obj.response


pickIcon()

pickPreview(url, language, mode)

Returns - Object


progress(processor, prompt, title, is_cancellable, cancel_warning, modal)

prompt(prompt, label, value, title, mruName, validator, multiline, screenX, screenY, tacType, tacParam, tacShowCommentColumn, selectionStart, selectionEnd)

prompt2(prompt, label1, value1, label2, value2, title, mruName1, mruName2, validator, multiline1, multiline2, screenX, screenY)

selectFromList(title, prompt, items, selectionCondition, stringifier, doNotAskPref, yesNoCancel, buttonNames)

yesNo(prompt, response, text, title, doNotAskPref)

Returns - obj.response


yesNoCancel(prompt, response, text, title, doNotAskPref, style)

Returns - obj.response


ko.dragDrop

Functions

unpackData(flavourData, ret)

ko.dragDrop.dragObserver

Variables

canHandleMultipleItems - Boolean


Functions

canDrop(event, session)
Arguments

event - Event

Returns - Boolean


doDragOverEvent(event)
Arguments

event - Event


doDropEvent(event)
Arguments

event - Event


focusWindow()

getSupportedFlavours()

Returns - flavours


onDragOver(event, flavour, session)
Arguments

event - Event

Returns - Boolean


onDrop(event, transferDataSet, dragSession)
Arguments

event - Event


ko.eggs

Functions

boing()

ko.filepicker

Functions

browseForDir(textbox)

A dialog to pick a directory, and put the directory path into a XUL textbox.

Arguments

textbox - Element


browseForRemoteDir(textbox)

A dialog to pick a remote directory and put the path into a XUL textbox.

Arguments

textbox - Element


getFolder(defaultDirectory, prompt)

Pick a directory/folder.

Returns - String


openExeFile(defaultDirectory, defaultFilename, title)

Pick an executable file for open.

Returns - String


openFile(defaultDirectory, defaultFilename, title, defaultFilterName, filterNames)

Pick a file for open.

Returns - String


openFiles(defaultDirectory, defaultFilename, title, defaultFilterName, filterNames)

Pick multiple files for open.

Returns - Array


openRemoteFiles(defaultUrl, defaultFilename, defaultFilterName, filterNames)

Open remote file(s) Same parameters meanings as "filepicker_remoteFileBrowser" (above) Returns nothing. Note: The files will be opened through this function call


remoteFileBrowser(defaultUrl, defaultFilename, mode, title, defaultFilterName, filterNames, helpTag)

Browse for remote file(s)

Returns - Object


saveAsRemoteFiles(defaultUrl, defaultFilename, defaultFilterName, filterNames)

Choose remote filename to save as Same parameters meanings as "filepicker_remoteFileBrowser" (above) Returns the remote url of the selected file, or null if the dialog is cancelled.


saveFile(defaultDirectory, defaultFilename, title, defaultFilterName, filterNames)

Pick a file for save.

Returns - String


ko.fileutils

Functions

showDiffs(fname1, fname2)

ko.help

Functions

alternate()

alternate uses the alternate help preference


DEPRECATED_getTag(tag)

getTag old help open method, DEPRECATED

Returns - tag


DEPRECATED_openTag(tag)

openTag old help open method, DEPRECATED


language()

language open language specific help for the current buffer.


open(page)

open open Komodo help window

Arguments

page - String

a page tag as defined in toc.xml


tutorialProject(tutorial)

tutorialProject used by the help system to open KPF files associated with a tutorial

Arguments

tutorial - String

name of tutorial to open


tutorials(tutorial)

tutorials Open the Tutorial in the help browser "tutorial" can optionally be used to specify a particular tutorial to start with. Currently valid values are "perl", "python", "php", "xslt", and null (to go to Tutorial home page).

Arguments

tutorial - String

name of tutorial to open


ko.inputBuffer

Input buffering When you need to capture user input while a slow XUL window is loading you can use the input buffer. Usage: - in some JS code: ko.inputBuffer.start() // open XUL window - in slow XUL window onload handler: var contents = ko.inputBuffer.finish(); // use the contents somehow

Variables

id - String


Functions

finish()

Returns - contents


focus(event)
Arguments

event - Event


start()

ko.interpolate

Utility methods to easily use the KoIInterpolationService from JavaScript. Basically you can use the ko.interpolate.interpolate() method to iterpolation special '%'-escape codes in a given list of strings. See koInterpolationService.py (or play around with "run commands") for an authoritative description of available escape codes. How to interpolate a couple of strings (mystringa, mystringb). You can do as many strings as you want. var imystringa = null; var imystringb = null; try { var istrings = ko.interpolate.interpolate( <ref-to-komodo.xul>, [mystringa, mystringb], // codes are not bracketed [mystringc, mystringd], // codes are bracketed <optional-query-title>); imystringaForUse = istrings[0]; imystringaForDisplay = istrings[1]; imystringbForUse = istrings[2]; imystringbForDisplay = istrings[3]; imystringcForUse = istrings[4]; imystringcForDisplay = istrings[5]; imystringdForUse = istrings[6]; imystringcForDisplay = istrings[7]; } catch (ex) { var errno = lastErrorSvc.getLastErrorCode(); if (errno == Components.results.NS_ERROR_ABORT) { // Command was cancelled. } else if (errno == Components.results.NS_ERROR_INVALID_ARG) { var errmsg = lastErrorSvc.getLastErrorMessage(); alert("Could not interpolate:" + errmsg); } else { log.error(ex); alert("There was an unexpected error: " + ex); } }

Functions

activeProjectPath()

Returns - projectFile


currentFilePath()

Returns - String


currentFileProjectPath()

Returns - projectFile


getBlockOffsets(s, bracketed)

Return a list of start and end offsets of interpolation code blocks into the given strings "s".

Returns - offsets


getViewData(editor, viewData)

A utility function to retrieving specific view data required by Interpolate_interpolate(). "editor" is a reference to the komodo.xul window. "viewData" (optional) is a object possibly containing overriding values for some of the view data.

Returns - viewData


getWordUnderCursor(scimoz)

Returns - scimoz.getTextRange()


interpolate(editor, strings, bracketedStrings, queryTitle, viewData)

Interpolate '%'-escape codes in the given list(s) of strings. "editor" is a reference the komodo.xul window. "strings" is a list of raw strings to interpolate. "bracketedStrings" is a list of raw strings to interpolate, using the bracketed form "queryTitle" (optional) is a title for the possible query dialog raised during interpolation. "viewData" (optional) allows one to override specific view data used for interpolation. By default view data is retrieved from the current view. This may not always be appropriate. It may be an object with one or more of the following attributes: "fileName" is the filename of the current file (null, if N/A); "lineNum" is the current line number (0, if N/A); "word" is the current word under cursor (null if none); "selection" is the current selection (null if none). On success, this function returns a *double* list of interpolated strings: For each string in "strings" and "bracketedStrings" two strings are returned. The first is the interpolated string for use and the second for *display*. In most cases these are the same but they may differ, for example, if a password query response was interpolated into the string which should not be displayed in the Komodo UI. Otherwise an exception is raised and an error set on the last error service: koILastError errno reason ----------------------- ----------------------------------------- NS_ERROR_ABORT User cancelled the query dialog. NS_ERROR_INVALID_ARG A normal interpolation failure because of invalid interp code usage.

Returns - istrings


interpolateStrings(s, bracketed, queryTitle)

Returns - istring


isWordCharacter(ch)

ko.isearch

Variables

controller - ISController


ko.keybindings

Variables

keylabel2keysequence - keylabel2keysequence


keysequence2keylabel - keysequence2keylabel


Functions

onload()

Classes

class manager

Constructor

manager()

Class variables

_commandParams - Object


_configDirty - Boolean


_configKeyTree - cloneObject()


_configUnsaved - Boolean


_keyPressCaptureWindow - window


_knownconfigs - Array


activeCommands - Object


command2key - Object


commanditems - Array


commandnames - Array


constructor


currentConfiguration - gPrefSvc.prefs.getStringPref()


currentPrefixMap - this.keyTree


currentPrefixString - String


currentScheme - this.keybindingSchemeService.getScheme()


data - lines.join()


document - document


inPrefixCapture - Boolean


key2command - Object


keybindingSchemeService


keyDownLabels


keynames - Array


keyTree - Object


lastcategory - String


prefset - gPrefSvc.prefs


rownum - Number


Class functions

_addRow(category, desc, keys)

Returns - String


_clearActiveBindings()

_configKnown(newconfigname)

Returns - Boolean


_getKeyTreeRoot(keysequence)

Returns - root


_saveKnownConfigs()

_usedbys(root, remainingsequence, sofarsequence, usedbys)

applyCurrentConfiguration()

assignKey(commandId, keysequence, parameter)

cancelPrefix(why)

clearBinding(commandId, commandParam, restore)

clearBindings()

clearSequence(commandId, keylabel, restore)

clearUsedBys(commandId, keysequence)

command2keylabel(commandId)

Returns - keysequence2keylabel()


command2keysequences(commandId, commandParam)

Returns - seqs


commandId2desc(commandname, param, label)

Returns - commanddesc


commandId2parameter(commandname, label)

Returns - String


commandId2shortdesc(commandname, param)

Returns - commanddesc


commandId2tabledesc(commandname, param)

Returns - commanddesc


configurationWriteable(configname)

Returns - scheme.writeable


deleteConfiguration(configname, prefset)

evalCommand(event, commandname, keylabel)
Arguments

event - Event

Returns - Boolean


event2keylabel(event, useShift)
Arguments

event - Event

Returns - data.join()


eventBindings(event)
Arguments

event - Event

Returns - possible


getConfigurations()

Returns - this._knownconfigs


getKey(keyname)

keypressHandler(event)
Arguments

event - Event


learnParameter(commandId, parameter, keylabel)

loadConfiguration(configName, forceReload)

makeCommandIdTable()

Returns - String


makeCurrentKeyBindingTable()

Returns - String


makeDirty()

makeKeyActive(commandId, keysequence)

makeNewConfiguration(newconfigname, prefset)

Returns - newconfigname


mergeSchemeConfiguration(configName, forceReload)

observe(part, topic, partId)

offerToSave()

parseConfiguration(data, forceReload, ignoreCommandPrefix)

Parse the keybinding configuration file data into commands. Acitivate the keybinding commands.


parseGlobalData()

removeCommandsWithPrefix(prefix)

revertToPref(configname)

saveAndApply(prefset)

saveCurrentConfiguration()

setKeyBinding(keysequence, commandId, commandKey)

Returns - key


startPrefixCapture()

stashIn(vessel, keylabel)

switchConfiguration(newconfigname)

Returns - Boolean


unsetKey(keylabel)

unsetKeyBinding(commandId)

usedBy(sequence)

Returns - usedbys


walk_and_apply(root, keysequence)


ko.launch

Functions

checkForUpdates()

Opens the update manager and checks for updates to the application. From http://plow/source/xref/mozilla/1.8/browser/base/content/utilityOverlay.js#452


diff(diff, title, message)

diff open the diff dialog, you must provide the diff

Arguments

diff - String

title - String

message - String

Returns - ko.windowManager.openDialog()


find(pattern)

Open the Find dialog.

Arguments

pattern - String

The pattern to search for.

Returns - ko.windowManager.openDialog()


findInCollection(collection, pattern)

Open the find dialog for searching in a "collection" find context.

Arguments

collection - koICollectionFindContext

defines in what to search.

pattern - String

is the pattern to search for. Optional.

Returns - ko.windowManager.openDialog()


findInCurrProject(pattern)

Open Find dialog to search in the current project.

Arguments

pattern - String

Returns - ko.windowManager.openDialog()


findInFiles(pattern, dirs, includes, excludes)

Open Find dialog to search in files.

Arguments

pattern - String

dirs - String

includes - Array

excludes - Array

Returns - ko.windowManager.openDialog()


httpInspector()

httpInspector open the HTTPInspector window

Returns - ko.windowManager.openOrFocusDialog()


openAddonsMgr()

openAddonsMgr open the extension/add ons manager window

Returns - ko.windowManager.openOrFocusDialog()


replace(pattern, repl)

Open the Find/Replace dialog.

Arguments

pattern - String

The pattern to search for.

repl - String

The replacement pattern.

Returns - ko.windowManager.openDialog()


replaceInCollection(collection, pattern, repl)

Open the find dialog to find & replace in a "collection" of files.

Arguments

collection - koICollectionFindContext

defines in what to search.

pattern - String

The pattern to search for.

repl - String

The replacement pattern.

Returns - ko.windowManager.openDialog()


replaceInCurrProject(pattern, repl)

Open Find dialog to find & replace in the current project.

Arguments

pattern - String

The pattern to search for.

repl - String

The replacement pattern.

Returns - ko.windowManager.openDialog()


replaceInFiles(pattern, repl, dirs, includes, excludes)

Open Find dialog to make replacements in files.

Arguments

pattern - String

repl - String

dirs - String

includes - Array

excludes - Array

Returns - ko.windowManager.openDialog()


runCommand()

runCommand open the run command dialog

Returns - window.openDialog()


rxToolkit(mode, regex, replacement, searchText, matchCase, isModal, flagMultiline)

Open the rx toolkit.

Arguments

mode - String

One of "match", "match-all", "split", "replace", "replace-all" or null for the default (match-all).

regex - String

The regular expression pattern, or null for the default (the last regex).

replacement - String

searchText - String

matchCase - Boolean

Whether to set the "I" match option.

isModal - Boolean

Whether to open the Rx dialog modally (default is false.

flagMultiline - Boolean

Whether to set the "M" match option.

Returns - args


watchLocalFile()

watchLocalFile prompt for a file to watch, then open a new watch window


ko.launch.find2_dialog_args

Variables

collection - collection


cwd - cwd


dirs - dirs


excludes - excludes


includes - includes


mode - String


pattern - pattern


repl - repl


ko.lint

Functions

clearResults()

doClick(event)
Arguments

event - Event


doRequest()

finalize()

initialize()

jumpToNextLintResult()

Classes

class lintBuffer

Constructor

lintBuffer(view)

Class variables

_lastRequestId - Number


_lintTimer - objectTimer


constructor


errorString - request.errorString


lintingEnabled - this.view.prefs.getBooleanPref()


lintResults - request.results


view - view


Class functions

_cancelDelayedRequest()

_clearResults()

_createLintRequest(linterType)

_getLinterCID()

_issueRequest()

_notify()

destructor()

observe(subject, topic, data)

QueryInterface(iid)

Returns - this


reportResults(request)

request(reason)


ko.logging

Variables

dumpDOM - dumpDOM


getObjectTree - getObjectTree


getStack - getStack


loggingSvc - Components.interfaces.koILoggingService


Functions

_repeatStr(str, aCount)

Returns - res


dumpEvent(event)
Arguments

event - Event


dumpObject(o, name)

dumpObjectTree(o, recurse, compress, level)

dumpView(view)

getLogger(logger_name)

Returns - this.getLoggingMgr().getLogger()


getLoggingMgr()

Returns - _gLoggingMgr


LoggingMgr()

strObject(o, name)

Returns - s


Classes

class Logger

Constructor

Logger(logger, logger_name)

Class variables

_logger - logger


_logger_name - logger_name


constructor


Class functions

critical(message)

debug(message)

error(message)

exception(e, message)

getEffectiveLevel()

Returns - this._logger.getEffectiveLevel()


info(message)

setLevel(level)

warn(message)


ko.logging.LoggerMap

ko.macros

Variables

current - _partSvc.runningMacro


eventHandler - MacroEventHandler


recorder - MacroRecorder


Functions

evalAsJavaScript(__code, part)

Returns - Boolean


recordPartInvocation(part)

ko.main

Variables

log - _log


Functions

addCanQuitHandler(handler, object)

addCanQuitHandler observer for watching the quit-application-requested notification, and easily handling a response to it.


addUnloadHandler(handler, object)

addUnloadHandler Register a routine to be called on Komodo shutdown. To register a simple routine do this: ko.main.addUnloadHandler(<routine>) To register an object method do this: ko.main.addUnloadHandler(this.<method>, this);


addWillQuitHandler(handler, object)

addWillQuitHandler simple observer for watching the quit-application-granted notification


ko.main.window

Functions

onunload()

tryToClose()

Returns - Boolean


ko.markers

Variables

MARKERS_MASK_SYMBOLS - Number


MARKNUM_BOOKMARK - Number


MARKNUM_BREAKPOINT_DISABLED - Number


MARKNUM_BREAKPOINT_ENABLED - Number


MARKNUM_CURRENT_LINE_BACKGROUND - Number


MARKNUM_DEBUG_CURRENT_LINE - Number


MARKNUM_INTERACTIVE_PROMPT - Number


MARKNUM_INTERACTIVE_PROMPT_MORE - Number


MARKNUM_SPAWNPOINT_DISABLED - Number


MARKNUM_SPAWNPOINT_ENABLED - Number


MARKNUM_STDERR - Number


MARKNUM_STDIN_PROMPT - Number


MARKNUM_STDOUT - Number


MARKNUM_TRANSIENTMARK - Number


Functions

getPixmap(uri, force)

Read a file from disk, cache and return the contents.

Arguments

uri - String

file uri

force - Boolean

force read from file Note: The file contents are cached by URI. This is used to load pixmaps for scintilla markers.

Returns - content_cache[uri]


setup(scimoz)

Setup the standard Komodo markers in the given SciMoz instance and return an appropriate mask for ISciMoz.setMarginMaskN(<n>, <mask>).

Arguments

scimoz - iSciMoz

scimoz plugin instsance

Returns - ko.markers.MARKERS_MASK_SYMBOLS


ko.mozhacks

Functions

pluginContextMenu()

pluginContextMenu Verified still necessary with moz 1.8 branch - SMC For some reason popups over the plugin are messed up until the first context menu over mozilla is activated. It is apparently due to popupNode not being initialized, so we do that here. See: http://www.xulplanet.com/references/elemref/ref_popup.html


ko.mru

Functions

add(prefName, entry, caseSensitive)

addFromACTextbox(widget)

addURL(prefName, url)

del(prefName, index, notify)

finalize()

get(prefName, index)

Returns - retval


getAll(prefName, maxLength)

Returns - retval


initialize()

maxEntries(listPrefName)

Returns - maxEntries


reset(prefName)

ko.open

The open namespace contains functionality to open buffers in komodo

Functions

displayPath(displayPath, viewType)

Open the given path in Komodo.

Arguments

displayPath - String

identifies the path to open. Display path may be the display path of an already open (and possibly untitled) document.

viewType - String

optional default "editor", the type of view to create for the openned path. It is ignored if the displayPath indicates an already open view.


filePicker(viewType)

open a file picker, and open the files that the user selects


multipleURIs(urls, viewType)

startPage()

Open Komodo's Start Page


templatePicker(viewType)

open a file picker, and open the templates that the user selects. This allows editing the templates, it is not for creating new files from templates.


URI(uri, viewType, skipRecentOpenFeature)

function for opening buffers in Komodo tabs

Arguments

uri - String

the path or URI to open

viewType - String

optional default "editor" type of view component to use. Values can be [ "editor", "browser", "diff" ].

skipRecentOpenFeature - Boolean

optional default false, can be used when the URI to open is a project file to specify that the feature to open files in that project should not be offered.

Returns - DOMElement xul:view


ko.printing

Functions

browserPrint()

browserPrintPreview()

browserPrintPreviewEnter()

browserPrintPreviewExit()

print(view, preview, tofile, selectionOnly)

Returns - Boolean


printPreview(view, preview, tofile, selectionOnly)

ko.projects

Variables

active - _activeView

The active view is the last project view to have received focus. It does not mean that the view currently has focus.


BaseManager - BaseManager


extensionManager - projectExtensionManager


manager - projectManager


managers - Array


Functions

addCommand(item)

addDirectoryShortcut(dirname, parent)

addFile(parent_item)

Returns - Boolean


addFileWithURL(url, parent)

addFolder(name, parent)

addItem(item, parent)

addLiveFolder(dirname, parent)

addMacro(parent)

addMenu(parent)

addMenuFromPart(part)

addNewFileFromTemplate(parent)

Returns - ko.views.manager.newTemplate()


addNewPart(type, partviewerId)

addRemoteFile(item)

Returns - Boolean


addSnippet(parent)

addSnippetFromText(snippettext, parent)

Returns - snippet


addTemplate(parent)

addToolbar(parent)

addToolbarFromPart(part)

addURL(parent)

addURLFromText(URLtext, parent)

commandProperties(item)

ensureAddMenu(popup)

executeMacro(part, async)

Returns - Boolean


executeMacroById(id, asynchronous)

Returns - Boolean


exportItems(items)

exportPackageItems(items)

fileProperties(item, view, folder)

Returns - Boolean


findItemsByURL(url)

Returns - items


findPart(type, name, where, part)

findPart find a part in the toolboxes and/or a specifid part's project

Arguments

type - String

name - String

where - String

one of "container", "toolbox", "shared toolbox", "toolboxes" or "*" where "*" means "current part project, toolbox, shared toolbox"

part - koIPart

defaults to the running macro if available

Returns - koIPart


findPartById(id)

Given a ID, look in the projects and toolboxes until you find the first part with that id (the id allocation scheme guarantees there will be at most one) and return it. Return null on failure to find such a part.

Returns - gPartSvc.getPartById()


findPartsByURL(url)

Returns - parts


getDefaultDirectory(parent)

getFocusedProjectView()

does the active view have real focus, if so, return it, otherwise null.


getManagerForItem(item)

Returns - ko.projects.active.manager


hasURL(url)

Returns - Boolean


importFromFileSystem(part, baseURL)

Returns - Boolean


importFromPackage(part, filename)

invalidateItem(item)

invokePart(part)

Given a koIPart, invoke it (do it's "double-click" action) through whatever code path is appropriate for that part -- i.e. snippets get inserted, commands get run, etc.


invokePartById(id)

Given the ID of a part, find it and invoke it.


isToolbarRememberedAsHidden(id)

Returns - Boolean


macroProperties(item)

menuProperties(item, rank)

onload()

open(url, skipRecentOpenFeature)

openDirectoryShortcut(part)

partAcceptsMenuToolbar(part)

Returns - Boolean


refreshStatus(items)

registerExtension(ext)

reimportFromFileSystem(part)

Returns - Boolean


removeImportedVirtualFilesAndFolders(part)

Recursively removes virtual files and folders, but does not remove any folders that have been added manually or parts that are not files or folders (i.e. snippets, macros, etc...). This function will also remove any manually added files, that were not added as part of the import process, because there is not way to tell manually added files and imported files apart.


removeItemsByURL(url, skipDialog)

Returns - items


removeItemsByURLList(urls, skipDialog)

removeToolbarForPart(part)

runCommand(cmdPart)

saveProjectAs(project)

Returns - Boolean


snippetInsert(snippet)

snippetInsertImpl(snippet, view)

snippetProperties(item)

toggleToolbarHiddenStateInPref(id)

updateToolbarForPart(part)

URLProperties(item)

ko.run

Functions

buildRecentCommandsMenu(popupWidget)

canClose()

Prepare to close Komodo. Return false if cannot yet close Komodo. If there are processes still running then must wait for or kill them.

Returns - Boolean


registerProcess(command, process)

Keep a list of processes spawned by the RunCommand system. This is necessary to ensure that there are no hangs when Komodo closes because some process is still running. Before closing Komodo all process must be terminated.


runCommand(editor, command, cwd, env, insertOutput, operateOnSelection, doNotOpenOutputWindow, runIn, parseOutput, parseRegex, showParsedOutputList, name, clearOutputWindow, terminationCallback, saveInMRU, saveInMacro, viewData)

Run the given command.

Returns - Boolean


runEncodedCommand(editor, encodedCommand, terminationCallback)

Run an "encoded" command. An encoded command is a string that describes the command and possibly a number of optional arguments. The encoding is defined by koIRunService.Decode().

Returns - Boolean


unregisterZombieProcess()

Remove any processes that have terminated from the list.


ko.run.output

The interface for using the run output window (where run command output goes to, in the bottom pane of the Komodo workspace). Expected usage: - Someone calls ko.run.output.initialize() at startup and ko.run.output.finalize() at shutdown. - When a command is to be run in the output window do this: * announce intention to start session ko.run.output.startSession(...); *... setup and start running the actual command calling * ko.run.output.getTerminal() and ko.run.output.show() as needed ko.run.output.setProcessHandle(p); * to allow user to kill process *... setup ko.run.output.endSession() to be run when the process * terminates.

Functions

endSession(retval)

Complete a terminal session. The command exited with the given value.


finalize()

getTerminal()

Returns - _gTerminalHandler


initialize()

kill(retval)

Kill the process currently running in the output window's terminal, if any.


scintillaOnClick(event)
Arguments

event - Event


setProcessHandle(process)

Pass a koIRunProcess reference to the output window so it can manipulate the process that is being run in its terminal, if necessary.


show(editor, showParsedOutputList)

Show the command output window. "editor" is the XUL window holding the command output window. "showParseOutputList" is a boolean indicating whether to show the tree parsed output list.


startSession(command, parseOutput, parseRegex, cwd, filename, clearContent)

Start a terminal session in the output window with the given command. This raises an exception if the run output window is currently busy. "command" is the command being run (note that this is the command string *for display* which might be slight different -- passwords obscured -- than the actual command) "parseOutput" is a boolean indicating whether to parse output lines "parseRegex" is the regular expression to use to parse output lines "cwd" is the directory in which the command is being run (note: ditto *for display* subtlety withh "command") "filename" is the current editor filename (if any) "clearContent" is a boolean indicating whether to clear the output window content (by default "true", i.e. the window _is_ cleared).


toggleView()

treeOnClick(event)
Arguments

event - Event


treeOnKeyPress(event)
Arguments

event - Event

Returns - Boolean


ko.scc

Functions

Add(sccSvc, urls, postCallback)

Add the supplied urls to SCC.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls to be added.

postCallback - Function

Function to be called on completion.


Commit(sccSvc, urls, message, postCallback)

Commit the changes for the supplied urls into SCC.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls to be commited.

message - String

The checkin message.

postCallback - Function

Function to be called on completion.


Diff(sccSvc, urls, additionalOptions, postCallback)

Perform a diff revisions, and display the results.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls used.

additionalOptions - String

Additional diff command options.

postCallback - Function

Function to be called on completion.


DiffRevisions(sccSvc, uri1, version1, uri2, version2, filepath, additionalOptions, postCallback)

Perform a diff revisions, and display the results.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

uri1 - String

The second file uri to diff against.

version1 - String

Version of the first file to use.

version2 - String

Version of the second file to use.

filepath - String

Local path of the file used to diff.

additionalOptions - String

Additional diff command options.

postCallback - Function

Function to be called on completion.


Edit(sccSvc, urls, postCallback)

Edit the supplied urls under SCC.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls to be edited.

postCallback - Function

Function to be called on completion.


getServiceForFile(koIFile)

Return the SCC services that can handles the supplied koIFile. If Komodo has not yet checked the supplied file for SCC support then it is possible this function will return with no matching service even though the file may be under a SCC system. XXX - How to avoid this, force the fileStatusService to check the file?

Arguments

koIFile - Components.interfaces.koIFileEx

File needing SCC support.

Returns - Components.interfaces.koISCC


getServiceForUrl(url)

Return the SCC services that can handles the supplied koIFile. If Komodo has not yet checked the supplied url/file for SCC support then it is possible this function will return with no matching service even though the file may be under a SCC system. XXX - How to avoid this, force the fileStatusService to check the file?

Arguments

url - wstring

Url to get the handling SCC services for.

Returns - Components.interfaces.koISCC


History(sccSvc, urls, localRevisions)

Load the SCC history dialog for the given urls.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls.

localRevisions - Array

The matching list of current scc file versions, must be one for every url.


Remove(sccSvc, urls, postCallback)

Remove the supplied urls from SCC.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls to be removed.

postCallback - Function

Function to be called on completion.


Revert(sccSvc, urls, postCallback)

Revert (undo changes for) the supplied urls in SCC.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls to be added.

postCallback - Function

Function to be called on completion.


Update(sccSvc, urls, postCallback)

Update the supplied urls for latest SCC contents.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

urls - Array

The list of urls.

postCallback - Function

Function to be called on completion.


warnSSHConfiguration()

Warn the user about enabling CVS and SVN SSH integration.


ko.scc.logger

Functions

append(text)

Adds text to the SCC output panel.

Arguments

text - String

The output text to be added.


clear()

Clear all the text in the SCC output panel.


init()

One off initialization of the SCC output panel text.


reportResults(actiondescription, actiontext)

Add the description and text to the SCC output panel.

Arguments

actiondescription - String

Title description of text.

actiontext - String

The text to add to the SCC output panel.


reportSCCAction(sccSvc, cmdName, urls, text)

Report the SCC command results in the main Komodo SCC output panel.

Arguments

sccSvc - Components.interfaces.koISCC

SCC service instance.

cmdName - String

The name of the scc command.

urls - Array

The list of urls used.

text - String

The command output text.


show()

Show the main Komodo SCC output panel, will ask if the user wants to see it.


ko.sleuth

Variables

manager - Sleuth


tabManager - SleuthResultsTabManager


Functions

SleuthTabManager_Initialize()

Classes

class SleuthResultsTabManager.prototype.SciMozEventist

Class functions

onCharAdded()

Returns - Boolean


onDoubleClick()

Returns - Boolean


onDwellEnd()

onDwellStart()

onKey()

Returns - Boolean


onMacroRecord()

Returns - Boolean


onMarginClick()

Returns - Boolean


onModified()

onModifyAttemptRO()

Returns - Boolean


onNeedShown()

Returns - Boolean


onPosChanged()

Returns - Boolean


onSavePointLeft()

Returns - Boolean


onSavePointReached()

Returns - Boolean


onStyleNeeded()

Returns - Boolean


onUpdateUI()

Returns - Boolean


QueryInterface(iid)

Returns - this



ko.statusBar

Functions

AddMessage(msg, category, timeout, highlight, interactive)

AddMessage Post a message to the status bar message area. "msg" is the message string. An empty string or null indicates that the message (of the given category) should be cleared. "category" is the message group to which the message belongs. It is an arbitrary string (it must be at least one character). "timeout" is the amount of time, in milliseconds, that the message should appear. A value of 0 indicates that the message does not timeout. "highlight" is a boolean indicating whether the message should be highlighted on the status bar. "interactive" is a boolean indicating whether the message corresponds to an interactive prompt (such as interactive search). These have higher 'priority' over non-interactive messages in case of conflict. A structure similar to a stack of status messages is maintained. The latest message is always shown. When/if it timesout then the previous message is the stack is displayed. There can only be one message per category, so reusing a category allows for removal of status messages that are no longer appropriate. To add a message that does not timeout: ko.statusBar.addMessage("hello there", "my_category", 0, false) To remove that message: ko.statusBar.addMessage(null, "my_category", 0, false) To add a highlighted message for three seconds: ko.statusBar.addMessage("hello there", "my_category", 3000, true)


Clear()

Clear clear all statusbar elements


ClearCheck()

ClearCheck clear the syntax checking status


dump()

dump dump the current message stack to stdout


ko.stringutils

Functions

bytelength(s)

Returns - _sysUtils.byteLength()


charIndexFromPosition(s, p)

Returns - _sysUtils.charIndexFromPosition()


escapeWhitespace(text)

Returns - String


getSubAttr(value, subattrname)

unescapeWhitespace(text, eol)

Returns - newtext


updateSubAttr(oldValue, subattrname, subattrvalue)

Returns - newValue


ko.toolboxes

Variables

user - toolboxManager


Functions

addCommand(command, cwd, env, insertOutput, operateOnSelection, doNotOpenOutputWindow, runIn, parseOutput, parseRegex, showParsedOutputList, name)

importPackage(filename)

onload()

updateSharedToolbox()

In a discussion btwn DavidA and TrentM it was decided that the shared toolbox behaviour should be the following (in light of the possibility that the current Komodo user might not have permissions to write to the shared toolbox location): - If the useSharedToolbox pref is false, then shared toolbox support is off. - Else if the shared toolbox file exists then shared toolbox support is on. - Else if the user DOES have access to write to the shared toolbox file location then a blank one is created (as for the normal Toolbox) and shared toolbox support is on. - Else (useSharedToolbox is true, the shared toolbox file does not exist and the user does NOT have write access) shared toolbox support is turned off. Update the shared toolbox state (i.e. enable or disable it).


ko.toolboxes.shared

ko.toolboxes.shared.viewMgr

ko.trace

Functions

get()

Returns - _tracer


Classes

class Trace

Constructor

Trace()

Class variables

constructor


myPerfTimer - Object


perfLog - Number


timelineService - Components.interfaces.nsITimelineService


Class functions

enter(text)

indent(text)

leave(text)

mark(text)

markTimer(name, text)

outdent(text)

perfTimer(name, title, reset)

resetTimer(name)

startTimer(name)

stopTimer(name)

timestamp(name, title)


ko.uilayout

Functions

buildViewAsLanguageMenu()

ensureOutputPaneShown()

ensurePaneForTabHidden(tabName)

ensurePaneShown(tabs)

ensureTabShown(tabId, focusToo)

focusPane(tabsId)

fullScreen()

isButtonTextShowing()

Returns - _buttonTextShowing


isCodeBrowserTabShown()

Returns - Boolean


isPaneShown(tabs)

Returns - Boolean


leftPaneShown()

newFileFromTemplateOrTrimMRU(templateURI, mruPrefName, mruIndex)

Returns - ko.views.manager.doFileNewFromTemplate()


onFullScreen()

onload()

onloadDelayed()

outputPaneShown()

populatePreviewToolbarButton(popup)

restoreTabSelections()

rightPaneShown()

saveTabSelections()

toggleButtons()

togglePane(splitterId, tabsId, cmdId, force)

toggleSplitter(aCommandID)

toggleTab(tabId, collapseIfFocused)

toggleToolbarVisibility(toolbarId)

unload()

updateFullScreen()

updateMRUMenuIfNecessary(mru)

updateSplitterBroadcasterState(aCommandID)

updateTabpickerMenu(menupopup)

updateTitlebar(view)

updateToolbarArrangement(buttonTextShowing)

updateViewAsMenuIfNecessary()

updateWindowList(popup)

ko.uriparse

Functions to convert/parse strings representing URLs, files, etc. This is basically a loose shim around class URIParser in URIlib.py (somewhat obtusely via koIFileEx). Routines: ko.uriparse.localPathToURI(<localPath>) ko.uriparse.pathToURI(<URI or localPath>) ko.uriparse.URIToLocalPath(<URI or localPath>) ko.uriparse.displayPath(<localPath or URI>) ko.uriparse.baseName(<localPath or URI>) ko.uriparse.dirName(<localPath or URI>) ko.uriparse.ext(<localPath or URI>) Dev Notes: - This module caches a single koIFileEx instance to, presumably, speed things up.

Functions

addMappedURI(uri, path)

Show the dialog for creating a new mapped URI with the supplied uri and path arguments.

Arguments

uri - String

The URI to add a mapping for.

path - String

The path the URI will be mapped to.

Returns - Boolean


baseName(file)

Get the basename (a.k.a. leafName) of the given file. "file" can be a local filename or URI. Examples: file:///D:/trentm/foo.txt -> foo.txt D:\trentm\foo.txt -> foo.txt ftp://ftp.activestate.com/ActivePython -> ActivePython

Returns - koFileEx.baseName


dirName(file)

Get the dirname of the given file. "file" can be a local filename or URI referring to a local file. Examples: file:///D:/trentm/foo.txt -> D:\trentm D:\trentm\foo.txt -> D:\trentm ftp://ftp.activestate.com/ActivePython -> throws exception

Returns - koFileEx.dirName


displayPath(uri)

Get an appropriate representation of the given URI for display to the user. "uri", typically, is a URI, though it can be a local filename as well. Examples: file:///D:/trentm/foo.txt -> D:\trentm\foo.txt D:\trentm\foo.txt -> D:\trentm\foo.txt ftp://ftp.activestate.com/ActivePython -> ftp://ftp.activestate.com/ActivePython

Returns - koFileEx.displayPath


ext(file)

Get the extension of the given file. "file" can be a local filename or URI

Returns - koFileEx.ext


deprecated fixupURI(uri)

DEPRECATED: Was once used to ensure URI's were properly formatted.

Returns - uri


getMappedPath(path, prefs)

This is a reverse of getMappedURI. Return a unmapped URI if there is a pref setup to match the given path, else return whatever was passed in. Note: If a mapping existed, the return result is *always* a URI.

Arguments

path - String

The path or URI to check for uri mappings.

prefs - Components.interfaces.koIPreferenceSet

Optional. The preference set to check against.

Returns - String


getMappedURI(uri, prefs)

Uses the supplied URI to check if there are any special mappings setup in order to change this URI into another location. If there is a match, return the new URI, else return the original URI.

Arguments

uri - String

The URI to check.

prefs - Components.interfaces.koIPreferenceSet

Optional. The preference set to check against.

Returns - String


localPathToURI(localPath)

Get the URI representation of the given local file path. "localPath" must be a local file path. Returns the URI for the given path or raises an exception if "localPath" is not a local path. Examples: D:\trentm\foo.txt -> file:///D:/trentm/foo.txt \\planer\d\trentm\tmp\foo.txt -> file://planer/d/trentm/tmp/foo.txt file:///D:/trentm/foo.txt -> throws exception ftp://ftp.activestate.com/ActivePython -> throws exception

Returns - koFileEx.URI


pathToURI(path)

Get the URI representation of the given local file path or URI "path" must be a local file path or a URI Returns the URI for the given path or the URI if one was passed in. Examples: D:\trentm\foo.txt -> file:///D:/trentm/foo.txt file:///D:/trentm/foo.txt -> file:///D:/trentm/foo.txt ftp://ftp.activestate.com/ActivePython -> ftp://ftp.activestate.com/ActivePython

Returns - koFileEx.URI


URIToLocalPath(uri)

Get the local file path for the given URI. "uri" may be a URI for a local file or a local path. Returns the local file path or raises an exception if there is no local file representation for that URI. Note: I would rather this explicitly raised if "uri" were a local path, but koIFileEx does not work that way. Examples: D:\trentm\foo.txt -> D:\trentm\foo.txt file:///D:/trentm/foo.txt -> D:\trentm\foo.txt ftp://ftp.activestate.com/ActivePython -> throws exception

Returns - koFileEx.path


ko.views

Variables

manager - ko.views.viewManager

Get the view manager.


viewManager - viewManager


Functions

onload()

ScimozOffsetFromUCS2Offset(scimoz, pos, delta)

Returns - pos


Classes

class ViewHistory

view history controller Recently-visited views: The viewhistory object maintains a stack of recently visited lists. This information can be used to switch to recent views. The semantics of the following methods are as follows: - .getNextMostRecentView() and .getNextLeastRecentView() are used by the buffer switching commands to know which views to switch to. - .enterBufferSwitchingSession() and .exitBufferSwitchingSession() are called by the buffer swiching commands to help .setMostRecentView() know how to behave (the "recent views" stack is NOT updated during such a session). Note that .enter...() may be called multiple times for one .exit...() call. - .setMostRecentView() is called by the view manager's .selectView() and can be called directly by the buffer switching commands for proper session handling. NOTE: THIS BEHAVIOR IS TURNED OFF BY SETTING "handlestctrltab" to false on the tabbed view.

Constructor

ViewHistory()

Class variables

_currentView - subject


_keylistener


_observingCtrlKeyUp - Boolean


_recentViews - Array


_timeout - objectTimer


constructor


inBufferSwitchingSession - Boolean


log - ko.logging.getLogger()


Class functions

_debug_recentViews()

_keylistener(event)
Arguments

event - Event


_setKeyListener()

ctrlup(event)
Arguments

event - Event


doNextLeastRecentView()

doNextMostRecentView()

enterBufferSwitchingSession()

exitBufferSwitchingSession()

getNextLeastRecentView()

Returns - view


getNextMostRecentView()

Returns - view


getState()

Returns - state


observe(subject, topic, data)

removeRecentView(view)

setMostRecentView(view)

setState(state, viewcontainer)


ko.widgets

Functions

getEncodingPopup(hierarchy, toplevel, action)

Returns - menuitem


ko.window

Functions

checkDiskFiles(event)

view_checkDiskFiles is only called from the window's focus handler, located in komodo.xul. it handles checking if any files have changed.

Arguments

event - Event

Returns - Boolean


focusedScintilla()

does scintilla have focus? Return the scintilla widget

Returns - Element


focusedView()

does any view widget have focus? return which one does or null

Returns - Element


getCwd()

get the current working directory for the window, which is the directory of the current buffer, or the home directory of the user

Returns - String


ko.windowManager

Functions

closeAll()

close all open windows, return true if successful. The normal goQuitApplication function in toolkit does this, but we want to prevent quitting if one of the dialogs prevents shutdown by not closing.

Returns - Boolean


fixupOpenDialogArgs(inargs)

Returns - args


fixupOpenDialogFeatures(features)

Return a "fixed-up" version of the "features" argument for window.openDialog(). This tweaks the string on Mac OS X to ensure the dialog is *not* opened as a sheet.

Arguments

features - String

The features string to fixup. Pass in null to get a reasonable default.

Returns - features


getMainWindow()

return a reference to the main Komodo window

Returns - wm.getMostRecentWindow()


openDialog()

An alternative version of window.openDialog() that does some fixups that Komodo wants in general.

Returns - window.openDialog.apply()


openOrFocusDialog(chromeURI, windowType)

Open a window if no windows of windowType exist. Otherwise, bring the window of windowType to the front. Parameters for this function are identical to window.openDialog()

Returns - window.openDialog.apply()


ko.workspace

Functions

restoreInProgress()

Returns - _restoreInProgress


restoreWorkspace()

restore all workspace preferences and state, open files and projects


saveWorkspace()

save all workspace preferences and state