void DataExportDlg::OnTextChanged(wxCommandEvent&) { //if (!text->IsModified()) // return; string s = wx2s(text->GetValue()); size_t colon = s.find(':'); bool parsable = (ftk->check_syntax("print " + s) && colon != string::npos); FindWindow(wxID_OK)->Enable(parsable); if (parsable) { only_a_cb->SetValue(s.substr(0, colon) == "if a"); vector<string> v = split_string(s.substr(colon + 1), ','); vm_foreach (string, i, v) *i = strip_string(*i); for (size_t i = 0; i < list->GetCount(); ++i) list->Check(i, contains_element(v, wx2s(cv[i]))); } }
void SjViewSettingsPage::OnFontDefault(wxCommandEvent&) { // use default values long i = m_fontFaceChoice->FindString(SJ_DEF_FONT_FACE); if( i == -1 ) i = 0; m_fontFaceChoice->SetSelection(i); m_fontPtSlider->SetValue(SJ_DEF_FONT_SIZE); UpdateFontPtText(); m_columnWidthSlider->SetValue(SJ_DEF_COLUMN_WIDTH / COLUMNWIDTH_DIVISOR); UpdateColumnWidthText(); m_coverHeightSlider->SetValue(SJ_DEF_COVER_HEIGHT); UpdateCoverHeightText(); m_useViewFontInDlgCheckBox->SetValue(false); g_mainFrame->SetFontNCoverBase(SJ_DEF_FONT_FACE, SJ_DEF_FONT_SIZE, SJ_DEF_COLUMN_WIDTH, SJ_DEF_COVER_HEIGHT); }
BundleConfigDialog(ProjectPtr project, wxWindow* parent, const wxArrayString& choices, IManager* manager) : wxDialog(parent, wxID_ANY, _("Mac Bundler Configuration"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER) , m_pluginManager(manager) { m_accepted = false; m_project_name = project->GetName(); wxStaticText* titleLabel = new wxStaticText(this, wxID_ANY, _("Choose which target(s) to \"bundle-ize\"")); m_choices_widget = new wxCheckListBox(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, choices); m_info_plist_cb = new wxCheckBox(this, wxID_ANY, _("Generate Info.plist file")); m_get_info_string = new wxTextCtrl(this, wxID_ANY, m_project_name + wxT(", version 1.0, copyright myself")); m_version = new wxTextCtrl(this, wxID_ANY, wxT("1.0")); m_icon_file = new wxTextCtrl(this, wxID_ANY, m_project_name + wxT(".icns")); m_identifier = new wxTextCtrl(this, wxID_ANY, wxT("com.mycompany.") + m_project_name.Lower()); m_signature = new wxTextCtrl(this, wxID_ANY, (m_project_name + wxT("????")).Left(4).Upper()); m_icon_cb = new wxCheckBox(this, wxID_ANY, _("Copy the following icon into the project")); wxStaticText* warning = new wxStaticText(this, wxID_ANY, _("Warning : applying these changes cannot be undone automatically")); wxButton* okBtn = new wxButton(this, wxID_OK, _("Apply changes")); wxButton* cancelBtn = new wxButton(this, wxID_CANCEL, _("Cancel")); okBtn->SetDefault(); m_signature->SetMaxLength(4); m_info_plist_cb->SetValue(true); m_icon_cb->SetValue(true); wxBoxSizer* sizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer* subsizer = new wxBoxSizer(wxHORIZONTAL); wxFlexGridSizer* plistSizer = new wxFlexGridSizer(5, 2, 5, 5); plistSizer->AddGrowableCol(1, 1); plistSizer->Add(new wxStaticText(this, wxID_ANY, _("Get Info Version String")), 0, wxALIGN_RIGHT); plistSizer->Add(m_get_info_string, 1, wxEXPAND); plistSizer->Add(new wxStaticText(this, wxID_ANY, _("Version Number")), 0, wxALIGN_RIGHT); plistSizer->Add(m_version, 1, wxEXPAND); plistSizer->Add(new wxStaticText(this, wxID_ANY, _("Icon File")), 0, wxALIGN_RIGHT); plistSizer->Add(m_icon_file, 1, wxEXPAND); plistSizer->Add(new wxStaticText(this, wxID_ANY, _("Bundle Identifier")), 0, wxALIGN_RIGHT); plistSizer->Add(m_identifier, 1, wxEXPAND); plistSizer->Add(new wxStaticText(this, wxID_ANY, _("4-Character Signature")), 0, wxALIGN_RIGHT); plistSizer->Add(m_signature, 1, wxEXPAND); sizer->Add(titleLabel, 0, wxEXPAND | wxALL, 10); sizer->Add(m_choices_widget, 1, wxEXPAND | wxALL, 10); sizer->Add(m_info_plist_cb, 0, wxEXPAND | wxALL, 5); sizer->Add(plistSizer, 1, wxEXPAND | wxALL, 5); sizer->Add(m_icon_cb, 0, wxALL, 10); wxStaticBoxSizer* iconBox = new wxStaticBoxSizer(wxHORIZONTAL, this); m_icon_picker = new IconPicker(this); m_icon_picker->setImage( wxT("/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/GenericApplicationIcon.icns")); iconBox->Add(m_icon_picker, 1, wxEXPAND); sizer->Add(iconBox, 0, wxALL, 10); sizer->Add(warning, 0, wxEXPAND | wxALL, 10); subsizer->AddStretchSpacer(); subsizer->Add(cancelBtn, 0, wxLEFT | wxRIGHT, 5); subsizer->Add(okBtn, 0, wxLEFT | wxRIGHT, 5); sizer->Add(subsizer, 0, wxEXPAND | wxALL, 10); okBtn->Connect( okBtn->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(BundleConfigDialog::onOk), NULL, this); cancelBtn->Connect(cancelBtn->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(BundleConfigDialog::onCancel), NULL, this); m_info_plist_cb->Connect(m_info_plist_cb->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler(BundleConfigDialog::onPlistCheckboxPressed), NULL, this); this->SetSizerAndFit(sizer); this->Centre(); // Load last stored size & position from the configuration tool SetName("BundleConfigDialog"); WindowAttrManager::Load(this); }
wxPanel* SjViewSettingsPage::CreateFontPage(wxWindow* parent) { // init dialog wxPanel* page = new wxPanel(parent, -1); wxSizer* sizer1 = new wxBoxSizer(wxVERTICAL); page->SetSizer(sizer1); sizer1->Add(SJ_DLG_SPACE, SJ_DLG_SPACE); // some space wxStaticText* staticText = new wxStaticText(page, -1, _("You can set independent font and cover sizes to use in the main window. The sizes\nrefer to a zoom of 100%. If you zoom in or out (eg. by using the \"+\" or \"-\" keys), both\nsizes will grow or shrink proportionally.")); sizer1->Add(staticText, 0, wxALL, SJ_DLG_SPACE); m_orgFace = g_mainFrame->GetBaseFontFace(); m_orgSize = g_mainFrame->GetBaseFontSize(); m_orgColumnWidth = g_mainFrame->GetBaseColumnWidth(); m_orgCoverHeight = g_mainFrame->GetBaseCoverHeight(); wxFlexGridSizer* sizer3 = new wxFlexGridSizer(2, SJ_DLG_SPACE/2, SJ_DLG_SPACE); sizer1->Add(sizer3, 0, wxGROW|wxALL, SJ_DLG_SPACE); #define SLIDER_W 240 // font face sizer3->Add(new wxStaticText(page, -1, _("Font:")), 0, wxALIGN_CENTER_VERTICAL); m_fontFaceChoice = new wxChoice(page, IDC_FONTFACECHOICE/*, wxDefaultPosition, wxSize(FONTFACE_W, -1)*/); const wxArrayString& fontFaces = g_tools->GetFacenames(); wxString currFace; int facesIndex, facesCount = fontFaces.GetCount(); for( facesIndex = 0; facesIndex < facesCount; facesIndex++ ) { currFace = fontFaces.Item(facesIndex); if( currFace[0] != '?' && currFace[0] != '#' ) // ignore funny font names as "?234" eg. on os x/wx2.6.3 { m_fontFaceChoice->Append(currFace); if( currFace.CmpNoCase(m_orgFace)==0 ) { m_fontFaceChoice->SetSelection(m_fontFaceChoice->GetCount()-1); } } } SjDialog::SetCbWidth(m_fontFaceChoice); sizer3->Add(m_fontFaceChoice, 0, wxALIGN_CENTER_VERTICAL); // font size sizer3->Add(new wxStaticText(page, -1, _("Font size:")), 0, wxALIGN_CENTER_VERTICAL); wxBoxSizer* sizer4 = new wxBoxSizer(wxHORIZONTAL); sizer3->Add(sizer4); m_fontPtSlider = new wxSlider(page, IDC_FONTPTSLIDER, m_orgSize, SJ_MIN_FONT_SIZE, SJ_MAX_FONT_SIZE, wxDefaultPosition, wxSize(SLIDER_W, -1), wxSL_HORIZONTAL); sizer4->Add(m_fontPtSlider, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, SJ_DLG_SPACE); m_fontPtText = new wxStaticText(page, -1, wxEmptyString); UpdateFontPtText(TRUE); sizer4->Add(m_fontPtText, 0, wxALIGN_CENTER_VERTICAL, 0); // use font in dialogs? sizer3->Add(SJ_DLG_SPACE, SJ_DLG_SPACE); m_useViewFontInDlgCheckBox = new wxCheckBox(page, -1, _("Use this font for dialogs, too")); m_useViewFontInDlgCheckBox->SetValue((g_accelModule->m_flags&SJ_ACCEL_USE_VIEW_FONT_IN_DLG)!=0); sizer3->Add(m_useViewFontInDlgCheckBox, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM, SJ_DLG_SPACE); // column width sizer3->Add(new wxStaticText(page, -1, _("Column width:")), 0, wxALIGN_CENTER_VERTICAL); sizer4 = new wxBoxSizer(wxHORIZONTAL); sizer3->Add(sizer4); m_columnWidthSlider = new wxSlider(page, IDC_COLUMNWIDTHSLIDER, m_orgColumnWidth/COLUMNWIDTH_DIVISOR, SJ_MIN_COLUMN_WIDTH/COLUMNWIDTH_DIVISOR, SJ_MAX_COLUMN_WIDTH/COLUMNWIDTH_DIVISOR, wxDefaultPosition, wxSize(SLIDER_W, -1), wxSL_HORIZONTAL); sizer4->Add(m_columnWidthSlider, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, SJ_DLG_SPACE); m_columnWidthText = new wxStaticText(page, -1, wxEmptyString); UpdateColumnWidthText(); sizer4->Add(m_columnWidthText, 0, wxALIGN_CENTER_VERTICAL); // cover height (= width = size) sizer3->Add(new wxStaticText(page, -1, _("Cover size:")), 0, wxALIGN_CENTER_VERTICAL); sizer4 = new wxBoxSizer(wxHORIZONTAL); sizer3->Add(sizer4); m_coverHeightSlider = new wxSlider(page, IDC_COVERHEIGHTSLIDER, m_orgCoverHeight, 1, 100, wxDefaultPosition, wxSize(SLIDER_W, -1), wxSL_HORIZONTAL); sizer4->Add(m_coverHeightSlider, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, SJ_DLG_SPACE); m_coverHeightText = new wxStaticText(page, -1, wxEmptyString); UpdateCoverHeightText(); sizer4->Add(m_coverHeightText, 0, wxALIGN_CENTER_VERTICAL); wxButton* button = new wxButton(page, IDC_FONTDEFAULT, _("Reset to default values"), wxDefaultPosition, wxDefaultSize, wxBU_EXACTFIT); sizer1->Add(button, 0, wxALL, SJ_DLG_SPACE); return page; }