00001
00002
00003
00004
00005
00007
00008 #include "logger_level_panel.h"
00009 #include "rosout_list_control.h"
00010 #include "rosout_panel.h"
00011
00012 #include "rosout_generated.h"
00013
00015 using namespace rxtools;
00016
00017 RosoutPanelBase::RosoutPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
00018 {
00019 this->SetMinSize( wxSize( 273,138 ) );
00020
00021 wxBoxSizer* bSizer2;
00022 bSizer2 = new wxBoxSizer( wxVERTICAL );
00023
00024 wxBoxSizer* bSizer3;
00025 bSizer3 = new wxBoxSizer( wxHORIZONTAL );
00026
00027 wxBoxSizer* bSizer8;
00028 bSizer8 = new wxBoxSizer( wxHORIZONTAL );
00029
00030 bSizer3->Add( bSizer8, 1, wxEXPAND, 5 );
00031
00032 wxBoxSizer* bSizer4;
00033 bSizer4 = new wxBoxSizer( wxVERTICAL );
00034
00035 bSizer3->Add( bSizer4, 1, wxEXPAND, 5 );
00036
00037 bSizer2->Add( bSizer3, 0, wxEXPAND, 5 );
00038
00039 wxBoxSizer* bSizer10;
00040 bSizer10 = new wxBoxSizer( wxVERTICAL );
00041
00042 table_ = new rxtools::RosoutListControl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_HRULES|wxLC_REPORT|wxLC_VIRTUAL|wxLC_VRULES|wxCLIP_CHILDREN );
00043 bSizer10->Add( table_, 1, wxALL|wxEXPAND, 5 );
00044
00045 wxBoxSizer* bSizer9;
00046 bSizer9 = new wxBoxSizer( wxHORIZONTAL );
00047
00048 severity_sizer_ = new wxBoxSizer( wxHORIZONTAL );
00049
00050 bSizer9->Add( severity_sizer_, 1, wxEXPAND, 5 );
00051
00052 pause_button_ = new wxToggleButton( this, wxID_ANY, wxT("Pause"), wxDefaultPosition, wxDefaultSize, 0 );
00053 bSizer9->Add( pause_button_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00054
00055 clear_button_ = new wxButton( this, wxID_ANY, wxT("Clear"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT );
00056 bSizer9->Add( clear_button_, 0, wxALL, 5 );
00057
00058 setup_button_ = new wxButton( this, wxID_ANY, wxT("Setup"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT );
00059 bSizer9->Add( setup_button_, 0, wxALL|wxALIGN_RIGHT, 5 );
00060
00061 clear_button_1 = new wxButton( this, wxID_ANY, wxT("Levels..."), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT );
00062 bSizer9->Add( clear_button_1, 0, wxALL, 5 );
00063
00064 new_window_button_ = new wxButton( this, wxID_ANY, wxT("New Window..."), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT );
00065 bSizer9->Add( new_window_button_, 0, wxALL, 5 );
00066
00067 bSizer10->Add( bSizer9, 0, wxALIGN_RIGHT|wxEXPAND, 5 );
00068
00069 filters_pane_sizer_ = new wxBoxSizer( wxVERTICAL );
00070
00071 filters_window_ = new wxScrolledWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
00072 filters_window_->SetScrollRate( 30, 30 );
00073 filters_window_sizer_ = new wxBoxSizer( wxVERTICAL );
00074
00075 filters_sizer_ = new wxBoxSizer( wxVERTICAL );
00076
00077 filters_window_sizer_->Add( filters_sizer_, 1, wxEXPAND, 5 );
00078
00079 add_filter_button_ = new wxBitmapButton( filters_window_, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW );
00080 add_filter_button_->SetToolTip( wxT("Add Filter") );
00081
00082 add_filter_button_->SetToolTip( wxT("Add Filter") );
00083
00084 filters_window_sizer_->Add( add_filter_button_, 0, wxALL|wxALIGN_RIGHT, 0 );
00085
00086 filters_window_->SetSizer( filters_window_sizer_ );
00087 filters_window_->Layout();
00088 filters_window_sizer_->Fit( filters_window_ );
00089 filters_pane_sizer_->Add( filters_window_, 1, wxALL|wxEXPAND, 5 );
00090
00091 bSizer10->Add( filters_pane_sizer_, 0, wxEXPAND, 5 );
00092
00093 bSizer2->Add( bSizer10, 1, wxEXPAND, 5 );
00094
00095 this->SetSizer( bSizer2 );
00096 this->Layout();
00097
00098
00099 this->Connect( wxEVT_SIZE, wxSizeEventHandler( RosoutPanelBase::onSize ) );
00100 pause_button_->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onPause ), NULL, this );
00101 clear_button_->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onClear ), NULL, this );
00102 setup_button_->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onSetup ), NULL, this );
00103 clear_button_1->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onLoggerLevels ), NULL, this );
00104 new_window_button_->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onNewWindow ), NULL, this );
00105 }
00106
00107 RosoutPanelBase::~RosoutPanelBase()
00108 {
00109
00110 this->Disconnect( wxEVT_SIZE, wxSizeEventHandler( RosoutPanelBase::onSize ) );
00111 pause_button_->Disconnect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onPause ), NULL, this );
00112 clear_button_->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onClear ), NULL, this );
00113 setup_button_->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onSetup ), NULL, this );
00114 clear_button_1->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onLoggerLevels ), NULL, this );
00115 new_window_button_->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutPanelBase::onNewWindow ), NULL, this );
00116 }
00117
00118 RosoutSetupDialogBase::RosoutSetupDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
00119 {
00120 this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
00121
00122 wxBoxSizer* bSizer8;
00123 bSizer8 = new wxBoxSizer( wxVERTICAL );
00124
00125 wxStaticBoxSizer* sbSizer2;
00126 sbSizer2 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxT("Rosout Topic") ), wxVERTICAL );
00127
00128 wxBoxSizer* bSizer91;
00129 bSizer91 = new wxBoxSizer( wxHORIZONTAL );
00130
00131 topic_ = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
00132 bSizer91->Add( topic_, 1, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
00133
00134 topic_browse_button_ = new wxButton( this, wxID_ANY, wxT(" ... "), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT );
00135 bSizer91->Add( topic_browse_button_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00136
00137 sbSizer2->Add( bSizer91, 1, wxEXPAND, 5 );
00138
00139 bSizer8->Add( sbSizer2, 0, wxEXPAND, 5 );
00140
00141 wxStaticBoxSizer* sbSizer21;
00142 sbSizer21 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxT("Messages") ), wxVERTICAL );
00143
00144 wxBoxSizer* bSizer10;
00145 bSizer10 = new wxBoxSizer( wxHORIZONTAL );
00146
00147 m_staticText2 = new wxStaticText( this, wxID_ANY, wxT("Buffer Size"), wxDefaultPosition, wxDefaultSize, 0 );
00148 m_staticText2->Wrap( -1 );
00149 bSizer10->Add( m_staticText2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00150
00151 buffer_size_spinner_ = new wxSpinCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 1000000, 20000 );
00152 bSizer10->Add( buffer_size_spinner_, 0, wxALL, 5 );
00153
00154 sbSizer21->Add( bSizer10, 0, wxALIGN_RIGHT, 5 );
00155
00156 bSizer8->Add( sbSizer21, 1, wxEXPAND, 5 );
00157
00158 wxBoxSizer* bSizer9;
00159 bSizer9 = new wxBoxSizer( wxHORIZONTAL );
00160
00161 m_sdbSizer1 = new wxStdDialogButtonSizer();
00162 m_sdbSizer1OK = new wxButton( this, wxID_OK );
00163 m_sdbSizer1->AddButton( m_sdbSizer1OK );
00164 m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL );
00165 m_sdbSizer1->AddButton( m_sdbSizer1Cancel );
00166 m_sdbSizer1->Realize();
00167 bSizer9->Add( m_sdbSizer1, 1, wxEXPAND|wxALL|wxALIGN_BOTTOM, 5 );
00168
00169 bSizer8->Add( bSizer9, 0, wxEXPAND, 5 );
00170
00171 this->SetSizer( bSizer8 );
00172 this->Layout();
00173
00174
00175 topic_browse_button_->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutSetupDialogBase::onTopicBrowse ), NULL, this );
00176 m_sdbSizer1Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutSetupDialogBase::onCancel ), NULL, this );
00177 m_sdbSizer1OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutSetupDialogBase::onOk ), NULL, this );
00178 }
00179
00180 RosoutSetupDialogBase::~RosoutSetupDialogBase()
00181 {
00182
00183 topic_browse_button_->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutSetupDialogBase::onTopicBrowse ), NULL, this );
00184 m_sdbSizer1Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutSetupDialogBase::onCancel ), NULL, this );
00185 m_sdbSizer1OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( RosoutSetupDialogBase::onOk ), NULL, this );
00186 }
00187
00188 TextboxDialog::TextboxDialog( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
00189 {
00190 this->SetSizeHints( wxDefaultSize, wxDefaultSize );
00191
00192 wxBoxSizer* bSizer11;
00193 bSizer11 = new wxBoxSizer( wxVERTICAL );
00194
00195 text_ = new wxRichTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_AUTO_URL|wxTE_READONLY|wxVSCROLL|wxHSCROLL|wxNO_BORDER|wxWANTS_CHARS );
00196 bSizer11->Add( text_, 1, wxEXPAND | wxALL, 5 );
00197
00198 this->SetSizer( bSizer11 );
00199 this->Layout();
00200
00201
00202 this->Connect( wxEVT_CHAR, wxKeyEventHandler( TextboxDialog::onChar ) );
00203 text_->Connect( wxEVT_CHAR, wxKeyEventHandler( TextboxDialog::onChar ), NULL, this );
00204 text_->Connect( wxEVT_KEY_DOWN, wxKeyEventHandler( TextboxDialog::onChar ), NULL, this );
00205 }
00206
00207 TextboxDialog::~TextboxDialog()
00208 {
00209
00210 this->Disconnect( wxEVT_CHAR, wxKeyEventHandler( TextboxDialog::onChar ) );
00211 text_->Disconnect( wxEVT_CHAR, wxKeyEventHandler( TextboxDialog::onChar ), NULL, this );
00212 text_->Disconnect( wxEVT_KEY_DOWN, wxKeyEventHandler( TextboxDialog::onChar ), NULL, this );
00213 }
00214
00215 LoggerLevelPanelBase::LoggerLevelPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
00216 {
00217 wxBoxSizer* bSizer12;
00218 bSizer12 = new wxBoxSizer( wxHORIZONTAL );
00219
00220 wxStaticBoxSizer* sbSizer3;
00221 sbSizer3 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxT("Nodes") ), wxVERTICAL );
00222
00223 nodes_box_ = new wxListBox( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
00224 sbSizer3->Add( nodes_box_, 1, wxALL|wxEXPAND, 5 );
00225
00226 nodes_refresh_ = new wxButton( this, wxID_ANY, wxT("Refresh Nodes"), wxDefaultPosition, wxDefaultSize, 0 );
00227 sbSizer3->Add( nodes_refresh_, 0, wxALL|wxEXPAND, 5 );
00228
00229 bSizer12->Add( sbSizer3, 1, wxEXPAND, 5 );
00230
00231 wxStaticBoxSizer* sbSizer31;
00232 sbSizer31 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxT("Loggers") ), wxVERTICAL );
00233
00234 loggers_box_ = new wxListBox( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
00235 sbSizer31->Add( loggers_box_, 1, wxALL|wxEXPAND, 5 );
00236
00237 bSizer12->Add( sbSizer31, 1, wxEXPAND, 5 );
00238
00239 wxStaticBoxSizer* sbSizer311;
00240 sbSizer311 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxT("Levels") ), wxVERTICAL );
00241
00242 levels_box_ = new wxListBox( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
00243 sbSizer311->Add( levels_box_, 1, wxALL|wxEXPAND, 5 );
00244
00245 bSizer12->Add( sbSizer311, 1, wxEXPAND, 5 );
00246
00247 this->SetSizer( bSizer12 );
00248 this->Layout();
00249
00250
00251 nodes_box_->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( LoggerLevelPanelBase::onNodeSelected ), NULL, this );
00252 nodes_refresh_->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LoggerLevelPanelBase::onNodesRefresh ), NULL, this );
00253 loggers_box_->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( LoggerLevelPanelBase::onLoggerSelected ), NULL, this );
00254 levels_box_->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( LoggerLevelPanelBase::onLevelSelected ), NULL, this );
00255 }
00256
00257 LoggerLevelPanelBase::~LoggerLevelPanelBase()
00258 {
00259
00260 nodes_box_->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( LoggerLevelPanelBase::onNodeSelected ), NULL, this );
00261 nodes_refresh_->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LoggerLevelPanelBase::onNodesRefresh ), NULL, this );
00262 loggers_box_->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( LoggerLevelPanelBase::onLoggerSelected ), NULL, this );
00263 levels_box_->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( LoggerLevelPanelBase::onLevelSelected ), NULL, this );
00264 }
00265
00266 RosoutTextFilterControlBase::RosoutTextFilterControlBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
00267 {
00268 wxBoxSizer* bSizer14;
00269 bSizer14 = new wxBoxSizer( wxHORIZONTAL );
00270
00271 text_ = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
00272 text_->SetToolTip( wxT("Enter the text to filter by here.") );
00273
00274 bSizer14->Add( text_, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00275
00276 wxString include_exclude_Choices[] = { wxT("Include"), wxT("Exclude") };
00277 int include_exclude_NChoices = sizeof( include_exclude_Choices ) / sizeof( wxString );
00278 include_exclude_ = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, include_exclude_NChoices, include_exclude_Choices, 0 );
00279 include_exclude_->SetSelection( 0 );
00280 include_exclude_->SetToolTip( wxT("The type of filtering to be done. If the type is Include, only messages that match the filter string will be shown. If the type is exclude, any message matching the filter string will not be shown.") );
00281
00282 bSizer14->Add( include_exclude_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00283
00284 regex_ = new wxCheckBox( this, wxID_ANY, wxT("Regex"), wxDefaultPosition, wxDefaultSize, 0 );
00285 regex_->SetToolTip( wxT("If checked, uses perl-style regular expressions to do the match. If unchecked, uses wildcard syntax (* and ? being special).") );
00286
00287 bSizer14->Add( regex_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00288
00289 m_staticText2 = new wxStaticText( this, wxID_ANY, wxT("From"), wxDefaultPosition, wxDefaultSize, 0 );
00290 m_staticText2->Wrap( -1 );
00291 m_staticText2->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
00292
00293 bSizer14->Add( m_staticText2, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00294
00295 message_ = new wxCheckBox( this, wxID_ANY, wxT("Message"), wxDefaultPosition, wxDefaultSize, 0 );
00296 message_->SetToolTip( wxT("Match against the message field") );
00297
00298 bSizer14->Add( message_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 0 );
00299
00300 node_ = new wxCheckBox( this, wxID_ANY, wxT("Node"), wxDefaultPosition, wxDefaultSize, 0 );
00301 node_->SetToolTip( wxT("Match against the node's name") );
00302
00303 bSizer14->Add( node_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 0 );
00304
00305 location_ = new wxCheckBox( this, wxID_ANY, wxT("Location"), wxDefaultPosition, wxDefaultSize, 0 );
00306 location_->SetToolTip( wxT("Match against the code location") );
00307
00308 bSizer14->Add( location_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 0 );
00309
00310 topics_ = new wxCheckBox( this, wxID_ANY, wxT("Topics"), wxDefaultPosition, wxDefaultSize, 0 );
00311 topics_->SetToolTip( wxT("Match against the published topics") );
00312
00313 bSizer14->Add( topics_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 0 );
00314
00315 this->SetSizer( bSizer14 );
00316 this->Layout();
00317
00318
00319 text_->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( RosoutTextFilterControlBase::onText ), NULL, this );
00320 include_exclude_->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( RosoutTextFilterControlBase::onIncludeExclude ), NULL, this );
00321 regex_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onRegex ), NULL, this );
00322 message_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onMessage ), NULL, this );
00323 node_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onNode ), NULL, this );
00324 location_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onLocation ), NULL, this );
00325 topics_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onTopics ), NULL, this );
00326 }
00327
00328 RosoutTextFilterControlBase::~RosoutTextFilterControlBase()
00329 {
00330
00331 text_->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( RosoutTextFilterControlBase::onText ), NULL, this );
00332 include_exclude_->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( RosoutTextFilterControlBase::onIncludeExclude ), NULL, this );
00333 regex_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onRegex ), NULL, this );
00334 message_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onMessage ), NULL, this );
00335 node_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onNode ), NULL, this );
00336 location_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onLocation ), NULL, this );
00337 topics_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutTextFilterControlBase::onTopics ), NULL, this );
00338 }
00339
00340 RosoutSeverityFilterControlBase::RosoutSeverityFilterControlBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
00341 {
00342 wxBoxSizer* bSizer14;
00343 bSizer14 = new wxBoxSizer( wxHORIZONTAL );
00344
00345 m_staticText21 = new wxStaticText( this, wxID_ANY, wxT("Severity"), wxDefaultPosition, wxDefaultSize, 0 );
00346 m_staticText21->Wrap( -1 );
00347 m_staticText21->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
00348
00349 bSizer14->Add( m_staticText21, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00350
00351 fatal_ = new wxCheckBox( this, wxID_ANY, wxT("Fatal"), wxDefaultPosition, wxDefaultSize, 0 );
00352 bSizer14->Add( fatal_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00353
00354 error_ = new wxCheckBox( this, wxID_ANY, wxT("Error"), wxDefaultPosition, wxDefaultSize, 0 );
00355 bSizer14->Add( error_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00356
00357 warn_ = new wxCheckBox( this, wxID_ANY, wxT("Warn"), wxDefaultPosition, wxDefaultSize, 0 );
00358 bSizer14->Add( warn_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00359
00360 info_ = new wxCheckBox( this, wxID_ANY, wxT("Info"), wxDefaultPosition, wxDefaultSize, 0 );
00361 bSizer14->Add( info_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00362
00363 debug_ = new wxCheckBox( this, wxID_ANY, wxT("Debug"), wxDefaultPosition, wxDefaultSize, 0 );
00364 bSizer14->Add( debug_, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
00365
00366 this->SetSizer( bSizer14 );
00367 this->Layout();
00368
00369
00370 fatal_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onFatal ), NULL, this );
00371 error_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onError ), NULL, this );
00372 warn_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onWarn ), NULL, this );
00373 info_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onInfo ), NULL, this );
00374 debug_->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onDebug ), NULL, this );
00375 }
00376
00377 RosoutSeverityFilterControlBase::~RosoutSeverityFilterControlBase()
00378 {
00379
00380 fatal_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onFatal ), NULL, this );
00381 error_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onError ), NULL, this );
00382 warn_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onWarn ), NULL, this );
00383 info_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onInfo ), NULL, this );
00384 debug_->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RosoutSeverityFilterControlBase::onDebug ), NULL, this );
00385 }
00386
00387 RosoutFrame::RosoutFrame( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style )
00388 {
00389 this->SetSizeHints( wxSize( 800,250 ), wxDefaultSize );
00390
00391 wxBoxSizer* bSizer19;
00392 bSizer19 = new wxBoxSizer( wxVERTICAL );
00393
00394 rosout_panel_ = new rxtools::RosoutPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
00395 bSizer19->Add( rosout_panel_, 1, wxEXPAND | wxALL, 5 );
00396
00397 this->SetSizer( bSizer19 );
00398 this->Layout();
00399 }
00400
00401 RosoutFrame::~RosoutFrame()
00402 {
00403 }
00404
00405 LoggerLevelFrame::LoggerLevelFrame( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style )
00406 {
00407 this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
00408
00409 wxBoxSizer* bSizer19;
00410 bSizer19 = new wxBoxSizer( wxVERTICAL );
00411
00412 logger_panel_ = new rxtools::LoggerLevelPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
00413 bSizer19->Add( logger_panel_, 1, wxEXPAND | wxALL, 5 );
00414
00415 this->SetSizer( bSizer19 );
00416 this->Layout();
00417 }
00418
00419 LoggerLevelFrame::~LoggerLevelFrame()
00420 {
00421 }