void UserDialog::layoutControls() { int dx = styleguide().getUnrelatedControlMargin(wxHORIZONTAL) - styleguide().getControlLabelMargin(); if (dx < 0) dx = 0; // create sizer for controls wxGridBagSizer* controlsSizer = new wxGridBagSizer( styleguide().getRelatedControlMargin(wxVERTICAL), styleguide().getControlLabelMargin()); controlsSizer->Add(labelUserNameM, wxGBPosition(0, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); controlsSizer->Add(textUserNameM, wxGBPosition(0, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelFirstNameM, wxGBPosition(1, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); controlsSizer->Add(textFirstNameM, wxGBPosition(1, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelMiddleNameM, wxGBPosition(2, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); controlsSizer->Add(textMiddleNameM, wxGBPosition(2, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelLastNameM, wxGBPosition(3, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); controlsSizer->Add(textLastNameM, wxGBPosition(3, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelPasswordM, wxGBPosition(0, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); controlsSizer->Add(textPasswordM, wxGBPosition(0, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelConfirmPasswordM, wxGBPosition(1, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); controlsSizer->Add(textConfirmPasswordM, wxGBPosition(1, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelUserIdM, wxGBPosition(2, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); controlsSizer->Add(spinctrlUserIdM, wxGBPosition(2, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->Add(labelGroupIdM, wxGBPosition(3, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); controlsSizer->Add(spinctrlGroupIdM, wxGBPosition(3, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); controlsSizer->AddGrowableCol(1); // create sizer for buttons -> styleguide class will align it correctly wxSizer* buttonSizer = styleguide().createButtonSizer(buttonOkM, buttonCancelM); // use method in base class to set everything up layoutSizers(controlsSizer, buttonSizer); }
void FindDialog::do_layout() { wxFlexGridSizer* sizerEdits = new wxFlexGridSizer(2, 2, styleguide().getRelatedControlMargin(wxVERTICAL), styleguide().getControlLabelMargin()); sizerEdits->Add(label_find, 0, wxALIGN_CENTER_VERTICAL); sizerEdits->Add(text_ctrl_find, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL); sizerEdits->Add(label_replace, 0, wxALIGN_CENTER_VERTICAL); sizerEdits->Add(text_ctrl_replace, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL); sizerEdits->AddGrowableCol(1, 1); wxGridSizer* sizerChecks = new wxGridSizer(2, 2, styleguide().getCheckboxSpacing(), styleguide().getUnrelatedControlMargin(wxHORIZONTAL)); if (checkbox_wholeword) sizerChecks->Add(checkbox_wholeword); if (checkbox_matchcase) sizerChecks->Add(checkbox_matchcase); if (checkbox_regexp) sizerChecks->Add(checkbox_regexp); if (checkbox_convertbs) sizerChecks->Add(checkbox_convertbs); if (checkbox_wrap) sizerChecks->Add(checkbox_wrap); if (checkbox_fromtop) sizerChecks->Add(checkbox_fromtop); wxBoxSizer* sizerButtons = new wxBoxSizer(wxHORIZONTAL); sizerButtons->Add(0, 0, 1, wxEXPAND); sizerButtons->Add(button_find); sizerButtons->Add(styleguide().getBetweenButtonsMargin(wxHORIZONTAL), 0); sizerButtons->Add(button_replace); sizerButtons->Add(styleguide().getBetweenButtonsMargin(wxHORIZONTAL), 0); sizerButtons->Add(button_replace_all); sizerButtons->Add(styleguide().getBetweenButtonsMargin(wxHORIZONTAL), 0); sizerButtons->Add(button_replace_in_selection); sizerButtons->Add(styleguide().getBetweenButtonsMargin(wxHORIZONTAL), 0); sizerButtons->Add(button_close); wxBoxSizer* sizerControls = new wxBoxSizer(wxVERTICAL); sizerControls->Add(sizerEdits, 1, wxEXPAND); sizerControls->Add(0, styleguide().getUnrelatedControlMargin(wxVERTICAL)); sizerControls->Add(sizerChecks); // use method in base class to set everything up layoutSizers(sizerControls, sizerButtons); }
void DatabaseRegistrationDialog::layoutControls() { // create sizer for controls wxGridBagSizer* sizerControls = new wxGridBagSizer(styleguide().getRelatedControlMargin(wxVERTICAL), styleguide().getControlLabelMargin()); sizerControls->Add(label_name, wxGBPosition(0, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerControls->Add(text_ctrl_name, wxGBPosition(0, 1), wxGBSpan(1, 3), wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerControls->Add(label_dbpath, wxGBPosition(1, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); wxBoxSizer* sizer_r1c1_3 = new wxBoxSizer(wxHORIZONTAL); sizer_r1c1_3->Add(text_ctrl_dbpath, 1, wxALIGN_CENTER_VERTICAL); sizer_r1c1_3->Add(button_browse, 0, wxLEFT | wxALIGN_CENTER_VERTICAL, styleguide().getBrowseButtonMargin()); sizerControls->Add(sizer_r1c1_3, wxGBPosition(1, 1), wxGBSpan(1, 3), wxEXPAND); sizerControls->Add(label_authentication, wxGBPosition(2, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerControls->Add(choice_authentication, wxGBPosition(2, 1), wxGBSpan(1, 3), wxALIGN_CENTER_VERTICAL | wxEXPAND); int dx = styleguide().getUnrelatedControlMargin(wxHORIZONTAL) - styleguide().getControlLabelMargin(); if (dx < 0) dx = 0; sizerControls->Add(label_username, wxGBPosition(3, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerControls->Add(text_ctrl_username, wxGBPosition(3, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerControls->Add(label_password, wxGBPosition(3, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerControls->Add(text_ctrl_password, wxGBPosition(3, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerControls->Add(label_charset, wxGBPosition(4, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerControls->Add(combobox_charset, wxGBPosition(4, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerControls->Add(label_role, wxGBPosition(4, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerControls->Add(text_ctrl_role, wxGBPosition(4, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); if (createM) { sizerControls->Add(label_pagesize, wxGBPosition(5, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerControls->Add(choice_pagesize, wxGBPosition(5, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerControls->Add(label_dialect, wxGBPosition(5, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerControls->Add(choice_dialect, wxGBPosition(5, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); } sizerControls->AddGrowableCol(1); sizerControls->AddGrowableCol(3); // create sizer for buttons -> styleguide class will align it correctly wxSizer* sizerButtons = styleguide().createButtonSizer(button_ok, button_cancel); // use method in base class to set everything up layoutSizers(sizerControls, sizerButtons); }
void ReorderFieldsDialog::layoutControls() { wxBoxSizer* sizerBtns1 = new wxBoxSizer(wxVERTICAL); sizerBtns1->Add(0, 0, 1, wxEXPAND); sizerBtns1->Add(button_first, 0, wxALIGN_CENTER_HORIZONTAL); sizerBtns1->Add(0, styleguide().getRelatedControlMargin(wxVERTICAL)); sizerBtns1->Add(button_up, 0, wxALIGN_CENTER_HORIZONTAL); sizerBtns1->Add(0, styleguide().getRelatedControlMargin(wxVERTICAL)); sizerBtns1->Add(button_down, 0, wxALIGN_CENTER_HORIZONTAL); sizerBtns1->Add(0, styleguide().getRelatedControlMargin(wxVERTICAL)); sizerBtns1->Add(button_last, 0, wxALIGN_CENTER_HORIZONTAL); sizerBtns1->Add(0, 0, 1, wxEXPAND); wxBoxSizer* sizerControls = new wxBoxSizer(wxHORIZONTAL); sizerControls->Add(list_box_fields, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND); sizerControls->Add(styleguide().getUnrelatedControlMargin(wxHORIZONTAL), 0); sizerControls->Add(sizerBtns1, 0, wxEXPAND); // create sizer for buttons -> styleguide class will align it correctly wxSizer* sizerButtons = styleguide().createButtonSizer(button_ok, button_cancel); // use method in base class to set everything up layoutSizers(sizerControls, sizerButtons, true); }
void FieldPropertiesDialog::layoutControls() { // create sizer for controls wxGridBagSizer* sizerTop = new wxGridBagSizer(styleguide().getRelatedControlMargin(wxVERTICAL), styleguide().getControlLabelMargin()); sizerTop->Add(label_fieldname, wxGBPosition(0, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerTop->Add(textctrl_fieldname, wxGBPosition(0, 1), wxGBSpan(1, 5), wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerTop->Add(label_domain, wxGBPosition(1, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); wxBoxSizer* sizerDomain = new wxBoxSizer(wxHORIZONTAL); sizerDomain->Add(choice_domain, 1, wxEXPAND); sizerDomain->Add(styleguide().getBrowseButtonMargin(), 0); sizerDomain->Add(button_edit_domain); sizerTop->Add(sizerDomain, wxGBPosition(1, 1), wxGBSpan(1, 5), wxALIGN_CENTER_VERTICAL | wxEXPAND); int dx = styleguide().getUnrelatedControlMargin(wxHORIZONTAL) - styleguide().getControlLabelMargin(); if (dx < 0) dx = 0; sizerTop->Add(label_datatype, wxGBPosition(2, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerTop->Add(choice_datatype, wxGBPosition(2, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerTop->Add(label_size, wxGBPosition(2, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerTop->Add(textctrl_size, wxGBPosition(2, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerTop->Add(label_scale, wxGBPosition(2, 4), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerTop->Add(textctrl_scale, wxGBPosition(2, 5), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerTop->Add(label_charset, wxGBPosition(3, 2), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerTop->Add(choice_charset, wxGBPosition(3, 3), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerTop->Add(label_collate, wxGBPosition(3, 4), wxDefaultSpan, wxLEFT | wxALIGN_CENTER_VERTICAL, dx); sizerTop->Add(choice_collate, wxGBPosition(3, 5), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerTop->AddGrowableCol(1); sizerTop->AddGrowableCol(3); sizerTop->AddGrowableCol(5); wxGridBagSizer* sizerGenerator = new wxGridBagSizer( styleguide().getRelatedControlMargin(wxHORIZONTAL), styleguide().getRelatedControlMargin(wxVERTICAL)); sizerGenerator->Add(radio_generator_new, wxGBPosition(0, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerGenerator->Add(textctrl_generator_name, wxGBPosition(0, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerGenerator->Add(radio_generator_existing, wxGBPosition(1, 0), wxDefaultSpan, wxALIGN_CENTER_VERTICAL); sizerGenerator->Add(choice_generator, wxGBPosition(1, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL | wxEXPAND); sizerGenerator->AddGrowableCol(1); // stack everything vertically wxBoxSizer* sizerControls = new wxBoxSizer(wxVERTICAL); sizerControls->Add(sizerTop, 0, wxEXPAND); sizerControls->Add(0, styleguide().getUnrelatedControlMargin(wxVERTICAL)); sizerControls->Add(checkbox_notnull); sizerControls->Add(0, styleguide().getUnrelatedControlMargin(wxVERTICAL)); sizerControls->Add(static_line_autoinc, 0, wxEXPAND); sizerControls->Add(0, styleguide().getRelatedControlMargin(wxVERTICAL)); sizerControls->Add(label_autoinc); sizerControls->Add(0, styleguide().getRelatedControlMargin(wxVERTICAL)); sizerControls->Add(sizerGenerator, 0, wxEXPAND); sizerControls->Add(0, styleguide().getUnrelatedControlMargin(wxVERTICAL)); sizerControls->Add(checkbox_trigger); sizerControls->Add(0, styleguide().getRelatedControlMargin(wxVERTICAL)); sizerControls->Add(textctrl_sql, 1, wxEXPAND); // create sizer for buttons -> styleguide class will align it correctly wxSizer* sizerButtons = styleguide().createButtonSizer(button_ok, button_cancel); // use method in base class to set everything up layoutSizers(sizerControls, sizerButtons, true); }
StatementHistoryDialog::StatementHistoryDialog(wxWindow *parent, StatementHistory *history, const wxString& title) :BaseDialog(parent, -1, title), historyM(history), isSearchingM(false) { wxBoxSizer *innerSizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer *topSizer = new wxBoxSizer(wxHORIZONTAL); m_staticText2 = new wxStaticText(getControlsPanel(), wxID_ANY, _("Search for:"), wxDefaultPosition, wxDefaultSize, 0); topSizer->Add(m_staticText2, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, styleguide().getControlLabelMargin()); textctrl_search = new wxTextCtrl(getControlsPanel(), wxID_ANY, ""); button_search = new wxButton(getControlsPanel(), ID_button_search, _("&Search")); button_delete = new wxButton(getControlsPanel(), ID_button_delete, _("&Delete Selected"), wxDefaultPosition, wxDefaultSize, 0); topSizer->Add(textctrl_search, 1, wxRIGHT|wxALIGN_CENTER_VERTICAL, styleguide().getRelatedControlMargin(wxHORIZONTAL)); topSizer->Add(button_search, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, styleguide().getUnrelatedControlMargin(wxHORIZONTAL)); topSizer->Add(button_delete, 0, wxALIGN_CENTER_VERTICAL, 0); innerSizer->Add(topSizer, 0, wxEXPAND, 5); int gaugeHeight = wxSystemSettings::GetMetric(wxSYS_HSCROLL_Y); gauge_progress = new wxGauge(getControlsPanel(), wxID_ANY, 100, wxDefaultPosition, wxSize(100, gaugeHeight), wxGA_HORIZONTAL | wxGA_SMOOTH); innerSizer->Add(gauge_progress, 0, wxTOP|wxEXPAND, styleguide().getRelatedControlMargin(wxVERTICAL)); mainSplitter = new wxSplitterWindow( getControlsPanel(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSP_3D ); leftSplitterPanel = new wxPanel( mainSplitter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* leftSplitterSizer = new wxBoxSizer( wxVERTICAL ); leftSplitterPanel->SetSizer( leftSplitterSizer ); rightSplitterPanel = new wxPanel( mainSplitter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* rightSplitterSizer = new wxBoxSizer( wxVERTICAL ); rightSplitterPanel->SetSizer( rightSplitterSizer ); mainSplitter->SplitVertically( leftSplitterPanel, rightSplitterPanel, 0 ); listbox_search = new wxListBox(leftSplitterPanel, ID_listbox_search, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_MULTIPLE); leftSplitterSizer->Add(listbox_search, 1, wxTOP|wxEXPAND, styleguide().getRelatedControlMargin(wxVERTICAL)); dateTimeTextM = new wxStaticText(leftSplitterPanel, wxID_ANY, _("Date and time of selected item"), wxDefaultPosition, wxDefaultSize, 0); leftSplitterSizer->Add(dateTimeTextM, 0, wxTOP|wxEXPAND, styleguide().getRelatedControlMargin(wxVERTICAL)); textctrl_statement = new wxStyledTextCtrl(rightSplitterPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_THEME); textctrl_statement->SetWrapMode(wxSTC_WRAP_WORD); textctrl_statement->SetMarginWidth(1, 0); // turn off the folding margin textctrl_statement->StyleSetForeground(1, *wxWHITE); textctrl_statement->StyleSetBackground(1, *wxRED); textctrl_statement->SetText(_("Selected SQL statement")); rightSplitterSizer->Add(textctrl_statement, 1, wxTOP|wxEXPAND, styleguide().getRelatedControlMargin(wxVERTICAL)); leftSplitterPanel->Layout(); leftSplitterSizer->Fit( leftSplitterPanel ); rightSplitterPanel->Layout(); rightSplitterSizer->Fit( rightSplitterPanel ); innerSizer->Add( mainSplitter, 1, wxEXPAND, 0 ); button_copy = new wxButton(getControlsPanel(), ID_button_copy, _("C&opy Selection To Editor"), wxDefaultPosition, wxDefaultSize, 0); button_cancel = new wxButton(getControlsPanel(), wxID_CANCEL, _("&Cancel"), wxDefaultPosition, wxDefaultSize, 0); wxSizer* sizerButtons = styleguide().createButtonSizer( button_copy, button_cancel); // use method in base class to set everything up layoutSizers(innerSizer, sizerButtons, true); // TODO: size(32, 32) missing for HISTORY icon #include "history.xpm" wxBitmap bmp = wxBitmap(history_xpm); wxIcon icon; icon.CopyFromBitmap(bmp); SetIcon(icon); button_search->SetDefault(); button_copy->Enable(false); button_delete->Enable(false); textctrl_search->SetFocus(); // center on parent SetSize(620, 400); Centre(); }