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

📄 scintillawx.h

📁 robocup rcssserver 运行防真机器人足球比赛所用的服务器端
💻 H
字号:
////////////////////////////////////////////////////////////////////////////// Name:        ScintillaWX.h// Purpose:     A wxWidgets implementation of Scintilla.  A class derived//              from ScintillaBase that uses the "wx platform" defined in//              PlatWX.cpp.  This class is one end of a bridge between//              the wx world and the Scintilla world.  It needs a peer//              object of type wxScintilla to function.//// Author:      Robin Dunn//// Created:     13-Jan-2000// RCS-ID:      $Id: ScintillaWX.h,v 1.1 2008/02/24 16:18:07 rollmark Exp $// Copyright:   (c) 2000 by Total Control Software// Licence:     wxWindows license/////////////////////////////////////////////////////////////////////////////#ifndef __ScintillaWX_h__#define __ScintillaWX_h__//----------------------------------------------------------------------#include <ctype.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include "Platform.h"#include "Scintilla.h"#include "XPM.h"#ifdef SCI_LEXER#include "SciLexer.h"#include "PropSet.h"#include "Accessor.h"#include "KeyWords.h"#endif#include "ContractionState.h"#include "SVector.h"#include "CellBuffer.h"#include "CallTip.h"#include "KeyMap.h"#include "Indicator.h"#include "LineMarker.h"#include "Style.h"#include "ViewStyle.h"#include "AutoComplete.h"#include "CharClassify.h"#include "RESearch.h"#include "Document.h"#include "Editor.h"#include "ScintillaBase.h"#include <wx/wx.h>#include <wx/dataobj.h>#include <wx/clipbrd.h>#include <wx/dnd.h>//----------------------------------------------------------------------#ifdef WXMAKINGDLL_SCI    #define WXDLLIMPEXP_SCI WXEXPORT#elif defined(WXUSINGDLL)    #define WXDLLIMPEXP_SCI WXIMPORT#else // not making nor using DLL    #define WXDLLIMPEXP_SCI#endifclass WXDLLIMPEXP_SCI wxScintilla;           // forwardclass ScintillaWX;//----------------------------------------------------------------------// Helper classes#if wxUSE_DRAG_AND_DROPclass wxSCIDropTarget : public wxTextDropTarget {public:    void SetScintilla(ScintillaWX* swx) {        this->swx = swx;    }    bool OnDropText(wxCoord x, wxCoord y, const wxString& data);    wxDragResult OnEnter(wxCoord x, wxCoord y, wxDragResult def);    wxDragResult OnDragOver(wxCoord x, wxCoord y, wxDragResult def);    void OnLeave();private:    ScintillaWX* swx;};#endif//----------------------------------------------------------------------class ScintillaWX : public ScintillaBase {public:    ScintillaWX(wxScintilla* win);    ~ScintillaWX();    // base class virtuals    virtual void Initialise();    virtual void Finalise();    virtual void StartDrag();    virtual bool SetIdle(bool on);    virtual void SetTicking(bool on);    virtual void SetMouseCapture(bool on);    virtual bool HaveMouseCapture();    virtual void ScrollText(int linesToMove);    virtual void SetVerticalScrollPos();    virtual void SetHorizontalScrollPos();    virtual bool ModifyScrollBars(int nMax, int nPage);    virtual void Copy();    virtual void Paste();    virtual void CopyToClipboard(const SelectionText &selectedText);    virtual void CreateCallTipWindow(PRectangle rc);    virtual void AddToPopUp(const char *label, int cmd = 0, bool enabled = true);    virtual void ClaimSelection();    virtual long DefWndProc(unsigned int iMessage,                            unsigned long wParam,                            long lParam);    virtual long WndProc(unsigned int iMessage,                         unsigned long wParam,                         long lParam);    virtual void NotifyChange();    virtual void NotifyParent(SCNotification scn);    virtual void CancelModes();    virtual void UpdateSystemCaret();    // Event delegates    void DoPaint(wxDC* dc, wxRect rect);    void DoHScroll(int type, int pos);    void DoVScroll(int type, int pos);    void DoSize(int width, int height);    void DoLoseFocus();    void DoGainFocus();    void DoSysColourChange();    void DoLeftButtonDown(Point pt, unsigned int curTime, bool shift, bool ctrl, bool alt);    void DoLeftButtonUp(Point pt, unsigned int curTime, bool ctrl);    void DoLeftButtonMove(Point pt);    void DoMiddleButtonUp(Point pt);    void DoMouseWheel(int rotation, int delta, int linesPerAction, int ctrlDown, bool isPageScroll);    void DoAddChar(int key);    int  DoKeyDown(const wxKeyEvent& event, bool* consumed);    void DoTick() { Tick(); }    void DoOnIdle(wxIdleEvent& evt);    void DoStartDrag();#if wxUSE_DRAG_AND_DROP    bool DoDropText(long x, long y, const wxString& data);    wxDragResult DoDragEnter(wxCoord x, wxCoord y, wxDragResult def);    wxDragResult DoDragOver(wxCoord x, wxCoord y, wxDragResult def);    void DoDragLeave();#endif    void DoCommand(int ID);    void DoContextMenu(Point pt);    void DoOnListBox();    // helpers    void FullPaint();    bool CanPaste();    bool GetHideSelection() { return hideSelection; }    void DoScrollToLine(int line);    void DoScrollToColumn(int column);    void ClipChildren(wxDC& dc, PRectangle rect);    void SetUseAntiAliasing(bool useAA);    bool GetUseAntiAliasing();private:    bool                capturedMouse;    bool                focusEvent;    wxScintilla*   sci;#if wxUSE_DRAG_AND_DROP    wxSCIDropTarget*    dropTarget;    wxDragResult        dragResult;    bool                dragRectangle;    wxTimer*            startDragTimer;#endif    int                 wheelRotation;    // For use in creating a system caret    bool HasCaretSizeChanged();    bool CreateSystemCaret();    bool DestroySystemCaret();#ifdef __WXMSW__#if wxCHECK_VERSION(2, 5, 0)    HBITMAP sysCaretBitmap;    int sysCaretWidth;    int sysCaretHeight;#endif#endif    friend class wxSCICallTip;};//----------------------------------------------------------------------#endif

⌨️ 快捷键说明

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