qse  0.5.4
qseregexpparametereditor.cpp
Go to the documentation of this file.
2 #include "qseregexpparameter.h"
3 #include <QLineEdit>
4 #include <QCheckBox>
5 #include <QPushButton>
6 
7 #include <stdio.h>
8 
10 (QseOperatorEditor* ed, QseRegExpParameter* param, QObject* parent)
11  : QseParameterEditor(ed, param, parent),
12  m_RegExpParameter(param),
13  m_PatternEdit(NULL),
14  m_UseRegExp(NULL)
15 {
16 }
17 
19 (QLineEdit* pattern, QCheckBox* useRegExp, QPushButton* apply, QPushButton* cancel, QPushButton *excepts, QColor fg, QColor bg)
20 {
21  QseParameterEditor::setEditors(apply, cancel);
22 
23  m_PatternEdit = pattern;
24  m_UseRegExp = useRegExp;
25 
26  connect(m_PatternEdit, SIGNAL(textChanged(const QString&)), this, SLOT(editorChanged()));
27  connect(m_UseRegExp, SIGNAL(toggled(bool)), this, SLOT(editorChanged()));
28 
29  setColors(pattern, fg, bg);
30  setColors(excepts, fg, bg);
31 
32  editorCancel();
33 }
34 
35 void QseRegExpParameterEditor::setColors(QWidget *w, QColor fg, QColor bg)
36 {
37  if (w) {
38  QPalette p = w->palette();
39 
40  p.setColor(QPalette::Base, bg);
41  p.setColor(QPalette::ButtonText, fg);
42 
43  w->setPalette(p);
44  }
45 }
46 
48 {
49 // printf("Need QseRegExpParameterEditor::editorValidate\n");
50 
51  return true;
52 }
53 
55 {
56  QRegExp r = m_RegExpParameter->value().toRegExp();
57 
58 // printf("pattern text: %s\n", qPrintable(m_PatternEdit->text()));
59 
60  r.setPatternSyntax(m_UseRegExp->isChecked() ? QRegExp::RegExp : QRegExp::Wildcard);
61  r.setPattern(m_PatternEdit->text());
62 
63 // printf("regexp pattern: %s\n", qPrintable(r.pattern()));
64 
66 
67 // printf("QseRegExpParameterEditor::editorApply: %s = %s\n",
68 // qPrintable(m_RegExpParameter->name()),
69 // qPrintable(m_RegExpParameter->value().toRegExp().pattern()));
70 }
71 
73 {
74  QRegExp r = m_RegExpParameter->value().toRegExp();
75 
76  m_PatternEdit -> setText(r.pattern());
77  m_UseRegExp -> setChecked(r.patternSyntax()==QRegExp::RegExp);
78 }
QVariant value() const
QseRegExpParameter * m_RegExpParameter
void setColors(QWidget *w, QColor fg, QColor bg)
void setEditors(QLineEdit *pattern, QCheckBox *useRegExp, QPushButton *apply, QPushButton *cancel, QPushButton *excepts=NULL, QColor fg=Qt::black, QColor bg=Qt::white)
void setValue(const QVariant &value)
QseRegExpParameterEditor(QseOperatorEditor *ed, QseRegExpParameter *param, QObject *parent=0)
void setEditors(QPushButton *apply, QPushButton *cancel)