X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ebf0a02930fcaaf8b78ed30a71e03619d5d07df4..523d2f145ef7d8e653fbe1f16797c1f0b4d91c16:/src/richtext/richtextsymboldlg.cpp diff --git a/src/richtext/richtextsymboldlg.cpp b/src/richtext/richtextsymboldlg.cpp index bfb183679d..183638b5b3 100644 --- a/src/richtext/richtextsymboldlg.cpp +++ b/src/richtext/richtextsymboldlg.cpp @@ -1,36 +1,39 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: richtextsymboldlg.cpp +// Name: src/richtext/richtextsymboldlg.cpp // Purpose: // Author: Julian Smart // Modified by: // Created: 10/5/2006 3:11:58 PM -// RCS-ID: +// RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // For compilers that support precompilation, includes "wx/wx.h". #include "wx/wxprec.h" #ifdef __BORLANDC__ -#pragma hdrstop + #pragma hdrstop #endif +#if wxUSE_RICHTEXT + +#include "wx/richtext/richtextsymboldlg.h" + #ifndef WX_PRECOMP -#include "wx/wx.h" + #include "wx/sizer.h" + #include "wx/stattext.h" + #include "wx/combobox.h" + #include "wx/button.h" + #include "wx/settings.h" + #include "wx/icon.h" + #include "wx/listbox.h" #endif -////@begin includes -////@end includes - -#include "wx/fontenum.h" #include "wx/dcbuffer.h" -#include "wx/settings.h" -#include "../../include/wx/richtext/richtextsymboldlg.h" - -////@begin XPM images -////@end XPM images +// Only for cached font name +#include "wx/richtext/richtextctrl.h" /* Microsoft Unicode subset numbering */ @@ -111,6 +114,7 @@ typedef enum } wxUnicodeSubsetCodes; /* Unicode subsets */ +#ifdef __UNICODE__ static struct { @@ -261,6 +265,8 @@ static struct U_SPECIALS, wxT("Specials") } }; +#endif // __UNICODE__ + #if 0 // Not yet used, but could be used to test under Win32 whether this subset is available // for the given font. The Win32 function is allegedly not accurate, however. @@ -270,6 +276,8 @@ bool wxSubsetValidForFont(int subsetIndex, FONTSIGNATURE *fontSig) } #endif +bool wxSymbolPickerDialog::sm_showToolTips = false; + /*! * wxSymbolPickerDialog type definition */ @@ -294,7 +302,7 @@ BEGIN_EVENT_TABLE( wxSymbolPickerDialog, wxDialog ) EVT_COMBOBOX( ID_SYMBOLPICKERDIALOG_FROM, wxSymbolPickerDialog::OnFromUnicodeSelected ) #endif -#if defined(__WXMSW__) || defined(__WXGTK__) || defined(__WXOS2__) || defined(__WXMGL__) || defined(__WXMOTIF__) || defined(__WXCOCOA__) || defined(__WXX11__) || defined(__WXPALMOS__) +#if defined(__WXMSW__) || defined(__WXGTK__) || defined(__WXPM__) || defined(__WXMGL__) || defined(__WXMOTIF__) || defined(__WXCOCOA__) || defined(__WXX11__) || defined(__WXPALMOS__) EVT_UPDATE_UI( wxID_OK, wxSymbolPickerDialog::OnOkUpdate ) #endif @@ -392,7 +400,10 @@ void wxSymbolPickerDialog::CreateControls() itemBoxSizer5->Add(itemStaticText6, 0, wxALIGN_CENTER_VERTICAL|wxALL|wxADJUST_MINSIZE, 5); wxString* m_fontCtrlStrings = NULL; - m_fontCtrl = new wxComboBox( itemDialog1, ID_SYMBOLPICKERDIALOG_FONT, _T(""), wxDefaultPosition, wxSize(240, -1), 0, m_fontCtrlStrings, wxCB_READONLY ); + m_fontCtrl = new wxComboBox( itemDialog1, ID_SYMBOLPICKERDIALOG_FONT, wxEmptyString, wxDefaultPosition, wxSize(240, -1), 0, m_fontCtrlStrings, wxCB_READONLY ); + m_fontCtrl->SetHelpText(_("The font from which to take the symbol.")); + if (ShowToolTips()) + m_fontCtrl->SetToolTip(_("The font from which to take the symbol.")); itemBoxSizer5->Add(m_fontCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); itemBoxSizer5->Add(5, 5, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); @@ -405,7 +416,7 @@ void wxSymbolPickerDialog::CreateControls() #if defined(__UNICODE__) wxString* m_subsetCtrlStrings = NULL; - m_subsetCtrl = new wxComboBox( itemDialog1, ID_SYMBOLPICKERDIALOG_SUBSET, _T(""), wxDefaultPosition, wxDefaultSize, 0, m_subsetCtrlStrings, wxCB_READONLY ); + m_subsetCtrl = new wxComboBox( itemDialog1, ID_SYMBOLPICKERDIALOG_SUBSET, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, m_subsetCtrlStrings, wxCB_READONLY ); m_subsetCtrl->SetHelpText(_("Shows a Unicode subset.")); if (ShowToolTips()) m_subsetCtrl->SetToolTip(_("Shows a Unicode subset.")); @@ -427,7 +438,10 @@ void wxSymbolPickerDialog::CreateControls() wxStaticText* itemStaticText15 = new wxStaticText( itemDialog1, wxID_STATIC, _("&Character code:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer12->Add(itemStaticText15, 0, wxALIGN_CENTER_VERTICAL|wxALL|wxADJUST_MINSIZE, 5); - m_characterCodeCtrl = new wxTextCtrl( itemDialog1, ID_SYMBOLPICKERDIALOG_CHARACTERCODE, _T(""), wxDefaultPosition, wxSize(140, -1), wxTE_READONLY|wxTE_CENTRE ); + m_characterCodeCtrl = new wxTextCtrl( itemDialog1, ID_SYMBOLPICKERDIALOG_CHARACTERCODE, wxEmptyString, wxDefaultPosition, wxSize(140, -1), wxTE_READONLY|wxTE_CENTRE ); + m_characterCodeCtrl->SetHelpText(_("The character code.")); + if (ShowToolTips()) + m_characterCodeCtrl->SetToolTip(_("The character code.")); itemBoxSizer12->Add(m_characterCodeCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); itemBoxSizer12->Add(5, 5, 1, wxALIGN_CENTER_VERTICAL|wxALL, 5); @@ -445,11 +459,14 @@ void wxSymbolPickerDialog::CreateControls() }; m_fromUnicodeCtrl = new wxComboBox( itemDialog1, ID_SYMBOLPICKERDIALOG_FROM, _("ASCII"), wxDefaultPosition, wxDefaultSize, 2, m_fromUnicodeCtrlStrings, wxCB_READONLY ); m_fromUnicodeCtrl->SetStringSelection(_("ASCII")); + m_fromUnicodeCtrl->SetHelpText(_("The range to show.")); + if (ShowToolTips()) + m_fromUnicodeCtrl->SetToolTip(_("The range to show.")); itemBoxSizer12->Add(m_fromUnicodeCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); #endif -#if defined(__WXMSW__) || defined(__WXGTK__) || defined(__WXOS2__) || defined(__WXMGL__) || defined(__WXMOTIF__) || defined(__WXCOCOA__) || defined(__WXX11__) || defined(__WXPALMOS__) +#if defined(__WXMSW__) || defined(__WXGTK__) || defined(__WXPM__) || defined(__WXMGL__) || defined(__WXMOTIF__) || defined(__WXCOCOA__) || defined(__WXX11__) || defined(__WXPALMOS__) wxBoxSizer* itemBoxSizer20 = new wxBoxSizer(wxHORIZONTAL); itemBoxSizer3->Add(itemBoxSizer20, 0, wxGROW, 5); @@ -502,16 +519,14 @@ bool wxSymbolPickerDialog::TransferDataToWindow() if (m_fontCtrl->GetCount() == 0) { - wxFontEnumerator enumerator; - enumerator.EnumerateFacenames(); - wxArrayString faceNames = enumerator.GetFacenames(); + wxArrayString faceNames = wxRichTextCtrl::GetAvailableFontNames(); faceNames.Sort(); faceNames.Insert(_("(Normal text)"), 0); m_fontCtrl->Append(faceNames); } - if (m_fontName.IsEmpty()) + if (m_fontName.empty()) m_fontCtrl->SetSelection(0); else { @@ -521,7 +536,7 @@ bool wxSymbolPickerDialog::TransferDataToWindow() m_fontCtrl->SetSelection(0); } - if (!m_symbol.IsEmpty()) + if (!m_symbol.empty()) { int sel = (int) m_symbol[0]; m_symbolsCtrl->SetSelection(sel); @@ -551,12 +566,12 @@ void wxSymbolPickerDialog::UpdateSymbolDisplay(bool updateSymbolList, bool showA { wxFont font; wxString fontNameToUse; - if (m_fontName.IsEmpty()) + if (m_fontName.empty()) fontNameToUse = m_normalTextFontName; else fontNameToUse = m_fontName; - if (!fontNameToUse.IsEmpty()) + if (!fontNameToUse.empty()) { font = wxFont(14, wxDEFAULT, wxNORMAL, wxNORMAL, false, fontNameToUse); } @@ -568,7 +583,7 @@ void wxSymbolPickerDialog::UpdateSymbolDisplay(bool updateSymbolList, bool showA m_symbolsCtrl->SetFont(font); } - if (!m_symbol.IsEmpty()) + if (!m_symbol.empty()) { m_symbolStaticCtrl->SetFont(font); m_symbolStaticCtrl->SetLabel(m_symbol); @@ -621,7 +636,7 @@ void wxSymbolPickerDialog::OnSymbolSelected( wxCommandEvent& event ) return; int sel = event.GetSelection(); - if (sel == -1) + if (sel == wxNOT_FOUND) m_symbol = wxEmptyString; else { @@ -699,22 +714,13 @@ void wxSymbolPickerDialog::SetUnicodeMode(bool unicodeMode) /// Get the selected symbol character int wxSymbolPickerDialog::GetSymbolChar() const { - if (m_symbol.IsEmpty()) + if (m_symbol.empty()) return -1; else return (int) m_symbol[0]; } -/*! - * Should we show tooltips? - */ - -bool wxSymbolPickerDialog::ShowToolTips() -{ - return true; -} - /*! * Get bitmap resources */ @@ -850,8 +856,9 @@ bool wxSymbolListCtrl::DoSetCurrent(int current) { // it is, indeed, only partly visible, so scroll it into view to // make it entirely visible - while ( (size_t)lineNo == GetLastVisibleLine() && - ScrollToLine(GetVisibleBegin()+1) ) ; + while ( unsigned(lineNo) == GetLastVisibleLine() && + ScrollToLine(GetVisibleBegin()+1) ) + ; // but in any case refresh it as even if it was only partly visible // before we need to redraw it entirely as its background changed @@ -1228,7 +1235,7 @@ int wxSymbolListCtrl::HitTest(const wxPoint& pt) if (symbol >= m_minSymbolValue && symbol <= m_maxSymbolValue) return symbol; - else + return -1; } @@ -1283,4 +1290,4 @@ wxSymbolListCtrl::GetClassDefaultAttributes(wxWindowVariant variant) return wxListBox::GetClassDefaultAttributes(variant); } - +#endif // wxUSE_RICHTEXT