00001
00007 #ifndef HBMLPATTERNSPANEL_H_
00008 #define HBMLPATTERNSPANEL_H_
00009
00010 #include <QtGui/QGroupBox>
00011 #include <QtGui/QLabel>
00012 #include <QtGui/QPlainTextEdit>
00013 #include <QtGui/QVBoxLayout>
00014
00015 #include "HighlightBlock.h"
00016
00021 class HBmlPatternsPanel : public QGroupBox
00022 {
00023 Q_OBJECT
00024 private:
00025 MultiLinesHighlightBlock * block;
00026 QLabel * sPatternLabel;
00027 QPlainTextEdit * sPatternEdit;
00028 QLabel * ePatternLabel;
00029 QPlainTextEdit * ePatternEdit;
00030 QVBoxLayout * layout;
00031 public:
00040 HBmlPatternsPanel(QWidget * parent,HighlightBlock * _block): QGroupBox(parent)
00041 {
00042 block=static_cast<MultiLinesHighlightBlock*>(_block);
00043 this->setTitle(block->getName()+" pattern settings");
00044
00045 layout=new QVBoxLayout(this);
00046 sPatternLabel=new QLabel("Edit starting pattern",this);
00047 sPatternEdit=new QPlainTextEdit(block->getStartingPattern(),this);
00048 ePatternLabel=new QLabel("Edit ending pattern",this);
00049 ePatternEdit=new QPlainTextEdit(block->getEndingPattern(),this);
00050
00051 layout->addWidget(sPatternLabel);
00052 layout->addWidget(sPatternEdit);
00053 layout->addWidget(ePatternLabel);
00054 layout->addWidget(ePatternEdit);
00055
00056 connect(sPatternEdit,SIGNAL(textChanged()),this,SLOT(patternEditChanged()));
00057 connect(ePatternEdit,SIGNAL(textChanged()),this,SLOT(patternEditChanged()));
00058 };
00059 private slots:
00063 void patternEditChanged()
00064 {
00065 block->setStartingPattern(sPatternEdit->document()->toPlainText());
00066 block->setEndingPattern(ePatternEdit->document()->toPlainText());
00067 }
00068 };
00069
00070 #endif