]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/qt-console/TODO
Add preferences for the messages timer
[bacula/bacula] / bacula / src / qt-console / TODO
1 dhb
2 ====================================================
3 Add context sensitive options for most commands
4 status dir on page select director item
5 All items with jobid= that I thought could work from joblist are done.
6 As well as many more
7 update slots scan
8 see COMMANDS file
9
10 ========LOW priority items:
11 Use settings object to size the restore window.  Similar to the saving of the
12 state of the main window.
13
14 Human readable in joblist for purged, joblevel and job type.
15
16 Possibly a stack of past screens so that when you open a window from another,
17 closing would bring the previous one back.
18
19 Is there a way to query the director/database for whether a storage is currently
20 mounted so I am not presenting both mount and unmount to the user??
21
22 Is there a way to identify a slot as having a cleaning tape???
23 (Kern says more work needs to be done in bacula with autochangers)
24
25 See if there is a solution to images fun with designer other than:
26 %s/<iconset>[\.\/]*:images/<iconset>images/g
27 %s/<iconset>images/<iconset>..\/images/g
28
29 Think about good ways to clean up the Console creation part of the
30 loop creating pages.
31 ========================================================
32 This release or next:
33
34 A window showing a list of jobs and defaults.  Defaults can be gotten in manner
35 similar to what the first restore window does.
36
37 A window showing a list of schedule resources. 
38
39 A list of message resources??
40
41 Kern discussed windows showing statistics like web based interfaces.
42 ========================================================
43 Future Releases :
44
45 The ablility to modify configuration files to create jobs, schedules, filesets
46 and any other director resources.
47
48 The ablility to modify configuration files to create storage resources.
49
50 Add a status dir graphical interface.  It would auto update every ?? seconds
51 and have a list of scheduled jobs, and in the que to run jobs that could be
52 cancelled graphically.
53
54 Add a status client window.  Keep updating showing what file is being
55 processed.
56
57 bRestore add code to get working.
58
59 May be in brestore, find a file by name, find a directory by name
60
61 ===========================================================
62 NOT SURE
63 ===========================================================
64
65 I'm not sure about this one??  Things seem to work and I did not do a
66 thing to make it happen:  the "dir" is a member of Console
67
68 - We also must somehow make the low level I/O routines know which
69 director/console to use.  Currently they always use the single
70 global one defined in the mainWin class (if I remember right).
71
72 ============================================================
73 DONE:
74 ============================================================
75 Preferences for the messages timer.
76
77 Get the 5 second bring to bottom of console to stop
78
79 joblist cancel a running job.
80
81 Fixes to final restore widgets.
82
83 Set default for replace in run restore job to "always"??????
84
85 Option in joblist like with restore from jobid but restore populating timestamp
86 of the selected job.
87
88 User preferences.  With log to stdout options.
89 Have settings for defaults of limits on joblist
90
91 Resolve issue of connection during restore selection.  Could go with preempt of
92 connections.  Temporary resolution is in.  (Kern is to work on)
93
94 Further testing of restore with .mod
95    Tested a few things, not all.
96
97 Add fileset to joblist.
98
99 Test left pane of restore with 2 windows drives in one backup job.
100    Yup, id didn't work, now it does.
101
102 Purging not working from console or from context sensitive.
103    This was a confusion with the restore command.  Now resolved.
104
105 Can produce a segfault by attempting to restore from a restore job.  In
106 pre-restore, prevent a job in the list from being a restore job.
107
108 Need to figure out the functionality and inteligence that the last restore
109 window should have and give it to it.  Right now it shows drop downs with no
110 options.
111
112 Allow for selecting multiple jobs to restore from in joblist.  Right click
113 restore from job works, but not with multiple selected jobs.
114
115 See if it would be possible to have user provided console text show up in a
116 color
117
118 Get status codes in dropdown for joblist select.
119
120 Create class to display messages from a specific job.  Want the ability to
121 create an instance of that class from joblist.
122
123 Color code termination code in joblist.  I also want a table to convert
124 termination code into human readable text.
125
126 show purged flag in joblist.  Don't have purge option show if already purged.
127
128 move behavior of:
129   MainWin::setContextMenuDockText
130   MainWin::setTreeWidgetItemDockColor
131 to the pages class
132
133 preempt all connections to console with 
134 if (!is_connectedGui())
135 or some other mechanism.  May find more as users start finding them.
136
137 Create documentation for any other developers interested in creating
138 new classes to add more pages.  Explain how to use the pages class
139 and about not populating until the tree widget is clicked etc...
140
141 Add numerous are you sure dialog boxes.  Like are you sure you want to
142 delete/purge that volume.  Show a little of the documentation about what
143 the consequences of delete or purging are.
144
145 A Tree widget context sensitive menu option and class to jump from known job
146 to surf the filestructure on the job.
147   This was future, but it is kind of done with restore from jobid
148
149 Get rid of "Warning: name layoutWidget is already used" when make uic's restore.ui
150
151 Create the ability to start a restore from joblist.  Right click, select
152 "restore from Jobid=xx" create an instance of restore defaulting in the jobid
153 or a list of selected jobs.
154
155 Update README  describe bat.conf.example to bat.conf
156
157 Test restore and get anything not working, working.
158 Add inteligence to prerestore.
159
160 Color code Media Red->Error Append->green Full/Used->Yellow
161
162 Get restore into stack.
163   Should the jobs dialog be turned into a page as well??
164 Possilbe: Turn run and label into docked pages. (remove button bar buttons??)
165
166 Where and bootstrap are confused in runjobs of restore.
167    This was just the labels.
168
169 Create list of what does not work.
170 From what I can tell, just the restore window on the left.
171
172 Add option to LIMIT the number of jobs shown in all jobs page for users with
173 multiple hundreds to thousands of jobs.
174
175 Play with includes to Make these compiles shorter.
176   moved includes of of includes and into files only console.h should be long
177
178 relabel storage=DDS3 oldvolume=ddsvol003 volume=dds3vol003 slot=3 pool=dds3_hope
179 in label slot spinner, limit the upper to the value of slots for that storage.
180
181 Fix bug in myth box not working with .sql query="" command.
182 This was a fix in mysql
183
184 Figure out how to get tables like Joblist to do the equivalent of double clicking
185 on the separating lines between each of the headings.
186 Tried the hard way first.  Oops.
187
188 If the console command line entry docked widget gets the focus, make 
189 m_currentConsole the top widget by setting the treewidgetitem selected.
190 Did this in MainWin::input_line almost better to let the person see
191 whatever they want until they hit enter.
192
193 Set Window titles to reflect what director it is.
194
195 Must:: get page selector to follow undocked windows.  Otherwise
196 current console won't be current.
197
198 Re-add class for storage, I accidentally reverted because I left
199 it on my laptop.  This is why I like committing often.
200
201 Add class for FileSets
202
203 Another idea for what you have implemented:
204 - I think that the dynamic pages that you create on the fly
205 should be nested under the item that creates them more like a
206 directory tree.
207
208 For example: Jobs on Volume xxx, probably should be shown under
209 "All Jobs" (or Media if that is what created it) and "Jobs of
210 Client Rufus" probably should be shown under "Clients".  I base
211 this on looking at the Select page list after I have brought up 3
212 or 4 dynamic pages.  Once there are a good number, I get a bit
213 confused where they came from.  This would also permit selecting
214 multipe Volumes then displaying multiple pages, one for each
215 Volume selected.  If they are nested, then that nested level can
216 be expanded or collapsed, which would be pretty cool at keeping
217 information, but getting it out of the way, sort of like what
218 happens for a directory tree.
219
220 dhb: ref above
221 My original concept was to put these in a tabbed widget.  Your Idea may
222 make for a cleaner user experience.  I like it.  It could save the
223 effort of getting a tabbed widget to work.
224
225
226 - I think we need to make the current Director more explicit, by
227 perhaps highlighting it in the page selector when it is current
228 and unhighlighting it when it is not (we could use color as we do
229 for the console, though some color blind people may have
230 problems.
231
232 - When any director is clicked, we need to set it as the current
233 director and set the current console as well.
234
235 Remove DoubleClicking, From pages class not needed any more.
236
237 Broken with multiple directors:
238 - If you click on the second director, it will probably open, but
239 none of the pages that are defined below it will be able to talk
240 to it.  They will most likely talk to the first director.
241
242 - When any console is clicked we need to set it as the current
243 console (m_console) and also set its director as the current
244 director (m_topItem).  These are in the mainwin class.
245
246 - When any page is selected, we must set both the current
247 director (m_topItem) and current console (m_console) that this
248 page is connected to.
249
250 dhb:
251 m_topItem has been changed to Console::directorTreeItem()
252 m_currentConsole->directorTreeItem(); returns disired treeWidgetItem
253
254 - We also need a concept of a "local" director/console for each
255 page, so the page knows who it is talking to -- this doesn't
256 currently exist, so I think we must pass the director and console
257 to each page widget constructor.
258  
259 dhb:
260 m_currentConsole is saved in each page subclass's m_console.  This value
261 is set by all but the console class calling Pages::pgInitialie() in it's
262 constructor
263
264 In short, there is a lot of work to be done to make multiple
265 simultaneous directors work.
266
267 dhb:
268 this may be moot:
269
270 If the above prooves to be too much, we might consider to only
271 have a single director at a time, and simply let the user select
272 which director he wants to connect to (one at a time, but
273 dynamically).  In the end, this may be the best thing to do, so
274 any user who wishes to connect to multiple directors would run
275 two instances of bat.  I am a bit unsure now, but the above list
276 of things to do is much bigger than I thought it was going to be.