This commit was manufactured by cvs2svn to create branch
'WX_2_4_BRANCH'. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@23681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
169
contrib/samples/stc/edit.h
Normal file
169
contrib/samples/stc/edit.h
Normal file
@@ -0,0 +1,169 @@
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
// File: edit.h
|
||||
// Purpose: STC test module
|
||||
// Maintainer: Wyo
|
||||
// Created: 2003-09-01
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) wxGuide
|
||||
// Licence: wxWindows licence
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _EDIT_H_
|
||||
#define _EDIT_H_
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// informations
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// headers
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
//! wxWindows headers
|
||||
|
||||
//! wxWindows/contrib headers
|
||||
#include <wx/stc/stc.h> // styled text control
|
||||
|
||||
//! application headers
|
||||
#include "prefs.h" // preferences
|
||||
|
||||
|
||||
//============================================================================
|
||||
// declarations
|
||||
//============================================================================
|
||||
|
||||
class EditPrint;
|
||||
class EditProperties;
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Edit
|
||||
class Edit: public wxStyledTextCtrl {
|
||||
friend class EditProperties;
|
||||
friend class EditPrint;
|
||||
|
||||
public:
|
||||
//! constructor
|
||||
Edit (wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint &pos = wxDefaultPosition,
|
||||
const wxSize &size = wxDefaultSize,
|
||||
long style = wxSUNKEN_BORDER|wxVSCROLL
|
||||
);
|
||||
|
||||
//! destructor
|
||||
~Edit ();
|
||||
|
||||
// event handlers
|
||||
// common
|
||||
void OnSize( wxSizeEvent &event );
|
||||
// edit
|
||||
void OnEditRedo (wxCommandEvent &event);
|
||||
void OnEditUndo (wxCommandEvent &event);
|
||||
void OnEditClear (wxCommandEvent &event);
|
||||
void OnEditCut (wxCommandEvent &event);
|
||||
void OnEditCopy (wxCommandEvent &event);
|
||||
void OnEditPaste (wxCommandEvent &event);
|
||||
// find
|
||||
void OnFind (wxCommandEvent &event);
|
||||
void OnFindNext (wxCommandEvent &event);
|
||||
void OnReplace (wxCommandEvent &event);
|
||||
void OnReplaceNext (wxCommandEvent &event);
|
||||
void OnBraceMatch (wxCommandEvent &event);
|
||||
void OnGoto (wxCommandEvent &event);
|
||||
void OnEditIndentInc (wxCommandEvent &event);
|
||||
void OnEditIndentRed (wxCommandEvent &event);
|
||||
void OnEditSelectAll (wxCommandEvent &event);
|
||||
void OnEditSelectLine (wxCommandEvent &event);
|
||||
//! view
|
||||
void OnHilightLang (wxCommandEvent &event);
|
||||
void OnDisplayEOL (wxCommandEvent &event);
|
||||
void OnIndentGuide (wxCommandEvent &event);
|
||||
void OnLineNumber (wxCommandEvent &event);
|
||||
void OnLongLineOn (wxCommandEvent &event);
|
||||
void OnWhiteSpace (wxCommandEvent &event);
|
||||
void OnFoldToggle (wxCommandEvent &event);
|
||||
void OnSetOverType (wxCommandEvent &event);
|
||||
void OnSetReadOnly (wxCommandEvent &event);
|
||||
void OnWrapmodeOn (wxCommandEvent &event);
|
||||
void OnUseCharset (wxCommandEvent &event);
|
||||
//! extra
|
||||
void OnChangeCase (wxCommandEvent &event);
|
||||
void OnConvertEOL (wxCommandEvent &event);
|
||||
// stc
|
||||
void OnMarginClick (wxStyledTextEvent &event);
|
||||
void OnCharAdded (wxStyledTextEvent &event);
|
||||
|
||||
//! language/lexer
|
||||
wxString DeterminePrefs (const wxString &filename);
|
||||
bool InitializePrefs (const wxString &filename);
|
||||
bool UserSettings (const wxString &filename);
|
||||
LanguageInfo const* GetLanguageInfo () {return m_language;};
|
||||
|
||||
//! load/save file
|
||||
bool LoadFile ();
|
||||
bool LoadFile (const wxString &filename);
|
||||
bool SaveFile ();
|
||||
bool SaveFile (const wxString &filename);
|
||||
bool Modified ();
|
||||
wxString GetFilename () {return m_filename;};
|
||||
void SetFilename (const wxString &filename) {m_filename = filename;};
|
||||
|
||||
private:
|
||||
// file
|
||||
wxString m_filename;
|
||||
|
||||
// lanugage properties
|
||||
LanguageInfo const* m_language;
|
||||
|
||||
// margin variables
|
||||
int m_LineNrID;
|
||||
int m_LineNrMargin;
|
||||
int m_FoldingID;
|
||||
int m_FoldingMargin;
|
||||
int m_DividerID;
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! EditProperties
|
||||
class EditProperties: public wxDialog {
|
||||
|
||||
public:
|
||||
|
||||
//! constructor
|
||||
EditProperties (Edit *edit, long style = 0);
|
||||
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! EditPrint
|
||||
class EditPrint: public wxPrintout {
|
||||
|
||||
public:
|
||||
|
||||
//! constructor
|
||||
EditPrint (Edit *edit, wxChar *title = _T(""));
|
||||
|
||||
//! event handlers
|
||||
bool OnPrintPage (int page);
|
||||
bool OnBeginDocument (int startPage, int endPage);
|
||||
|
||||
//! print functions
|
||||
bool HasPage (int page);
|
||||
void GetPageInfo (int *minPage, int *maxPage, int *selPageFrom, int *selPageTo);
|
||||
|
||||
private:
|
||||
Edit *m_edit;
|
||||
int m_printed;
|
||||
wxRect m_pageRect;
|
||||
wxRect m_printRect;
|
||||
|
||||
bool PrintScaling (wxDC *dc);
|
||||
};
|
||||
|
||||
#endif // _EDIT_H_
|
||||
|
Reference in New Issue
Block a user