X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b527aac54a829ba2ad77d8fb8609cd54eb8ef5d7..e459f82d0110709444984bf739314f4a84de48d3:/src/generic/fontdlgg.cpp?ds=sidebyside diff --git a/src/generic/fontdlgg.cpp b/src/generic/fontdlgg.cpp index aad482c103..c48439da7f 100644 --- a/src/generic/fontdlgg.cpp +++ b/src/generic/fontdlgg.cpp @@ -51,64 +51,65 @@ BEGIN_EVENT_TABLE(wxGenericFontDialog, wxDialog) EVT_CHOICE(wxID_FONT_COLOUR, wxGenericFontDialog::OnChangeFont) EVT_CHOICE(wxID_FONT_SIZE, wxGenericFontDialog::OnChangeFont) EVT_PAINT(wxGenericFontDialog::OnPaint) + EVT_CLOSE(wxGenericFontDialog::OnCloseWindow) END_EVENT_TABLE() #endif #define NUM_COLS 48 -static wxString wxColourDialogNames[NUM_COLS]={"ORANGE", - "GOLDENROD", - "WHEAT", - "SPRING GREEN", - "SKY BLUE", - "SLATE BLUE", - "MEDIUM VIOLET RED", - "PURPLE", - - "RED", - "YELLOW", - "MEDIUM SPRING GREEN", - "PALE GREEN", - "CYAN", - "LIGHT STEEL BLUE", - "ORCHID", - "LIGHT MAGENTA", +static wxString wxColourDialogNames[NUM_COLS]={_T("ORANGE"), + _T("GOLDENROD"), + _T("WHEAT"), + _T("SPRING GREEN"), + _T("SKY BLUE"), + _T("SLATE BLUE"), + _T("MEDIUM VIOLET RED"), + _T("PURPLE"), + + _T("RED"), + _T("YELLOW"), + _T("MEDIUM SPRING GREEN"), + _T("PALE GREEN"), + _T("CYAN"), + _T("LIGHT STEEL BLUE"), + _T("ORCHID"), + _T("LIGHT MAGENTA"), - "BROWN", - "YELLOW", - "GREEN", - "CADET BLUE", - "MEDIUM BLUE", - "MAGENTA", - "MAROON", - "ORANGE RED", - - "FIREBRICK", - "CORAL", - "FOREST GREEN", - "AQUARAMINE", - "BLUE", - "NAVY", - "THISTLE", - "MEDIUM VIOLET RED", + _T("BROWN"), + _T("YELLOW"), + _T("GREEN"), + _T("CADET BLUE"), + _T("MEDIUM BLUE"), + _T("MAGENTA"), + _T("MAROON"), + _T("ORANGE RED"), + + _T("FIREBRICK"), + _T("CORAL"), + _T("FOREST GREEN"), + _T("AQUARAMINE"), + _T("BLUE"), + _T("NAVY"), + _T("THISTLE"), + _T("MEDIUM VIOLET RED"), - "INDIAN RED", - "GOLD", - "MEDIUM SEA GREEN", - "MEDIUM BLUE", - "MIDNIGHT BLUE", - "GREY", - "PURPLE", - "KHAKI", + _T("INDIAN RED"), + _T("GOLD"), + _T("MEDIUM SEA GREEN"), + _T("MEDIUM BLUE"), + _T("MIDNIGHT BLUE"), + _T("GREY"), + _T("PURPLE"), + _T("KHAKI"), - "BLACK", - "MEDIUM FOREST GREEN", - "KHAKI", - "DARK GREY", - "SEA GREEN", - "LIGHT GREY", - "MEDIUM SLATE BLUE", - "WHITE" + _T("BLACK"), + _T("MEDIUM FOREST GREEN"), + _T("KHAKI"), + _T("DARK GREY"), + _T("SEA GREEN"), + _T("LIGHT GREY"), + _T("MEDIUM SLATE BLUE"), + _T("WHITE") }; /* @@ -132,10 +133,9 @@ wxGenericFontDialog::~wxGenericFontDialog(void) { } -bool wxGenericFontDialog::OnClose(void) +void wxGenericFontDialog::OnCloseWindow(wxCloseEvent& WXUNUSED(event)) { - Show(FALSE); - return FALSE; + EndModal(wxID_CANCEL); } bool wxGenericFontDialog::Create(wxWindow *parent, wxFontData *data) @@ -204,7 +204,7 @@ void wxGenericFontDialog::CreateWidgets(void) */ wxString - *families = new wxString[5], + *families = new wxString[6], *styles = new wxString[3], *weights = new wxString[3]; families[0] = _("Roman"); @@ -212,6 +212,7 @@ void wxGenericFontDialog::CreateWidgets(void) families[2] = _("Modern"); families[3] = _("Script"); families[4] = _("Swiss" ); + families[5] = _("Teletype" ); styles[0] = _("Normal"); styles[1] = _("Italic"); styles[2] = _("Slant"); @@ -222,11 +223,11 @@ void wxGenericFontDialog::CreateWidgets(void) int x=-1; int y=40; familyChoice = new wxChoice(this, wxID_FONT_FAMILY, wxPoint(10, 10), wxSize(120, -1), 5, families); - styleChoice = new wxChoice(this, wxID_FONT_STYLE, wxPoint(160, 10), wxSize(120, -1), 3, styles); - weightChoice = new wxChoice(this, wxID_FONT_WEIGHT, wxPoint(310, 10), wxSize(120, -1), 3, weights); + styleChoice = new wxChoice(this, wxID_FONT_STYLE, wxPoint(170, 10), wxSize(120, -1), 3, styles); + weightChoice = new wxChoice(this, wxID_FONT_WEIGHT, wxPoint(330, 10), wxSize(120, -1), 3, weights); - colourChoice = new wxChoice(this, wxID_FONT_COLOUR, wxPoint(10, 40), wxSize(190, -1), NUM_COLS, wxColourDialogNames); -#ifdef __MOTIF__ + colourChoice = new wxChoice(this, wxID_FONT_COLOUR, wxPoint(10, 40), wxSize(180, -1), NUM_COLS, wxColourDialogNames); +#if 0 // def __WXMOTIF__ // TODO: This necessary now? // We want the pointSizeText to line up on the y axis with the colourChoice colourChoice->GetPosition(&fontRect.x, &y); //NL mod y+=3; //NL mod @@ -254,10 +255,10 @@ void wxGenericFontDialog::CreateWidgets(void) fontRect.y+=y+5; //NL mod - int by = (fontRect.y + fontRect.height + 10); + int by = (fontRect.y + fontRect.height + 15); - wxButton *okButton = new wxButton(this, wxID_OK, _("OK"), wxPoint(220, by), wxSize(100,-1)); - (void) new wxButton(this, wxID_OK, _("Cancel"), wxPoint(340, by), wxSize(100,-1)); + wxButton *okButton = new wxButton(this, wxID_OK, _("OK"), wxPoint(230, by), wxSize(75,-1)); + (void) new wxButton(this, wxID_OK, _("Cancel"), wxPoint(330, by), wxSize(75,-1)); familyChoice->SetStringSelection( wxFontFamilyIntToString(dialogFont.GetFamily()) ); styleChoice->SetStringSelection(wxFontStyleIntToString(dialogFont.GetStyle())); @@ -270,7 +271,8 @@ void wxGenericFontDialog::CreateWidgets(void) okButton->SetDefault(); - SetClientSize(450, by + 40); + // SetClientSize(450, by + 40); + Fit(); Centre(wxBOTH); @@ -335,16 +337,20 @@ void wxGenericFontDialog::OnChangeFont(wxCommandEvent& WXUNUSED(event)) { if (!m_useEvents) return; - int fontFamily = wxFontFamilyStringToInt(WXSTRINGCAST familyChoice->GetStringSelection()); - int fontWeight = wxFontWeightStringToInt(WXSTRINGCAST weightChoice->GetStringSelection()); - int fontStyle = wxFontStyleStringToInt(WXSTRINGCAST styleChoice->GetStringSelection()); - int fontSize = atoi(pointSizeChoice->GetStringSelection()); + int fontFamily = 0; /* shut up buggy egcs warnings */ + fontFamily = wxFontFamilyStringToInt(WXSTRINGCAST familyChoice->GetStringSelection()); + int fontWeight = 0; + fontWeight = wxFontWeightStringToInt(WXSTRINGCAST weightChoice->GetStringSelection()); + int fontStyle = 0; + fontStyle = wxFontStyleStringToInt(WXSTRINGCAST styleChoice->GetStringSelection()); + int fontSize = wxAtoi(pointSizeChoice->GetStringSelection()); int fontUnderline = underLineCheckBox->GetValue(); dialogFont = wxFont(fontSize, fontFamily, fontStyle, fontWeight, (fontUnderline != 0)); - if (colourChoice->GetStringSelection() != "") + if (colourChoice->GetStringSelection() != _T("")) { - wxColour *col = wxTheColourDatabase->FindColour(colourChoice->GetStringSelection()); + wxColour *col = (wxColour*) NULL; + col = wxTheColourDatabase->FindColour(colourChoice->GetStringSelection()); if (col) { fontData.fontColour = *col; @@ -355,90 +361,94 @@ void wxGenericFontDialog::OnChangeFont(wxCommandEvent& WXUNUSED(event)) PaintFont(dc); } -char *wxFontWeightIntToString(int weight) +wxChar *wxFontWeightIntToString(int weight) { switch (weight) { case wxLIGHT: - return "Light"; + return _T("Light"); case wxBOLD: - return "Bold"; + return _T("Bold"); case wxNORMAL: default: - return "Normal"; + return _T("Normal"); } - return "Normal"; + return _T("Normal"); } -char *wxFontStyleIntToString(int style) +wxChar *wxFontStyleIntToString(int style) { switch (style) { case wxITALIC: - return "Italic"; + return _T("Italic"); case wxSLANT: - return "Slant"; + return _T("Slant"); case wxNORMAL: default: - return "Normal"; + return _T("Normal"); } - return "Normal"; + return _T("Normal"); } -char *wxFontFamilyIntToString(int family) +wxChar *wxFontFamilyIntToString(int family) { switch (family) { case wxROMAN: - return "Roman"; + return _T("Roman"); case wxDECORATIVE: - return "Decorative"; + return _T("Decorative"); case wxMODERN: - return "Modern"; + return _T("Modern"); case wxSCRIPT: - return "Script"; + return _T("Script"); + case wxTELETYPE: + return _T("Teletype"); case wxSWISS: default: - return "Swiss"; + return _T("Swiss"); } - return "Swiss"; + return _T("Swiss"); } -int wxFontFamilyStringToInt(char *family) +int wxFontFamilyStringToInt(wxChar *family) { if (!family) return wxSWISS; - if (strcmp(family, "Roman") == 0) + if (wxStrcmp(family, _T("Roman")) == 0) return wxROMAN; - else if (strcmp(family, "Decorative") == 0) + else if (wxStrcmp(family, _T("Decorative")) == 0) return wxDECORATIVE; - else if (strcmp(family, "Modern") == 0) + else if (wxStrcmp(family, _T("Modern")) == 0) return wxMODERN; - else if (strcmp(family, "Script") == 0) + else if (wxStrcmp(family, _T("Script")) == 0) return wxSCRIPT; + else if (wxStrcmp(family, _T("Teletype")) == 0) + return wxTELETYPE; else return wxSWISS; } -int wxFontStyleStringToInt(char *style) +int wxFontStyleStringToInt(wxChar *style) { if (!style) return wxNORMAL; - if (strcmp(style, "Italic") == 0) + if (wxStrcmp(style, _T("Italic")) == 0) return wxITALIC; - else if (strcmp(style, "Slant") == 0) + else if (wxStrcmp(style, _T("Slant")) == 0) return wxSLANT; else return wxNORMAL; } -int wxFontWeightStringToInt(char *weight) +int wxFontWeightStringToInt(wxChar *weight) { if (!weight) return wxNORMAL; - if (strcmp(weight, "Bold") == 0) + if (wxStrcmp(weight, _T("Bold")) == 0) return wxBOLD; - else if (strcmp(weight, "Light") == 0) + else if (wxStrcmp(weight, _T("Light")) == 0) return wxLIGHT; else return wxNORMAL;