+19-04-2004 :
+ - wxbRestorePanel : Locked configure items until first
+ configuration is received
+ - wxbRestorePanel : Removed estimate, which slows the restore
+ process
+
18-04-2004 :
- - wxbRestorePanel : wxTreeCtrl::GetParent changed in GetItemParent (thanks to Luca Berra)
+ - wxbRestorePanel : wxTreeCtrl::GetParent changed in
+ GetItemParent (thanks to Luca Berra)
- wxbRestorePanel : The user can now change a part of restore
configuration
- wxbRestorePanel modified to use wxbDataParsers
- created wxbDataTokenizer, which fetches commands results
- modified the way data is passed to panel (no Prints anymore,
- but wxbDataParsers)
+ but wxbDataParsers)
- win32 : Makefile.in corrected to use ressource file
- win32 : wx-console is now compatible with MinGW.
- wxbPanel/wxbMainFrame : Added a locking function (for example,
wxbRestorePanel : Check if commands run successfully (cd, mark, mods...).
-wxbRestorePanel : Lock configure items until first configuration is received
-
-wxbRestorePanel : Remove estimate, which slows the restore process
+wxbRestorePanel : Allow configure to change client and fileset
GTK : Improve look
general : use dot commands
+general : Create a more complicated director config file, to check what
+ choices I should give to the user (pools, filesets, ...(?)).
+
wxbTableParser : Replace wxHashMap by wxArray
console_thread : Allow the user to choose his config file.
wxblistctrl/wxbtreectrl : Find why events are not forwarded correctly
to parent' parent, and correct bad actual implementation.
(remove wxbTreeListPanel)
+
+general : make a good documentation with snapshots
BUGS
----
}
else if (status == choosing) {
SetStatus(configuring);
- wxbMainFrame::GetInstance()->SetStatusText("Restoring, please wait...");
-
+
+ wxbMainFrame::GetInstance()->SetStatusText("Please configure your restore...");
+
+ EnableConfig(false);
+
totfilemessages = 0;
wxbDataTokenizer* dt;
- dt = WaitForEnd("estimate\n", true);
+ /*dt = WaitForEnd("estimate\n", true);
int j, k;
- for (unsigned int i = 0; i < dt->GetCount(); i++) {
+ for (unsigned int i = 0; i < dt->GetCount(); i++) {*/
/* 15847 total files; 1 marked to be restored; 1,034 bytes. */
- if ((j = (*dt)[i].Find(" marked to be restored;")) > -1) {
+/* if ((j = (*dt)[i].Find(" marked to be restored;")) > -1) {
k = (*dt)[i].Find("; ");
(*dt)[i].Mid(k+2, j).ToLong(&totfilemessages);
break;
}
}
- delete dt;
+ delete dt;*/
+
+ int j;
dt = WaitForEnd("done\n", true);
UpdateConfig(dt);
delete dt;
+
+ EnableConfig(true);
if (totfilemessages == 0) {
wxbMainFrame::GetInstance()->Print("Restore failed : no file selected.\n", CS_DEBUG);
}
}
else if (status == configuring) {
+ EnableConfig(false);
+ cfgOk->Enable(false);
+ cfgApply->Enable(false);
+ cfgCancel->Enable(false);
+
+ wxbMainFrame::GetInstance()->SetStatusText("Restoring, please wait...");
+
wxbDataTokenizer* dt;
SetStatus(restoring);
void wxbRestorePanel::CmdConfigApply() {
if (cfgUpdated == 0) return;
+ EnableConfig(false);
+
wxbDataTokenizer* dt = NULL;
while (cfgUpdated > 0) {
wxString def; //String to send if can't use our data
}
}
UpdateConfig(dt); /* TODO: Check result */
-
+
+ EnableConfig(true);
+
delete dt;
}
status = newstatus;
}
+/*----------------------------------------------------------------------------
+ UI related
+ ----------------------------------------------------------------------------*/
+
+void wxbRestorePanel::EnableConfig(bool enable) {
+ cfgWhere->Enable(enable);
+ cfgReplace->Enable(enable);
+ cfgWhen->Enable(enable);
+ cfgPriority->Enable(enable);
+}
+
/*----------------------------------------------------------------------------
Event handling
----------------------------------------------------------------------------*/
/* Update config */
bool UpdateConfig(wxbDataTokenizer* dt);
-
+
/* Status related */
enum status_enum
{
bool working; // A command is running, discard GUI events
wxTreeItemId currentTreeItem; // Currently selected tree item
+ /* Enable or disable config controls status */
+ void EnableConfig(bool enable);
+
/* Event handling */
void OnStart(wxEvent& WXUNUSED(event));
void OnTreeChanging(wxTreeEvent& event);