From 8b9973a83ec6737a291cab8954fcd1053ff9ae3e Mon Sep 17 00:00:00 2001 From: wittend99 Date: Tue, 29 May 2012 22:49:13 +0000 Subject: [PATCH] git-svn-id: https://svn.code.sf.net/p/freetel/code@510 01035d8c-6547-0410-b346-abe4f91aad63 --- .../Release/pa_cppbinding_test.exe | Bin 108046 -> 110094 bytes fdmdv2/pa_cppbinding_test/gui.cpp | 364 +++++++++--------- fdmdv2/pa_cppbinding_test/gui.h | 82 ++-- fdmdv2/pa_cppbinding_test/main.cpp | 50 +++ fdmdv2/pa_cppbinding_test/main.h | 10 + .../pa_cppbinding_test/pa_cppbinding_test.mk | 2 +- 6 files changed, 284 insertions(+), 224 deletions(-) diff --git a/fdmdv2/pa_cppbinding_test/Release/pa_cppbinding_test.exe b/fdmdv2/pa_cppbinding_test/Release/pa_cppbinding_test.exe index f67b11308595c77fc32c6ddbe396f7bc7e982ca9..cc2158ca569718160d27dc3c0b6eccec18249c24 100644 GIT binary patch literal 110094 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�^gVD?8p$QD+)@ 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 wxDefaultSize, wxDefaultSize ); - - m_menuBar = new wxMenuBar( 0 ); - m_menuFile = new wxMenu(); - wxMenuItem* menuFileExit; - menuFileExit = new wxMenuItem( m_menuFile, wxID_EXIT, wxString( _("E&xit") ) + wxT('\t') + wxT("Alt+X"), wxEmptyString, wxITEM_NORMAL ); - m_menuFile->Append( menuFileExit ); - - m_menuBar->Append( m_menuFile, _("&File") ); - - this->SetMenuBar( m_menuBar ); - - wxBoxSizer* mainSizer; - mainSizer = new wxBoxSizer( wxVERTICAL ); - - m_audioInfo = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); - m_audioInfo->SetMinSize( wxSize( 65,65 ) ); - - wxBoxSizer* bSizer17; - bSizer17 = new wxBoxSizer( wxVERTICAL ); - - wxBoxSizer* bSizer151; - bSizer151 = new wxBoxSizer( wxHORIZONTAL ); - - wxStaticBoxSizer* sbSizerLeft; - sbSizerLeft = new wxStaticBoxSizer( new wxStaticBox( m_audioInfo, wxID_ANY, _("label") ), wxVERTICAL ); - - m_listBoxTopLeft = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); - sbSizerLeft->Add( m_listBoxTopLeft, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 3 ); - - - bSizer151->Add( sbSizerLeft, 1, wxEXPAND, 1 ); - - wxStaticBoxSizer* sbSizerRight; - sbSizerRight = new wxStaticBoxSizer( new wxStaticBox( m_audioInfo, wxID_ANY, _("label") ), wxVERTICAL ); - - m_textTopRight = new wxTextCtrl( m_audioInfo, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxTE_DONTWRAP|wxTE_MULTILINE ); - m_textTopRight->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_INACTIVEBORDER ) ); - - sbSizerRight->Add( m_textTopRight, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 3 ); - - - bSizer151->Add( sbSizerRight, 1, wxEXPAND, 1 ); - - - bSizer17->Add( bSizer151, 1, wxEXPAND, 5 ); - - wxBoxSizer* bSizer15; - bSizer15 = new wxBoxSizer( wxHORIZONTAL ); - - wxBoxSizer* bSizer9; - bSizer9 = new wxBoxSizer( wxVERTICAL ); - - m_listBoxMidLeft = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); - bSizer9->Add( m_listBoxMidLeft, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); - - - bSizer15->Add( bSizer9, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND, 1 ); - - wxBoxSizer* bSizer18; - bSizer18 = new wxBoxSizer( wxVERTICAL ); - - m_listBoxMidRight = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); - bSizer18->Add( m_listBoxMidRight, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); - - - bSizer15->Add( bSizer18, 1, wxEXPAND, 5 ); - - - bSizer17->Add( bSizer15, 1, wxEXPAND, 1 ); - - wxBoxSizer* bSizer91; - bSizer91 = new wxBoxSizer( wxHORIZONTAL ); - - wxBoxSizer* bSizer71; - bSizer71 = new wxBoxSizer( wxHORIZONTAL ); - - m_listBoxBottomLeft = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); - bSizer71->Add( m_listBoxBottomLeft, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); - - - bSizer91->Add( bSizer71, 1, wxEXPAND, 5 ); - - wxBoxSizer* bSizer31; - bSizer31 = new wxBoxSizer( wxHORIZONTAL ); - - bSizer31->SetMinSize( wxSize( 65,65 ) ); - m_listBoxBottomRight = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); - bSizer31->Add( m_listBoxBottomRight, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); - - - bSizer91->Add( bSizer31, 1, wxEXPAND, 5 ); - - - bSizer17->Add( bSizer91, 1, wxEXPAND, 1 ); - - wxBoxSizer* bSizer14; - bSizer14 = new wxBoxSizer( wxHORIZONTAL ); - - wxBoxSizer* bSizer13; - bSizer13 = new wxBoxSizer( wxHORIZONTAL ); - - wxBoxSizer* bSizer12; - bSizer12 = new wxBoxSizer( wxVERTICAL ); - - m_btnLeft = new wxButton( m_audioInfo, wxID_ANY, _("Ok"), wxDefaultPosition, wxDefaultSize, 0 ); - bSizer12->Add( m_btnLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 1 ); - - - bSizer13->Add( bSizer12, 1, 0, 1 ); - - wxBoxSizer* bSizer11; - bSizer11 = new wxBoxSizer( wxVERTICAL ); - - m_btnRight = new wxButton( m_audioInfo, wxID_ANY, _("On / Off"), wxDefaultPosition, wxDefaultSize, 0 ); - bSizer11->Add( m_btnRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT|wxALL, 1 ); - - - bSizer13->Add( bSizer11, 1, 0, 1 ); - - - bSizer14->Add( bSizer13, 1, wxALIGN_BOTTOM|wxALIGN_RIGHT, 1 ); - - - bSizer17->Add( bSizer14, 0, wxEXPAND, 5 ); - - wxBoxSizer* bSizer16; - bSizer16 = new wxBoxSizer( wxVERTICAL ); - - m_button1 = new wxButton( m_audioInfo, wxID_ANY, _("Exit"), wxDefaultPosition, wxDefaultSize, 0 ); - m_button1->SetDefault(); - bSizer16->Add( m_button1, 0, 0, 1 ); - - - bSizer17->Add( bSizer16, 0, wxALIGN_BOTTOM|wxALIGN_RIGHT, 1 ); - - - m_audioInfo->SetSizer( bSizer17 ); - m_audioInfo->Layout(); - bSizer17->Fit( m_audioInfo ); - mainSizer->Add( m_audioInfo, 1, wxALIGN_CENTER|wxEXPAND, 1 ); - - - this->SetSizer( mainSizer ); - this->Layout(); - m_statusBar = this->CreateStatusBar( 1, wxST_SIZEGRIP, wxID_ANY ); - - this->Centre( wxBOTH ); - - // Connect Events - this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnCloseFrame ) ); - this->Connect( menuFileExit->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnExitClick ) ); - m_listBoxTopLeft->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftBox ), NULL, this ); - m_listBoxTopLeft->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftDClick ), NULL, this ); - m_listBoxMidLeft->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxClick ), NULL, this ); - m_listBoxMidLeft->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxDClick ), NULL, this ); - m_listBoxMidRight->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxClick ), NULL, this ); - m_listBoxMidRight->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxDClick ), NULL, this ); - m_listBoxBottomLeft->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftClick ), NULL, this ); - m_listBoxBottomLeft->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftDClick ), NULL, this ); - m_listBoxBottomRight->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtClick ), NULL, this ); - m_listBoxBottomRight->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtDClick ), NULL, this ); - m_btnLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnLeft ), NULL, this ); - m_btnRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnRight ), NULL, this ); - m_button1->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitClick ), NULL, this ); + this->SetSizeHints( wxDefaultSize, wxDefaultSize ); + + m_menuBar = new wxMenuBar( 0 ); + m_menuFile = new wxMenu(); + wxMenuItem* menuFileExit; + menuFileExit = new wxMenuItem( m_menuFile, wxID_EXIT, wxString( _("E&xit") ) + wxT(' ') + wxT("Alt+X"), wxEmptyString, wxITEM_NORMAL ); + m_menuFile->Append( menuFileExit ); + + m_menuBar->Append( m_menuFile, _("&File") ); + + this->SetMenuBar( m_menuBar ); + + wxBoxSizer* mainSizer; + mainSizer = new wxBoxSizer( wxVERTICAL ); + + m_audioInfo = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); + m_audioInfo->SetMinSize( wxSize( 65,65 ) ); + + wxBoxSizer* bSizer17; + bSizer17 = new wxBoxSizer( wxVERTICAL ); + + wxBoxSizer* bSizer151; + bSizer151 = new wxBoxSizer( wxHORIZONTAL ); + + wxStaticBoxSizer* sbSizerLeft; + sbSizerLeft = new wxStaticBoxSizer( new wxStaticBox( m_audioInfo, wxID_ANY, _("label") ), wxVERTICAL ); + + m_listBoxTopLeft = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + sbSizerLeft->Add( m_listBoxTopLeft, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 3 ); + + + bSizer151->Add( sbSizerLeft, 1, wxEXPAND, 1 ); + + wxStaticBoxSizer* sbSizerRight; + sbSizerRight = new wxStaticBoxSizer( new wxStaticBox( m_audioInfo, wxID_ANY, _("label") ), wxVERTICAL ); + + m_textTopRight = new wxTextCtrl( m_audioInfo, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxTE_DONTWRAP|wxTE_MULTILINE ); + m_textTopRight->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_INACTIVEBORDER ) ); + + sbSizerRight->Add( m_textTopRight, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 3 ); + + + bSizer151->Add( sbSizerRight, 1, wxEXPAND, 1 ); + + + bSizer17->Add( bSizer151, 1, wxEXPAND, 5 ); + + wxBoxSizer* bSizer15; + bSizer15 = new wxBoxSizer( wxHORIZONTAL ); + + wxBoxSizer* bSizer9; + bSizer9 = new wxBoxSizer( wxVERTICAL ); + + m_listBoxMidLeft = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + bSizer9->Add( m_listBoxMidLeft, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); + + + bSizer15->Add( bSizer9, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND, 1 ); + + wxBoxSizer* bSizer18; + bSizer18 = new wxBoxSizer( wxVERTICAL ); + + m_listBoxMidRight = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + bSizer18->Add( m_listBoxMidRight, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); + + + bSizer15->Add( bSizer18, 1, wxEXPAND, 5 ); + + + bSizer17->Add( bSizer15, 1, wxEXPAND, 1 ); + + wxBoxSizer* bSizer91; + bSizer91 = new wxBoxSizer( wxHORIZONTAL ); + + wxBoxSizer* bSizer71; + bSizer71 = new wxBoxSizer( wxHORIZONTAL ); + + m_listBoxBottomLeft = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + bSizer71->Add( m_listBoxBottomLeft, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); + + + bSizer91->Add( bSizer71, 1, wxEXPAND, 5 ); + + wxBoxSizer* bSizer31; + bSizer31 = new wxBoxSizer( wxHORIZONTAL ); + + bSizer31->SetMinSize( wxSize( 65,65 ) ); + m_listBoxBottomRight = new wxListBox( m_audioInfo, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 ); + bSizer31->Add( m_listBoxBottomRight, 1, wxALIGN_CENTER|wxALL|wxEXPAND, 5 ); + + + bSizer91->Add( bSizer31, 1, wxEXPAND, 5 ); + + + bSizer17->Add( bSizer91, 1, wxEXPAND, 1 ); + + wxBoxSizer* bSizer14; + bSizer14 = new wxBoxSizer( wxHORIZONTAL ); + + wxBoxSizer* bSizer13; + bSizer13 = new wxBoxSizer( wxHORIZONTAL ); + + wxBoxSizer* bSizer12; + bSizer12 = new wxBoxSizer( wxVERTICAL ); + + m_btnLeft = new wxButton( m_audioInfo, wxID_ANY, _("Ok"), wxDefaultPosition, wxDefaultSize, 0 ); + bSizer12->Add( m_btnLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 1 ); + + + bSizer13->Add( bSizer12, 1, 0, 1 ); + + wxBoxSizer* bSizer11; + bSizer11 = new wxBoxSizer( wxVERTICAL ); + + m_btnRight = new wxButton( m_audioInfo, wxID_ANY, _("On / Off"), wxDefaultPosition, wxDefaultSize, 0 ); + bSizer11->Add( m_btnRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT|wxALL, 1 ); + + + bSizer13->Add( bSizer11, 1, 0, 1 ); + + + bSizer14->Add( bSizer13, 1, wxALIGN_BOTTOM|wxALIGN_RIGHT, 1 ); + + + bSizer17->Add( bSizer14, 0, wxEXPAND, 5 ); + + wxBoxSizer* bSizer16; + bSizer16 = new wxBoxSizer( wxVERTICAL ); + + m_button1 = new wxButton( m_audioInfo, wxID_ANY, _("Exit"), wxDefaultPosition, wxDefaultSize, 0 ); + m_button1->SetDefault(); + bSizer16->Add( m_button1, 0, 0, 1 ); + + + bSizer17->Add( bSizer16, 0, wxALIGN_BOTTOM|wxALIGN_RIGHT, 1 ); + + + m_audioInfo->SetSizer( bSizer17 ); + m_audioInfo->Layout(); + bSizer17->Fit( m_audioInfo ); + mainSizer->Add( m_audioInfo, 1, wxALIGN_CENTER|wxEXPAND, 1 ); + + + this->SetSizer( mainSizer ); + this->Layout(); + m_statusBar = this->CreateStatusBar( 1, wxST_SIZEGRIP, wxID_ANY ); + + this->Centre( wxBOTH ); + + // Connect Events + this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnCloseFrame ) ); + this->Connect( menuFileExit->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnExitClick ) ); + m_listBoxTopLeft->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftBox ), NULL, this ); + m_listBoxTopLeft->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftDClick ), NULL, this ); + m_listBoxMidLeft->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxClick ), NULL, this ); + m_listBoxMidLeft->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxDClick ), NULL, this ); + m_listBoxMidRight->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxClick ), NULL, this ); + m_listBoxMidRight->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxDClick ), NULL, this ); + m_listBoxBottomLeft->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftClick ), NULL, this ); + m_listBoxBottomLeft->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftDClick ), NULL, this ); + m_listBoxBottomRight->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtClick ), NULL, this ); + m_listBoxBottomRight->Connect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtDClick ), NULL, this ); + m_btnLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnLeft ), NULL, this ); + m_btnRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnRight ), NULL, this ); + m_button1->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitClick ), NULL, this ); } MainFrameBase::~MainFrameBase() { - // Disconnect Events - this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnCloseFrame ) ); - this->Disconnect( wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnExitClick ) ); - m_listBoxTopLeft->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftBox ), NULL, this ); - m_listBoxTopLeft->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftDClick ), NULL, this ); - m_listBoxMidLeft->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxClick ), NULL, this ); - m_listBoxMidLeft->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxDClick ), NULL, this ); - m_listBoxMidRight->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxClick ), NULL, this ); - m_listBoxMidRight->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxDClick ), NULL, this ); - m_listBoxBottomLeft->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftClick ), NULL, this ); - m_listBoxBottomLeft->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftDClick ), NULL, this ); - m_listBoxBottomRight->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtClick ), NULL, this ); - m_listBoxBottomRight->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtDClick ), NULL, this ); - m_btnLeft->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnLeft ), NULL, this ); - m_btnRight->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnRight ), NULL, this ); - m_button1->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitClick ), NULL, this ); - + // Disconnect Events + this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnCloseFrame ) ); + this->Disconnect( wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnExitClick ) ); + m_listBoxTopLeft->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftBox ), NULL, this ); + m_listBoxTopLeft->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxTopLeftDClick ), NULL, this ); + m_listBoxMidLeft->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxClick ), NULL, this ); + m_listBoxMidLeft->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidLeftBoxDClick ), NULL, this ); + m_listBoxMidRight->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxClick ), NULL, this ); + m_listBoxMidRight->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListMidRightBoxDClick ), NULL, this ); + m_listBoxBottomLeft->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftClick ), NULL, this ); + m_listBoxBottomLeft->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomLeftDClick ), NULL, this ); + m_listBoxBottomRight->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtClick ), NULL, this ); + m_listBoxBottomRight->Disconnect( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, wxCommandEventHandler( MainFrameBase::OnListBoxBottomRIghtDClick ), NULL, this ); + m_btnLeft->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnLeft ), NULL, this ); + m_btnRight->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnBtnRight ), NULL, this ); + m_button1->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitClick ), NULL, this ); + } diff --git a/fdmdv2/pa_cppbinding_test/gui.h b/fdmdv2/pa_cppbinding_test/gui.h index f2e12868..540d6bcb 100644 --- a/fdmdv2/pa_cppbinding_test/gui.h +++ b/fdmdv2/pa_cppbinding_test/gui.h @@ -35,48 +35,48 @@ /////////////////////////////////////////////////////////////////////////////// /// Class MainFrameBase /////////////////////////////////////////////////////////////////////////////// -class MainFrameBase : public wxFrame +class MainFrameBase : public wxFrame { - private: - - protected: - wxMenuBar* m_menuBar; - wxMenu* m_menuFile; - wxPanel* m_audioInfo; - wxListBox* m_listBoxTopLeft; - wxTextCtrl* m_textTopRight; - wxListBox* m_listBoxMidLeft; - wxListBox* m_listBoxMidRight; - wxListBox* m_listBoxBottomLeft; - wxListBox* m_listBoxBottomRight; - wxButton* m_btnLeft; - wxButton* m_btnRight; - wxButton* m_button1; - wxStatusBar* m_statusBar; - - // Virtual event handlers, overide them in your derived class - virtual void OnCloseFrame( wxCloseEvent& event ) { event.Skip(); } - virtual void OnExitClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListBoxTopLeftBox( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListBoxTopLeftDClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListMidLeftBoxClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListMidLeftBoxDClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListMidRightBoxClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListMidRightBoxDClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListBoxBottomLeftClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListBoxBottomLeftDClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListBoxBottomRIghtClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnListBoxBottomRIghtDClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnBtnLeft( wxCommandEvent& event ) { event.Skip(); } - virtual void OnBtnRight( wxCommandEvent& event ) { event.Skip(); } - - - public: - - MainFrameBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Test PortAudio CPP Binding "), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 651,445 ), long style = wxDEFAULT_FRAME_STYLE|wxRESIZE_BORDER|wxTAB_TRAVERSAL ); - - ~MainFrameBase(); - + private: + + protected: + wxMenuBar* m_menuBar; + wxMenu* m_menuFile; + wxPanel* m_audioInfo; + wxListBox* m_listBoxTopLeft; + wxTextCtrl* m_textTopRight; + wxListBox* m_listBoxMidLeft; + wxListBox* m_listBoxMidRight; + wxListBox* m_listBoxBottomLeft; + wxListBox* m_listBoxBottomRight; + wxButton* m_btnLeft; + wxButton* m_btnRight; + wxButton* m_button1; + wxStatusBar* m_statusBar; + + // Virtual event handlers, overide them in your derived class + virtual void OnCloseFrame( wxCloseEvent& event ) { event.Skip(); } + virtual void OnExitClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListBoxTopLeftBox( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListBoxTopLeftDClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListMidLeftBoxClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListMidLeftBoxDClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListMidRightBoxClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListMidRightBoxDClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListBoxBottomLeftClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListBoxBottomLeftDClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListBoxBottomRIghtClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnListBoxBottomRIghtDClick( wxCommandEvent& event ) { event.Skip(); } + virtual void OnBtnLeft( wxCommandEvent& event ) { event.Skip(); } + virtual void OnBtnRight( wxCommandEvent& event ) { event.Skip(); } + + + public: + + MainFrameBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Test PortAudio CPP Binding "), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 651,445 ), long style = wxDEFAULT_FRAME_STYLE|wxRESIZE_BORDER|wxTAB_TRAVERSAL ); + + ~MainFrameBase(); + }; #endif //__GUI_H__ diff --git a/fdmdv2/pa_cppbinding_test/main.cpp b/fdmdv2/pa_cppbinding_test/main.cpp index f8584ddf..26dd162d 100644 --- a/fdmdv2/pa_cppbinding_test/main.cpp +++ b/fdmdv2/pa_cppbinding_test/main.cpp @@ -298,4 +298,54 @@ int MainFrame::populateAudioInfo() return 0; } +void MainFrame::OnListBoxTopLeftBox( wxCommandEvent& event ) +{ + //wxMessageBox(wxT("Got OnListBoxTopLeftBox()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListBoxTopLeftDClick( wxCommandEvent& event ) +{ + wxMessageBox(wxT("Got OnListBoxTopLeftDClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListMidLeftBoxClick( wxCommandEvent& event ) +{ +// wxMessageBox(wxT("Got OnListMidLeftBoxClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListMidLeftBoxDClick( wxCommandEvent& event ) +{ + wxMessageBox(wxT("Got OnListMidLeftBoxDClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListMidRightBoxClick( wxCommandEvent& event ) +{ +// wxMessageBox(wxT("Got OnListMidRightBoxClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListMidRightBoxDClick( wxCommandEvent& event ) +{ + wxMessageBox(wxT("Got OnListMidRightBoxDClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListBoxBottomLeftClick( wxCommandEvent& event ) +{ +// wxMessageBox(wxT("Got OnListBoxBottomLeftClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListBoxBottomLeftDClick( wxCommandEvent& event ) +{ + wxMessageBox(wxT("Got OnListBoxBottomLeftDClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListBoxBottomRIghtClick( wxCommandEvent& event ) +{ +// wxMessageBox(wxT("Got OnListBoxBottomRIghtClick()"), wxT("Interface Test"), wxOK); +} + +void MainFrame::OnListBoxBottomRIghtDClick( wxCommandEvent& event ) +{ + wxMessageBox(wxT("Got OnListBoxBottomRIghtDClick()"), wxT("Interface Test"), wxOK); +} + diff --git a/fdmdv2/pa_cppbinding_test/main.h b/fdmdv2/pa_cppbinding_test/main.h index eab05ec4..530e1a14 100644 --- a/fdmdv2/pa_cppbinding_test/main.h +++ b/fdmdv2/pa_cppbinding_test/main.h @@ -61,6 +61,16 @@ class MainFrame : public MainFrameBase void OnScroll( wxScrollEvent& event ); void OnBtnLeft( wxCommandEvent& event ); void OnBtnRight( wxCommandEvent& event ); + void OnListBoxTopLeftBox( wxCommandEvent& event ); + void OnListBoxTopLeftDClick( wxCommandEvent& event ); + void OnListMidLeftBoxClick( wxCommandEvent& event ); + void OnListMidLeftBoxDClick( wxCommandEvent& event ); + void OnListMidRightBoxClick( wxCommandEvent& event ); + void OnListMidRightBoxDClick( wxCommandEvent& event ); + void OnListBoxBottomLeftClick( wxCommandEvent& event ); + void OnListBoxBottomLeftDClick( wxCommandEvent& event ); + void OnListBoxBottomRIghtClick( wxCommandEvent& event ); + void OnListBoxBottomRIghtDClick( wxCommandEvent& event ); }; #endif //__main__ diff --git a/fdmdv2/pa_cppbinding_test/pa_cppbinding_test.mk b/fdmdv2/pa_cppbinding_test/pa_cppbinding_test.mk index 5d3dacd7..c45a07f6 100644 --- a/fdmdv2/pa_cppbinding_test/pa_cppbinding_test.mk +++ b/fdmdv2/pa_cppbinding_test/pa_cppbinding_test.mk @@ -13,7 +13,7 @@ CurrentFileName := CurrentFilePath := CurrentFileFullPath := User :=wittend -Date :=5/25/2012 +Date :=5/27/2012 CodeLitePath :="C:\Program Files\CodeLite" LinkerName :=g++ ArchiveTool :=ar rcus -- 2.25.1