X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/38b130853f3eaf4cc3af9a2f20c0cdc2e2dda20d..c6ea1fdaf924be4ee49a19d12f76e4fcd257bb0a:/include/wx/richtext/richtextsymboldlg.h diff --git a/include/wx/richtext/richtextsymboldlg.h b/include/wx/richtext/richtextsymboldlg.h index e9d5b7ff31..c77884dc06 100644 --- a/include/wx/richtext/richtextsymboldlg.h +++ b/include/wx/richtext/richtextsymboldlg.h @@ -1,12 +1,12 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: richtextsymboldlg.h -// Purpose: +// Name: wx/richtext/richtextsymboldlg.h +// Purpose: // Author: Julian Smart -// Modified by: +// Modified by: // Created: 10/5/2006 3:11:58 PM -// RCS-ID: +// RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _RICHTEXTSYMBOLDLG_H_ @@ -16,6 +16,7 @@ * Includes */ +#include "wx/richtext/richtextuicustomization.h" #include "wx/dialog.h" #include "wx/vscroll.h" @@ -23,13 +24,16 @@ * Forward declarations */ +class WXDLLIMPEXP_FWD_CORE wxStaticText; +class WXDLLIMPEXP_FWD_CORE wxComboBox; +class WXDLLIMPEXP_FWD_CORE wxTextCtrl; + ////@begin forward declarations -class WXDLLIMPEXP_RICHTEXT wxSymbolListCtrl; -class WXDLLIMPEXP_CORE wxComboBox; -class WXDLLIMPEXP_CORE wxStaticText; -class WXDLLIMPEXP_CORE wxTextCtrl; +class wxSymbolListCtrl; +class wxStdDialogButtonSizer; ////@end forward declarations +// __UNICODE__ is a symbol used by DialogBlocks-generated code. #ifndef __UNICODE__ #if wxUSE_UNICODE #define __UNICODE__ @@ -41,7 +45,7 @@ class WXDLLIMPEXP_CORE wxTextCtrl; */ #define SYMBOL_WXSYMBOLPICKERDIALOG_STYLE (wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxCLOSE_BOX) -#define SYMBOL_WXSYMBOLPICKERDIALOG_TITLE _("Symbols") +#define SYMBOL_WXSYMBOLPICKERDIALOG_TITLE wxGetTranslation("Symbols") #define SYMBOL_WXSYMBOLPICKERDIALOG_IDNAME ID_SYMBOLPICKERDIALOG #define SYMBOL_WXSYMBOLPICKERDIALOG_SIZE wxSize(400, 300) #define SYMBOL_WXSYMBOLPICKERDIALOG_POSITION wxDefaultPosition @@ -51,47 +55,54 @@ class WXDLLIMPEXP_CORE wxTextCtrl; */ class WXDLLIMPEXP_RICHTEXT wxSymbolPickerDialog: public wxDialog -{ +{ DECLARE_DYNAMIC_CLASS( wxSymbolPickerDialog ) DECLARE_EVENT_TABLE() + DECLARE_HELP_PROVISION() public: /// Constructors wxSymbolPickerDialog( ); wxSymbolPickerDialog( const wxString& symbol, const wxString& fontName, const wxString& normalTextFont, - wxWindow* parent, wxWindowID id = SYMBOL_WXSYMBOLPICKERDIALOG_IDNAME, const wxString& caption = SYMBOL_WXSYMBOLPICKERDIALOG_TITLE, const wxPoint& pos = SYMBOL_WXSYMBOLPICKERDIALOG_POSITION, const wxSize& size = SYMBOL_WXSYMBOLPICKERDIALOG_SIZE, long style = SYMBOL_WXSYMBOLPICKERDIALOG_STYLE ); + wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& caption = SYMBOL_WXSYMBOLPICKERDIALOG_TITLE, const wxPoint& pos = SYMBOL_WXSYMBOLPICKERDIALOG_POSITION, const wxSize& size = SYMBOL_WXSYMBOLPICKERDIALOG_SIZE, long style = SYMBOL_WXSYMBOLPICKERDIALOG_STYLE ); /// Creation bool Create( const wxString& symbol, const wxString& fontName, const wxString& normalTextFont, - wxWindow* parent, wxWindowID id = SYMBOL_WXSYMBOLPICKERDIALOG_IDNAME, const wxString& caption = SYMBOL_WXSYMBOLPICKERDIALOG_TITLE, const wxPoint& pos = SYMBOL_WXSYMBOLPICKERDIALOG_POSITION, const wxSize& size = SYMBOL_WXSYMBOLPICKERDIALOG_SIZE, long style = SYMBOL_WXSYMBOLPICKERDIALOG_STYLE ); + wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& caption = SYMBOL_WXSYMBOLPICKERDIALOG_TITLE, const wxPoint& pos = SYMBOL_WXSYMBOLPICKERDIALOG_POSITION, const wxSize& size = SYMBOL_WXSYMBOLPICKERDIALOG_SIZE, long style = SYMBOL_WXSYMBOLPICKERDIALOG_STYLE ); /// Initialises members variables void Init(); /// Creates the controls and sizers void CreateControls(); - + /// Update the display void UpdateSymbolDisplay(bool updateSymbolList = true, bool showAtSubset = true); /// Respond to symbol selection void OnSymbolSelected( wxCommandEvent& event ); - + /// Set Unicode mode void SetUnicodeMode(bool unicodeMode); - + /// Show at the current subset selection void ShowAtSubset(); - + /// Get the selected symbol character int GetSymbolChar() const; /// Is there a selection? bool HasSelection() const { return !m_symbol.IsEmpty(); } - + /// Specifying normal text? bool UseNormalFont() const { return m_fontName.IsEmpty(); } - + + /// Should we show tooltips? + static bool ShowToolTips() { return sm_showToolTips; } + + /// Determines whether tooltips will be shown + static void SetShowToolTips(bool show) { sm_showToolTips = show; } + /// Data transfer virtual bool TransferDataToWindow(); @@ -104,22 +115,18 @@ public: /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_SYMBOLPICKERDIALOG_SUBSET void OnSubsetSelected( wxCommandEvent& event ); + /// wxEVT_UPDATE_UI event handler for ID_SYMBOLPICKERDIALOG_SUBSET + void OnSymbolpickerdialogSubsetUpdate( wxUpdateUIEvent& event ); + #endif #if defined(__UNICODE__) /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_SYMBOLPICKERDIALOG_FROM void OnFromUnicodeSelected( wxCommandEvent& event ); #endif -#if defined(__WXMSW__) || defined(__WXGTK__) || defined(__WXOS2__) || defined(__WXMGL__) || defined(__WXMOTIF__) || defined(__WXCOCOA__) || defined(__WXX11__) || defined(__WXPALMOS__) - /// wxEVT_UPDATE_UI event handler for wxID_OK - void OnOkUpdate( wxUpdateUIEvent& event ); - -#endif -#if defined(__WXMAC__) /// wxEVT_UPDATE_UI event handler for wxID_OK void OnOkUpdate( wxUpdateUIEvent& event ); -#endif ////@end wxSymbolPickerDialog event handler declarations ////@begin wxSymbolPickerDialog member function declarations @@ -143,9 +150,6 @@ public: wxIcon GetIconResource( const wxString& name ); ////@end wxSymbolPickerDialog member function declarations - /// Should we show tooltips? - static bool ShowToolTips(); - ////@begin wxSymbolPickerDialog member variables wxComboBox* m_fontCtrl; #if defined(__UNICODE__) @@ -157,6 +161,7 @@ public: #if defined(__UNICODE__) wxComboBox* m_fromUnicodeCtrl; #endif + wxStdDialogButtonSizer* m_stdButtonSizer; wxString m_fontName; wxString m_symbol; bool m_fromUnicode; @@ -173,12 +178,13 @@ public: ////@end wxSymbolPickerDialog member variables bool m_dontUpdate; + static bool sm_showToolTips; }; /*! * The scrolling symbol list. */ - + class WXDLLIMPEXP_RICHTEXT wxSymbolListCtrl : public wxVScrolledWindow { public: @@ -221,7 +227,7 @@ public: // set the current font virtual bool SetFont(const wxFont& font); - + // set Unicode/ASCII mode void SetUnicodeMode(bool unicodeMode); @@ -246,7 +252,7 @@ public: // set the selection to the specified item, if it is wxNOT_FOUND the // selection is unset void SetSelection(int selection); - + // make this item visible void EnsureVisible(int item); @@ -257,7 +263,7 @@ public: // by default both margins are 0 void SetMargins(const wxPoint& pt); void SetMargins(wxCoord x, wxCoord y) { SetMargins(wxPoint(x, y)); } - + // set the cell size void SetCellSize(const wxSize& sz) { m_cellSize = sz; } const wxSize& GetCellSize() const { return m_cellSize; } @@ -272,21 +278,21 @@ public: static wxVisualAttributes GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); - + // Get min/max symbol values int GetMinSymbolValue() const { return m_minSymbolValue; } int GetMaxSymbolValue() const { return m_maxSymbolValue; } - + // Respond to size change void OnSize(wxSizeEvent& event); protected: - // draws a line of symbols + // draws a line of symbols virtual void OnDrawItem(wxDC& dc, const wxRect& rect, size_t n) const; - + // gets the line height - virtual wxCoord OnGetLineHeight(size_t line) const; + virtual wxCoord OnGetRowHeight(size_t line) const; // event handlers void OnPaint(wxPaintEvent& event); @@ -317,13 +323,13 @@ protected: // common part of keyboard and mouse handling processing code void DoHandleItemClick(int item, int flags); - + // calculate line number from symbol value int SymbolValueToLineNumber(int item); - + // initialise control from current min/max values void SetupCtrl(bool scrollToSelection = true); - + // hit testing int HitTest(const wxPoint& pt); @@ -339,24 +345,24 @@ private: // double buffer wxBitmap* m_doubleBuffer; - + // cell size wxSize m_cellSize; - + // minimum and maximum symbol value int m_minSymbolValue; // minimum and maximum symbol value int m_maxSymbolValue; - + // number of items per line int m_symbolsPerLine; - + // Unicode/ASCII mode bool m_unicodeMode; DECLARE_EVENT_TABLE() - DECLARE_NO_COPY_CLASS(wxSymbolListCtrl) + wxDECLARE_NO_COPY_CLASS(wxSymbolListCtrl); DECLARE_ABSTRACT_CLASS(wxSymbolListCtrl) };