| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gio/giomm.h:
* gio/giomm/meson.build:
* gio/src/filelist.am: Add BytesIcon.
* glib/src/bytes.[ccg|hg]: Add Glib::Value specialization.
Required by _WRAP_PROPERTY in bytesicon.hg.
* tools/extra_defs_gen/generate_defs_gio.cc: Add G_TYPE_BYTES_ICON.
* gio/src/gio_signals.defs: Add BytesIcon property.
* gio/src/bytesicon.[ccg|hg]: New files.
Fixes #107
|
|
|
|
| |
Fixes #97
|
|
|
|
|
|
| |
The default value will be changed in future Meson releases.
Don't use deprecated python3.path() and execute(..., gui_app: ...).
|
|
|
|
|
|
|
|
| |
Avoid warnings from the clang++ compiler.
It's deprecated in C++ to implicitly declare a copy constructor, if there
is a user-defined copy assignment operator. Instead of declaring copy
assignment operators private without implementation, declare them deleted.
|
|
|
|
|
|
|
| |
Instead, mark the individual members with GLIBMM_API so that we avoid having
the code tied to a particular STL and compiler version.
Update the classes that derive from Glib::Source accordingly as well
|
|
|
|
|
|
|
|
|
|
|
| |
* meson.build:
* docs/reference/meson.build:
* gio/giomm/meson.build:
* glib/glibmm/meson.build:
Call add_dist_script() in a subproject, if meson.version() >= 0.58.0.
* tools/build_scripts/handle-built-files.py:
Use MESON_PROJECT_DIST_ROOT if it exists, else MESON_DIST_ROOT.
It exists if meson.version() >= 0.58.0.
|
|
|
|
|
|
|
| |
It shall not be possible to find a glibmm header file
with #include <xxx.h> instead of #include <glibmm/xxx.h>.
Not fully fixed until https://github.com/mesonbuild/meson/issues/8562
has been fixed.
|
|
|
|
| |
glib and sigc++ can be subprojects of glibmm.
|
|
|
|
|
|
|
| |
The paths to the source code in untracked/ shall be relative to the
meson.build file, when library files are built from a tarball.
With absolute paths Meson may generate too long file names.
See gtkmm!61
|
|
|
|
| |
See https://github.com/libsigcplusplus/libsigcplusplus/pull/65
|
|
|
|
|
|
|
|
|
|
|
| |
TlsConnection_Class::wrap_new() can wrap a C object in a TlsConnection,
TlsClientConnectionImpl or TlsServerConnectionImpl depending on which
interface, if any, the C object implements.
No need for special wrap*() functions in Tls[Client,Server]Connection
or SocketClient::signal_event().
This is similar to Gdk::DeviceWithPad.
|
|
|
|
|
|
| |
Make Glib::wrap_tls_[client,server]_connection_impl() do like other
wrap() functions for ref-counted objects when they are given a nullptr:
return an empty RefPtr.
|
|
|
|
|
|
|
|
|
|
| |
Restructure Tls[Client,Server]Connection. They are interfaces. Now they
derive only from Glib::Interface, like all interfaces shall do.
Tls[Client,Server]ConnectionImpl don't correspond to C classes. They can
wrap any C object that derives from GTlsConnection and implements
GTls[Client,Server]Connection. Such C classes in GLib are not public.
They can't be wrapped in the usual way.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes the built DLL and .lib's contain the toolset version if the build is
carried out using Visual Studio 2017 or later, unless the
'msvc14x-parallel-installable' option is set to be false during configuration.
The reasoning behind this change is that there are subtle problems when, for
instance, one tries to link to a Visual Studio 2017-built glibmm when building
gtkmm and libxml++ with Visual Studio 2019. This is unfortunate as
Microsoft did try hard to make interoperating between binaries built with
Visual Studio 2015, 2017 and 2019 as easy as possible in terms of ABI and API,
but unfortunately this hits the corner cases where this compatibility does not
work.
As the name suggests, this attempts to make Visual Studio 2017 and 2019
builds share a single set of underlying C DLLs easier, while avoiding breakages
caused by such subtle differences.
|
|
|
|
| |
Fixes #69
|
|
|
|
|
|
| |
Make sure that we are defining GIOMM_API as __declspec(dllexport) when
building giomm and so stop the use of gendef.exe. We are now ready to
drop gendef from the glibmm sources.
|
|
|
|
|
| |
This prepares the build to use compiler directives to export symbols, in
our bid to drop gendef.exe.
|
|
|
|
| |
static_library() can't take a version: argument.
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
Like the previous commit, let builds from release tarballs and GIT
checkouts build the giomm-int static library, and link the final
.so/.dll from the objects that form giomm-int static .lib. By doing so
we can build giomm 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
|
|
|
|
| |
See issue #49
|
|
|
|
| |
Closes https://gitlab.gnome.org/GNOME/glibmm/issues/20.
|
|
|
|
|
|
|
|
|
| |
* docs/Makefile.am: Include the filelist.gmake.am files if applicable
* glib/glibmm/filelist.gmake.am:
* gio/src/filelist.gmake.am:
* gio/giomm/filelist.gmake.am: Include filelist.am relative from
$(top_srcdir) as we are including the filelist.gmake.am's from docs/
as well.
|
|
|
|
|
|
| |
This enables the filelist.am files to be shared with the NMake
Makefiles, so that any addition/removal to the sources can be reflected
in the Visual Studio build files as well.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc8 -Wextra prints a warning when a single reinterpret_cast is used for
conversion between different types of function pointers. The previous fix
with a union in Glib::bitwise_equivalent_cast<>() is not standard C++.
Rename the function to Glib::function_pointer_cast<>(), and use two
reinterpret_casts as recommended in gcc's documentation.
* glib/src/optiongroup.ccg: Use a reinterpret_cast to convert from
a function pointer to void*. That's possible now. It's "conditionally
supported", starting with C++11.
See https://github.com/libsigcplusplus/libsigcplusplus/issues/8
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion
between different types of function pointers. Avoid that by adding
Glib::bitwise_equivalent_cast<>() with a union with members of
the two types of function pointers.
* glib/src/optiongroup.ccg: Use Glib::bitwise_equivalent_cast<>() to convert
from a function pointer to void*.
See https://github.com/libsigcplusplus/libsigcplusplus/issues/1
|
|
|
|
|
|
| |
This reverts commit fa85bd1161d5d914095d1a3f9b620da294c9af79.
This can be done in a better way by keeping the union in a template function.
|
|
|
|
|
|
|
|
| |
gcc8 -Wextra prints a warning when reinterpret_cast is used for conversion
between different types of function pointers. Avoid that by instead using
a union with members of the two types of function pointers.
See https://github.com/libsigcplusplus/libsigcplusplus/issues/1
|
|
|
|
| |
Gio::SignalProxy_async_callback() is required in gtkmm.
|
|
|
|
| |
Bug 786824
|
|
|
|
| |
This will make it easier to change the underlying RefPtr type.
|
|
|
|
|
|
|
| |
By adding a private SocketSource constructor (and create()), accessible
via a friend declaration, that takes the raw GSocket.
See https://bugzilla.gnome.org/show_bug.cgi?id=755037#c20
|
|
|
|
|
|
| |
Using Glib::ListHandler<>::list_to_array() and
Glib::ListHandler<>::list_to_vector() instead, and only in the
implementation instead of in the API.
|
|
|
|
|
|
| |
Using Glib::ArrayHandler<>::vector_to_array() and
Glib::ArrayHandler<>::array_to_vector() instead, and only in the
implementatoin instead of in the API.
|
| |
|
| |
|
|
|
|
|
| |
I need to make a subsequent commit to fix the now-unaligned
trailing comments.
|
| |
|
| |
|
|
|
|
| |
This ensures that the base class is really virtual.
|
| |
|
| |
|
|
|
|
|
| |
Destructors are already noexcept, but this makes that even clearer.
This might be foolish.
|
|
|
|
|
|
|
|
|
|
|
| |
* glib/glibmm/filelist.am (glibmm_files_all_h): New variable
that holds all header files, even those which are not included
in the build.
* gio/giomm/filelist.am (giomm_files_all_h): ditto.
* docs/Makefile.am (doc_input): Make Doxygen parse all public
header files, including those which are unused in the current
build configuration. This ensures that the documentation covers
all platforms.
|
| |
|
|
|
|
|
|
| |
* gio/giomm/socketsource.h: Add an empty line after @newin where it's needed
in order to avoid bad side effects in the documentation. Doxygen assumes that
@newin is followed by a paragraph that describes what is new.
|
|
|
|
|
|
|
|
|
|
|
| |
* .gitignore: Add !gio/giomm/socketsource.[cc|h].
* gio/giomm.h:
* gio/giomm/filelist.am: Add socketsource.h.
* gio/giomm/socketsource.[cc|h]: New files. SocketSource and SignalSocket.
* gio/src/socket.[ccg|hg]: Add create_source().
Remove many trailing blanks in socket.hg.
* glib/glibmm/main.[cc|h]: Add functions required when a class derived from
Source is defined in another file. Bug #725281.
|
|
|
|
|
| |
This matches a similar ifdeffing in the underlying C header,
because ths function is apparently not useful on win32.
|
|
|
|
|
|
|
| |
* gio/giomm/contenttype.h: Add @defgroup giommContentType. Useful as
a link target from Gtk::AppChooser, similar to a link from
GtkAppChooser:content-type to GContentType. See gtk+ bug #650012.
Several minor fixes in content_type_*() docs.
|