If you want to build it, you need Qt4 loaded and setup as your
default Qt or with the appropriate Qt Environment variables set.
-To build bat, you simply enter:
+6/24/07
+There is now one dependency, it is qwt. It compiles just fine with
+either qwt-5.0.2 or qwt-5.0.1. You can either install the qwt package
+yourself or if your distro does not have it, we have included the source
+in depkgs-qt, which you can download from the Bacula Source Forge
+download area.
- qmake
- make
-
-then to execute it
+Building and running bat is done much like bconsole, the gnome console,
+or the wxWidgets console. You add the appropriate options to your
+./configure, then simply do a make. Please see the Installation chapter
+of the manual for more details.
- ./bat
-The qmake command needs to be entered only if you add a new file, in
-which case, you should edit bat.pro and add the new filename
-in the appropriate place. In running qmake, it will build a new
-Makefile, and there after, you simply use "make". In fact, providing
-you edit bat.pro, doing a "make" will automatically call qmake to
-rebuild the Makefile.
+Win32 mingw infos for QT4 :
+ - http://silmor.de/29
+ - http://doc.qtfr.org/post/2007/04/10/Cross-Compilation-Native-dapplication-Qt-depuis-Linux
-Development status as of 29 Jan 07.
-
-Items implemented:
-- Reads a basic bat.conf (same as documented for the gnome-console
- except that the Font part is unimplemented).
-- Basic main window structure
-- About dialog
-- Quit menu item
-- Connect button (initally shows disconnected) will connect to
- the first Director defined in the conf file.
-- The Director name will appear in the Selection tree followed
- by Console and Restore.
-- Clicking on Console brings forward the console display screen
- (default at startup).
-- Clicking on Restore brings up a dummy two tab "restore" page.
-- The command line is implemented.
-- The status line (below the command line) is implemented.
+Development status as of 05/06/07
Items not implemented:
-- None of the menu items except About, Quit.
-- None of the tool bar icons except the connect/disconnect.
-- Nothing on the restore page
-
+- Nothing on the brestore page
+
+Translations:
+- All translatable strings should be written as tr("string") ...
+- To extract the strings for translation run:
+
+ lupdate bat.pro
+
+- To translate the strings, do:
+
+ linguist ts/bat_xx.ts
+
+ where xx is the country code (e.g. fr or de)
+
+- To "compile" the translated strings do:
+
+ lrelease bat.pro
+
+ The necessary binary files will be in ts/bat_xx.qm
+ As far as I can tell, these files must be on your path or
+ in the same directory as bat for them to be used, otherwise
+ it reverts to English. Selecting the translation is based on
+ how your system is setup or the LANG environment variable.
+
+Design decisions:
+- If possible all code for a particular component will be kept in
+ an appropriate subdirectory.
+- All private class variables are named "m_xxx" this makes it very
+ clear if one is referencing a class variable or a local.
+- All signal/slots are connected by explicit code (most all are
+ done in the MainWin constructor), rather than using designer.
+- Each page has a separate designer .ui file in a subdirectory.
+- All windows are created with designer and have
+ a name such as xxxForm i.e. the main window is MainForm and kept
+ in main.ui.
+
+Major projects:
+- Implement other restore interfaces such as brestore ...
+- Implement a database browser
+- Implement a resource (conf file) browser
+- Implement a reports page -- e.g. something similar to bweb
+- Implement Qt plugins to add new functionality to bat
+- Implement a GUI configuration file editor (something like JBacula).
+...
+
+Partially Done:
+===========================
+- Implement graphical commands that allow updating most aspects of
+ the database (i.e. commands for label, update Volume, ...)
+ still need to be able to edit a pool object
+
+- None of the menu items except About, Select Font, and Quit.
+ Print and save don't do anything, does save need to??
+Done:
+============================
Design/implementation considerations:
-- We need to have multiple Directors
-- Each Director should have its own console
-- The Console class needs to be a list or be attached to the
- currently active Director.
- Need icons in front of the Director.
-- Need indication if a director is connected or not.
- The console page should be in a DockWidget so it can be removed
- from the main window.
+ from the main window. It is currently in a dock window, but it
+ does not remove properly -- more research needed.
- Need to figure out a good implementation of adding pages and even
having plugins that load as pages. Currently the page mechanism
is a bit kludged.
-- Each page should in principle be a separate designer .ui file
- Currently the two pages console, restore are part of main.ui,
- but they should be pulled out into their own .ui files.
-Design decisions:
-- If possible all windows will be created with designer and have
- a name such as xxxForm i.e. the main window is MainForm and kept
- in main.ui.
-- If possible all code for a particular component will be kept in
- and appropriate subdirectory.
-- All private class variables are named "m_xxx" this makes it very
- clear if one is referencing a class variable or a local.
-- All signal/slots are connected by explict code (most all are
- done in the MainWin constructor), rather than using designer.
+- We need to have multiple Directors
+- Each Director should have its own console
+- The Console class needs to be a list or be attached to the
+ currently active Director.
+- Will automatically connect to the first Director in the
+ conf file. Doesn't know about multiple Directors.
+
+- The Label menu bar item, prints on the shell window what you entered.
+- The Run menu bar item, prints on the console window what you entered.
+- The Restore menu bar item, brings up dialog, then when OK is
+ clicked, it goes on to the next dialog, which is meant to be
+ a tree view, but for the moment does nothing ... It is a bit
+ ugly. Canceling it should get you back to the normal command prompt.
+- Implement a restore page that does a directory tree restore selection
+ much like wx-console does.
+Not working:
+- The left selection window and the right window (where the console
+ is) are dockable windows so should be movable once they are properly
+ clicked. Well, they sort of move, but then get stuck. I haven't figured
+ out what is going on, so for the current time, I am implementing most
+ stuff through dialogs.
+
+Items implemented:
+ See RELEASEFEATURES