| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
| |
GLib has now specified that if you want to connect to a signal without a
detail argument, you omit the `::`. So, glibmm users previously
connecting to `notify::` to listen for changes to all properties broke.
Fix that by only passing `notify` i.e. no superfluous `::` in that case.
Close https://gitlab.gnome.org/GNOME/glibmm/-/issues/74
Close https://gitlab.gnome.org/GNOME/glibmm/-/merge_requests/35
|
| |
|
|
|
|
|
| |
As per Kjell's suggestions, make things more future-proof by marking all
_WRAP_ENUM()'s with 'decl_prefix GLIBMM_API'.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Fixes #69
|
|
|
|
|
|
|
|
|
| |
So we can use the 2.64 version numbers for stable releases in the
glibmm-2.4 ABI series.
We don't need to release a stable ABI-parallel glibmm until we need
to release gtkmm 4.0, and that won't happen until GTK 4.0.0 happens.
We've done similar ABI name changes several times before.
|
| |
|
| |
|
|
|
|
|
| |
...with GLIBMM_API. This is needed for building gtkmm, with Visual
Studio.
|
|
|
|
|
|
|
|
|
|
|
| |
From
https://gitlab.gnome.org/GNOME/glibmm/-/merge_requests/29#note_734668,
it was noted by Kjell that we will always have thread_local, so there is
really no GLIBMM_CAN_USE_THREAD_LOCAL in the code, so we can drop that.
Also drop the Visual Studio 2013 compatibility bits, since we need
Visual Studio 2017 to build glibmm master (C++17 branch), so they won't
be relevant.
|
|
|
|
|
| |
The Visual Studio build files never really supported static builds, so
disallow that for now, until we can make sure that is tested better.
|
|
|
|
|
|
|
|
|
|
|
| |
Visual Studio 2015 or later has thread_local, so make sure that it is
enabled.
Also update for Visual Studio 2017+ as the compiler does allow static
members to be initialized inline to std::string::npos
(GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS), but use a work
around for pre-Visual Studio 2015 so that we do not get a linker error
as GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS is not supported.
|
|
|
|
|
|
|
|
|
|
|
| |
Clean up the build files a bit and update the glibmmconfig.h.[in|meson] so that
we use __declspec(dllexport) when GLIBMM_BUILD is defined (i.e. during the
build of glibmm) on Visual Studio.
Also, for the meson builds, disable warnings 4251 and 4275 as they all relate
to building DLLs regarding symbol export, which is harmless as we know clearly
that we are indeed building DLLs in our case, and we have already set
GLIBMM_API appropriately
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
This prepares the code to use __declspec(dllexport) to export all symbols, so
that we can eventually bid farewell to gendf.exe
|
|
|
|
|
| |
wrap_init.cc shall be rebuilt when generate_wrap_init.pl has been rebuilt.
Generated .h and .cc files shall be rebuilt when gmmproc has been rebuilt.
|
|
|
|
|
|
|
|
| |
Let builds from release tarballs and GIT checkouts build the glibmm-int
static library, and link the final .so/.dll from the objects that form
glibmm-int static .lib. By doing so we can build glibmm with the import
libraries for Visual Studio builds with gendef, as well as linking in
the version resource for all Windows builds.
|
|
|
|
|
|
| |
glibmm can be built with either Autotools or Meson.
See MR !27
|
|
|
|
|
|
|
|
| |
* examples/network/resolver.cc: Don't include config.h. It's not used.
* glib/glibmm/ustring.cc: Check if GLIBMM_SIZEOF_WCHAR_T is defined.
* tools/generate_wrap_init.pl.in:
* tools/gmmproc.in: Change '\@' to '\ @'. Meson's configure_file()
removes a backslash immediately before an at-sign.
|
|
|
|
|
|
| |
Doxygen interprets the first . to mean the end of the introductory
blurb, so that resulted in this sentence suddenly ending after the "i."
in "i.e." in the short version and having a line break there in the long
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Glib::Error::what() returns const char* (was Glib::ustring). It overrides
std::exception::what() that returns const char* and is noexcept.
Fixes #23
|
|
|
|
|
|
|
|
| |
and with the comparison operators, operator==(), etc.
Add the glibmm_ustring_compare test case.
https://gitlab.gnome.org/GNOME/glibmm/issues/64
https://gitlab.gnome.org/GNOME/glibmm/issues/65
|
|
|
|
| |
Fixes #66
|
|
|
|
|
|
| |
StdStringView and UStringView force users to be explicit (by using c_str())
when using a std::string where a Glib::ustring is recommended or vice versa.
See issue #64
|
|\
| |
| |
| |
| | |
Glib: Adding static check for template parameter
See merge request GNOME/glibmm!23
|
| | |
|
| |
| |
| |
| |
| | |
To meet requirements for the passed type, compile
type check for the passed type was added.
|
|/
|
|
|
| |
A few implicit conversions in tests/ have been kept. They are probably
deliberate, to test implicit conversion. Inspired by issue #65
|
|\
| |
| |
| |
| | |
fix ustring::insert(iterator, In, In)
See merge request GNOME/glibmm!19
|
| | |
|
| |
| |
| |
| | |
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::*
|
|
|
|
|
|
|
|
|
|
|
| |
This disables a warning from g++ 9.2 (abbreviated here):
In member function ‘bool Glib::ustring::validate(Glib::ustring::iterator&)’:
error: implicitly-declared ..... is deprecated [-Werror=deprecated-copy]
1206 | first_invalid = iterator(string_.begin() + (valid_end - pdata));
note: because ..... has user-provided .....
972 | inline ustring_Iterator<T>::ustring_Iterator(
const ustring_Iterator<std::string::iterator>& other)
|
|\
| |
| |
| |
| | |
Correct spelling of spawn_async_with_pipes() in doc comment
See merge request GNOME/glibmm!16
|
| | |
|
| |
| |
| |
| | |
Fixes #59
|
|/
|
|
|
|
|
|
| |
A call to path_get_dirname(StdStringView filename) with a Glib::ustring
fails if StdStringView does not have a constructor that takes a
const Glib::ustring&. StdStringView and UStringView are now aliases of
StringView, whose names show which data type is preferred.
See issue #34
|
|
|
|
|
|
| |
and use them in build_filename() and other functions in miscutils.hg.
Fixes #34
|
|
|
|
|
| |
These should have been removed when Glib::ArrayHandle was replaced
by std::vector.
|
|
|
|
| |
See issue #56
|
|
|
|
| |
g_get_host_name() returns a UTF-8 string.
|
|\
| |
| |
| |
| |
| |
| | |
Add Glib::get_host_name()
Closes #58
See merge request GNOME/glibmm!15
|
| |
| |
| |
| |
| |
| |
| | |
Wraps g_get_host_name() from glib.
Return a name for the machine.
Closes GNOME/glibmm#58
|
|/
|
|
|
|
|
| |
Wraps g_get_user_runtime_dir() from glib.
Returns a directory that is unique to the current user on the local system.
Closes GNOME/glibmm#57
|