added panel list dialog -- panels not yet done...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2014-01-13 08:57:44 +04:00
parent 3b2e1da3b3
commit 7f71d093b7
3 changed files with 50 additions and 4 deletions

View File

@ -163,7 +163,7 @@ Roadmap
[X] bookmarked (list) operations
[X] mark/unmark tagged
[X] crop
[_] 34% Panels
[_] 51% Panels
[X] 100% panel constructors
[X] panel
[X] side-panel
@ -182,7 +182,7 @@ Roadmap
| collapse a panel...
[X] removePanel
| remove a panel
[_] open panel dialog
[X] open panel dialog
| list all registered panels...
[_] 0% mechanics
[_] serialization -- save/load panel state

View File

@ -6,6 +6,8 @@
//var DEBUG = DEBUG != null ? DEBUG : true
var PANEL_ROOT = '.viewer'
/*********************************************************************/
// XXX these are a bit too general...
@ -79,5 +81,43 @@ var toggleEditor = createCSSClassToggler(
/**********************************************************************
* Dialogs...
*/
function panelListDialog(){
updateStatus('Open panel...').show()
cfg = {}
// XXX indicate open panels...
cfg['Open panel'] = Object.keys(PANELS).map(function(e){
if(getPanel(e).length > 0){
return e + ' (open)'
}
return e
})
formDialog(null, '',
cfg,
'OK',
'panelListDialog')
.done(function(res){
var panel = res['Open panel'].split(' (open)')[0]
// toggle panel visibility on...
// XXX
openPanel(panel)
showStatusQ('Opening panel: '+panel+'...')
})
.fail(function(){
showStatusQ('Opening panel: canceled.')
})
}
/**********************************************************************
* vim:set ts=4 sw=4 : */

View File

@ -788,8 +788,14 @@ var KEYBOARD_CONFIG = {
ctrl: 'invert-marks',
},
P: {
default: doc('Show options',
function(){ toggleOptionsUI() }),
default: doc('Show panel list',
function(){
panelListDialog()
}),
shift: doc('Show options',
function(){
toggleOptionsUI()
}),
ctrl: doc('Print keyboard help',
function(){
toggleKeyboardHelp('on')