fix main panel (pick correct right panel on section change)
This commit is contained in:
parent
6379bb373b
commit
3b97b16c0a
1 changed files with 19 additions and 15 deletions
|
@ -1,22 +1,21 @@
|
||||||
// vim: et:ts=4:sw=4:sts=4:ft=javascript
|
// vim: et:ts=4:sw=4:sts=4:ft=javascript
|
||||||
'use strict';
|
'use strict';
|
||||||
pandora.ui.mainPanel = function() {
|
pandora.ui.mainPanel = function() {
|
||||||
var that = Ox.SplitPanel({
|
var ui = pandora.user.ui,
|
||||||
|
that = Ox.SplitPanel({
|
||||||
elements: [
|
elements: [
|
||||||
{
|
{
|
||||||
collapsible: true,
|
collapsible: true,
|
||||||
collapsed: !pandora.user.ui.showSidebar,
|
collapsed: !ui.showSidebar,
|
||||||
element: pandora.$ui.leftPanel = pandora.ui.leftPanel(),
|
element: pandora.$ui.leftPanel = pandora.ui.leftPanel(),
|
||||||
resizable: true,
|
resizable: true,
|
||||||
resize: [192, 256, 320, 384],
|
resize: [192, 256, 320, 384],
|
||||||
size: pandora.user.ui.sidebarSize,
|
size: ui.sidebarSize,
|
||||||
tooltip: 'sidebar <span class="OxBright">'
|
tooltip: 'sidebar <span class="OxBright">'
|
||||||
+ Ox.SYMBOLS.SHIFT + 'S</span>'
|
+ Ox.SYMBOLS.SHIFT + 'S</span>'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
element: pandora.user.ui.section == 'items' ? pandora.$ui.rightPanel = pandora.ui.rightPanel()
|
element: getRightPanel()
|
||||||
: pandora.user.ui.section == 'edits' ? pandora.$ui.editPanel = pandora.ui.editPanel()
|
|
||||||
: pandora.$ui.textPanel = pandora.ui.textPanel()
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
orientation: 'horizontal'
|
orientation: 'horizontal'
|
||||||
|
@ -28,22 +27,22 @@ pandora.ui.mainPanel = function() {
|
||||||
pandora_find: function() {
|
pandora_find: function() {
|
||||||
var previousUI = pandora.UI.getPrevious();
|
var previousUI = pandora.UI.getPrevious();
|
||||||
Ox.Log('FIND', 'handled in mainPanel', previousUI.item, previousUI._list)
|
Ox.Log('FIND', 'handled in mainPanel', previousUI.item, previousUI._list)
|
||||||
if (!previousUI.item && pandora.user.ui._list == previousUI._list) {
|
if (!previousUI.item && ui._list == previousUI._list) {
|
||||||
if (['map', 'calendar'].indexOf(pandora.user.ui.listView) > -1) {
|
if (['map', 'calendar'].indexOf(ui.listView) > -1) {
|
||||||
pandora.$ui.contentPanel.replaceElement(1,
|
pandora.$ui.contentPanel.replaceElement(1,
|
||||||
pandora.ui.navigationView(pandora.user.ui.listView)
|
pandora.ui.navigationView(ui.listView)
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
if (['clips', 'clip'].indexOf(pandora.user.ui.listView) > -1) {
|
if (['clips', 'clip'].indexOf(ui.listView) > -1) {
|
||||||
pandora.$ui.list.options({find: pandora.user.ui.itemFind});
|
pandora.$ui.list.options({find: ui.itemFind});
|
||||||
}
|
}
|
||||||
pandora.$ui.list.reloadList();
|
pandora.$ui.list.reloadList();
|
||||||
}
|
}
|
||||||
// FIXME: why is this being handled _here_?
|
// FIXME: why is this being handled _here_?
|
||||||
pandora.user.ui._filterState.forEach(function(data, i) {
|
ui._filterState.forEach(function(data, i) {
|
||||||
if (!Ox.isEqual(data.selected, previousUI._filterState[i].selected)) {
|
if (!Ox.isEqual(data.selected, previousUI._filterState[i].selected)) {
|
||||||
pandora.$ui.filters[i].options(
|
pandora.$ui.filters[i].options(
|
||||||
pandora.user.ui.showFilters ? {
|
ui.showFilters ? {
|
||||||
selected: data.selected
|
selected: data.selected
|
||||||
} : {
|
} : {
|
||||||
_selected: data.selected,
|
_selected: data.selected,
|
||||||
|
@ -52,7 +51,7 @@ pandora.ui.mainPanel = function() {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
if (!Ox.isEqual(data.find, previousUI._filterState[i].find)) {
|
if (!Ox.isEqual(data.find, previousUI._filterState[i].find)) {
|
||||||
if (!pandora.user.ui.showFilters) {
|
if (!ui.showFilters) {
|
||||||
pandora.$ui.filters[i].options({
|
pandora.$ui.filters[i].options({
|
||||||
_selected: data.selected
|
_selected: data.selected
|
||||||
});
|
});
|
||||||
|
@ -78,7 +77,7 @@ pandora.ui.mainPanel = function() {
|
||||||
pandora_section: function(data) {
|
pandora_section: function(data) {
|
||||||
if (data.value != data.previousValue) {
|
if (data.value != data.previousValue) {
|
||||||
that.replaceElement(0, pandora.$ui.leftPanel = pandora.ui.leftPanel());
|
that.replaceElement(0, pandora.$ui.leftPanel = pandora.ui.leftPanel());
|
||||||
that.replaceElement(1, pandora.$ui.rightPanel = pandora.ui.rightPanel());
|
that.replaceElement(1, getRightPanel());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
pandora_showsidebar: function(data) {
|
pandora_showsidebar: function(data) {
|
||||||
|
@ -90,6 +89,11 @@ pandora.ui.mainPanel = function() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
function getRightPanel() {
|
||||||
|
return ui.section == 'items' ? pandora.$ui.rightPanel = pandora.ui.rightPanel()
|
||||||
|
: ui.section == 'edits' ? pandora.$ui.editPanel = pandora.ui.editPanel()
|
||||||
|
: pandora.$ui.textPanel = pandora.ui.textPanel();
|
||||||
|
}
|
||||||
return that;
|
return that;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue