]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/richtext/richtextsymboldlg.h
Prevent seg fault for older GTK+
[wxWidgets.git] / include / wx / richtext / richtextsymboldlg.h
index c72e3109bcd1269e943c5fa2f2f100d43f410ce3..8d8a590d0399c70d62ac1cb910cb291e89622c99 100644 (file)
@@ -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_
  * Includes
  */
 
+#include "wx/dialog.h"
 #include "wx/vscroll.h"
+#include "wx/combobox.h"
+#include "wx/stattext.h"
 
 /*!
  * Forward declarations
@@ -26,6 +29,7 @@
 class wxSymbolListCtrl;
 ////@end forward declarations
 
+// __UNICODE__ is a symbol used by DialogBlocks-generated code.
 #ifndef __UNICODE__
 #if wxUSE_UNICODE
 #define __UNICODE__
@@ -36,7 +40,7 @@ class wxSymbolListCtrl;
  * Symbols
  */
 
-#define SYMBOL_WXSYMBOLPICKERDIALOG_STYLE wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxCLOSE_BOX
+#define SYMBOL_WXSYMBOLPICKERDIALOG_STYLE (wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxCLOSE_BOX)
 #define SYMBOL_WXSYMBOLPICKERDIALOG_TITLE _("Symbols")
 #define SYMBOL_WXSYMBOLPICKERDIALOG_IDNAME ID_SYMBOLPICKERDIALOG
 #define SYMBOL_WXSYMBOLPICKERDIALOG_SIZE wxSize(400, 300)
@@ -47,7 +51,7 @@ class wxSymbolListCtrl;
  */
 
 class WXDLLIMPEXP_RICHTEXT wxSymbolPickerDialog: public wxDialog
-{    
+{
     DECLARE_DYNAMIC_CLASS( wxSymbolPickerDialog )
     DECLARE_EVENT_TABLE()
 
@@ -55,39 +59,45 @@ 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();
 
@@ -106,16 +116,10 @@ public:
     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
@@ -139,9 +143,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__)
@@ -169,12 +170,13 @@ public:
 ////@end wxSymbolPickerDialog member variables
 
     bool m_dontUpdate;
+    static bool             sm_showToolTips;
 };
 
 /*!
  * The scrolling symbol list.
  */
+
 class WXDLLIMPEXP_RICHTEXT wxSymbolListCtrl : public wxVScrolledWindow
 {
 public:
@@ -217,7 +219,7 @@ public:
 
     // set the current font
     virtual bool SetFont(const wxFont& font);
-    
+
     // set Unicode/ASCII mode
     void SetUnicodeMode(bool unicodeMode);
 
@@ -242,7 +244,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);
 
@@ -253,7 +255,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; }
@@ -268,21 +270,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);
@@ -313,13 +315,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);
 
@@ -335,19 +337,19 @@ 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;