| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
The bind_property() overload with two transformation functions
has been wrong since commit 4ed3ff9cad836dc7b24282a112d66847292a9baa.
|
|
|
|
| |
Should have been done in commit dc92d02f4d50851a1af59e5fbe2a753dcfd2e9df.
|
|
|
|
| |
Change from Glib::RefPtr<Glib::Object> to Glib::RefPtr<Glib::ObjectBase>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac:
* meson.build: Require glib-2.0 >= 2.69.1.
* glib/src/binding.[ccg|hg]: Add dup_source(), dup_target(),
Deprecate get_source(), get_target().
* glib/src/spawn.[ccg|hg]: Change parameter name, exit_status to wait_status.
* glib/src/timezone.[ccg|hg]: Add operator bool(), create_identifier().
Deprecate create().
* gio/src/fileinfo.hg: Add get/set_access_date(), get/set_creation_date().
* gio/src/notification.hg: Add set_category().
* gio/src/tlscertificate.hg: Add property/get_not_valid_before(),
property/get_not_valid_after(), property/get_subject_name(),
property/get_issuer_name().
* gio/src/tlsconnection.hg: Add enum Gio::TlsProtocolVersion,
property/get_protocol_version(), property/get_ciphersuite_name().
* tools/m4/convert_gio.m4: Add conversion for enum TlsProtocolVersion.
|
|
|
|
|
|
|
| |
g_binding_get_source(), g_binding_get_target() and g_time_zone_new()
are deprecated in glib 2.68. We can't use the replacement functions,
which are new in glib 2.68. We want to build with -Dwarnings=fatal
and run with both glib 2.68 and older versions of glib.
|
|
|
|
|
|
|
|
|
|
|
|
| |
g++-10 with optimization level -O1 or higher warns about possible use of
an uninitialized variable when tests/glibmm_binding/main.cc is compiled.
I don't understand why.
There is no warning if the private method Glib::Binding::TransformProp::
operator()() is compiled without optimization. Add an attribute that turns
off optimization for this method when it's compiled with with gcc-10 or
higher. gcc-9 does not warn. gcc-10 does not warn in glibmm-2.4, where
std::optional is not used.
|
|
|
|
|
|
|
|
|
| |
This way we can mark the template<> classes that is generated via
_WRAP_ENUM with GLIBMM_API, so that we can export those as well.
Note that for this, the _WRAP_ENUM calls with NO_GTYPE specified do not
need to be marked with decl_prefix GLIBMM_API as no template<> classes
will be generated in this manner.
|
|
|
|
|
|
| |
This prepares for us to export symbols using compiler directives, so that we
can eventually retire gendef.exe. This also makes the scripts place GLIBMM_API
as appropriate for the generated Glib:Error classes and the wrap() method.
|
|
|
|
|
|
|
|
| |
A binding between properties can remain even after all RefPtr<Binding>s
are gone. This is similar to how Gtk::Widget::set_controller() works
in gtkmm4.
Fixes #62, see !21
|
|
|
|
| |
Fixes #63
|
|
|
|
| |
Fixes #61
|
|
|
|
|
|
| |
The pattern of returning a boolean to indicate whether an output
reference was set is messy and error-prone. C++17 adds std::optional,
which exists precisely to indicate that a result is available or not.
|
|
|
|
|
|
|
|
|
| |
If we return false, GBinding ignores target GValue, so there’s no point
setting it. Besides, if the transform function returned false, that says
they couldn't calculate a target value, so they shouldn’t assign to `to`
I default-construct primitive `T_to`s in case anyone *was* reading those
for some daft reason, so they get a zero-initialised value instead of UB
|
|
|
|
|
|
|
|
|
|
|
| |
This is more maintainable than all the arguments to all the overloads of
bind_property() manually repeating the signature in their documentation,
plus more user-friendly as we document it, users can use the typedef, &c
Note: My next thought was we can just take SlotTypeTransforms in the
argument list, instead of totally arbitrary functors, so the conversion
would be done at call site instead of via extra code in the body. But I
didn't get that working yet, and it should be a separate commit anyway.
|
|
|
|
| |
and use better formatting for it too.
|
|
|
|
| |
They are not Glib::BINDING_* anymore, but rather Glib::Binding::Flags::*
|
|
|
|
| |
Closes https://gitlab.gnome.org/GNOME/glibmm/issues/20.
|
| |
|
|
|
|
| |
Bug 86864
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* gio/src/appinfo.hg: Change @newin{3,2} to @newin{2,30}.
* gio/src/application.hg:
* gio/src/networkmonitor.hg:
* gio/src/simpleiostream.hg:
* gio/src/tcpwrapperconnection.hg:
* glib/src/binding.hg: Add 'newin 2,n"' to some _WRAP_PROPERTY().
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gio/src/application.hg:
* gio/src/dbusintrospection.hg:
* gio/src/memoryinputstream.hg:
* gio/src/networkmonitor.hg:
* gio/src/notification.hg:
* gio/src/resource.hg:
* gio/src/tcpwrapperconnection.hg:
* glib/src/binding.hg:
* glib/src/variant.hg: Correct the version numbers in some @newin commands
by adding 'newin "2,n"' parameters to _WRAP_xxx macros. Bug #748856.
|
|
|
|
|
|
|
| |
* glib/src/binding.[hg|ccg]: Change "typedef sigc::slot<bool,
const Glib::RefPtr<Binding>&, const GValue*, GValue*> BindingTransformSlot"
to "typedef sigc::slot<bool, const GValue*, GValue*> SlotTransform".
Bug #738663.
|
|
* .gitignore: Ignore binding.[h|cc].
* glib/glibmm/objectbase.h: Add a comment.
* glib/src/filelist.am: Add glib_signals.defs and binding.hg.
* glib/src/glib.defs: Add glib_signals.defs.
* glib/glibmm.h: Add binding.h.
* tools/extra_defs_gen/generate_defs_glib.cc: Add get_defs(G_TYPE_BINDING).
* tools/m4/convert_glib.m4: Add conversion for BindingFlags.
* tools/generate_wrap_init.pl.in: Define GLIBMM_INCLUDED_FROM_WRAP_INIT_CC.
* glib/src/binding.[hg|ccg]: New files with enum BindingFlags and class Binding.
* glib/src/glib_signals.defs: New file with info about GBinding's properties.
Bug #738663.
|