#ifndef VEDIT_H #define VEDIT_H #include #include #include #include "vconstants.h" #include "vtoc.h" #include "vfile.h" class VEditOperations; class QLabel; class QTimer; class VEdit : public QTextEdit { Q_OBJECT public: VEdit(VFile *p_file, QWidget *p_parent = 0); virtual ~VEdit(); virtual void beginEdit(); virtual void endEdit(); // Save buffer content to VFile. virtual void saveFile(); virtual void setModified(bool p_modified); bool isModified() const; virtual void reloadFile(); virtual void scrollToLine(int p_lineNumber); // User requests to insert an image. virtual void insertImage(); bool findTextHelper(const QString &p_text, uint p_options, bool p_forward, bool &p_wrapped); bool peekText(const QString &p_text, uint p_options); bool findText(const QString &p_text, uint p_options, bool p_forward); void replaceText(const QString &p_text, uint p_options, const QString &p_replaceText, bool p_findNext); void replaceTextAll(const QString &p_text, uint p_options, const QString &p_replaceText); private slots: void labelTimerTimeout(); protected: QPointer m_file; VEditOperations *m_editOps; private: QLabel *m_wrapLabel; QTimer *m_labelTimer; void showWrapLabel(); }; #endif // VEDIT_H