You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
104 lines
2.2 KiB
104 lines
2.2 KiB
|
|
var MousePosX = null;
|
|
var MousePosY = null;
|
|
|
|
|
|
//
|
|
// init all variables with the class givin
|
|
$(document).ready(function() {
|
|
// console.log ("init");
|
|
|
|
$(".GUIwindow").each( function (i) {
|
|
gWindowDragElement(this);
|
|
});
|
|
|
|
document.addEventListener('mousemove', onMouseUpdate, false);
|
|
document.addEventListener('mouseenter', onMouseUpdate, false);
|
|
|
|
});
|
|
|
|
|
|
function onMouseUpdate(e) {
|
|
MousePosX = e.pageX;
|
|
MousePosY = e.pageY;
|
|
}
|
|
|
|
function getMouseX() {
|
|
return MousePosX;
|
|
}
|
|
|
|
function getMouseY() {
|
|
return MousePosY;
|
|
}
|
|
|
|
|
|
|
|
//
|
|
//
|
|
function gAddEventListener (id, eventname, callback) {
|
|
var obj = document.getElementById(id);
|
|
|
|
if (obj) obj.addEventListener(eventname, callback);
|
|
};
|
|
|
|
|
|
//
|
|
// get the text between Text1 and Text2
|
|
function getTextBetween(fulltext, text1, text2) {
|
|
var end1 = text1.length;
|
|
var start2 = fulltext.length-text2.length;
|
|
|
|
if (end1 < start2) {
|
|
return fulltext.substr(text1.length, start2-end1);
|
|
}
|
|
else return "";
|
|
};
|
|
|
|
|
|
|
|
//
|
|
// Context Menus
|
|
function gContextmenuCreate(title, clientInnerHTML) {
|
|
let cm = document.getElementById("ContextMenu");
|
|
if (cm) {
|
|
let parent = cm.parentNode;
|
|
parent.removeChild(cm);
|
|
}
|
|
|
|
console.log("create Contextmenu:" + title);
|
|
|
|
var head = document.createElement("div");
|
|
head.setAttribute("id", "ConextMenuHead");
|
|
head.setAttribute("class", "GUIcontextmenuHead");
|
|
head.innerHTML = title;
|
|
|
|
var client = document.createElement("div");
|
|
client.setAttribute("id", "ContextMenuClient");
|
|
client.setAttribute("class", "GUIcontextmenuClient");
|
|
client.setAttribute("style", "max-height: 400px; max-width:150px;");
|
|
client.innerHTML = clientInnerHTML;
|
|
|
|
cm = document.createElement("div");
|
|
cm.setAttribute("id", "ContextMenu");
|
|
cm.setAttribute("class", "GUIcontextmenu");
|
|
cm.appendChild (head);
|
|
cm.appendChild (client);
|
|
|
|
document.body.appendChild(cm);
|
|
cm.style.top = getMouseY();
|
|
cm.style.left = getMouseX();
|
|
|
|
if (parseInt(cm.style.left) + 150 > window.innerWidth) cm.style.left = window.innerWidth - 150;
|
|
if (parseInt(cm.style.top) + 400 > window.innerHeight) cm.style.top = window.innerHeight - 400;
|
|
|
|
return cm;
|
|
};
|
|
|
|
function gContextmenuClose() {
|
|
let cm = document.getElementById("ContextMenu");
|
|
if (cm) {
|
|
let parent = cm.parentNode;
|
|
parent.removeChild(cm);
|
|
}
|
|
};
|