summaryrefslogtreecommitdiff
path: root/examples/ConfigViewer/ConfigTreeCtrl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/ConfigViewer/ConfigTreeCtrl.cpp')
-rw-r--r--examples/ConfigViewer/ConfigTreeCtrl.cpp229
1 files changed, 0 insertions, 229 deletions
diff --git a/examples/ConfigViewer/ConfigTreeCtrl.cpp b/examples/ConfigViewer/ConfigTreeCtrl.cpp
deleted file mode 100644
index 7700272b9ba..00000000000
--- a/examples/ConfigViewer/ConfigTreeCtrl.cpp
+++ /dev/null
@@ -1,229 +0,0 @@
-// $Id$
-#include "stdafx.h"
-#include "ConfigTreeCtrl.h"
-#include "MainFrame.h"
-#include "ValueDlg.h"
-#include "ValueListCtrl.h"
-
-enum {CFGNEWKEY=100, CFGNEWSTRING, CFGNEWUINT, CFGNEWBINARY, CFGNEWSUBMENU, CFGFIND, CFGDELETE, CFGRENAME, CFGCOPYKEYNAME};
-
-
-BEGIN_EVENT_TABLE(ConfigTreeCtrl, wxTreeCtrl)
- EVT_RIGHT_DOWN(ConfigTreeCtrl::OnRightDown)
- EVT_RIGHT_UP(ConfigTreeCtrl::OnRightUp)
- EVT_MENU(CFGNEWKEY, ConfigTreeCtrl::OnNewKey)
- EVT_MENU(CFGNEWSTRING, ConfigTreeCtrl::OnNewString)
- EVT_MENU(CFGNEWUINT, ConfigTreeCtrl::OnNewUINT)
- EVT_MENU(CFGNEWBINARY, ConfigTreeCtrl::OnNewBinary)
- EVT_MENU(CFGFIND, ConfigTreeCtrl::OnFind)
- EVT_MENU(CFGDELETE, ConfigTreeCtrl::OnDelete)
- EVT_TREE_SEL_CHANGED(FRAME_TREE, ConfigTreeCtrl::OnSelChanged)
-END_EVENT_TABLE()
-
-
-ConfigTreeCtrl::ConfigTreeCtrl(wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxValidator& validator, const wxString& name)
-: wxTreeCtrl(parent, id, pos, size, style, validator, name)
-{
- // Load the tree
- LoadTree();
-}
-
-ConfigTreeCtrl::~ConfigTreeCtrl()
-{
-}
-
-void ConfigTreeCtrl::LoadTree()
-{
- m_pConfig = MainFrame::Instance()->GetpConfig();
- const ACE_Configuration_Section_Key& Key = m_pConfig->root_section();
- wxTreeItemId Root = AppendItem(GetRootItem(), "Root");
- LoadSection(Root, Key);
-}
-
-void ConfigTreeCtrl::LoadSection(wxTreeItemId& ParentItem, const ACE_Configuration_Section_Key& Key)
-{
- ACE_TString Name;
- int Index = 0;
- while(!m_pConfig->enumerate_sections(Key, Index, Name))
- {
- wxTreeItemId Item = AppendItem(ParentItem, Name.fast_rep());
- ACE_Configuration_Section_Key Child;
- m_pConfig->open_section(Key, Name.fast_rep(), 0, Child);
- LoadSection( Item, Child);
- ++Index;
- }
-}
-
-void ConfigTreeCtrl::OnRightDown(wxMouseEvent& event)
-{
- //EndEditLabel(TRUE);
- int Flags = wxTREE_HITTEST_ONITEMLABEL | wxTREE_HITTEST_ONITEMICON;
- long ItemID = HitTest(wxPoint(event.m_x, event.m_y), Flags);
- SelectItem(ItemID);
-}
-
-void ConfigTreeCtrl::OnRightUp(wxMouseEvent& event)
-{
- wxTreeItemId ItemID = GetSelection();
-
- wxMenu* pMenu = new wxMenu;
- wxMenu* pNewMenu = new wxMenu;
- pNewMenu->Append(CFGNEWKEY, "Key");
- pNewMenu->AppendSeparator();
- pNewMenu->Append(CFGNEWSTRING, "String");
- pNewMenu->Append(CFGNEWUINT, "Unsigned Int");
- //pNewMenu->Append(CFGNEWBINARY, "Binary");
- pMenu->Append(CFGNEWSUBMENU, "New", pNewMenu);
- pMenu->Append(CFGFIND, "Find");
- pMenu->AppendSeparator();
- pMenu->Append(CFGDELETE, "Delete");
- //pMenu->Append(CFGRENAME, "Rename"); // not supported
- //pMenu->AppendSeparator();
- //pMenu->Append(CFGCOPYKEYNAME, "Copy Key Name"); // not supported
- PopupMenu(pMenu, event.m_x, event.m_y);
- delete pMenu;
-}
-
-void ConfigTreeCtrl::ResolveKey(wxTreeItemId Item, ACE_Configuration_Section_Key& Key)
-{
- wxTreeItemId OriginalItem = Item;
- ACE_TString Path("");
- ACE_TString Temp;
- while(Item != GetRootItem())
- {
- wxString Text = GetItemText(Item);
- Temp = Path;
- Path = Text.c_str();
- if(Temp.length())
- {
- Path += "\\";
- Path += Temp;
- }
- Item = GetParent(Item);
- }
- if(Path.length())
- {
- m_pConfig->expand_path(m_pConfig->root_section(), Path, Key, 0);
- }
- else
- {
- Key = m_pConfig->root_section();
- }
-}
-
-
-void ConfigTreeCtrl::OnNewKey(wxCommandEvent& event)
-{
- wxTextEntryDialog Dlg(this, "Test", "Key Name");
- if(Dlg.ShowModal() != wxID_OK)
- {
- return;
- }
-
- wxString Value = Dlg.GetValue();
-
- // Get the key for this node
- wxTreeItemId ItemID = GetSelection();
- ACE_Configuration_Section_Key Key, NewKey;
- ResolveKey(ItemID, Key);
- m_pConfig->open_section(Key, Value, 1, NewKey);
- wxTreeItemId NewItemID = AppendItem(ItemID, Value);
- EnsureVisible(NewItemID);
-}
-
-void ConfigTreeCtrl::OnNewString(wxCommandEvent& event)
-{
- ValueDlg Dlg(this, true);
- if(Dlg.ShowModal() != wxID_OK)
- {
- return;
- }
-
- ACE_TString Value = Dlg.GetStringValue();
- ACE_TString Name = Dlg.GetName();
-
- // Get the key for this node
- wxTreeItemId ItemID = GetSelection();
- ACE_Configuration_Section_Key Key;
- ResolveKey(ItemID, Key);
- m_pConfig->set_string_value(Key, Name.fast_rep(), Value);
- m_pListCtrl->DisplaySection(Key);
-}
-
-void ConfigTreeCtrl::OnNewUINT(wxCommandEvent& event)
-{
- ValueDlg Dlg(this, false);
- if(Dlg.ShowModal() != wxID_OK)
- {
- return;
- }
-
- u_int Value = Dlg.GetUINTValue();
- ACE_TString Name = Dlg.GetName();
-
- // Get the key for this node
- wxTreeItemId ItemID = GetSelection();
- ACE_Configuration_Section_Key Key;
- ResolveKey(ItemID, Key);
- m_pConfig->set_integer_value(Key, Name.fast_rep(), Value);
- m_pListCtrl->DisplaySection(Key);
-}
-
-void ConfigTreeCtrl::OnNewBinary(wxCommandEvent& event)
-{
- assert(0);
- /*
- ValueDlg Dlg(this, true);
- if(Dlg.ShowModal() != wxID_OK)
- {
- return;
- }
-
- ACE_TString Value = Dlg.GetStringValue();
- ACE_TString Name = Dlg.GetName();
-
- // Get the key for this node
- wxTreeItemId ItemID = GetSelection();
- ACE_Configuration_Section_Key Key;
- ResolveKey(ItemID, Key);
- m_pConfig->set_string_value(Key, Name.fast_rep(), Value);
- m_pListCtrl->DisplaySection(Key);
- */
-}
-
-void ConfigTreeCtrl::OnSelChanged(wxTreeEvent& event)
-{
- wxTreeItemId ItemID = GetSelection();
- ACE_Configuration_Section_Key Key;
- ResolveKey(ItemID, Key);
- m_pListCtrl->DisplaySection(Key);
-}
-
-void ConfigTreeCtrl::OnFind(wxCommandEvent& event)
-{
-}
-
-void ConfigTreeCtrl::OnDelete(wxCommandEvent& event)
-{
- wxTreeItemId ItemID = GetSelection();
- wxTreeItemId Parent = GetParent(ItemID);
- ACE_Configuration_Section_Key Key;
- ResolveKey(Parent, Key);
- wxMessageDialog Dlg(this, "Are you sure you want to delete this section?", "Confirm Section Delete", wxYES_NO | wxICON_EXCLAMATION );
- if(Dlg.ShowModal() != wxID_YES)
- {
- return;
- }
- wxString Text = GetItemText(ItemID);
- m_pConfig->remove_section(Key, Text, 1);
- // Reload parent
- Delete(ItemID);
-}
-
-void ConfigTreeCtrl::ChangeConfig(ACE_Configuration* pConfig)
-{
- m_pConfig = pConfig;
- DeleteAllItems();
- LoadTree();
-}
-