editor.h

Go to the documentation of this file.
00001 #ifndef EDITOR_H_
00002 #define EDITOR_H_
00003 
00004 #include <QBoxLayout>
00005 #include <QToolButton>
00006 #include <QFontComboBox>
00007 #include <QSpinBox>
00008 #include <QTextEdit>
00009 #include <QWidget>
00010 #include <QLabel>
00011 #include <QTextCodec>
00012 
00013 #define ENABLE_ASSEMBLY  1
00014 #define DISABLE_ASSEMBLY 0
00015 
00016 class editor : public QWidget
00017 {
00018  Q_OBJECT
00019 
00020 public:
00021  editor(int mode, QWidget *parent=0);
00022  ~editor(void);
00023 
00024  // Кнопки форматирования текста
00025  QToolButton   *bold;
00026  QToolButton   *italic;
00027  QToolButton   *underline;
00028  QToolButton   *numericlist;
00029  QToolButton   *dotlist;
00030  QToolButton   *indentplus;
00031  QToolButton   *indentminus;
00032  QFontComboBox *fontselect;
00033  QSpinBox      *fontsize;
00034  QToolButton   *showhtml;
00035  QLabel        *infoarea;
00036 
00037  // Область редактирования текста
00038  QTextEdit     *textarea;
00039 
00040  // Горизонтальная линейка, содержащая кнопки форматирования
00041  QHBoxLayout   *textformat_buttons_layout;
00042 
00043  // Вертикальная группировалка линейки кнопок и области редактирования
00044  QVBoxLayout   *buttons_and_edit_layout;
00045 
00046  void set_textarea(QString text);
00047  void set_textarea_editable(bool editable);
00048 
00049  QString get_textarea(void);
00050 
00051 private slots:
00052 
00053  // Действия в области редактирования
00054  void on_bold_clicked(void);
00055  void on_italic_clicked(void);
00056  void on_underline_clicked(void);
00057  void on_numericlist_clicked(void);
00058  void on_dotlist_clicked(void);
00059  void on_indentplus_clicked(void);
00060  void on_indentminus_clicked(void);
00061  void on_showhtml_clicked(void);
00062 
00063 private:
00064  void setup_signals(void);
00065  void setup_buttons(void);
00066  void setup_editor_area(void);
00067  void assembly_buttons(void);
00068  void assembly(void);
00069  void format_to_list(QTextListFormat::Style setformat);
00070 
00071 };
00072 
00073 #endif /* EDITOR_H_ */

Generated on Mon Feb 2 00:25:33 2009 for mytetra by  doxygen 1.5.1