svn commit: samba r9779 - in branches/SAMBA_4_0/swat: desktop
scripting/client
deryck at samba.org
deryck at samba.org
Tue Aug 30 03:55:08 GMT 2005
Author: deryck
Date: 2005-08-30 03:55:08 +0000 (Tue, 30 Aug 2005)
New Revision: 9779
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9779
Log:
Add a contextmenu function to be used by all window/widget objects.
deryck
Modified:
branches/SAMBA_4_0/swat/desktop/index.esp
branches/SAMBA_4_0/swat/scripting/client/desktop.js
Changeset:
Modified: branches/SAMBA_4_0/swat/desktop/index.esp
===================================================================
--- branches/SAMBA_4_0/swat/desktop/index.esp 2005-08-30 03:37:14 UTC (rev 9778)
+++ branches/SAMBA_4_0/swat/desktop/index.esp 2005-08-30 03:55:08 UTC (rev 9779)
@@ -51,30 +51,6 @@
blank.setVisible(true);
}
-function showContextMenu(e)
-{
- var aboutCmd = new QxCommand();
- aboutCmd.addEventListener("execute", function() {
- showMessage("SWAT, the Samba Web Administration Tool.<br/>This tool is currently under development.");
- });
-
- var newWin = new QxCommand();
- newWin.addEventListener("execute", blankW);
-
- cmenu = new QxMenu;
-
- var sub1 = new QxMenuButton("About SWAT", null, aboutCmd);
- var sep = new QxMenuSeparator();
- var sub2 = new QxMenuButton("New Window", null, newWin);
-
- cmenu.add(sub1, sep, sub2);
-
- cmenu.setLeft(e.getClientX());
- cmenu.setTop(e.getClientY());
- w.add(cmenu);
- cmenu.setVisible(true);
-}
-
// Always open with stats
var win = new QxWindow();
document.js.add('/scripting/client/status.js');
@@ -116,6 +92,48 @@
regWin.setVisible('true');
}
+function clientContextMenu(e)
+{
+ var aboutCmd = new QxCommand();
+ aboutCmd.addEventListener("execute", function() {
+ showMessage("SWAT, the Samba Web Administration Tool.<br/>This tool is currently under development.");
+ });
+
+ var newWin = new QxCommand();
+ newWin.addEventListener("execute", blankW);
+
+ var cmenu = new QxMenu;
+
+ var sub1 = new QxMenuButton("About SWAT", null, aboutCmd);
+ var sep = new QxMenuSeparator();
+ var sub2 = new QxMenuButton("New Window", null, newWin);
+
+ cmenu.add(sub1, sep, sub2);
+
+ cmenu.setLeft(e.getClientX());
+ cmenu.setTop(e.getClientY());
+ w.add(cmenu);
+ cmenu.setVisible(true);
+}
+
+function windowContextMenu(t, e)
+{
+ var WinWin = new QxCommand();
+ WinWin.addEventListener("execute", function() {
+ var blank = new QxWindow();
+ t.add(blank);
+ blank.setVisible(true);
+ });
+
+ var inset = new QxMenu;
+ var sub1 = new QxMenuButton("Open window in a window", null, WinWin);
+
+ inset.add(sub1);
+ t.add(inset)
+
+ inset.setVisible(true);
+}
+
function startMenu()
{
var sMenu = new QxMenu;
Modified: branches/SAMBA_4_0/swat/scripting/client/desktop.js
===================================================================
--- branches/SAMBA_4_0/swat/scripting/client/desktop.js 2005-08-30 03:37:14 UTC (rev 9778)
+++ branches/SAMBA_4_0/swat/scripting/client/desktop.js 2005-08-30 03:55:08 UTC (rev 9779)
@@ -89,26 +89,6 @@
blank.setVisible(true);
}
-function winMenu(e)
-{
- var self = this;
- var WinWin = new QxCommand();
- WinWin.addEventListener("execute", function() {
- var blank = new QxWindow();
- self.add(blank);
- blank.setVisible(true);
- });
-
- var inset = new QxMenu;
- var sub1 = new QxMenuButton("Open window in a window", null, WinWin);
-
- inset.add(sub1);
- self.add(inset)
-
- cmenu.setVisible(false);
- inset.setVisible(true);
-}
-
function Window(h, src, s)
{
this.self = new QxWindow(h);
@@ -121,7 +101,7 @@
this.self.setTop(getPosX(this.self));
this.self.setLeft(getPosY(this.self));
- this.self.addEventListener("contextmenu", winMenu);
+ this.self.addEventListener("contextmenu", contextMenu);
return this.self;
}
@@ -148,10 +128,23 @@
Window.standard = StandardWindow;
Window.large = LargeWindow;
+function contextMenu(e)
+{
+ var t = e.getTarget()
+ var tObj = t.getHtmlAttribute("class")
+
+ if (tObj == 'QxWidget') {
+ clientContextMenu(e);
+ } else if (tObj == 'QxWindowPane') {
+ windowContextMenu(t, e);
+ }
+}
+
+
window.application.main = function()
{
var doc = this.getClientWindow().getClientDocument();
- doc.addEventListener("contextmenu", showContextMenu);
+ doc.addEventListener("contextmenu", contextMenu);
doc.add(w);
var bar = new QxMenuBar;
More information about the samba-cvs
mailing list