From 9741205aa0b0892b870d2b7df7c5dd7e25b0bb18 Mon Sep 17 00:00:00 2001 From: llornkcor Date: Mon, 18 Feb 2002 14:08:55 +0000 Subject: added fontDialog, fileBrowserDialog, and fileSave dialog, so we can edit anyfile, save anywhere, using a user selected name. Changed what is seen when it opens. It now opens with the texteditor opened to a new file, instead of the file selector, unless one is specified from commandline, or setDocument message. FileSelector is still available, but from a menu item. --- (limited to 'core/apps/textedit/qtextedit.h') diff --git a/core/apps/textedit/qtextedit.h b/core/apps/textedit/qtextedit.h deleted file mode 100644 index b29a728..0000000 --- a/core/apps/textedit/qtextedit.h +++ b/dev/null @@ -1,282 +0,0 @@ -/********************************************************************** -** Copyright (C) 2000 Trolltech AS. All rights reserved. -** -** This file is part of Qtopia Environment. -** -** This file may be distributed and/or modified under the terms of the -** GNU General Public License version 2 as published by the Free Software -** Foundation and appearing in the file LICENSE.GPL included in the -** packaging of this file. -** -** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE -** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -** -** See http://www.trolltech.com/gpl/ for GPL licensing information. -** -** Contact info@trolltech.com if any conditions of this licensing are -** not clear to you. -** -**********************************************************************/ - -#ifndef QTEXTEDIT_H -#define QTEXTEDIT_H - -#include -#include -#include - -class QPainter; -class QTextDocument; -class QTextCursor; -class QKeyEvent; -class QResizeEvent; -class QMouseEvent; -class QTimer; -class QTextString; -class QVBox; -class QListBox; -class QTextCommand; -class QTextParag; -class QTextFormat; -class QFont; -class QColor; - -class QTextEdit : public QScrollView -{ - Q_OBJECT - -public: - QTextEdit( QWidget *parent, const QString &fn, bool tabify = FALSE ); - QTextEdit( QWidget *parent = 0, const char *name = 0 ); - virtual ~QTextEdit(); - -#if defined(QTEXTEDIT_OPEN_API) - QTextDocument *document() const; - QTextCursor *textCursor() const; -#endif - - QString text() const; - QString text( int parag, bool formatted = FALSE ) const; - Qt::TextFormat textFormat() const; - QString fileName() const; - - void cursorPosition( int ¶g, int &index ); - void selection( int ¶g_from, int &index_from, - int ¶g_to, int &index_to ); - virtual bool find( const QString &expr, bool cs, bool wo, bool forward = TRUE, - int *parag = 0, int *index = 0 ); - void insert( const QString &text, bool indent = FALSE, bool checkNewLine = FALSE ); - - int paragraphs() const; - int lines() const; - int linesOfParagraph( int parag ) const; - int lineOfChar( int parag, int chr ); - - bool isModified() const; - - bool italic() const; - bool bold() const; - bool underline() const; - QString family() const; - int pointSize() const; - QColor color() const; - QFont font() const; - int alignment() const; - int maxLines() const; - - const QStyleSheet* styleSheet() const; - void setStyleSheet( const QStyleSheet* styleSheet ); - - void setPaper( const QBrush& pap); - QBrush paper() const; - - void setLinkColor( const QColor& ); - QColor linkColor() const; - - void setLinkUnderline( bool ); - bool linkUnderline() const; - - void setMimeSourceFactory( const QMimeSourceFactory* factory ); - const QMimeSourceFactory* mimeSourceFactory() const; - - int heightForWidth( int w ) const; - - void append( const QString& text ); - - bool hasSelectedText() const; - QString selectedText() const; - - QString context() const; - - QString documentTitle() const; - - void scrollToAnchor( const QString& name ); - QString anchorAt(const QPoint& pos); - -public slots: - virtual void undo(); - virtual void redo(); - - virtual void cut(); - virtual void copy(); - virtual void paste(); - - virtual void indent(); - - virtual void setItalic( bool b ); - virtual void setBold( bool b ); - virtual void setUnderline( bool b ); - virtual void setFamily( const QString &f ); - virtual void setPointSize( int s ); - virtual void setColor( const QColor &c ); - virtual void setFont( const QFont &f ); - - virtual void setAlignment( int ); - - virtual void setParagType( QStyleSheetItem::DisplayMode, int listStyle ); - - virtual void setTextFormat( Qt::TextFormat f ); - virtual void setText( const QString &txt, const QString &context = QString::null ) { setText( txt, context, FALSE ); } - virtual void setText( const QString &txt, const QString &context, bool tabify ); - - virtual void load( const QString &fn ) { load( fn, FALSE ); } - virtual void load( const QString &fn, bool tabify ); - virtual void save( bool untabify = FALSE ) { save( QString::null, untabify ); } - virtual void save( const QString &fn, bool untabify = FALSE ); - - virtual void setCursorPosition( int parag, int index ); - virtual void setSelection( int parag_from, int index_from, - int parag_to, int index_to ); - - virtual void setModified( bool m ); - virtual void selectAll( bool select ); - - virtual void setMaxLines( int l ); - virtual void resetFormat(); - -signals: - void currentFontChanged( const QFont &f ); - void currentColorChanged( const QColor &c ); - void currentAlignmentChanged( int ); - void textChanged(); - void highlighted( const QString& ); - void linkClicked( const QString& ); - -protected: - void setFormat( QTextFormat *f, int flags ); - void drawContents( QPainter *p, int cx, int cy, int cw, int ch ); - void keyPressEvent( QKeyEvent *e ); - void resizeEvent( QResizeEvent *e ); - void contentsMousePressEvent( QMouseEvent *e ); - void contentsMouseMoveEvent( QMouseEvent *e ); - void contentsMouseReleaseEvent( QMouseEvent *e ); - void contentsMouseDoubleClickEvent( QMouseEvent *e ); -#ifndef QT_NO_DRAGANDDROP - void contentsDragEnterEvent( QDragEnterEvent *e ); - void contentsDragMoveEvent( QDragMoveEvent *e ); - void contentsDragLeaveEvent( QDragLeaveEvent *e ); - void contentsDropEvent( QDropEvent *e ); -#endif - bool eventFilter( QObject *o, QEvent *e ); - bool focusNextPrevChild( bool next ); -#if !defined(QTEXTEDIT_OPEN_API) - QTextDocument *document() const; - QTextCursor *textCursor() const; -#endif - -private slots: - void formatMore(); - void doResize(); - void doAutoScroll(); - void doChangeInterval(); - void blinkCursor(); - void setModified(); - void startDrag(); - -private: - enum MoveDirection { - MoveLeft, - MoveRight, - MoveUp, - MoveDown, - MoveHome, - MoveEnd, - MovePgUp, - MovePgDown - }; - enum KeyboardAction { - ActionBackspace, - ActionDelete, - ActionReturn - }; - - struct UndoRedoInfo { - enum Type { Invalid, Insert, Delete, Backspace, Return, RemoveSelected }; - UndoRedoInfo( QTextDocument *d ) : type( Invalid ), doc( d ) - { text = QString::null; id = -1; index = -1; } - void clear(); - inline bool valid() const { return !text.isEmpty() && id >= 0&& index >= 0; } - - QString text; - int id; - int index; - Type type; - QTextDocument *doc; - }; - -private: - virtual bool isReadOnly() const { return FALSE; } - virtual bool linksEnabled() const { return TRUE; } - void init(); - void ensureCursorVisible(); - void drawCursor( bool visible ); - void placeCursor( const QPoint &pos, QTextCursor *c = 0 ); - void moveCursor( int direction, bool shift, bool control ); - void moveCursor( int direction, bool control ); - void removeSelectedText(); - void doKeyboardAction( int action ); - bool doCompletion(); - void checkUndoRedoInfo( UndoRedoInfo::Type t ); - void repaintChanged(); - void updateCurrentFormat(); - void handleReadOnlyKeyEvent( QKeyEvent *e ); - void makeParagVisible( QTextParag *p ); - -private: - QTextDocument *doc; - QTextCursor *cursor; - bool drawAll; - bool mousePressed; - QTimer *formatTimer, *scrollTimer, *changeIntervalTimer, *blinkTimer, *dragStartTimer, *resizeTimer; - QTextParag *lastFormatted; - int interval; - QVBox *completionPopup; - QListBox *completionListBox; - int completionOffset; - UndoRedoInfo undoRedoInfo; - QTextFormat *currentFormat; - QPainter painter; - int currentAlignment; - bool inDoubleClick; - QPoint oldMousePos, mousePos; - QPixmap *buf_pixmap; - bool cursorVisible, blinkCursorVisible; - bool readOnly, modified, mightStartDrag; - QPoint dragStartPos; - int mLines; - bool firstResize; - QString onLink; - -}; - -inline QTextDocument *QTextEdit::document() const -{ - return doc; -} - -inline QTextCursor *QTextEdit::textCursor() const -{ - return cursor; -} - -#endif -- cgit v0.9.0.2