summaryrefslogtreecommitdiffstats
path: root/src/ui/widget/attr-widget.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/widget/attr-widget.h')
-rw-r--r--src/ui/widget/attr-widget.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/ui/widget/attr-widget.h b/src/ui/widget/attr-widget.h
index 66a903a0b..8abe6b1ba 100644
--- a/src/ui/widget/attr-widget.h
+++ b/src/ui/widget/attr-widget.h
@@ -28,7 +28,8 @@ enum DefaultValueType
T_DOUBLE,
T_VECT_DOUBLE,
T_BOOL,
- T_UINT
+ T_UINT,
+ T_CHARPTR
};
class DefaultValueHolder
@@ -39,6 +40,7 @@ class DefaultValueHolder
std::vector<double>* vt_val;
bool b_val;
unsigned int uint_val;
+ char* cptr_val;
} value;
//FIXME remove copy ctor and assignment operator as private to avoid double free of the vector
@@ -57,6 +59,11 @@ public:
value.vt_val = d;
}
+ DefaultValueHolder (char* c) {
+ type = T_CHARPTR;
+ value.cptr_val = c;
+ }
+
DefaultValueHolder (bool d) {
type = T_BOOL;
value.b_val = d;
@@ -91,6 +98,11 @@ public:
g_assert (type == T_VECT_DOUBLE);
return value.vt_val;
}
+
+ char* as_charptr() {
+ g_assert (type == T_CHARPTR);
+ return value.cptr_val;
+ }
};
class AttrWidget