101 lines
3.2 KiB
JavaScript
101 lines
3.2 KiB
JavaScript
function menuBarControl() {
|
|
var m_displayDom=document.createElement("div");
|
|
m_displayDom.setAttribute("class","menuBar");
|
|
m_displayDom.setAttribute("id","menuBar");
|
|
var m_fsControl=new fileSelectorControl(getFileList());
|
|
var m_fileName=new textControl("FILENAME",true);
|
|
var m_userName=new textControl("USER",true,true);
|
|
|
|
return(construct());
|
|
|
|
function construct() {
|
|
m_fileName.setDisplayMode();
|
|
m_displayDom.appendChild(m_fileName);
|
|
m_userName.setDisplayMode();
|
|
m_userName.setAttribute('id','userName');
|
|
m_userName.setAttribute('class','userName');
|
|
m_userName.setText(getUserInfo("name"));
|
|
var profileLink=document.createElement("span");
|
|
profileLink.setAttribute("class","link");
|
|
profileLink.appendChild(document.createTextNode("[Profile]"));
|
|
profileLink.onclick=function(){ window.open("profile.html"); }
|
|
m_userName.appendChild(document.createTextNode(" "));
|
|
m_userName.appendChild(profileLink);
|
|
m_displayDom.appendChild(m_userName);
|
|
|
|
var menuItems = new Array();
|
|
menuItems[menuItems.length]=new textMenuItem("Files",onFilesClick,"menuBarRootItem");
|
|
menuItems[menuItems.length]=new textMenuItem("Save",onSaveClick,"menuBarRootItem");
|
|
menuItems[menuItems.length]=new textMenuItem("More",onMoreClick,"menuBarRootItem");
|
|
menuItems[menuItems.length]=new textMenuItem("Log Out",logOutUser,"menuBarRootItem");
|
|
|
|
m_displayDom.menu=new menuControl(menuItems,0);
|
|
m_displayDom.menu.setAttribute("class","menuBarMenu");
|
|
|
|
m_displayDom.appendChild(m_displayDom.menu);
|
|
|
|
m_fsControl.hide();
|
|
m_displayDom.appendChild(m_fsControl);
|
|
document.addSubscriber(m_fsControl.hide,"clicked");
|
|
|
|
m_displayDom.setFileDescription=setFileDescription;
|
|
m_displayDom.show=show;
|
|
m_displayDom.hide=hide;
|
|
|
|
return(m_displayDom);
|
|
function onMoreClick(){
|
|
if (!this.menu){
|
|
var menuItems = new Array();
|
|
menuItems[menuItems.length]=new textMenuItem("New Map/Clear",onNewClick,"menuBarSubItem");
|
|
menuItems[menuItems.length]=new textMenuItem("Save Copy As",onSaveAsClick,"menuBarSubItem");
|
|
menuItems[menuItems.length]=new textMenuItem("Add Rootnode",onNewRootNodeClick,"menuBarSubItem");
|
|
menuItems[menuItems.length]=new textMenuItem("Reposition Nodes",autoRepositionNodes,"menuBarSubItem");
|
|
|
|
this.menu= new menuControl(menuItems,1);
|
|
this.menu.setAttribute("class","menuBarMenu");
|
|
this.appendChild(this.menu);
|
|
document.addSubscriber(this.menu.hide,"clicked");
|
|
} else {
|
|
this.menu.toggleVisible();
|
|
}
|
|
}
|
|
}
|
|
|
|
function onNewRootNodeClick(){
|
|
rootNode[rootNode.length]=new node(dataTools.getNewPKey(),"(enter text)");
|
|
}
|
|
|
|
function onNewClick() {
|
|
g_filePKey=null;
|
|
setFileDescription("FILENAME");
|
|
|
|
deleteAllRootNodes();
|
|
rootNode[0]=new node(dataTools.getNewPKey(),"(enter text)");
|
|
}
|
|
function onSaveClick() {
|
|
saveMap(m_fileName.getText());
|
|
m_fsControl.update(getFileList());
|
|
}
|
|
function onSaveAsClick() {
|
|
g_filePKey=null;
|
|
saveMap(m_fileName.getText());
|
|
m_fsControl.update(getFileList());
|
|
}
|
|
function onFilesClick() {
|
|
if (m_fsControl.isVisible) {
|
|
m_fsControl.hide();
|
|
} else {
|
|
m_fsControl.show();
|
|
}
|
|
}
|
|
function setFileDescription(description) {
|
|
m_fileName.setText(description);
|
|
}
|
|
function hide() {
|
|
this.style.display="none";
|
|
}
|
|
function show() {
|
|
this.style.display="block";
|
|
}
|
|
}
|