diff options
author | Marcin Kolny <marcin.kolny@gmail.com> | 2016-03-21 20:23:11 +0100 |
---|---|---|
committer | Marcin Kolny <marcin.kolny@gmail.com> | 2016-04-01 20:22:34 +0200 |
commit | e17b42eae4d336e0da0ca5bee2613711116cea5f (patch) | |
tree | 300f5b5d721896b28b6e6d55245961e2918494ee /glib/src/value_basictypes.cc.m4 | |
parent | 48f03ef26ff57a96b305c06cfa0b19fd873cb971 (diff) | |
download | glibmm-e17b42eae4d336e0da0ca5bee2613711116cea5f.tar.gz |
Glib::Property: allow to set property nick, blurb and flags.
* .gitignore: add paramflags generated files to ignore list.
* glib/glibmm.h: add paramflags header to include list.
* glib/glibmm/property.{cc|}h: add constructors allowing set nick,
blurb. Add getters for this values.
and flags of property.
* glib/glibmm/value.{cc|h}:
* glib/src/filelist.am: add paramflags to a build.
* glib/src/enums.{ccg|hg}: add GParamFlags enum wrapper.
* glib/glibmm/value_basictypes.{cc|h}.m4: add
overloaded create_param_spec() for setting additional property
parameters.
This patch fixes bug #755256
Diffstat (limited to 'glib/src/value_basictypes.cc.m4')
-rw-r--r-- | glib/src/value_basictypes.cc.m4 | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/glib/src/value_basictypes.cc.m4 b/glib/src/value_basictypes.cc.m4 index fd5f775e..ec37c61e 100644 --- a/glib/src/value_basictypes.cc.m4 +++ b/glib/src/value_basictypes.cc.m4 @@ -47,10 +47,18 @@ $1 Value<$1>::get() const GParamSpec* Value<$1>::create_param_spec(const Glib::ustring& name) const { + return create_param_spec(name, Glib::ustring(), Glib::ustring(), + Glib::PARAM_READWRITE); +} + +GParamSpec* Value<$1>::create_param_spec(const Glib::ustring& name, const Glib::ustring& nick, + const Glib::ustring& blurb, Glib::ParamFlags flags) const +{ return g_param_spec_[]ifelse($2,schar,char,$2)( - name.c_str(), nullptr, nullptr,ifelse($2,pointer,,[ + name.c_str(), nick.empty() ? nullptr : nick.c_str(), + blurb.empty() ? nullptr : blurb.c_str(), ifelse($2,pointer,,[ ifelse($3,,,[$3, $4, ])[]g_value_get_$2(&gobject_),]) - GParamFlags(G_PARAM_READABLE | G_PARAM_WRITABLE)); + static_cast<GParamFlags>(flags)); } ]) |