diff --git a/src/Gui/PrefWidgets.cpp b/src/Gui/PrefWidgets.cpp index 94342eb0a7..3f353f4f7c 100644 --- a/src/Gui/PrefWidgets.cpp +++ b/src/Gui/PrefWidgets.cpp @@ -256,6 +256,42 @@ void PrefLineEdit::savePreferences() // -------------------------------------------------------------------- +PrefTextEdit::PrefTextEdit(QWidget* parent) + : QTextEdit(parent), PrefWidget() +{ +} + +PrefTextEdit::~PrefTextEdit() +{ +} + +void PrefTextEdit::restorePreferences() +{ + if (getWindowParameter().isNull()) + { + failedToRestore(objectName()); + return; + } + + QString text = this->toPlainText(); + text = QString::fromUtf8(getWindowParameter()->GetASCII(entryName(), text.toUtf8()).c_str()); + setText(text); +} + +void PrefTextEdit::savePreferences() +{ + if (getWindowParameter().isNull()) + { + failedToSave(objectName()); + return; + } + + QString text = this->toPlainText(); + getWindowParameter()->SetASCII(entryName(), text.toUtf8()); +} + +// -------------------------------------------------------------------- + PrefFileChooser::PrefFileChooser ( QWidget * parent ) : FileChooser(parent), PrefWidget() { diff --git a/src/Gui/PrefWidgets.h b/src/Gui/PrefWidgets.h index 00425e0b5f..2e989e79dc 100644 --- a/src/Gui/PrefWidgets.h +++ b/src/Gui/PrefWidgets.h @@ -29,6 +29,7 @@ #include #include #include +#include #include #include "Widgets.h" #include "Window.h" @@ -155,6 +156,27 @@ protected: void savePreferences(); }; +/** + * The PrefLineEdit class. + * \author Chris Hennes + */ +class GuiExport PrefTextEdit : public QTextEdit, public PrefWidget +{ + Q_OBJECT + + Q_PROPERTY(QByteArray prefEntry READ entryName WRITE setEntryName) + Q_PROPERTY(QByteArray prefPath READ paramGrpPath WRITE setParamGrpPath) + +public: + PrefTextEdit(QWidget* parent = 0); + virtual ~PrefTextEdit(); + +protected: + // restore from/save to parameters + void restorePreferences(); + void savePreferences(); +}; + /** * The PrefFileChooser class. * \author Werner Mayer diff --git a/src/Gui/PropertyPage.cpp b/src/Gui/PropertyPage.cpp index abb87001a0..f8d04d1b66 100644 --- a/src/Gui/PropertyPage.cpp +++ b/src/Gui/PropertyPage.cpp @@ -171,6 +171,7 @@ void PreferenceUiForm::loadSettings() loadPrefWidgets(); loadPrefWidgets(); loadPrefWidgets(); + loadPrefWidgets(); loadPrefWidgets(); loadPrefWidgets(); loadPrefWidgets(); @@ -190,6 +191,7 @@ void PreferenceUiForm::saveSettings() savePrefWidgets(); savePrefWidgets(); savePrefWidgets(); + savePrefWidgets(); savePrefWidgets(); savePrefWidgets(); savePrefWidgets(); diff --git a/src/Gui/resource.cpp b/src/Gui/resource.cpp index a2720ee47a..76bc18813d 100644 --- a/src/Gui/resource.cpp +++ b/src/Gui/resource.cpp @@ -99,6 +99,7 @@ WidgetFactorySupplier::WidgetFactorySupplier() new WidgetProducer; new WidgetProducer; new WidgetProducer; + new WidgetProducer; new WidgetProducer; new WidgetProducer; new WidgetProducer;