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

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);
}
};