texteditor.h
author insilmaril
Mon, 14 Jun 2010 13:59:17 +0000
changeset 848 e265f07f2173
parent 842 bec082472471
permissions -rw-r--r--
Fixed tmp relink, colored headings in TreeView
insilmaril@0
     1
#ifndef TEXTEDITOR_H 
insilmaril@0
     2
#define TEXTEDITOR_H
insilmaril@0
     3
insilmaril@366
     4
#include <QtGui>
insilmaril@0
     5
insilmaril@0
     6
enum EditorState {inactiveEditor,emptyEditor,filledEditor};
insilmaril@0
     7
insilmaril@746
     8
class NoteObj;
jhilmer@142
     9
insilmaril@0
    10
class TextEditor : public QMainWindow {
insilmaril@0
    11
    Q_OBJECT
insilmaril@0
    12
public:
insilmaril@0
    13
    TextEditor();
insilmaril@0
    14
    ~TextEditor();
insilmaril@0
    15
insilmaril@804
    16
	void reset();
insilmaril@0
    17
	bool isEmpty();
insilmaril@498
    18
	void setShowWithMain (bool);
insilmaril@498
    19
	bool showWithMain ();
insilmaril@0
    20
	void setFontHint(const QString&);
insilmaril@0
    21
	QString getFontHint();
insilmaril@0
    22
	QString getFontHintDefault();
insilmaril@0
    23
	void setFilename (const QString&);
insilmaril@0
    24
	QString getFilename ();
insilmaril@106
    25
	void setFilenameHint (const QString&);
insilmaril@106
    26
	QString getFilenameHint ();
insilmaril@746
    27
	QString getText();
insilmaril@746
    28
	NoteObj getNoteObj();
insilmaril@746
    29
	void setNote(const NoteObj &note);
insilmaril@746
    30
insilmaril@842
    31
	bool findText(const QString &, const QTextDocument::FindFlags &); 
insilmaril@842
    32
	bool findText(const QString &, const QTextDocument::FindFlags &,int i); 
insilmaril@842
    33
	void setTextCursor (const QTextCursor & cursor );
insilmaril@842
    34
	QTextCursor getTextCursor();
insilmaril@0
    35
insilmaril@0
    36
protected:
insilmaril@0
    37
	void setupFileActions();
insilmaril@0
    38
	void setupEditActions();
insilmaril@0
    39
	void setupFormatActions();
insilmaril@0
    40
	void setupSettingsActions();
insilmaril@0
    41
    void closeEvent( QCloseEvent* );
insilmaril@0
    42
	
insilmaril@0
    43
insilmaril@0
    44
public slots:
insilmaril@746
    45
	void editorChanged();			// received when text() changed
insilmaril@746
    46
	void setText(const QString &);	// set Text (by MapEditor)
insilmaril@746
    47
	void setInactive();				// Nothing can be entered
insilmaril@0
    48
	void editCopyAll();
insilmaril@0
    49
insilmaril@0
    50
signals:
insilmaril@0
    51
	void textHasChanged();
insilmaril@442
    52
	void windowClosed();
insilmaril@0
    53
	void fontFamilyHasChanged();
insilmaril@0
    54
	void fontSizeHasChanged();
insilmaril@0
    55
	
insilmaril@0
    56
private slots:
insilmaril@0
    57
    void textLoad();
insilmaril@0
    58
    void textSaveAs();
insilmaril@0
    59
    void textSave();
insilmaril@0
    60
	void textExportAsASCII();
insilmaril@0
    61
    void textPrint();
insilmaril@0
    62
	void textEditUndo();
insilmaril@0
    63
    void toggleFonthint();
insilmaril@0
    64
    void setFixedFont();
insilmaril@0
    65
    void setVarFont();
insilmaril@0
    66
    void textBold();
insilmaril@0
    67
    void textUnderline();
insilmaril@0
    68
    void textItalic();
insilmaril@0
    69
    void textFamily( const QString &f );
insilmaril@0
    70
    void textSize( const QString &p );
insilmaril@0
    71
	void textColor();
insilmaril@0
    72
	void textAlign(QAction*);
jhilmer@142
    73
	void textVAlign();
insilmaril@0
    74
    void fontChanged( const QFont &f );
insilmaril@0
    75
    void colorChanged( const QColor &c );
insilmaril@388
    76
	void formatChanged (const QTextCharFormat &f);
insilmaril@0
    77
    void alignmentChanged( int a );
insilmaril@388
    78
    void verticalAlignmentChanged(QTextCharFormat::VerticalAlignment);
insilmaril@0
    79
	void enableActions();
insilmaril@0
    80
	void disableActions();
insilmaril@366
    81
	void setState (EditorState);
insilmaril@0
    82
insilmaril@0
    83
private:
insilmaril@0
    84
    QPrinter *printer;
insilmaril@388
    85
    QTextEdit *e;
insilmaril@0
    86
	QPoint lastPos;			// save last position of window
insilmaril@0
    87
    QString filename;
insilmaril@106
    88
    QString filenameHint;
insilmaril@0
    89
insilmaril@0
    90
	QBrush emptyPaper;		// setting the background color
insilmaril@0
    91
	QBrush filledPaper;		// depending on the state
insilmaril@0
    92
	QBrush inactivePaper;	// depending on the state
insilmaril@0
    93
	EditorState state;
insilmaril@498
    94
	bool showwithmain;		// same visibility as mainwindow?
insilmaril@427
    95
	bool blockChangedSignal;
insilmaril@0
    96
insilmaril@0
    97
	QFont varFont;
insilmaril@0
    98
	QFont fixedFont;
insilmaril@388
    99
    QComboBox *comboFont, *comboSize;
insilmaril@0
   100
	
insilmaril@0
   101
	QAction *actionFileLoad,
insilmaril@0
   102
	*actionFileSave,
insilmaril@0
   103
	*actionFileSaveAs,
insilmaril@0
   104
	*actionFilePrint,
insilmaril@0
   105
	*actionEditUndo,
insilmaril@0
   106
	*actionEditRedo,
insilmaril@0
   107
	*actionEditCopy,
insilmaril@0
   108
	*actionEditCut,
insilmaril@0
   109
	*actionEditPaste,
insilmaril@0
   110
	*actionEditDeleteAll,
insilmaril@0
   111
	*actionFormatUseFixedFont,
insilmaril@0
   112
	*actionSettingsVarFont,
insilmaril@0
   113
	*actionSettingsFixedFont,
insilmaril@0
   114
	*actionSettingsFonthintDefault,
insilmaril@0
   115
    *actionTextBold,
insilmaril@0
   116
	*actionTextUnderline,
insilmaril@0
   117
	*actionTextItalic,
insilmaril@0
   118
	*actionTextColor,
insilmaril@388
   119
	*actionAlignSubScript,
insilmaril@388
   120
	*actionAlignSuperScript,
insilmaril@0
   121
	*actionAlignLeft,
insilmaril@0
   122
	*actionAlignCenter,
insilmaril@0
   123
	*actionAlignRight,
insilmaril@388
   124
	*actionAlignJustify;
insilmaril@0
   125
};
insilmaril@0
   126
insilmaril@0
   127
#endif