SetCursor(*wxSTANDARD_CURSOR);
- markWhenListingDone = false;
+ markWhenCommandDone = false;
cancelled = 0;
}
void wxbRestorePanel::OnStart(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
SetWorking(true);
void wxbRestorePanel::OnTreeChanging(wxTreeEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
event.Veto();
}
}
void wxbRestorePanel::OnTreeExpanding(wxTreeEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
event.Veto();
return;
}
void wxbRestorePanel::OnTreeChanged(wxTreeEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
if (currentTreeItem == event.GetItem()) {
treeadd->Enable(false);
treeremove->Enable(false);
treerefresh->Enable(false);
- markWhenListingDone = false;
+ markWhenCommandDone = false;
SetWorking(true);
currentTreeItem = event.GetItem();
CmdList(event.GetItem());
- if (markWhenListingDone) {
+ if (markWhenCommandDone) {
CmdMark(event.GetItem(), NULL, 0);
tree->Refresh();
}
}
void wxbRestorePanel::OnTreeMarked(wxbTreeMarkedEvent& event) {
- csprint("Tree marked", CS_DEBUG);
if (IsWorking()) {
if (tree->GetSelection() == event.GetItem()) {
- markWhenListingDone = !markWhenListingDone;
+ markWhenCommandDone = !markWhenCommandDone;
}
- AddPendingEvent(event);
return;
}
SetWorking(true);
+ markWhenCommandDone = false;
CmdMark(event.GetItem(), NULL, 0);
- //event.Skip();
+ if (markWhenCommandDone) {
+ CmdMark(event.GetItem(), NULL, 0);
+ tree->Refresh();
+ }
tree->Refresh();
SetWorking(false);
if (event.GetItem().IsOk()) {
void wxbRestorePanel::OnTreeAdd(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
void wxbRestorePanel::OnTreeRemove(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
void wxbRestorePanel::OnTreeRefresh(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
void wxbRestorePanel::OnListMarked(wxbListMarkedEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
- //event.Skip();
return;
}
num++;
item = list->GetNextItem(item, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
}
-
+
CmdMark(wxTreeItemId(), items, num);
delete[] items;
void wxbRestorePanel::OnListActivated(wxListEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
- //event.Skip();
return;
}
SetWorking(true);
void wxbRestorePanel::OnListChanged(wxListEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
void wxbRestorePanel::OnListAdd(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
void wxbRestorePanel::OnListRemove(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}
void wxbRestorePanel::OnListRefresh(wxCommandEvent& event) {
if (IsWorking()) {
- AddPendingEvent(event);
return;
}