richtextindentspage.h 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. /////////////////////////////////////////////////////////////////////////////
  2. // Name: wx/richtext/richtextindentspage.h
  3. // Purpose:
  4. // Author: Julian Smart
  5. // Modified by:
  6. // Created: 10/3/2006 2:28:21 PM
  7. // Copyright: (c) Julian Smart
  8. // Licence: wxWindows licence
  9. /////////////////////////////////////////////////////////////////////////////
  10. #ifndef _RICHTEXTINDENTSPAGE_H_
  11. #define _RICHTEXTINDENTSPAGE_H_
  12. /*!
  13. * Includes
  14. */
  15. #include "wx/richtext/richtextdialogpage.h"
  16. ////@begin includes
  17. #include "wx/statline.h"
  18. ////@end includes
  19. /*!
  20. * Forward declarations
  21. */
  22. ////@begin forward declarations
  23. class wxRichTextCtrl;
  24. ////@end forward declarations
  25. /*!
  26. * Control identifiers
  27. */
  28. ////@begin control identifiers
  29. #define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_STYLE wxRESIZE_BORDER|wxTAB_TRAVERSAL
  30. #define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_TITLE wxEmptyString
  31. #define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_IDNAME ID_RICHTEXTINDENTSSPACINGPAGE
  32. #define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_SIZE wxSize(400, 300)
  33. #define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_POSITION wxDefaultPosition
  34. ////@end control identifiers
  35. /*!
  36. * wxRichTextIndentsSpacingPage class declaration
  37. */
  38. class WXDLLIMPEXP_RICHTEXT wxRichTextIndentsSpacingPage: public wxRichTextDialogPage
  39. {
  40. DECLARE_DYNAMIC_CLASS( wxRichTextIndentsSpacingPage )
  41. DECLARE_EVENT_TABLE()
  42. DECLARE_HELP_PROVISION()
  43. public:
  44. /// Constructors
  45. wxRichTextIndentsSpacingPage( );
  46. wxRichTextIndentsSpacingPage( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_SIZE, long style = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_STYLE );
  47. /// Creation
  48. bool Create( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_SIZE, long style = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_STYLE );
  49. /// Initialise members
  50. void Init();
  51. /// Creates the controls and sizers
  52. void CreateControls();
  53. /// Transfer data from/to window
  54. virtual bool TransferDataFromWindow();
  55. virtual bool TransferDataToWindow();
  56. /// Updates the paragraph preview
  57. void UpdatePreview();
  58. /// Gets the attributes associated with the main formatting dialog
  59. wxRichTextAttr* GetAttributes();
  60. ////@begin wxRichTextIndentsSpacingPage event handler declarations
  61. /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_LEFT
  62. void OnAlignmentLeftSelected( wxCommandEvent& event );
  63. /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_RIGHT
  64. void OnAlignmentRightSelected( wxCommandEvent& event );
  65. /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_JUSTIFIED
  66. void OnAlignmentJustifiedSelected( wxCommandEvent& event );
  67. /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_CENTRED
  68. void OnAlignmentCentredSelected( wxCommandEvent& event );
  69. /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_INDETERMINATE
  70. void OnAlignmentIndeterminateSelected( wxCommandEvent& event );
  71. /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT
  72. void OnIndentLeftUpdated( wxCommandEvent& event );
  73. /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT_FIRST
  74. void OnIndentLeftFirstUpdated( wxCommandEvent& event );
  75. /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_RIGHT
  76. void OnIndentRightUpdated( wxCommandEvent& event );
  77. /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_OUTLINELEVEL
  78. void OnRichtextOutlinelevelSelected( wxCommandEvent& event );
  79. /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_BEFORE
  80. void OnSpacingBeforeUpdated( wxCommandEvent& event );
  81. /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_AFTER
  82. void OnSpacingAfterUpdated( wxCommandEvent& event );
  83. /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_LINE
  84. void OnSpacingLineSelected( wxCommandEvent& event );
  85. ////@end wxRichTextIndentsSpacingPage event handler declarations
  86. ////@begin wxRichTextIndentsSpacingPage member function declarations
  87. /// Retrieves bitmap resources
  88. wxBitmap GetBitmapResource( const wxString& name );
  89. /// Retrieves icon resources
  90. wxIcon GetIconResource( const wxString& name );
  91. ////@end wxRichTextIndentsSpacingPage member function declarations
  92. /// Should we show tooltips?
  93. static bool ShowToolTips();
  94. ////@begin wxRichTextIndentsSpacingPage member variables
  95. wxRadioButton* m_alignmentLeft;
  96. wxRadioButton* m_alignmentRight;
  97. wxRadioButton* m_alignmentJustified;
  98. wxRadioButton* m_alignmentCentred;
  99. wxRadioButton* m_alignmentIndeterminate;
  100. wxTextCtrl* m_indentLeft;
  101. wxTextCtrl* m_indentLeftFirst;
  102. wxTextCtrl* m_indentRight;
  103. wxComboBox* m_outlineLevelCtrl;
  104. wxTextCtrl* m_spacingBefore;
  105. wxTextCtrl* m_spacingAfter;
  106. wxComboBox* m_spacingLine;
  107. wxCheckBox* m_pageBreakCtrl;
  108. wxRichTextCtrl* m_previewCtrl;
  109. /// Control identifiers
  110. enum {
  111. ID_RICHTEXTINDENTSSPACINGPAGE = 10100,
  112. ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_LEFT = 10102,
  113. ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_RIGHT = 10110,
  114. ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_JUSTIFIED = 10111,
  115. ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_CENTRED = 10112,
  116. ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_INDETERMINATE = 10101,
  117. ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT = 10103,
  118. ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT_FIRST = 10104,
  119. ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_RIGHT = 10113,
  120. ID_RICHTEXTINDENTSSPACINGPAGE_OUTLINELEVEL = 10105,
  121. ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_BEFORE = 10114,
  122. ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_AFTER = 10116,
  123. ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_LINE = 10115,
  124. ID_RICHTEXTINDENTSSPACINGPAGE_PAGEBREAK = 10106,
  125. ID_RICHTEXTINDENTSSPACINGPAGE_PREVIEW_CTRL = 10109
  126. };
  127. ////@end wxRichTextIndentsSpacingPage member variables
  128. bool m_dontUpdate;
  129. };
  130. #endif
  131. // _RICHTEXTINDENTSPAGE_H_