Side Tabs depending on elements of the workspace working
This commit is contained in:
1 parent
210f72effd
commit
a480b1595e
4 files changed
+100
-34
No files matched your search
@@ -413,6 +413,8 @@ function newWorkspace() {
|
||||
UI.projects.foundations.spaces.floatingSpace.inMapMode = false
|
||||
thisObject.isInitialized = true
|
||||
|
||||
UI.projects.governance.spaces.reportsSpace.reset()
|
||||
|
||||
await UI.projects.education.spaces.docsSpace.reset()
|
||||
await UI.projects.education.spaces.tutorialSpace.reset()
|
||||
|
||||
|
||||
@@ -15,7 +15,8 @@ function newSidePanelTab() {
|
||||
physics: physics,
|
||||
draw: draw,
|
||||
getContainer: getContainer,
|
||||
initialize: initialize
|
||||
initialize: initialize,
|
||||
finalize: finalize
|
||||
}
|
||||
|
||||
const TAB_WIDTH = 60
|
||||
@@ -26,6 +27,7 @@ function newSidePanelTab() {
|
||||
let animation = 'none'
|
||||
let ORIGINAL_PARENT_POSITON
|
||||
let xOffset = 0
|
||||
let onMouseClickEventSubscriptionId
|
||||
|
||||
thisObject.container = newContainer()
|
||||
thisObject.container.name = MODULE_NAME
|
||||
@@ -35,6 +37,11 @@ function newSidePanelTab() {
|
||||
|
||||
return thisObject
|
||||
|
||||
function finalize() {
|
||||
thisObject.pointerDirection = undefined
|
||||
thisObject.container.eventHandler.stopListening(onMouseClickEventSubscriptionId)
|
||||
}
|
||||
|
||||
function initialize(screenside, index) {
|
||||
thisObject.screenside = screenside
|
||||
if (index !== undefined) {
|
||||
@@ -54,7 +61,7 @@ function newSidePanelTab() {
|
||||
thisObject.container.frame.width = TAB_WIDTH
|
||||
thisObject.container.frame.height = TAB_HEIGHT
|
||||
|
||||
thisObject.container.eventHandler.listenToEvent('onMouseClick', onMouseClick)
|
||||
onMouseClickEventSubscriptionId = thisObject.container.eventHandler.listenToEvent('onMouseClick', onMouseClick)
|
||||
resize()
|
||||
isInitialized = true
|
||||
}
|
||||
@@ -126,7 +133,7 @@ function newSidePanelTab() {
|
||||
}
|
||||
|
||||
function positionPhysics() {
|
||||
thisObject.container.frame.position.y = browserCanvas.height / 2 - TAB_HEIGHT / 2 + thisObject.index * (TAB_HEIGHT - 1)
|
||||
thisObject.container.frame.position.y = browserCanvas.height / 2 - TAB_HEIGHT / 2 + (thisObject.index - 1) * TAB_HEIGHT
|
||||
}
|
||||
|
||||
function draw() {
|
||||
|
||||
@@ -6,7 +6,8 @@ function newFoundationsSideSpace() {
|
||||
rightTabs: undefined,
|
||||
physics: physics,
|
||||
draw: draw,
|
||||
createSidePanelTab, createSidePanelTab,
|
||||
createSidePanelTab: createSidePanelTab,
|
||||
deleteSidePanelTab: deleteSidePanelTab,
|
||||
getContainer: getContainer,
|
||||
initialize: initialize,
|
||||
finalize: finalize
|
||||
@@ -60,28 +61,68 @@ function newFoundationsSideSpace() {
|
||||
return sidePanel
|
||||
}
|
||||
|
||||
function deleteSidePanelTab(porject, iconName, label, side) {
|
||||
|
||||
let key = porject + '-' + iconName + '-' + label + '-' + side
|
||||
if (existingTabs.get(key) !== undefined) {
|
||||
let sidePanelTab = existingTabs.get(key)
|
||||
|
||||
switch (side) {
|
||||
case 'left': {
|
||||
thisObject.leftTabs.splice(sidePanelTab.index - 1, 1)
|
||||
break
|
||||
}
|
||||
case 'right': {
|
||||
thisObject.rightTabs.splice(sidePanelTab.index - 1, 1)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
sidePanelTab.finalize()
|
||||
existingTabs.delete(key)
|
||||
|
||||
/*
|
||||
Reindex Remaining SidTabs
|
||||
*/
|
||||
let indexLeft = 1
|
||||
let indexRight = 1
|
||||
|
||||
existingTabs.forEach(reindex)
|
||||
|
||||
function reindex(sideTab, key, map) {
|
||||
switch (sideTab.screenside) {
|
||||
case 'left': {
|
||||
sideTab.index = indexLeft
|
||||
indexLeft++
|
||||
break
|
||||
}
|
||||
case 'right': {
|
||||
sideTab.index = indexRight
|
||||
indexRight++
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getContainer(point, purpose) {
|
||||
|
||||
}
|
||||
|
||||
function physics() {
|
||||
for (let i = 0; i < thisObject.leftTabs.length; i++) {
|
||||
let sideTab = thisObject.leftTabs[i]
|
||||
sideTab.physics()
|
||||
}
|
||||
for (let i = 0; i < thisObject.rightTabs.length; i++) {
|
||||
let sideTab = thisObject.rightTabs[i]
|
||||
existingTabs.forEach(sideTabPhysics)
|
||||
|
||||
function sideTabPhysics(sideTab, key, map) {
|
||||
sideTab.physics()
|
||||
}
|
||||
}
|
||||
|
||||
function draw() {
|
||||
for (let i = 0; i < thisObject.leftTabs.length; i++) {
|
||||
let sideTab = thisObject.leftTabs[i]
|
||||
sideTab.draw()
|
||||
}
|
||||
for (let i = 0; i < thisObject.rightTabs.length; i++) {
|
||||
let sideTab = thisObject.rightTabs[i]
|
||||
existingTabs.forEach(sideTabDraw)
|
||||
|
||||
function sideTabDraw(sideTab, key, map) {
|
||||
sideTab.draw()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,19 +13,10 @@ function newGobernanceReportsSpace() {
|
||||
draw: draw,
|
||||
getContainer: getContainer,
|
||||
finalize: finalize,
|
||||
initialize: initialize
|
||||
initialize: initialize,
|
||||
reset: reset
|
||||
}
|
||||
|
||||
thisObject.container = newContainer()
|
||||
thisObject.container.name = MODULE_NAME
|
||||
thisObject.container.initialize()
|
||||
thisObject.container.isClickeable = true
|
||||
thisObject.container.isDraggeable = false
|
||||
thisObject.container.detectMouseOver = true
|
||||
thisObject.container.status = 'hidden'
|
||||
|
||||
resize()
|
||||
|
||||
let browserResizedEventSubscriptionId
|
||||
let openingEventSubscriptionId
|
||||
let closingEventSubscriptionId
|
||||
@@ -35,13 +26,19 @@ function newGobernanceReportsSpace() {
|
||||
return thisObject
|
||||
|
||||
function finalize() {
|
||||
canvas.eventHandler.stopListening(browserResizedEventSubscriptionId)
|
||||
thisObject.sidePanelTab.container.eventHandler.stopListening(openingEventSubscriptionId)
|
||||
thisObject.sidePanelTab.container.eventHandler.stopListening(closingEventSubscriptionId)
|
||||
|
||||
if (isInitialized === false) { return }
|
||||
|
||||
thisObject.container.finalize()
|
||||
thisObject.container = undefined
|
||||
|
||||
canvas.eventHandler.stopListening(browserResizedEventSubscriptionId)
|
||||
thisObject.sidePanelTab.container.eventHandler.stopListening(openingEventSubscriptionId)
|
||||
thisObject.sidePanelTab.container.eventHandler.stopListening(closingEventSubscriptionId)
|
||||
thisObject.sidePanelTab = undefined
|
||||
|
||||
UI.projects.foundations.spaces.sideSpace.deleteSidePanelTab('Governance', 'governance-tab', 'Gov', 'right')
|
||||
|
||||
thisObject.reportsPage.finalize()
|
||||
thisObject.reportsPage = undefined
|
||||
|
||||
@@ -51,12 +48,23 @@ function newGobernanceReportsSpace() {
|
||||
thisObject.userProfiles.finalize()
|
||||
thisObject.userProfiles = undefined
|
||||
|
||||
let isInitialized = false
|
||||
isInitialized = false
|
||||
}
|
||||
|
||||
function initialize() {
|
||||
let resultsArary = UI.projects.foundations.spaces.designSpace.workspace.getHierarchyHeadsByNodeType('User Profile')
|
||||
if (resultsArary.length === 0) { return }
|
||||
|
||||
thisObject.container = newContainer()
|
||||
thisObject.container.name = MODULE_NAME
|
||||
thisObject.container.initialize()
|
||||
thisObject.container.isClickeable = true
|
||||
thisObject.container.isDraggeable = false
|
||||
thisObject.container.detectMouseOver = true
|
||||
thisObject.container.status = 'hidden'
|
||||
|
||||
resize()
|
||||
|
||||
|
||||
thisObject.reportsPage = newGovernanceReportsReportsPage()
|
||||
thisObject.footer = newGovernanceReportsFooter()
|
||||
thisObject.userProfiles = newGovernanceReportsUserProfiles()
|
||||
@@ -68,7 +76,7 @@ function newGobernanceReportsSpace() {
|
||||
setupSidePanelTab()
|
||||
|
||||
thisObject.tablesSortingOrders = {}
|
||||
|
||||
|
||||
isInitialized = true
|
||||
|
||||
function setupSidePanelTab() {
|
||||
@@ -82,6 +90,11 @@ function newGobernanceReportsSpace() {
|
||||
}
|
||||
}
|
||||
|
||||
function reset() {
|
||||
finalize()
|
||||
initialize()
|
||||
}
|
||||
|
||||
function resize() {
|
||||
thisObject.container.frame.width = UI.projects.governance.globals.reports.REPORTS_SPACE_WIDTH
|
||||
thisObject.container.frame.height = browserCanvas.height // - TOP_SPACE_HEIGHT
|
||||
@@ -94,6 +107,8 @@ function newGobernanceReportsSpace() {
|
||||
}
|
||||
|
||||
function physics() {
|
||||
if (isInitialized === false) { return }
|
||||
|
||||
docsAppDivPhysics()
|
||||
|
||||
function docsAppDivPhysics() {
|
||||
@@ -114,6 +129,7 @@ function newGobernanceReportsSpace() {
|
||||
}
|
||||
|
||||
function getContainer(point, purpose) {
|
||||
if (isInitialized === false) { return }
|
||||
if (thisObject.sidePanelTab === undefined) { return }
|
||||
let container
|
||||
|
||||
@@ -127,7 +143,7 @@ function newGobernanceReportsSpace() {
|
||||
}
|
||||
}
|
||||
|
||||
function changeTableSortingOrder(table, property, order){
|
||||
function changeTableSortingOrder(table, property, order) {
|
||||
thisObject.tablesSortingOrders[table].property = property
|
||||
thisObject.tablesSortingOrders[table].order = order
|
||||
thisObject.reportsPage.render()
|
||||
|
||||
Reference in new issue
Block a user