| 37 |
tmp_menu_1->AppendSeparator(); |
tmp_menu_1->AppendSeparator(); |
| 38 |
tmp_menu_1->Append(ID_MenuFileExit, _("Quit\tCtrl+Q"), wxT(""), wxITEM_NORMAL); |
tmp_menu_1->Append(ID_MenuFileExit, _("Quit\tCtrl+Q"), wxT(""), wxITEM_NORMAL); |
| 39 |
menuBar->Append(tmp_menu_1, _("&File")); |
menuBar->Append(tmp_menu_1, _("&File")); |
| 40 |
|
|
| 41 |
|
// Tree menu |
| 42 |
|
wxMenu* tmp_menu_3 = new wxMenu(); |
| 43 |
|
tmp_menu_3->Append(ID_MenuTreeExpand, _("Expand All\tCtrl+D"), wxT(""), wxITEM_NORMAL); |
| 44 |
|
tmp_menu_3->Append(ID_MenuTreeCollapse, _("Collapse All\tCtrl+U"), wxT(""), wxITEM_NORMAL); |
| 45 |
|
tmp_menu_3->Append(ID_MenuTreeClear, _("Clear All\tCtrl+K"), wxT(""), wxITEM_NORMAL); |
| 46 |
|
//tmp_menu_3->AppendSeparator(); |
| 47 |
|
//tmp_menu_3->AppendCheckItem(ID_MenuTreeDisableUpdate, _("Disable AutoUpdate")); |
| 48 |
|
menuBar->Append(tmp_menu_3, _("&Tree")); |
| 49 |
|
|
| 50 |
// Help menu |
// Help menu |
| 51 |
wxMenu* tmp_menu_2 = new wxMenu(); |
wxMenu* tmp_menu_2 = new wxMenu(); |
| 116 |
void mnFrame::showSearchResult(mnModel* wiki, bool isExpand) |
void mnFrame::showSearchResult(mnModel* wiki, bool isExpand) |
| 117 |
{ |
{ |
| 118 |
const wxArrayString* searchStrList; |
const wxArrayString* searchStrList; |
|
WikiList* wikiList; |
|
|
WikiList::Node* node; |
|
| 119 |
int i; |
int i; |
| 120 |
|
|
| 121 |
searchTree->DeleteChildren(searchItemRoot); |
searchTree->DeleteChildren(searchItemRoot); |
| 123 |
searchStrList = wiki->getSearchStrList(); |
searchStrList = wiki->getSearchStrList(); |
| 124 |
for(i = 0; i < searchStrList->Count(); i++) { |
for(i = 0; i < searchStrList->Count(); i++) { |
| 125 |
wxString& searchStr = searchStrList->Item(i); |
wxString& searchStr = searchStrList->Item(i); |
| 126 |
|
addSearchResult(wiki, &searchStr, isExpand); |
|
wikiList = wiki->search(searchStr.mb_str()); |
|
|
addSearchResult(&searchStr, wikiList, isExpand); |
|
| 127 |
} |
} |
| 128 |
|
|
| 129 |
searchTree->ScrollTo(searchItemRoot); |
searchTree->ScrollTo(searchItemRoot); |
| 130 |
} |
} |
| 131 |
|
|
| 132 |
void mnFrame::addSearchResult(wxString* searchStr, WikiList* wikiList, bool isExpand) |
void mnFrame::addSearchResult(mnModel* wiki, wxString* searchStr, bool isExpand) |
| 133 |
{ |
{ |
| 134 |
wxTreeItemId searchItem; |
wxTreeItemId searchItem; |
| 135 |
|
WikiList* wikiList; |
| 136 |
WikiList::Node* node; |
WikiList::Node* node; |
| 137 |
WikiData* data; |
WikiData* data; |
| 138 |
const wxString* subject; |
const wxString* subject; |
| 139 |
|
|
| 140 |
searchItem = searchTree->AppendItem(searchItemRoot, *searchStr, -1, -1, NULL); |
wikiList = wiki->search(searchStr->mb_str()); |
| 141 |
|
//searchItem = searchTree->AppendItem(searchItemRoot, *searchStr, -1, -1, NULL); |
| 142 |
|
searchItem = searchTree->InsertItem(searchItemRoot, 0, *searchStr, -1, -1, NULL); |
| 143 |
node = wikiList->GetFirst(); |
node = wikiList->GetFirst(); |
| 144 |
while(node) { |
while(node) { |
| 145 |
data = node->GetData(); |
data = node->GetData(); |
| 257 |
} |
} |
| 258 |
} |
} |
| 259 |
|
|
| 260 |
|
void mnFrame::expandAllTree() |
| 261 |
|
{ |
| 262 |
|
wxTreeItemIdValue cookie; |
| 263 |
|
wxTreeItemId itemId; |
| 264 |
|
|
| 265 |
|
memset(&cookie, 1, sizeof(cookie)); |
| 266 |
|
itemId = searchTree->GetFirstChild(searchItemRoot, cookie); |
| 267 |
|
while(itemId.IsOk()) { |
| 268 |
|
searchTree->Expand(itemId); |
| 269 |
|
itemId = searchTree->GetNextChild(searchItemRoot, cookie); |
| 270 |
|
} |
| 271 |
|
} |
| 272 |
|
|
| 273 |
|
void mnFrame::collapseAllTree() |
| 274 |
|
{ |
| 275 |
|
wxTreeItemIdValue cookie; |
| 276 |
|
wxTreeItemId itemId; |
| 277 |
|
|
| 278 |
|
memset(&cookie, 1, sizeof(cookie)); |
| 279 |
|
itemId = searchTree->GetFirstChild(searchItemRoot, cookie); |
| 280 |
|
while(itemId.IsOk()) { |
| 281 |
|
searchTree->Collapse(itemId); |
| 282 |
|
itemId = searchTree->GetNextChild(searchItemRoot, cookie); |
| 283 |
|
} |
| 284 |
|
} |
| 285 |
|
|
| 286 |
|
void mnFrame::clearAllTree() |
| 287 |
|
{ |
| 288 |
|
searchTree->DeleteChildren(searchItemRoot); |
| 289 |
|
} |
| 290 |
|
|
| 291 |
|
void mnFrame::removeSelectedItem() |
| 292 |
|
{ |
| 293 |
|
searchTree->DeleteChildren(searchTree->GetSelection()); |
| 294 |
|
} |
| 295 |
|
|
| 296 |
wxTreeItemData* mnFrame::getSelectedItem() |
wxTreeItemData* mnFrame::getSelectedItem() |
| 297 |
{ |
{ |
| 298 |
return searchTree->GetItemData(searchTree->GetSelection()); |
return searchTree->GetItemData(searchTree->GetSelection()); |