PIValueTreeEdit File and Dir support
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
#include <QComboBox>
|
||||
#include <QDateEdit>
|
||||
#include <QDoubleSpinBox>
|
||||
#include <QMenu>
|
||||
#include <QSpinBox>
|
||||
#include <QTimeEdit>
|
||||
#include <clineedit.h>
|
||||
@@ -64,6 +65,7 @@ public:
|
||||
PIVariant value() const override { return widget->value(); }
|
||||
PIVariantMap attributes() const override;
|
||||
static PIVariantMap defaultAttributes();
|
||||
void retranslate();
|
||||
|
||||
private:
|
||||
void applyAttributes(const PIVariantMap & a) override;
|
||||
@@ -85,6 +87,7 @@ public:
|
||||
PIVariant value() const override { return widget->value(); }
|
||||
PIVariantMap attributes() const override;
|
||||
static PIVariantMap defaultAttributes();
|
||||
void retranslate();
|
||||
|
||||
private:
|
||||
void applyAttributes(const PIVariantMap & a) override;
|
||||
@@ -206,6 +209,71 @@ private:
|
||||
};
|
||||
|
||||
|
||||
class QAD_PIQT_UTILS_EXPORT NetworkAddress: public PIVariantEditorBase {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
NetworkAddress();
|
||||
void setValue(const PIVariant & v) override;
|
||||
PIVariant value() const override;
|
||||
PIVariantMap attributes() const override;
|
||||
static PIVariantMap defaultAttributes();
|
||||
|
||||
private:
|
||||
void applyAttributes(const PIVariantMap & a) override;
|
||||
QLineEdit * widget;
|
||||
bool has_port = true;
|
||||
};
|
||||
|
||||
|
||||
class QAD_PIQT_UTILS_EXPORT FileBase: public PIVariantEditorBase {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
FileBase();
|
||||
PIVariantMap attributes() const override;
|
||||
static PIVariantMap defaultAttributes();
|
||||
|
||||
protected:
|
||||
void applyAttributes(const PIVariantMap & a) override;
|
||||
void setFullEditMode(bool on) override;
|
||||
void createMenu();
|
||||
CLineEdit * widget;
|
||||
QWidget * sel_widget;
|
||||
QWidget * edit_widget;
|
||||
QMenu edit_menu;
|
||||
QAction *act_abs = nullptr, *act_save = nullptr;
|
||||
bool is_dir = false, is_abs = false, is_save = false;
|
||||
PIString filter;
|
||||
};
|
||||
|
||||
|
||||
class QAD_PIQT_UTILS_EXPORT File: public FileBase {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
File(): FileBase() {
|
||||
is_dir = false;
|
||||
createMenu();
|
||||
}
|
||||
void setValue(const PIVariant & v) override;
|
||||
PIVariant value() const override;
|
||||
};
|
||||
|
||||
|
||||
class QAD_PIQT_UTILS_EXPORT Dir: public FileBase {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
Dir(): FileBase() {
|
||||
is_dir = true;
|
||||
createMenu();
|
||||
}
|
||||
void setValue(const PIVariant & v) override;
|
||||
PIVariant value() const override;
|
||||
};
|
||||
|
||||
|
||||
}; // namespace PIVariantEditors
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user