⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 richtextctrl.h

📁 wxWidgets 2.8.9 Downloads
💻 H
📖 第 1 页 / 共 3 页
字号:
    /// Left-double-click    void OnLeftDClick(wxMouseEvent& event);    /// Middle-click    void OnMiddleClick(wxMouseEvent& event);    /// Right-click    void OnRightClick(wxMouseEvent& event);    /// Key press    void OnChar(wxKeyEvent& event);    /// Sizing    void OnSize(wxSizeEvent& event);    /// Setting/losing focus    void OnSetFocus(wxFocusEvent& event);    void OnKillFocus(wxFocusEvent& event);    /// Idle-time processing    void OnIdle(wxIdleEvent& event);    /// Scrolling    void OnScroll(wxScrollWinEvent& event);    /// Set font, and also default attributes    virtual bool SetFont(const wxFont& font);    /// Set up scrollbars, e.g. after a resize    virtual void SetupScrollbars(bool atTop = false);    /// Keyboard navigation    virtual bool KeyboardNavigate(int keyCode, int flags);    /// Paint the background    virtual void PaintBackground(wxDC& dc);#if wxRICHTEXT_BUFFERED_PAINTING    /// Recreate buffer bitmap if necessary    virtual bool RecreateBuffer(const wxSize& size = wxDefaultSize);#endif    /// Set the selection    virtual void DoSetSelection(long from, long to, bool scrollCaret = true);    /// Write text    virtual void DoWriteText(const wxString& value, int flags = 0);    /// Should we inherit colours?    virtual bool ShouldInheritColours() const { return false; }    /// Position the caret    virtual void PositionCaret();    /// Extend the selection, returning true if the selection was    /// changed. Selections are in caret positions.    virtual bool ExtendSelection(long oldPosition, long newPosition, int flags);    /// Scroll into view. This takes a _caret_ position.    virtual bool ScrollIntoView(long position, int keyCode);    /// The caret position is the character position just before the caret.    /// A value of -1 means the caret is at the start of the buffer.    void SetCaretPosition(long position, bool showAtLineStart = false) ;    long GetCaretPosition() const { return m_caretPosition; }    /// The adjusted caret position is the character position adjusted to take    /// into account whether we're at the start of a paragraph, in which case    /// style information should be taken from the next position, not current one.    long GetAdjustedCaretPosition(long caretPos) const;    /// Move caret one visual step forward: this may mean setting a flag    /// and keeping the same position if we're going from the end of one line    /// to the start of the next, which may be the exact same caret position.    void MoveCaretForward(long oldPosition) ;    /// Move caret one visual step forward: this may mean setting a flag    /// and keeping the same position if we're going from the end of one line    /// to the start of the next, which may be the exact same caret position.    void MoveCaretBack(long oldPosition) ;    /// Get the caret height and position for the given character position    bool GetCaretPositionForIndex(long position, wxRect& rect);    /// Gets the line for the visible caret position. If the caret is    /// shown at the very end of the line, it means the next character is actually    /// on the following line. So let's get the line we're expecting to find    /// if this is the case.    wxRichTextLine* GetVisibleLineForCaretPosition(long caretPosition) const;    /// Gets the command processor    wxCommandProcessor* GetCommandProcessor() const { return GetBuffer().GetCommandProcessor(); }    /// Delete content if there is a selection, e.g. when pressing a key.    /// Returns the new caret position in newPos, or leaves it if there    /// was no action.    bool DeleteSelectedContent(long* newPos= NULL);    /// Transform logical to physical    wxPoint GetPhysicalPoint(const wxPoint& ptLogical) const;    /// Transform physical to logical    wxPoint GetLogicalPoint(const wxPoint& ptPhysical) const;    /// Finds the caret position for the next word. Direction    /// is 1 (forward) or -1 (backwards).    virtual long FindNextWordPosition(int direction = 1) const;    /// Is the given position visible on the screen?    bool IsPositionVisible(long pos) const;    /// Returns the first visible position in the current view    long GetFirstVisiblePosition() const;    /// Returns the caret position since the default formatting was changed. As    /// soon as this position changes, we no longer reflect the default style    /// in the UI. A value of -2 means that we should only reflect the style of the    /// content under the caret.    long GetCaretPositionForDefaultStyle() const { return m_caretPositionForDefaultStyle; }    /// Set the caret position for the default style that the user is selecting.    void SetCaretPositionForDefaultStyle(long pos) { m_caretPositionForDefaultStyle = pos; }    /// Should the UI reflect the default style chosen by the user, rather than the style under    /// the caret?    bool IsDefaultStyleShowing() const { return m_caretPositionForDefaultStyle != -2; }    /// Convenience function that tells the control to start reflecting the default    /// style, since the user is changing it.    void SetAndShowDefaultStyle(const wxRichTextAttr& attr)    {        SetDefaultStyle(attr);        SetCaretPositionForDefaultStyle(GetCaretPosition());    }    /// Get the first visible point in the window    wxPoint GetFirstVisiblePoint() const;// Implementation     /// Font names take a long time to retrieve, so cache them (on demand)     static const wxArrayString& GetAvailableFontNames();     static void ClearAvailableFontNames();     WX_FORWARD_TO_SCROLL_HELPER()// Overridesprotected:    virtual wxSize DoGetBestSize() const ;    virtual void DoSetValue(const wxString& value, int flags = 0);// Data membersprivate:    /// Allows nested Freeze/Thaw    int                     m_freezeCount;#if wxRICHTEXT_BUFFERED_PAINTING    /// Buffer bitmap    wxBitmap                m_bufferBitmap;#endif    /// Text buffer    wxRichTextBuffer        m_buffer;    wxMenu*                 m_contextMenu;    /// Caret position (1 less than the character position, so -1 is the    /// first caret position).    long                    m_caretPosition;    /// Caret position when the default formatting has been changed. As    /// soon as this position changes, we no longer reflect the default style    /// in the UI.    long                    m_caretPositionForDefaultStyle;    /// Selection range in character positions. -2, -2 means no selection.    wxRichTextRange         m_selectionRange;    /// Anchor so we know how to extend the selection    /// It's a caret position since it's between two characters.    long                    m_selectionAnchor;    /// Are we editable?    bool                    m_editable;    /// Are we showing the caret position at the start of a line    /// instead of at the end of the previous one?    bool                    m_caretAtLineStart;    /// Are we dragging a selection?    bool                    m_dragging;    /// Start position for drag    wxPoint                 m_dragStart;    /// Do we need full layout in idle?    bool                    m_fullLayoutRequired;    wxLongLong              m_fullLayoutTime;    long                    m_fullLayoutSavedPosition;    /// Threshold for doing delayed layout    long                    m_delayedLayoutThreshold;    /// Cursors    wxCursor                m_textCursor;    wxCursor                m_urlCursor;    static wxArrayString    sm_availableFontNames;};/*! * wxRichTextEvent - the event class for wxRichTextCtrl notifications */class WXDLLIMPEXP_RICHTEXT wxRichTextEvent : public wxNotifyEvent{public:    wxRichTextEvent(wxEventType commandType = wxEVT_NULL, int winid = 0)        : wxNotifyEvent(commandType, winid),        m_flags(0), m_position(-1), m_oldStyleSheet(NULL), m_newStyleSheet(NULL),        m_char((wxChar) 0)        { }    wxRichTextEvent(const wxRichTextEvent& event)        : wxNotifyEvent(event),        m_flags(event.m_flags), m_position(-1),        m_oldStyleSheet(event.m_oldStyleSheet), m_newStyleSheet(event.m_newStyleSheet),        m_char((wxChar) 0)        { }    long GetPosition() const { return m_position; }    void SetPosition(long pos) { m_position = pos; }    int GetFlags() const { return m_flags; }    void SetFlags(int flags) { m_flags = flags; }    wxRichTextStyleSheet* GetOldStyleSheet() const { return m_oldStyleSheet; }    void SetOldStyleSheet(wxRichTextStyleSheet* sheet) { m_oldStyleSheet = sheet; }    wxRichTextStyleSheet* GetNewStyleSheet() const { return m_newStyleSheet; }    void SetNewStyleSheet(wxRichTextStyleSheet* sheet) { m_newStyleSheet = sheet; }    const wxRichTextRange& GetRange() const { return m_range; }    void SetRange(const wxRichTextRange& range) { m_range = range; }    wxChar GetCharacter() const { return m_char; }    void SetCharacter(wxChar ch) { m_char = ch; }    virtual wxEvent *Clone() const { return new wxRichTextEvent(*this); }protected:    int                     m_flags;    long                    m_position;    wxRichTextStyleSheet*   m_oldStyleSheet;    wxRichTextStyleSheet*   m_newStyleSheet;    wxRichTextRange         m_range;    wxChar                  m_char;private:    DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxRichTextEvent)};/*! * wxRichTextCtrl event macros */BEGIN_DECLARE_EVENT_TYPES()    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, 2602)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK, 2603)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, 2604)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, 2605)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_RETURN, 2606)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_CHARACTER, 2607)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_DELETE, 2608)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING, 2609)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED, 2610)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING, 2611)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED, 2612)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_CONTENT_INSERTED, 2613)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_CONTENT_DELETED, 2614)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_STYLE_CHANGED, 2615)    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_SELECTION_CHANGED, 2616)#if wxABI_VERSION >= 20808    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_RICHTEXT, wxEVT_COMMAND_RICHTEXT_BUFFER_RESET, 2617)#endifEND_DECLARE_EVENT_TYPES()typedef void (wxEvtHandler::*wxRichTextEventFunction)(wxRichTextEvent&);#define wxRichTextEventHandler(func) \    (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxRichTextEventFunction, &func)#define EVT_RICHTEXT_LEFT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_LEFT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_RIGHT_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_RIGHT_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_MIDDLE_CLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_MIDDLE_CLICK, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_LEFT_DCLICK(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_LEFT_DCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_RETURN(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_RETURN, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_CHARACTER(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_CHARACTER, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_DELETE(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_DELETE, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_STYLESHEET_CHANGING(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGING, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_STYLESHEET_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_STYLESHEET_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_STYLESHEET_REPLACING(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACING, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_STYLESHEET_REPLACED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_STYLESHEET_REPLACED, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_CONTENT_INSERTED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_CONTENT_INSERTED, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_CONTENT_DELETED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_CONTENT_DELETED, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_STYLE_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_STYLE_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_SELECTION_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_SELECTION_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#define EVT_RICHTEXT_BUFFER_RESET(id, fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_RICHTEXT_BUFFER_RESET, id, -1, (wxObjectEventFunction) (wxEventFunction)  wxStaticCastEvent( wxRichTextEventFunction, & fn ), NULL ),#endif    // wxUSE_RICHTEXT#endif    // _WX_RICHTEXTCTRL_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -