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

📄 textedit.h

📁 用Qt4编写的linux IDE开发环境
💻 H
字号:
/** This file is part of QDevelop, an open-source cross-platform IDE* Copyright (C) 2006  Jean-Luc Biord** 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 2 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, write to the Free Software* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA** Contact e-mail: Jean-Luc Biord <jl.biord@free.fr>* Program URL   : http://qdevelop.org**/#ifndef TEXTEDIT_H#define TEXTEDIT_H#include <QTextEdit>#include <QPointer>#include <QTextCursor>#include "mainimpl.h"#include "InitCompletion.h"#include "ui_findwidget.h"//typedef QMap<QString, QStringList> classesMethodsList;//class LineNumbers;class SelectionBorder;class Editor;class FindImpl;class CppHighlighter;class TextEditInterface;class QPixmap;//class TextEdit : public QTextEdit{    Q_OBJECTpublic:	QString tempFilename();	void saveAsTemp();    TextEdit(Editor * parent, MainImpl *mainimpl, InitCompletion *completion);    ~TextEdit();    bool open(bool silentMode, QString filename, QDateTime &lastModified);    bool save(QString filename, QDateTime &lastModified);    bool close(QString filename);    QTextCursor getLineCursor( int line ) const;    void setLineNumbers( LineNumbers* );    LineNumbers* lineNumbers();    void setSelectionBorder( SelectionBorder* );    SelectionBorder* selectionBorder();    void findText();    void setExecutedLine(int line);    void selectLines(int debut, int fin);    QString wordUnderCursor(const QPoint & pos=QPoint(), bool select=false);    QString wordUnderCursor(const QString text);    QString classNameUnderCursor(const QPoint & pos=QPoint(), bool addThis=true);    void activateLineNumbers(bool activate);    void setSelectionBorder(bool activate);    void setSyntaxHighlight(bool activate );    void setAutoIndent( bool activate )    {        m_autoindent = activate;    };    void setAutoCompletion( bool activate )    {        m_autoCompletion = activate;    };    void setTabStopWidth(int taille);    void setSyntaxColors(QTextCharFormat a, QTextCharFormat b, QTextCharFormat c, QTextCharFormat d, QTextCharFormat e, QTextCharFormat f, QTextCharFormat g);    void setEndLine(MainImpl::EndLine end)    {        m_endLine = end;    };    void setTabSpaces(bool t)    {        m_tabSpaces = t;    };    void setAutobrackets(bool b)    {        m_autobrackets = b;    };    void setMatch(bool b)    {        m_match = b;    };    void setHighlightCurrentLine(bool b)    {        m_highlightCurrentLine = b;    }    void setBackgroundColor( QColor c );	void setTextColor(QColor c);    void setCurrentLineColor( QColor c );    void setMatchingColor( QColor c )    {        m_matchingColor = c;    };    void setShowWhiteSpaces( bool b )    {        m_showWhiteSpaces = b;    }    int currentLineNumber(QTextCursor cursor=QTextCursor());    int currentLineNumber(QTextBlock block);    int linesCount();    void dialogGotoLine();    void completeCode();    void setFocus(Qt::FocusReason reason);    void gotoMatchingBracket();    void textPlugin(TextEditInterface *iTextEdit);    void print();    void printWhiteSpacesAndMatching( QPainter &p );    enum ActionComment    {        Toggle, Comment, Uncomment    };    void insertText(QString text, int insertAfterLine);    void setMouseHidden( bool hidden );public slots:    void gotoLine( int line, bool moveTop );    void slotFind(Ui::FindWidget ui, QString ttf=0,  QTextDocument::FindFlags options=0, bool fromButton=false);    void slotIndent(bool indent=true);    void slotUnindent();    void comment(ActionComment action);    void slotGotoImplementation();    void slotGotoDeclaration();private slots:    void slotAdjustSize();    void slotWordCompletion(QListWidgetItem *item);    void slotCursorPositionChanged();    void slotCompletionList(TagList tagList);    void slotCompletionHelpList(TagList tagList);    void slotToggleBreakpoint();    void slotToggleBookmark();private:    void completionHelp();    QString m_plainText;    long m_matchingBegin;    long m_matchingEnd;    QPointer<LineNumbers> m_lineNumbers;    QPointer<SelectionBorder> m_selectionBorder;    CppHighlighter *cpphighlighter;    QString m_findExp;    int m_findOptions;    FindImpl *m_findImpl;    int lineNumber(QTextCursor cursor);    int lineNumber(QTextBlock b);    int lineNumber(QPoint point);    void key_home(bool shift);    void key_end(bool shift);    QPoint mousePosition;    Editor *m_editor;    MainImpl *m_mainImpl;    bool m_autoindent;    void autoIndent();    void autobrackets();    void autoUnindent();    void match();    void clearMatch();    MainImpl::EndLine m_endLine;    bool m_tabSpaces;    InitCompletion *m_completion;    QListWidget *m_completionList;    bool m_autoCompletion;    bool m_autobrackets;    bool m_match;    bool m_highlightCurrentLine;    bool m_showWhiteSpaces;    QColor m_backgroundColor;    QColor m_currentLineColor;    QColor m_matchingColor;    QAction *actionToggleBreakpoint;    int m_lineNumber;    bool m_mouseHidden;	QPixmap	m_tabPixmap;	QPixmap m_spacePixmap;protected:    void resizeEvent( QResizeEvent* );    void keyPressEvent ( QKeyEvent * event );    void contextMenuEvent(QContextMenuEvent * e);    void mouseDoubleClickEvent( QMouseEvent * event );    void dropEvent( QDropEvent * event );    void mousePressEvent ( QMouseEvent * event );    void paintEvent ( QPaintEvent * event );    void mouseMoveEvent( QMouseEvent * event );signals:    void editorModified(bool);    void initParse(InitCompletion::Request, QString, QString, bool, bool, bool, QString);};#endif

⌨️ 快捷键说明

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