From 449cc186d5b8117d74ba22d6173497d00939f5f1 Mon Sep 17 00:00:00 2001 From: Piotr Dziwinski Date: Sat, 28 Apr 2012 17:53:17 +0200 Subject: Source files split into modules --- src/edit.h | 255 ------------------------------------------------------------- 1 file changed, 255 deletions(-) delete mode 100644 src/edit.h (limited to 'src/edit.h') diff --git a/src/edit.h b/src/edit.h deleted file mode 100644 index 4ad884f..0000000 --- a/src/edit.h +++ /dev/null @@ -1,255 +0,0 @@ -// * This file is part of the COLOBOT source code -// * Copyright (C) 2001-2008, Daniel ROUX & EPSITEC SA, www.epsitec.ch -// * -// * This program is free software: you can redistribute it and/or modify -// * it under the terms of the GNU General Public License as published by -// * the Free Software Foundation, either version 3 of the License, or -// * (at your option) any later version. -// * -// * This program is distributed in the hope that it will be useful, -// * but WITHOUT ANY WARRANTY; without even the implied warranty of -// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// * GNU General Public License for more details. -// * -// * You should have received a copy of the GNU General Public License -// * along with this program. If not, see http://www.gnu.org/licenses/. - -// edit.h - -#ifndef _EDIT_H_ -#define _EDIT_H_ - - -#include "struct.h" -#include "control.h" - - -class CD3DEngine; -class CScroll; - - - -#define EDITSTUDIOMAX 20000 // maximum number of characters in CBOT edit -#define EDITLINEMAX 1000 // maximum total number of lines -#define EDITIMAGEMAX 50 // maximum total number of lines with images -#define EDITLINKMAX 100 // maximum number of links -#define EDITHISTORYMAX 50 // max number of levels preserves - -#define EDITUNDOMAX 20 // max number of successive undo - -typedef struct -{ - char* text; // original text - int len; // length of the text - int cursor1; // offset cursor - int cursor2; // offset cursor - int lineFirst; // the first line displayed. - -} -EditUndo; - -enum OperUndo -{ - OPERUNDO_SPEC = 0, // special operation - OPERUNDO_INSERT = 1, // inserting characters - OPERUNDO_DELETE = 2, // deleting characters -}; - -typedef struct -{ - char name[40]; // name of the image (without diagram \) - float offset; // vertical offset (v texture) - float height; // height of the part (dv texture) - float width; // width -} -ImageLine; - -typedef struct -{ - char name[40]; // text file name (without help \) - char marker[20]; // name of the marker -} -HyperLink; - -typedef struct -{ - char name[20]; // name of the marker - int pos; // position in the text -} -HyperMarker; - -typedef struct -{ - char filename[50]; // full file name text - int firstLine; // rank of the first displayed line -} -HyperHistory; - - - - -class CEdit : public CControl -{ -public: - CEdit(CInstanceManager* iMan); - virtual ~CEdit(); - - BOOL Create(FPOINT pos, FPOINT dim, int icon, EventMsg eventMsg); - - void SetPos(FPOINT pos); - void SetDim(FPOINT dim); - - BOOL EventProcess(const Event &event); - void Draw(); - - void SetText(char *text, BOOL bNew=TRUE); - void GetText(char *buffer, int max); - char* RetText(); - int RetTextLength(); - - BOOL ReadText(char *filename, int addSize=0); - BOOL WriteText(char *filename); - - void SetMaxChar(int max); - int RetMaxChar(); - - void SetEditCap(BOOL bMode); - BOOL RetEditCap(); - - void SetHiliteCap(BOOL bEnable); - BOOL RetHiliteCap(); - - void SetInsideScroll(BOOL bInside); - BOOL RetInsideScroll(); - - void SetSoluceMode(BOOL bSoluce); - BOOL RetSoluceMode(); - - void SetGenericMode(BOOL bGeneric); - BOOL RetGenericMode(); - - void SetAutoIndent(BOOL bMode); - BOOL RetAutoIndent(); - - void SetCursor(int cursor1, int cursor2); - void GetCursor(int &cursor1, int &cursor2); - - void SetFirstLine(int rank); - int RetFirstLine(); - void ShowSelect(); - - void SetDisplaySpec(BOOL bDisplay); - BOOL RetDisplaySpec(); - - void SetMultiFont(BOOL bMulti); - BOOL RetMultiFont(); - - BOOL Cut(); - BOOL Copy(); - BOOL Paste(); - BOOL Undo(); - - void HyperFlush(); - void HyperHome(char *filename); - BOOL HyperTest(EventMsg event); - BOOL HyperGo(EventMsg event); - - void SetFontSize(float size); - - BOOL ClearFormat(); - BOOL SetFormat(int cursor1, int cursor2, int format); - -protected: - void SendModifEvent(); - BOOL IsLinkPos(FPOINT pos); - void MouseDoubleClick(FPOINT mouse); - void MouseClick(FPOINT mouse); - void MouseMove(FPOINT mouse); - void MouseRelease(FPOINT mouse); - int MouseDetect(FPOINT mouse); - void MoveAdjust(); - - void HyperJump(char *name, char *marker); - BOOL HyperAdd(char *filename, int firstLine); - - void DrawImage(FPOINT pos, char *name, float width, float offset, float height, int nbLine); - void DrawBack(FPOINT pos, FPOINT dim); - void DrawPart(FPOINT pos, FPOINT dim, int icon); - - void FreeImage(); - void LoadImage(char *name); - void Scroll(int pos, BOOL bAdjustCursor); - void Scroll(); - void MoveChar(int move, BOOL bWord, BOOL bSelect); - void MoveLine(int move, BOOL bWord, BOOL bSelect); - void MoveHome(BOOL bWord, BOOL bSelect); - void MoveEnd(BOOL bWord, BOOL bSelect); - void ColumnFix(); - void Insert(char character); - void InsertOne(char character); - void Delete(int dir); - void DeleteOne(int dir); - int IndentCompute(); - int IndentTabCount(); - void IndentTabAdjust(int number); - BOOL Shift(BOOL bLeft); - BOOL MinMaj(BOOL bMaj); - void Justif(); - int RetCursorLine(int cursor); - - void UndoFlush(); - void UndoMemorize(OperUndo oper); - BOOL UndoRecall(); - -protected: - CScroll* m_scroll; // vertical scrollbar on the right - - int m_maxChar; // max length of the buffer m_text - char* m_text; // text (without zero terminator) - char* m_format; // format characters - int m_len; // length used in m_text - int m_cursor1; // offset cursor - int m_cursor2; // offset cursor - - BOOL m_bMulti; // TRUE -> multi-line - BOOL m_bEdit; // TRUE -> editable - BOOL m_bHilite; // TRUE -> hilitable - BOOL m_bInsideScroll; // TRUE -> lift as part - BOOL m_bDisplaySpec; // TRUE -> displays the special characters - BOOL m_bMultiFont; // TRUE -> more fonts possible - BOOL m_bSoluce; // TRUE -> shows the links-solution - BOOL m_bGeneric; // TRUE -> generic that defile - BOOL m_bAutoIndent; // TRUE -> automatic indentation - float m_lineHeight; // height of a row - float m_lineAscent; // height above the baseline - float m_lineDescent; // height below the baseline - int m_lineVisible; // total number of viewable lines - int m_lineFirst; // the first line displayed - int m_lineTotal; // number lines used (in m_lineOffset) - int m_lineOffset[EDITLINEMAX]; - char m_lineIndent[EDITLINEMAX]; - int m_imageTotal; - ImageLine m_image[EDITIMAGEMAX]; - HyperLink m_link[EDITLINKMAX]; - int m_markerTotal; - HyperMarker m_marker[EDITLINKMAX]; - int m_historyTotal; - int m_historyCurrent; - HyperHistory m_history[EDITHISTORYMAX]; - float m_time; // absolute time - float m_timeBlink; - float m_timeLastClick; - float m_timeLastScroll; - FPOINT m_mouseFirstPos; - FPOINT m_mouseLastPos; - float m_column; - - BOOL m_bCapture; - - BOOL m_bUndoForce; - OperUndo m_undoOper; - EditUndo m_undo[EDITUNDOMAX]; -}; - - -#endif //_EDIT_H_ -- cgit v1.2.3-1-g7c22