mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
This commit is contained in:
Executable
+14
@@ -0,0 +1,14 @@
|
||||
[App]
|
||||
Name=FHC-Planner
|
||||
ID=planner@technikum-wien.at
|
||||
Version=0.1
|
||||
BuildID=20110901
|
||||
Vendor=FH Technikum Wien
|
||||
Copyright=Copyright (c) 2004-2011 FH TW
|
||||
|
||||
[Gecko]
|
||||
MinVersion=1.0
|
||||
MaxVersion=7.0
|
||||
|
||||
[XRE]
|
||||
EnableExtensionManager=1
|
||||
Executable
+9
@@ -0,0 +1,9 @@
|
||||
content planner chrome/content/
|
||||
skin planner classic/1.0 chrome/skin/
|
||||
overlay chrome://browser/content/browser.xul chrome://planner/content/browser-overlay.xul
|
||||
style chrome://browser/content/browser.xul chrome://planner/skin/planner.css
|
||||
overlay chrome://navigator/content/navigator.xul chrome://planner/content/browser-overlay.xul
|
||||
|
||||
locale planner en-US chrome/locale/en-US/
|
||||
locale planner de-AT chrome/locale/de-AT/
|
||||
|
||||
Executable
+18
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
|
||||
|
||||
<!DOCTYPE dialog SYSTEM "chrome://planner/locale/about.dtd">
|
||||
|
||||
<dialog title="&about; FHC-Planner" orient="vertical" autostretch="always" onload="sizeToContent()" buttons="accept" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
<groupbox align="center" orient="horizontal">
|
||||
<vbox>
|
||||
<text value="FHC-Planner" style="font-weight: bold; font-size: x-large;"/>
|
||||
<text value="&version; 1.0"/>
|
||||
<separator class="thin"/>
|
||||
<text value="&createdBy;" style="font-weight: bold;"/>
|
||||
<text value="Christian Paminger"/>
|
||||
<separator class="thin"/>
|
||||
</vbox>
|
||||
</groupbox>
|
||||
</dialog>
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
var planner = {
|
||||
onLoad: function() {
|
||||
// initialization code
|
||||
this.initialized = true;
|
||||
this.strings = document.getElementById("planner-strings");
|
||||
},
|
||||
|
||||
onMenuItemCommand: function(e) {
|
||||
var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"]
|
||||
.getService(Components.interfaces.nsIPromptService);
|
||||
promptService.alert(window, this.strings.getString("helloMessageTitle"),
|
||||
this.strings.getString("helloMessage"));
|
||||
},
|
||||
|
||||
onToolbarButtonCommand: function(e) {
|
||||
// just reuse the function above. you can change this, obviously!
|
||||
planner.onMenuItemCommand(e);
|
||||
}
|
||||
};
|
||||
|
||||
window.addEventListener("load", planner.onLoad, false);
|
||||
+31
@@ -0,0 +1,31 @@
|
||||
<?xml version="1.0"?>
|
||||
<?xml-stylesheet href="chrome://planner/skin/planner.css" type="text/css"?>
|
||||
<!DOCTYPE overlay SYSTEM "chrome://planner/locale/planner.dtd">
|
||||
<overlay id="overlay-planner"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
<!--<script type="application/x-javascript" src="chrome://planner/content/browser-overlay.js"/>-->
|
||||
<script type="application/x-javascript">
|
||||
var PlannerStart = function()
|
||||
{
|
||||
var winref=window.open('chrome://planner/content/planner.xul', 'window-planner', 'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1');
|
||||
}
|
||||
</script>
|
||||
|
||||
<menupopup id="menu_ToolsPopup">
|
||||
<menuitem id="menutitem-toolbar-planner" label="Planner" key="planner-run-key" oncommand="PlannerStart()"/>
|
||||
</menupopup>
|
||||
<menupopup id="windowPopup">
|
||||
<menuitem id="menutitem-toolbar-planner" insertafter="tb-chatzilla-menu" label="Planner" key="planner-run-key" oncommand="PlannerStart()"/>
|
||||
</menupopup>
|
||||
|
||||
<keyset>
|
||||
<key id="key-planner-run" modifiers="accel alt shift" key="P" oncommand="PlannerStart()"/>
|
||||
</keyset>
|
||||
|
||||
<window id="main-window">
|
||||
<vbox id="browser-bottombox">
|
||||
<toolbarbutton insertbefore="status-bar" id="planner-toolbar-button" class="statusbarpanel-iconic" label="Planner" src="chrome://planner/skin/planner.png" tooltiptext="runplanner" oncommand="PlannerStart()"/>
|
||||
</vbox>
|
||||
</window>
|
||||
|
||||
</overlay>
|
||||
Executable
+293
@@ -0,0 +1,293 @@
|
||||
|
||||
var FileController = {
|
||||
_app : null,
|
||||
|
||||
init : function(aApp) {
|
||||
this._app = aApp;
|
||||
},
|
||||
|
||||
supportsCommand : function(cmd) {
|
||||
var isSupported = false;
|
||||
switch (cmd) {
|
||||
case "cmd_pageSetup":
|
||||
case "cmd_print":
|
||||
case "cmd_exit":
|
||||
isSupported = true;
|
||||
break;
|
||||
default:
|
||||
isSupported = false;
|
||||
break;
|
||||
}
|
||||
return isSupported;
|
||||
},
|
||||
|
||||
isCommandEnabled : function(cmd) {
|
||||
return true;
|
||||
},
|
||||
|
||||
doCommand : function(cmd) {
|
||||
switch (cmd) {
|
||||
case "cmd_pageSetup":
|
||||
{
|
||||
PrintUtils.showPageSetup();
|
||||
break;
|
||||
}
|
||||
case "cmd_print":
|
||||
{
|
||||
PrintUtils.print();
|
||||
break;
|
||||
}
|
||||
case "cmd_exit":
|
||||
{
|
||||
if (this._app.shutdownQuery() == false) {
|
||||
return;
|
||||
}
|
||||
|
||||
var aForceQuit = false;
|
||||
var appStartup = Components.classes['@mozilla.org/toolkit/app-startup;1'].getService(Components.interfaces.nsIAppStartup);
|
||||
|
||||
// eAttemptQuit will try to close each XUL window, but the XUL window can cancel the quit
|
||||
// process if there is unsaved data. eForceQuit will quit no matter what.
|
||||
var quitSeverity = aForceQuit ? Components.interfaces.nsIAppStartup.eForceQuit : Components.interfaces.nsIAppStartup.eAttemptQuit;
|
||||
appStartup.quit(quitSeverity);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
var ToolsController = {
|
||||
_app : null,
|
||||
|
||||
init : function(aApp) {
|
||||
this._app = aApp;
|
||||
},
|
||||
|
||||
supportsCommand : function(cmd) {
|
||||
var isSupported = false;
|
||||
switch (cmd) {
|
||||
case "cmd_options":
|
||||
isSupported = true;
|
||||
break;
|
||||
default:
|
||||
isSupported = false;
|
||||
break;
|
||||
}
|
||||
return isSupported;
|
||||
},
|
||||
|
||||
isCommandEnabled : function(cmd) {
|
||||
return true;
|
||||
},
|
||||
|
||||
doCommand : function(cmd) {
|
||||
switch (cmd) {
|
||||
case "cmd_options":
|
||||
{
|
||||
window.openDialog("chrome://planner/content/options.xul", "options", "centerscreen,modal");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
var HelpController = {
|
||||
_app : null,
|
||||
|
||||
init : function(aApp) {
|
||||
this._app = aApp;
|
||||
},
|
||||
|
||||
supportsCommand : function(cmd) {
|
||||
var isSupported = false;
|
||||
switch (cmd) {
|
||||
case "cmd_about":
|
||||
isSupported = true;
|
||||
break;
|
||||
default:
|
||||
isSupported = false;
|
||||
break;
|
||||
}
|
||||
return isSupported;
|
||||
},
|
||||
|
||||
isCommandEnabled : function(cmd) {
|
||||
return true;
|
||||
},
|
||||
|
||||
doCommand : function(cmd) {
|
||||
switch (cmd) {
|
||||
case "cmd_about":
|
||||
{
|
||||
window.openDialog("chrome://planner/content/about.xul", "about", "centerscreen,modal");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Command Updater
|
||||
*/
|
||||
var CommandUpdater = {
|
||||
/**
|
||||
* Gets a controller that can handle a particular command.
|
||||
* @param command
|
||||
* A command to locate a controller for, preferring controllers that
|
||||
* show the command as enabled.
|
||||
* @returns In this order of precedence:
|
||||
* - the first controller supporting the specified command
|
||||
* associated with the focused element that advertises the
|
||||
* command as ENABLED
|
||||
* - the first controller supporting the specified command
|
||||
* associated with the global window that advertises the
|
||||
* command as ENABLED
|
||||
* - the first controller supporting the specified command
|
||||
* associated with the focused element
|
||||
* - the first controller supporting the specified command
|
||||
* associated with the global window
|
||||
*/
|
||||
_getControllerForCommand: function(command) {
|
||||
try {
|
||||
var controller = top.document.commandDispatcher.getControllerForCommand(command);
|
||||
if (controller && controller.isCommandEnabled(command))
|
||||
return controller;
|
||||
}
|
||||
catch(e) {
|
||||
}
|
||||
var controllerCount = window.controllers.getControllerCount();
|
||||
for (var i = 0; i < controllerCount; ++i) {
|
||||
var current = window.controllers.getControllerAt(i);
|
||||
try {
|
||||
if (current.supportsCommand(command) && current.isCommandEnabled(command))
|
||||
return current;
|
||||
}
|
||||
catch (e) {
|
||||
}
|
||||
}
|
||||
return controller || window.controllers.getControllerForCommand(command);
|
||||
},
|
||||
|
||||
/**
|
||||
* Updates the state of a XUL <command> element for the specified command
|
||||
* depending on its state.
|
||||
* @param command
|
||||
* The name of the command to update the XUL <command> element for
|
||||
*/
|
||||
updateCommand: function(command) {
|
||||
var enabled = false;
|
||||
try {
|
||||
var controller = this._getControllerForCommand(command);
|
||||
if (controller) {
|
||||
enabled = controller.isCommandEnabled(command);
|
||||
}
|
||||
}
|
||||
catch(ex) { }
|
||||
|
||||
this.enableCommand(command, enabled);
|
||||
},
|
||||
|
||||
/**
|
||||
* Updates the state of a XUL <command> element for the specified command
|
||||
* depending on its state.
|
||||
* @param command
|
||||
* The name of the command to update the XUL <command> element for
|
||||
*/
|
||||
updateCommands: function(_commands) {
|
||||
var commands = _commands.split(",");
|
||||
for (var command in commands) {
|
||||
this.updateCommand(commands[command]);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Enables or disables a XUL <command> element.
|
||||
* @param command
|
||||
* The name of the command to enable or disable
|
||||
* @param enabled
|
||||
* true if the command should be enabled, false otherwise.
|
||||
*/
|
||||
enableCommand: function(command, enabled) {
|
||||
var element = document.getElementById(command);
|
||||
if (!element)
|
||||
return;
|
||||
if (enabled)
|
||||
element.removeAttribute("disabled");
|
||||
else
|
||||
element.setAttribute("disabled", "true");
|
||||
},
|
||||
|
||||
/**
|
||||
* Performs the action associated with a specified command using the most
|
||||
* relevant controller.
|
||||
* @param command
|
||||
* The command to perform.
|
||||
*/
|
||||
doCommand: function(command) {
|
||||
var controller = this._getControllerForCommand(command);
|
||||
if (!controller)
|
||||
return;
|
||||
controller.doCommand(command);
|
||||
},
|
||||
|
||||
/**
|
||||
* Changes the label attribute for the specified command.
|
||||
* @param command
|
||||
* The command to update.
|
||||
* @param labelAttribute
|
||||
* The label value to use.
|
||||
*/
|
||||
setMenuValue: function(command, labelAttribute) {
|
||||
var commandNode = top.document.getElementById(command);
|
||||
if (commandNode)
|
||||
{
|
||||
var label = commandNode.getAttribute(labelAttribute);
|
||||
if ( label )
|
||||
commandNode.setAttribute('label', label);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Changes the accesskey attribute for the specified command.
|
||||
* @param command
|
||||
* The command to update.
|
||||
* @param valueAttribute
|
||||
* The value attribute to use.
|
||||
*/
|
||||
setAccessKey: function(command, valueAttribute) {
|
||||
var commandNode = top.document.getElementById(command);
|
||||
if (commandNode)
|
||||
{
|
||||
var value = commandNode.getAttribute(valueAttribute);
|
||||
if ( value )
|
||||
commandNode.setAttribute('accesskey', value);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Inform all the controllers attached to a node that an event has occurred
|
||||
* (e.g. the tree controllers need to be informed of blur events so that they can change some of the
|
||||
* menu items back to their default values)
|
||||
* @param node
|
||||
* The node receiving the event
|
||||
* @param event
|
||||
* The event.
|
||||
*/
|
||||
onEvent: function(node, event) {
|
||||
var numControllers = node.controllers.getControllerCount();
|
||||
var controller;
|
||||
|
||||
for ( var controllerIndex = 0; controllerIndex < numControllers; controllerIndex++ )
|
||||
{
|
||||
controller = node.controllers.getControllerAt(controllerIndex);
|
||||
if ( controller )
|
||||
controller.onEvent(event);
|
||||
}
|
||||
}
|
||||
};
|
||||
Executable
+15
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
|
||||
<!DOCTYPE prefwindow SYSTEM "chrome://planner/locale/options.dtd">
|
||||
<prefwindow id="planner-preferences" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="&prefwindow.title;">
|
||||
<prefpane id="pane1" label="&pane1.title;">
|
||||
<preferences>
|
||||
<preference id="boolpref1" name="extensions.planner.boolpref" type="bool"/>
|
||||
<preference id="intpref1" name="extensions.planner.intpref" type="int"/>
|
||||
<preference id="stringpref1" name="extensions.planner.stringpref" type="string"/> <!-- note that this is only an ASCII string - use unichar for unicode strings -->
|
||||
</preferences>
|
||||
<checkbox id="checkboolpref" preference="boolpref1" label="&checkboolpref.label;" accesskey="&checkboolpref.accesskey;"/>
|
||||
<label accesskey="&intpref.accesskey;" control="textintpref">&intpref.label;</label><textbox id="textintpref" preference="intpref1"/>
|
||||
<label accesskey="&stringpref.accesskey;" control="textstringpref">&stringpref.label;</label><textbox id="textstringpref" preference="stringpref1"/>
|
||||
</prefpane>
|
||||
</prefwindow>
|
||||
Executable
+10
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0"?>
|
||||
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
|
||||
<window id="planner" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
title="Planner"
|
||||
width="800"
|
||||
height="600"
|
||||
persist="screenX screenY width height sizemode"
|
||||
>
|
||||
<browser flex="2" type="content-primary" src="https://vilesci.technikum-wien.at/content/planner.xul.php" />
|
||||
</window>
|
||||
Executable
+66
@@ -0,0 +1,66 @@
|
||||
treechildren::-moz-tree-cell(makeItGreen)
|
||||
{
|
||||
background-color: #88FF88;
|
||||
}
|
||||
treechildren::-moz-tree-cell(makeItRed)
|
||||
{
|
||||
background-color: #FFAAAA;
|
||||
}
|
||||
treechildren::-moz-tree-cell(makeItBlue)
|
||||
{
|
||||
background-color: #9999FF;
|
||||
}
|
||||
treechildren::-moz-tree-cell(makeItYellow)
|
||||
{
|
||||
background-color: #FFFF99;
|
||||
}
|
||||
|
||||
#motorsport-manager-toolbar-button {
|
||||
list-style-image: URL("chrome://motorsportmanager/skin/toolbar-large.png");
|
||||
}
|
||||
|
||||
#motorsport-manager-status-bar-icon {
|
||||
width: 83px;
|
||||
margin: 0 5px;
|
||||
}
|
||||
|
||||
.motorsport-manager-selected {
|
||||
outline: 2px solid red !important;
|
||||
}
|
||||
|
||||
|
||||
label.gesenkt
|
||||
{
|
||||
border-style:solid;
|
||||
border-width:1px;
|
||||
background-color:#33FF33;
|
||||
text-align:center;
|
||||
}
|
||||
label.normal
|
||||
{
|
||||
border-style:solid;
|
||||
border-width:1px;
|
||||
background-color:#FFFF33;
|
||||
text-align:center;
|
||||
}
|
||||
label.erhoeht
|
||||
{
|
||||
border-style:solid;
|
||||
border-width:1px;
|
||||
background-color:#FF3333;
|
||||
text-align:center;
|
||||
}
|
||||
textbox
|
||||
{
|
||||
max-height:1.6em;
|
||||
}
|
||||
button
|
||||
{
|
||||
max-height:1.8em;
|
||||
}
|
||||
grid
|
||||
{
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
border:0px;
|
||||
}
|
||||
Executable
Executable
+36
@@ -0,0 +1,36 @@
|
||||
// pref("toolkit.defaultChromeURI", "https://user:pass@vilesci.technikum-wien.at/content/planner.xul.php");
|
||||
// Entry Point for Extension
|
||||
pref("toolkit.defaultChromeURI", "chrome://planner/content/browser-overlay.xul");
|
||||
// Entry Point for Browser
|
||||
// pref("browser.chromeURL", "chrome://planner/content/planner.xul")
|
||||
|
||||
/* debugging prefs */
|
||||
pref("browser.dom.window.dump.enabled", true);
|
||||
pref("javascript.options.showInConsole", true);
|
||||
pref("javascript.options.strict", true);
|
||||
pref("nglayout.debug.disable_xul_cache", true);
|
||||
pref("nglayout.debug.disable_xul_fastload", true);
|
||||
|
||||
/* added to allow <label class="text-links" ... /> to work */
|
||||
pref("network.protocol-handler.expose.http", false);
|
||||
pref("network.protocol-handler.warn-external.http", false);
|
||||
|
||||
/* Remote XUL */
|
||||
user_pref("signed.applets.codebase_principal_support", true);
|
||||
|
||||
user_pref("capability.principal.codebase.p0.granted", "UniversalXPConnect");
|
||||
user_pref("capability.principal.codebase.p0.id", "http://fhcomplete.technikum-wien.at");
|
||||
user_pref("capability.principal.codebase.p0.subjectName", "");
|
||||
user_pref("capability.principal.codebase.p1.granted", "UniversalXPConnect");
|
||||
user_pref("capability.principal.codebase.p1.id", "http://calva.technikum-wien.at");
|
||||
user_pref("capability.principal.codebase.p1.subjectName", "");
|
||||
user_pref("capability.principal.codebase.p2.granted", "UniversalXPConnect");
|
||||
user_pref("capability.principal.codebase.p2.id", "https://vilesci.technikum-wien.at");
|
||||
user_pref("capability.principal.codebase.p2.subjectName", "");
|
||||
user_pref("capability.principal.codebase.p3.granted", "UniversalXPConnect");
|
||||
user_pref("capability.principal.codebase.p3.id", "http://dev.technikum-wien.at");
|
||||
user_pref("capability.principal.codebase.p3.subjectName", "");
|
||||
user_pref("capability.principal.codebase.p3.granted", "UniversalXPConnect");
|
||||
user_pref("capability.principal.codebase.p3.id", "http://localhost");
|
||||
user_pref("capability.principal.codebase.p3.subjectName", "");
|
||||
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0"?>
|
||||
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:em="http://www.mozilla.org/2004/em-rdf#">
|
||||
|
||||
<Description about="urn:mozilla:install-manifest"
|
||||
em:id="planner@technikum-wien.at"
|
||||
em:type="2"
|
||||
em:name="FHC-Planner"
|
||||
em:version="2.0.1"
|
||||
em:creator="Christian Paminger"
|
||||
em:contributor="Systementwicklung FH Technikum Wien"
|
||||
em:developer="Christian Paminger, Andreas Österreicher, Karl Burkhart"
|
||||
em:description="Projektmanagement Modul in FH-Complete"
|
||||
em:homepageURL="http://fhcomplete.technikum-wien.at/"
|
||||
em:aboutURL="chrome://planner/content/about.xul"
|
||||
em:optionsURL="chrome://planner/content/options.xul">
|
||||
<em:targetApplication resource="rdf:#$JrcLu"/>
|
||||
<em:targetApplication resource="rdf:#Seamonkey"/>
|
||||
</Description>
|
||||
<Description about="rdf:#$JrcLu">
|
||||
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <!-- Firefox -->
|
||||
<em:minVersion>2.0</em:minVersion>
|
||||
<em:maxVersion>6.2</em:maxVersion>
|
||||
</Description>
|
||||
<Description about="rdf:#Seamonkey">
|
||||
<em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id> <!-- SeaMonkey -->
|
||||
<em:minVersion>2.0b1</em:minVersion>
|
||||
<em:maxVersion>2.2.*</em:maxVersion>
|
||||
</Description>
|
||||
|
||||
</RDF>
|
||||
|
||||
Reference in New Issue
Block a user