зеркало из https://github.com/mozilla/gecko-dev.git
58 строки
1.5 KiB
JavaScript
58 строки
1.5 KiB
JavaScript
|
|
function ltnCreateInstance(cid, iface) {
|
|
if (!iface)
|
|
iface = "nsISupports";
|
|
try {
|
|
return Components.classes[cid].createInstance(Components.interfaces[iface]);
|
|
} catch(e) {
|
|
dump("#### ltnCreateInstance failed for: " + cid + "\n");
|
|
var frame = Components.stack;
|
|
for (var i = 0; frame && (i < 4); i++) {
|
|
dump(i + ": " + frame + "\n");
|
|
frame = frame.caller;
|
|
}
|
|
throw e;
|
|
}
|
|
}
|
|
|
|
function ltnGetService(cid, iface) {
|
|
if (!iface)
|
|
iface = "nsISupports";
|
|
try {
|
|
return Components.classes[cid].getService(Components.interfaces[iface]);
|
|
} catch(e) {
|
|
dump("#### ltnGetService failed for: " + cid + "\n");
|
|
var frame = Components.stack;
|
|
for (var i = 0; frame && (i < 4); i++) {
|
|
dump(i + ": " + frame + "\n");
|
|
frame = frame.caller;
|
|
}
|
|
throw e;
|
|
}
|
|
}
|
|
|
|
var atomSvc;
|
|
function ltnGetAtom(str) {
|
|
if (!atomSvc) {
|
|
atomSvc = ltnGetService("@mozilla.org/atom-service;1", "nsIAtomService");
|
|
}
|
|
|
|
return atomSvc.getAtom(str);
|
|
}
|
|
|
|
var CalDateTime = new Components.Constructor("@mozilla.org/calendar/datetime;1",
|
|
Components.interfaces.calIDateTime);
|
|
|
|
// Use these functions, since setting |element.collapsed = true| is NOT reliable
|
|
function collapseElement(element) {
|
|
element.style.visibility = "collapse";
|
|
}
|
|
|
|
function uncollapseElement(element) {
|
|
element.style.visibility = "";
|
|
}
|
|
|
|
function updateUndoRedoMenu() {
|
|
//XXX give Lightning some undo/redo UI!
|
|
}
|