summaryrefslogtreecommitdiff
path: root/swat/scripting/client/swat.js
blob: e6a4230f10cde23e74ef1f865a415815d7b0ac4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/*
   Windows, tabs, and general widgetry for SWAT.

   Copyright (C) Deryck Hodge 2005
   released under the GNU GPL Version 2 or later
*/


/* Qooxdoo's browser sniffer doesn't distinguish IE version.
We'll cover IE 6 for now, but these checks need to be
revisited for fuller browser coverage. */
var browser = QxClient().engine;

function docX()
{
	var x;
	if (browser != "mshtml") {
		x = window.innerWidth;
	} else {
		x = document.documentElement.clientWidth;
	}
	return x;
}

function docY()
{
	var y;
	// Less 25px to not cover the toolbar
	if (browser != "mshtml") {
		y = window.innerHeight - 25;
	} else {
		y = document.documentElement.clientHeight;
	}
	return y;
}

function sizeX()
{
	var sX = Math.floor(docX() * .45);
	return sX;
}

function sizeY()
{
	var sY = Math.floor(docY() * .45);
	return sY;
}

function getPosX()
{
	var y = Math.floor( (docY() - sizeY()) * Math.random() );
	return y;
}

function getPosY()
{
	var x = Math.floor( (docX() - sizeX()) * Math.random() );
	return x;
}

function openIn(e)
{
	var blank = new Window("New Menu");
	e.add(blank);
	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(title)
{
	var self = new QxWindow(title);
	self.setTop(getPosX());
	self.setLeft(getPosY());
	self.setMinWidth(sizeX());
	self.setMinHeight(sizeY());
	self.addEventListener("contextmenu", winMenu);
	return self;
}