]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/qt-console/TODO
Multiple directors are working. Still more todo. See TODO file.
[bacula/bacula] / bacula / src / qt-console / TODO
1 dhb
2 ====================================================
3 Low priority item:
4 move behavior of:
5   MainWin::setContextMenuDockText
6   MainWin::setTreeWidgetItemDockColor
7 to the pages class
8
9 Add context sensitive options for most commands
10
11 Re-add class for storage, I accidentally reverted because I left
12 it on my laptop.  This is why I like committing often.
13
14 Add class for FileSets
15
16 Create list of what does not work.
17
18 Ask Kern about bRestore and what to do with it in terms of priorities.
19
20 Fix bug in myt box not working with .sql query="" command.
21
22 Create documentation for any other developers interested in creating
23 new classes to add more pages.  Explain how to use the pages class
24 and about not populating until the tree widget is clicked etc...
25
26 A Tree widget context sensitive from anywhere a job is listed for 
27 the ability to surf what's on the job.
28
29 Think about good ways to clean up the Console creation part of the
30 loop creating pages.
31
32 Remove DoubleClicking, not needed any more.
33 ========================================================
34
35 - Possibly some other things I didn't think of.
36
37 Things to do:
38 - When any director is clicked, we need to set it as the current
39 director and set the current console as well.
40
41 - I think we need to make the current Director more explicit, by
42 perhaps highlighting it in the page selector when it is current
43 and unhighlighting it when it is not (we could use color as we do
44 for the console, though some color blind people may have
45 problems.
46
47 Another idea for what you have implemented:
48 - I think that the dynamic pages that you create on the fly
49 should be nested under the item that creates them more like a
50 directory tree.
51
52 For example: Jobs on Volume xxx, probably should be shown under
53 "All Jobs" (or Media if that is what created it) and "Jobs of
54 Client Rufus" probably should be shown under "Clients".  I base
55 this on looking at the Select page list after I have brought up 3
56 or 4 dynamic pages.  Once there are a good number, I get a bit
57 confused where they came from.  This would also permit selecting
58 multipe Volumes then displaying multiple pages, one for each
59 Volume selected.  If they are nested, then that nested level can
60 be expanded or collapsed, which would be pretty cool at keeping
61 information, but getting it out of the way, sort of like what
62 happens for a directory tree.
63
64 dhb: ref above
65 My original concept was to put these in a tabbed widget.  Your Idea may
66 make for a cleaner user experience.  I like it.  It could save the
67 effort of getting a tabbed widget to work.
68
69 ===========================================================
70 NOT SURE
71 ===========================================================
72
73 I'm not sure about this one??  Things seem to work and I did not do a
74 thing to make it happen:  the "dir" is a member of Console
75
76 - We also must somehow make the low level I/O routines know which
77 director/console to use.  Currently they always use the single
78 global one defined in the mainWin class (if I remember right).
79
80
81 ============================================================
82 DONE:
83 ============================================================
84
85 Broken with multiple directors:
86 - If you click on the second director, it will probably open, but
87 none of the pages that are defined below it will be able to talk
88 to it.  They will most likely talk to the first director.
89
90 - When any console is clicked we need to set it as the current
91 console (m_console) and also set its director as the current
92 director (m_topItem).  These are in the mainwin class.
93
94 - When any page is selected, we must set both the current
95 director (m_topItem) and current console (m_console) that this
96 page is connected to.
97
98 dhb:
99 m_topItem has been changed to Console::directorTreeItem()
100 m_currentConsole->directorTreeItem(); returns disired treeWidgetItem
101
102 - We also need a concept of a "local" director/console for each
103 page, so the page knows who it is talking to -- this doesn't
104 currently exist, so I think we must pass the director and console
105 to each page widget constructor.
106  
107 dhb:
108 m_currentConsole is saved in each page subclass's m_console.  This value
109 is set by all but the console class calling Pages::pgInitialie() in it's
110 constructor
111
112
113 In short, there is a lot of work to be done to make multiple
114 simultaneous directors work.
115
116 dhb:
117 this may be moot:
118
119 If the above prooves to be too much, we might consider to only
120 have a single director at a time, and simply let the user select
121 which director he wants to connect to (one at a time, but
122 dynamically).  In the end, this may be the best thing to do, so
123 any user who wishes to connect to multiple directors would run
124 two instances of bat.  I am a bit unsure now, but the above list
125 of things to do is much bigger than I thought it was going to be.