diff options
author | Chun-wei Fan <fanchunwei@src.gnome.org> | 2020-03-06 12:28:52 +0800 |
---|---|---|
committer | Chun-wei Fan <fanchunwei@src.gnome.org> | 2020-03-07 23:22:44 +0800 |
commit | 3f66ba73879bd0a0f76ae3c544a0029ef31b5413 (patch) | |
tree | 1c5ad5e20810e9f88880dc016843ca003dc725a2 /gio | |
parent | d84be37aaa335e57bb6fe7de6bf4be736652a60d (diff) | |
download | glibmm-3f66ba73879bd0a0f76ae3c544a0029ef31b5413.tar.gz |
gio/src/*.hg: Mark classes and functions with GIOMM_API
This prepares the build to export symbols using compiler directives, in
our bid to drop gendef.exe. We will also mark pre-declarations of usage
of glibmm class items with GLIBMM_API as well.
Diffstat (limited to 'gio')
139 files changed, 454 insertions, 350 deletions
diff --git a/gio/src/action.hg b/gio/src/action.hg index 6ceb81c0..514d0a87 100644 --- a/gio/src/action.hg +++ b/gio/src/action.hg @@ -63,9 +63,9 @@ namespace Gio * * @newin{2,32} */ -class Action : public Glib::Interface +class GIOMM_API Action : public Glib::Interface { - _CLASS_INTERFACE(Action, GAction, G_ACTION, GActionInterface) + _CLASS_INTERFACE(Action, GAction, G_ACTION, GActionInterface, , , GIOMM_API) public: _WRAP_METHOD(Glib::ustring get_name() const, g_action_get_name) diff --git a/gio/src/actiongroup.hg b/gio/src/actiongroup.hg index 0a693143..f6649116 100644 --- a/gio/src/actiongroup.hg +++ b/gio/src/actiongroup.hg @@ -31,9 +31,9 @@ typedef struct _GActionGroupInterface GActionGroupInterface; namespace Glib { -class VariantBase; -class VariantContainerBase; -class VariantType; +class GIOMM_API VariantBase; +class GIOMM_API VariantContainerBase; +class GIOMM_API VariantType; } @@ -56,9 +56,9 @@ namespace Gio * Signals are emitted on the action group in response to state changes on * individual actions. */ -class ActionGroup : public Glib::Interface +class GIOMM_API ActionGroup : public Glib::Interface { - _CLASS_INTERFACE(ActionGroup, GActionGroup, G_ACTION_GROUP, GActionGroupInterface) + _CLASS_INTERFACE(ActionGroup, GActionGroup, G_ACTION_GROUP, GActionGroupInterface, , , GIOMM_API) public: _WRAP_METHOD(bool has_action(const Glib::ustring& action_name) const, g_action_group_has_action) diff --git a/gio/src/actionmap.hg b/gio/src/actionmap.hg index 8e8f4371..515551db 100644 --- a/gio/src/actionmap.hg +++ b/gio/src/actionmap.hg @@ -28,7 +28,7 @@ typedef struct _GActionMapInterface GActionMapInterface; namespace Gio { -class Action; +class GIOMM_API Action; /** ActionMap - Interface for action containers. * The ActionMap interface is implemented by ActionGroup implementations that @@ -40,9 +40,9 @@ class Action; * or "win."). This is the motivation for the 'Map' part of the interface name. * @newin{2,32} */ -class ActionMap : public Glib::Interface +class GIOMM_API ActionMap : public Glib::Interface { - _CLASS_INTERFACE(ActionMap, GActionMap, G_ACTION_MAP, GActionMapInterface) + _CLASS_INTERFACE(ActionMap, GActionMap, G_ACTION_MAP, GActionMapInterface, , , GIOMM_API) // The various add_action...() methods are our equivalent for g_action_map_add_action_entries(). _IGNORE(g_action_map_add_action_entries) diff --git a/gio/src/appinfo.hg b/gio/src/appinfo.hg index b05e13ad..32e90303 100644 --- a/gio/src/appinfo.hg +++ b/gio/src/appinfo.hg @@ -41,7 +41,7 @@ namespace Gio { -class File; +class GIOMM_API File; /** Application information, to describe applications installed on the system, * and launch them. @@ -49,9 +49,9 @@ class File; * * @newin{2,16} */ -class AppInfo : public Glib::Interface +class GIOMM_API AppInfo : public Glib::Interface { - _CLASS_INTERFACE(AppInfo, GAppInfo, G_APP_INFO, GAppInfoIface) + _CLASS_INTERFACE(AppInfo, GAppInfo, G_APP_INFO, GAppInfoIface, , , GIOMM_API) public: _WRAP_ENUM(CreateFlags, GAppInfoCreateFlags, NO_GTYPE) diff --git a/gio/src/applaunchcontext.hg b/gio/src/applaunchcontext.hg index f973f08c..78c63de8 100644 --- a/gio/src/applaunchcontext.hg +++ b/gio/src/applaunchcontext.hg @@ -29,17 +29,17 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class AppInfo; -class File; +class GIOMM_API AppInfo; +class GIOMM_API File; /** This is used to handle, for instance, startup notification and launching of the new application on the same screen as the launching window. * See also AppInfo. * * @newin{2,16} */ -class AppLaunchContext : public Glib::Object +class GIOMM_API AppLaunchContext : public Glib::Object { - _CLASS_GOBJECT(AppLaunchContext, GAppLaunchContext, G_APP_LAUNCH_CONTEXT, Glib::Object, GObject) + _CLASS_GOBJECT(AppLaunchContext, GAppLaunchContext, G_APP_LAUNCH_CONTEXT, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT() diff --git a/gio/src/application.hg b/gio/src/application.hg index 3a3b8e08..dd2c5ecc 100644 --- a/gio/src/application.hg +++ b/gio/src/application.hg @@ -82,9 +82,9 @@ namespace Gio * * @newin{2,32} */ -class Application : public Glib::Object, public ActionGroup, public ActionMap +class GIOMM_API Application : public Glib::Object, public ActionGroup, public ActionMap { - _CLASS_GOBJECT(Application, GApplication, G_APPLICATION, Glib::Object, GObject) + _CLASS_GOBJECT(Application, GApplication, G_APPLICATION, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(ActionGroup) _IMPLEMENTS_INTERFACE(ActionMap) diff --git a/gio/src/applicationcommandline.hg b/gio/src/applicationcommandline.hg index 3c117456..1bc0a095 100644 --- a/gio/src/applicationcommandline.hg +++ b/gio/src/applicationcommandline.hg @@ -54,9 +54,9 @@ namespace Gio * return until the editing is done. * @newin{2,32} */ -class ApplicationCommandLine : public Glib::Object +class GIOMM_API ApplicationCommandLine : public Glib::Object { - _CLASS_GOBJECT(ApplicationCommandLine, GApplicationCommandLine, G_APPLICATION_COMMAND_LINE, Glib::Object, GObject) + _CLASS_GOBJECT(ApplicationCommandLine, GApplicationCommandLine, G_APPLICATION_COMMAND_LINE, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/asyncinitable.hg b/gio/src/asyncinitable.hg index 6961eddb..842ec45d 100644 --- a/gio/src/asyncinitable.hg +++ b/gio/src/asyncinitable.hg @@ -29,7 +29,7 @@ typedef struct _GAsyncInitableIface GAsyncInitableIface; namespace Gio { -class Cancellable; +class GIOMM_API Cancellable; /** AsyncInitable - Asynchronously failable object initialization interface. * This is the asynchronous version of Initable; it behaves the same in all @@ -45,9 +45,9 @@ class Cancellable; * g_async_initable_init_async() under the cover, calling back with nullptr and a * set GError on failure. */ -class AsyncInitable : public Glib::Interface +class GIOMM_API AsyncInitable : public Glib::Interface { - _CLASS_INTERFACE(AsyncInitable, GAsyncInitable, G_ASYNC_INITABLE, GAsyncInitableIface) + _CLASS_INTERFACE(AsyncInitable, GAsyncInitable, G_ASYNC_INITABLE, GAsyncInitableIface, , , GIOMM_API) protected: /** Starts asynchronous initialization of the object implementing the diff --git a/gio/src/asyncresult.hg b/gio/src/asyncresult.hg index af3eaee1..01491749 100644 --- a/gio/src/asyncresult.hg +++ b/gio/src/asyncresult.hg @@ -29,7 +29,7 @@ typedef struct _GAsyncResultIface GAsyncResultIface; namespace Gio { -class AsyncResult; +class GIOMM_API AsyncResult; /** A function that will be called when an asynchronous operation within GIO has been completed. * @param result The asynchronous function's results. @@ -109,9 +109,9 @@ using SlotAsyncReady = sigc::slot<void(Glib::RefPtr<AsyncResult>&)>; * * @newin{2,16} */ -class AsyncResult : public Glib::Interface +class GIOMM_API AsyncResult : public Glib::Interface { - _CLASS_INTERFACE(AsyncResult, GAsyncResult, G_ASYNC_RESULT, GAsyncResultIface) + _CLASS_INTERFACE(AsyncResult, GAsyncResult, G_ASYNC_RESULT, GAsyncResultIface, , , GIOMM_API) public: _IGNORE(g_async_result_get_user_data) diff --git a/gio/src/bufferedinputstream.hg b/gio/src/bufferedinputstream.hg index d93c6652..ad087e77 100644 --- a/gio/src/bufferedinputstream.hg +++ b/gio/src/bufferedinputstream.hg @@ -40,9 +40,9 @@ namespace Gio * * @newin{2,16} */ -class BufferedInputStream : public Gio::FilterInputStream, public Gio::Seekable +class GIOMM_API BufferedInputStream : public Gio::FilterInputStream, public Gio::Seekable { - _CLASS_GOBJECT(BufferedInputStream, GBufferedInputStream, G_BUFFERED_INPUT_STREAM, Gio::FilterInputStream, GFilterInputStream) + _CLASS_GOBJECT(BufferedInputStream, GBufferedInputStream, G_BUFFERED_INPUT_STREAM, Gio::FilterInputStream, GFilterInputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) protected: diff --git a/gio/src/bufferedoutputstream.hg b/gio/src/bufferedoutputstream.hg index 846411fa..52d90bdf 100644 --- a/gio/src/bufferedoutputstream.hg +++ b/gio/src/bufferedoutputstream.hg @@ -36,9 +36,9 @@ namespace Gio * * @newin{2,16} */ -class BufferedOutputStream : public Gio::FilterOutputStream, public Gio::Seekable +class GIOMM_API BufferedOutputStream : public Gio::FilterOutputStream, public Gio::Seekable { - _CLASS_GOBJECT(BufferedOutputStream, GBufferedOutputStream, G_BUFFERED_OUTPUT_STREAM, Gio::FilterOutputStream, GFilterOutputStream) + _CLASS_GOBJECT(BufferedOutputStream, GBufferedOutputStream, G_BUFFERED_OUTPUT_STREAM, Gio::FilterOutputStream, GFilterOutputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) protected: diff --git a/gio/src/cancellable.hg b/gio/src/cancellable.hg index b4cb956e..ee89ff04 100644 --- a/gio/src/cancellable.hg +++ b/gio/src/cancellable.hg @@ -14,6 +14,7 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) #include <glibmm/object.h> @@ -28,9 +29,9 @@ namespace Gio * * @newin{2,16} */ -class Cancellable : public Glib::Object +class GIOMM_API Cancellable : public Glib::Object { - _CLASS_GOBJECT(Cancellable, GCancellable, G_CANCELLABLE, Glib::Object, GObject) + _CLASS_GOBJECT(Cancellable, GCancellable, G_CANCELLABLE, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/charsetconverter.hg b/gio/src/charsetconverter.hg index d5679b7a..4561666d 100644 --- a/gio/src/charsetconverter.hg +++ b/gio/src/charsetconverter.hg @@ -28,10 +28,10 @@ namespace Gio * CharsetConverter is an implementation of Converter based on GIConv. * @newin{2,34} */ -class CharsetConverter +class GIOMM_API CharsetConverter : public Glib::Object, public Converter, public Initable { - _CLASS_GOBJECT(CharsetConverter, GCharsetConverter, G_CHARSET_CONVERTER, Glib::Object, GObject) + _CLASS_GOBJECT(CharsetConverter, GCharsetConverter, G_CHARSET_CONVERTER, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Converter) _IMPLEMENTS_INTERFACE(Initable) diff --git a/gio/src/converter.hg b/gio/src/converter.hg index 21f8e081..74e1624d 100644 --- a/gio/src/converter.hg +++ b/gio/src/converter.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -37,9 +39,9 @@ namespace Gio * * @newin{2,34} */ -class Converter : public Glib::Interface +class GIOMM_API Converter : public Glib::Interface { - _CLASS_INTERFACE(Converter, GConverter, G_CONVERTER, GConverterIface) + _CLASS_INTERFACE(Converter, GConverter, G_CONVERTER, GConverterIface, , , GIOMM_API) public: _WRAP_ENUM(Result, GConverterResult) diff --git a/gio/src/converterinputstream.hg b/gio/src/converterinputstream.hg index ae65e597..9f221d65 100644 --- a/gio/src/converterinputstream.hg +++ b/gio/src/converterinputstream.hg @@ -23,8 +23,8 @@ _PINCLUDE(giomm/private/filterinputstream_p.h) namespace Gio { -class Converter; -class InputStream; +class GIOMM_API Converter; +class GIOMM_API InputStream; /** ConverterInputstream - Converter Input Stream. * Converter input stream implements InputStream and allows conversion of data @@ -32,10 +32,10 @@ class InputStream; * PollableInputStream interface. * @newin{2,34} */ -class ConverterInputStream : public FilterInputStream, - public PollableInputStream +class GIOMM_API ConverterInputStream : public FilterInputStream, + public PollableInputStream { - _CLASS_GOBJECT(ConverterInputStream, GConverterInputStream, G_CONVERTER_INPUT_STREAM, FilterInputStream, GFilterInputStream) + _CLASS_GOBJECT(ConverterInputStream, GConverterInputStream, G_CONVERTER_INPUT_STREAM, FilterInputStream, GFilterInputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(PollableInputStream) protected: diff --git a/gio/src/converteroutputstream.hg b/gio/src/converteroutputstream.hg index 1729aacb..76348985 100644 --- a/gio/src/converteroutputstream.hg +++ b/gio/src/converteroutputstream.hg @@ -23,8 +23,8 @@ _PINCLUDE(giomm/private/filteroutputstream_p.h) namespace Gio { -class Converter; -class OutputStream; +class GIOMM_API Converter; +class GIOMM_API OutputStream; /** ConverterOutputstream - Converter Output Stream. * Converter output stream implements OutputStream and allows conversion of @@ -32,10 +32,10 @@ class OutputStream; * the PollableOutputStream interface. * @newin{2,34} */ -class ConverterOutputStream : public FilterOutputStream, - public PollableOutputStream +class GIOMM_API ConverterOutputStream : public FilterOutputStream, + public PollableOutputStream { - _CLASS_GOBJECT(ConverterOutputStream, GConverterOutputStream, G_CONVERTER_OUTPUT_STREAM, FilterOutputStream, GFilterOutputStream) + _CLASS_GOBJECT(ConverterOutputStream, GConverterOutputStream, G_CONVERTER_OUTPUT_STREAM, FilterOutputStream, GFilterOutputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(PollableOutputStream) protected: diff --git a/gio/src/credentials.hg b/gio/src/credentials.hg index 7bbcdef7..8c0cf966 100644 --- a/gio/src/credentials.hg +++ b/gio/src/credentials.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -45,9 +47,9 @@ namespace Gio * * @newin{2,28} */ -class Credentials : public Glib::Object +class GIOMM_API Credentials : public Glib::Object { - _CLASS_GOBJECT(Credentials, GCredentials, G_CREDENTIALS, Glib::Object, GObject) + _CLASS_GOBJECT(Credentials, GCredentials, G_CREDENTIALS, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/datainputstream.hg b/gio/src/datainputstream.hg index 157f8947..b62ae60a 100644 --- a/gio/src/datainputstream.hg +++ b/gio/src/datainputstream.hg @@ -31,9 +31,9 @@ namespace Gio * * @newin{2,16} */ -class DataInputStream : public Gio::BufferedInputStream +class GIOMM_API DataInputStream : public Gio::BufferedInputStream { - _CLASS_GOBJECT(DataInputStream, GDataInputStream, G_DATA_INPUT_STREAM, Gio::BufferedInputStream, GBufferedInputStream) + _CLASS_GOBJECT(DataInputStream, GDataInputStream, G_DATA_INPUT_STREAM, Gio::BufferedInputStream, GBufferedInputStream, , , GIOMM_API) protected: _WRAP_CTOR(DataInputStream(const Glib::RefPtr<InputStream>& base_stream), g_data_input_stream_new) diff --git a/gio/src/dataoutputstream.hg b/gio/src/dataoutputstream.hg index aec65bf2..59368117 100644 --- a/gio/src/dataoutputstream.hg +++ b/gio/src/dataoutputstream.hg @@ -32,9 +32,9 @@ namespace Gio * * @newin{2,16} */ -class DataOutputStream : public Gio::FilterOutputStream, public Gio::Seekable +class GIOMM_API DataOutputStream : public Gio::FilterOutputStream, public Gio::Seekable { - _CLASS_GOBJECT(DataOutputStream, GDataOutputStream, G_DATA_OUTPUT_STREAM, Gio::FilterOutputStream, GFilterOutputStream) + _CLASS_GOBJECT(DataOutputStream, GDataOutputStream, G_DATA_OUTPUT_STREAM, Gio::FilterOutputStream, GFilterOutputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) protected: diff --git a/gio/src/dbusactiongroup.hg b/gio/src/dbusactiongroup.hg index fde6a352..fbc00f86 100644 --- a/gio/src/dbusactiongroup.hg +++ b/gio/src/dbusactiongroup.hg @@ -27,7 +27,7 @@ namespace Gio namespace DBus { -class Connection; +class GIOMM_API Connection; _GMMPROC_EXTRA_NAMESPACE(DBus) @@ -37,10 +37,10 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * Gio::DBus::Connection::export_action_group(). * @newin{2,32} */ -class ActionGroup +class GIOMM_API ActionGroup : public Glib::Object, public Gio::ActionGroup, public Gio::RemoteActionGroup { - _CLASS_GOBJECT(ActionGroup, GDBusActionGroup, G_DBUS_ACTION_GROUP, Glib::Object, GObject) + _CLASS_GOBJECT(ActionGroup, GDBusActionGroup, G_DBUS_ACTION_GROUP, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Gio::ActionGroup) _IMPLEMENTS_INTERFACE(Gio::RemoteActionGroup) diff --git a/gio/src/dbusaddress.hg b/gio/src/dbusaddress.hg index aa105e70..7993892b 100644 --- a/gio/src/dbusaddress.hg +++ b/gio/src/dbusaddress.hg @@ -38,6 +38,7 @@ namespace Address * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_address(const std::string& string); /** Like is_address() but also checks if the library supports the transports @@ -50,6 +51,7 @@ bool is_address(const std::string& string); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_supported(const std::string& address); /** Asynchronously connects to an endpoint specified by @a address and sets up @@ -68,10 +70,12 @@ bool is_supported(const std::string& address); * @newin{2,28} * @ingroup DBus */ +GIOMM_API void get_stream(const std::string& address, const SlotAsyncReady slot, const Glib::RefPtr<Cancellable>& cancellable); /// A non-cancellable version of get_stream(). +GIOMM_API void get_stream(const std::string& address, const SlotAsyncReady slot); /** Finishes an operation started with get_stream(). @@ -85,6 +89,7 @@ void get_stream(const std::string& address, const SlotAsyncReady slot); * @newin{2,28} * @ingroup DBus */ +GIOMM_API Glib::RefPtr<IOStream> get_stream_finish(const Glib::RefPtr<AsyncResult>& res, std::string& out_guid); @@ -97,6 +102,7 @@ Glib::RefPtr<IOStream> get_stream_finish(const Glib::RefPtr<AsyncResult>& res, * @newin{2,28} * @ingroup DBus */ +GIOMM_API Glib::RefPtr<IOStream> get_stream_finish(const Glib::RefPtr<AsyncResult>& res); /** Synchronously connects to an endpoint specified by @a address and sets up @@ -115,10 +121,12 @@ Glib::RefPtr<IOStream> get_stream_finish(const Glib::RefPtr<AsyncResult>& res); * @newin{2,28} * @ingroup DBus */ +GIOMM_API Glib::RefPtr<IOStream> get_stream_sync(const std::string& address, const Glib::RefPtr<Cancellable>& cancellable, std::string& out_guid); /// A non-cancellable version of get_stream_sync(). +GIOMM_API Glib::RefPtr<IOStream> get_stream_sync(const std::string& address, std::string& out_guid); @@ -136,10 +144,12 @@ Glib::RefPtr<IOStream> get_stream_sync(const std::string& address, * @newin{2,28} * @ingroup DBus */ +GIOMM_API Glib::RefPtr<IOStream> get_stream_sync(const std::string& address, const Glib::RefPtr<Cancellable>& cancellable); /// A non-cancellable version of get_stream_sync(). +GIOMM_API Glib::RefPtr<IOStream> get_stream_sync(const std::string& address); /** Synchronously looks up the D-Bus address for the well-known message bus @@ -153,10 +163,12 @@ Glib::RefPtr<IOStream> get_stream_sync(const std::string& address); * @newin{2,28} * @ingroup DBus */ +GIOMM_API std::string get_for_bus_sync(BusType bus_type, const Glib::RefPtr<Cancellable>& cancellable); /// A non-cancellable get_for_bus_sync(). +GIOMM_API std::string get_for_bus_sync(BusType bus_type); } // namespace Address diff --git a/gio/src/dbusauthobserver.hg b/gio/src/dbusauthobserver.hg index 03876c0e..df2536e9 100644 --- a/gio/src/dbusauthobserver.hg +++ b/gio/src/dbusauthobserver.hg @@ -66,9 +66,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,28} * @ingroup DBus */ -class AuthObserver : public Glib::Object +class GIOMM_API AuthObserver : public Glib::Object { - _CLASS_GOBJECT(AuthObserver, GDBusAuthObserver, G_DBUS_AUTH_OBSERVER, Glib::Object, GObject) + _CLASS_GOBJECT(AuthObserver, GDBusAuthObserver, G_DBUS_AUTH_OBSERVER, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/dbusconnection.hg b/gio/src/dbusconnection.hg index 6f97953d..5734c0fd 100644 --- a/gio/src/dbusconnection.hg +++ b/gio/src/dbusconnection.hg @@ -33,9 +33,9 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class ActionGroup; -class MenuModel; -class UnixFDList; +class GIOMM_API ActionGroup; +class GIOMM_API MenuModel; +class GIOMM_API UnixFDList; namespace DBus @@ -71,11 +71,11 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,28} * @ingroup DBus */ -class Connection +class GIOMM_API Connection : public Glib::Object, public Initable, public AsyncInitable { protected: - _CLASS_GOBJECT(Connection, GDBusConnection, G_DBUS_CONNECTION, Glib::Object, GObject) + _CLASS_GOBJECT(Connection, GDBusConnection, G_DBUS_CONNECTION, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Initable) _IMPLEMENTS_INTERFACE(AsyncInitable) _CUSTOM_WRAP_FUNCTION diff --git a/gio/src/dbuserror.hg b/gio/src/dbuserror.hg index 95bfe598..2489256c 100644 --- a/gio/src/dbuserror.hg +++ b/gio/src/dbuserror.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/error.h> _DEFS(giomm,gio) @@ -27,7 +29,7 @@ namespace DBus //The GMMPROC_EXTRA_NAMESPACE() macro is a hint to generate_wrap_init.pl to put it in the DBus sub-namespace _GMMPROC_EXTRA_NAMESPACE(DBus) -_WRAP_GERROR(Error, GDBusError, G_DBUS_ERROR, NO_GTYPE) +_WRAP_GERROR(Error, GDBusError, G_DBUS_ERROR, NO_GTYPE, decl_prefix GIOMM_API) } //namespace DBus diff --git a/gio/src/dbuserrorutils.hg b/gio/src/dbuserrorutils.hg index 084fa0c4..82a11cbf 100644 --- a/gio/src/dbuserrorutils.hg +++ b/gio/src/dbuserrorutils.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + _DEFS(giomm,gio) namespace Glib @@ -41,6 +43,7 @@ namespace ErrorUtils * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_remote_error(const Glib::Error& error); /** Gets the D-Bus error name used for @a error, if any. @@ -56,6 +59,7 @@ bool is_remote_error(const Glib::Error& error); * @newin{2,28} * @ingroup DBus */ +GIOMM_API Glib::ustring get_remote_error(const Glib::Error& error); /** Looks for extra information in the error message used to recover the D-Bus @@ -70,6 +74,7 @@ Glib::ustring get_remote_error(const Glib::Error& error); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool strip_remote_error(Glib::Error& error); } // namespace ErrorUtils diff --git a/gio/src/dbusinterface.hg b/gio/src/dbusinterface.hg index f85c8961..ea5fae61 100644 --- a/gio/src/dbusinterface.hg +++ b/gio/src/dbusinterface.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -30,8 +32,8 @@ namespace Gio namespace DBus { -class InterfaceInfo; -class Object; +class GIOMM_API InterfaceInfo; +class GIOMM_API Object; _GMMPROC_EXTRA_NAMESPACE(DBus) @@ -41,9 +43,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,34} */ -class Interface : public Glib::Interface +class GIOMM_API Interface : public Glib::Interface { - _CLASS_INTERFACE(Interface, GDBusInterface, G_DBUS_INTERFACE, GDBusInterfaceIface) + _CLASS_INTERFACE(Interface, GDBusInterface, G_DBUS_INTERFACE, GDBusInterfaceIface, , , GIOMM_API) public: _WRAP_METHOD(Glib::RefPtr<InterfaceInfo> get_info(), g_dbus_interface_get_info) diff --git a/gio/src/dbusinterfaceskeleton.hg b/gio/src/dbusinterfaceskeleton.hg index 8ad46930..7ad634ce 100644 --- a/gio/src/dbusinterfaceskeleton.hg +++ b/gio/src/dbusinterfaceskeleton.hg @@ -27,20 +27,20 @@ namespace Gio namespace DBus { -class InterfaceInfo; -class Connection; -class MethodInvocation; +class GIOMM_API InterfaceInfo; +class GIOMM_API Connection; +class GIOMM_API MethodInvocation; _GMMPROC_EXTRA_NAMESPACE(DBus) /** Abstract base class for D-Bus interfaces on the service side. * @newin{2,38} */ -class InterfaceSkeleton +class GIOMM_API InterfaceSkeleton : public Glib::Object, public Interface { - _CLASS_GOBJECT(InterfaceSkeleton, GDBusInterfaceSkeleton, G_DBUS_INTERFACE_SKELETON, Glib::Object, GObject) + _CLASS_GOBJECT(InterfaceSkeleton, GDBusInterfaceSkeleton, G_DBUS_INTERFACE_SKELETON, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Interface) public: diff --git a/gio/src/dbusinterfacevtable.hg b/gio/src/dbusinterfacevtable.hg index 800f3fd8..67b98683 100644 --- a/gio/src/dbusinterfacevtable.hg +++ b/gio/src/dbusinterfacevtable.hg @@ -44,7 +44,7 @@ namespace DBus * @newin{2,28} * @ingroup DBus */ -class InterfaceVTable +class GIOMM_API InterfaceVTable { _CLASS_GENERIC(InterfaceVTable, GDBusInterfaceVTable) diff --git a/gio/src/dbusintrospection.hg b/gio/src/dbusintrospection.hg index f1ba9b55..bd6a79d8 100644 --- a/gio/src/dbusintrospection.hg +++ b/gio/src/dbusintrospection.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/refptr.h> #include <glibmm/value.h> #include <gio/gio.h> @@ -35,9 +37,9 @@ _WRAP_ENUM(PropertyInfoFlags, GDBusPropertyInfoFlags, NO_GTYPE) * @newin{2,28} * @ingroup DBus */ -class AnnotationInfo final +class GIOMM_API AnnotationInfo final { - _CLASS_OPAQUE_REFCOUNTED(AnnotationInfo, GDBusAnnotationInfo, NONE, g_dbus_annotation_info_ref, g_dbus_annotation_info_unref) + _CLASS_OPAQUE_REFCOUNTED(AnnotationInfo, GDBusAnnotationInfo, NONE, g_dbus_annotation_info_ref, g_dbus_annotation_info_unref, GIOMM_API) _IGNORE(g_dbus_annotation_info_ref, g_dbus_annotation_info_unref) public: @@ -51,9 +53,9 @@ public: * @newin{2,28} * @ingroup DBus */ -class ArgInfo final +class GIOMM_API ArgInfo final { - _CLASS_OPAQUE_REFCOUNTED(ArgInfo, GDBusArgInfo, NONE, g_dbus_arg_info_ref, g_dbus_arg_info_unref) + _CLASS_OPAQUE_REFCOUNTED(ArgInfo, GDBusArgInfo, NONE, g_dbus_arg_info_ref, g_dbus_arg_info_unref, GIOMM_API) _IGNORE(g_dbus_arg_info_ref, g_dbus_arg_info_unref) public: @@ -64,9 +66,9 @@ public: * @newin{2,28} * @ingroup DBus */ -class MethodInfo final +class GIOMM_API MethodInfo final { - _CLASS_OPAQUE_REFCOUNTED(MethodInfo, GDBusMethodInfo, NONE, g_dbus_method_info_ref, g_dbus_method_info_unref) + _CLASS_OPAQUE_REFCOUNTED(MethodInfo, GDBusMethodInfo, NONE, g_dbus_method_info_ref, g_dbus_method_info_unref, GIOMM_API) _IGNORE(g_dbus_method_info_ref, g_dbus_method_info_unref) public: @@ -77,9 +79,9 @@ public: * @newin{2,28} * @ingroup DBus */ -class SignalInfo final +class GIOMM_API SignalInfo final { - _CLASS_OPAQUE_REFCOUNTED(SignalInfo, GDBusSignalInfo, NONE, g_dbus_signal_info_ref, g_dbus_signal_info_unref) + _CLASS_OPAQUE_REFCOUNTED(SignalInfo, GDBusSignalInfo, NONE, g_dbus_signal_info_ref, g_dbus_signal_info_unref, GIOMM_API) _IGNORE(g_dbus_signal_info_ref, g_dbus_signal_info_unref) public: @@ -90,9 +92,9 @@ public: * @newin{2,28} * @ingroup DBus */ -class PropertyInfo final +class GIOMM_API PropertyInfo final { - _CLASS_OPAQUE_REFCOUNTED(PropertyInfo, GDBusPropertyInfo, NONE, g_dbus_property_info_ref, g_dbus_property_info_unref) + _CLASS_OPAQUE_REFCOUNTED(PropertyInfo, GDBusPropertyInfo, NONE, g_dbus_property_info_ref, g_dbus_property_info_unref, GIOMM_API) _IGNORE(g_dbus_property_info_ref, g_dbus_property_info_unref) public: @@ -103,9 +105,9 @@ public: * @newin{2,28} * @ingroup DBus */ -class InterfaceInfo final +class GIOMM_API InterfaceInfo final { - _CLASS_OPAQUE_REFCOUNTED(InterfaceInfo, GDBusInterfaceInfo, NONE, g_dbus_interface_info_ref, g_dbus_interface_info_unref) + _CLASS_OPAQUE_REFCOUNTED(InterfaceInfo, GDBusInterfaceInfo, NONE, g_dbus_interface_info_ref, g_dbus_interface_info_unref, GIOMM_API) _IS_REFCOUNTED_BOXEDTYPE(g_dbus_interface_info_get_type) _IGNORE(g_dbus_interface_info_ref, g_dbus_interface_info_unref) @@ -131,9 +133,9 @@ public: * @newin{2,28} * @ingroup DBus */ -class NodeInfo final +class GIOMM_API NodeInfo final { - _CLASS_OPAQUE_REFCOUNTED(NodeInfo, GDBusNodeInfo, NONE, g_dbus_node_info_ref, g_dbus_node_info_unref) + _CLASS_OPAQUE_REFCOUNTED(NodeInfo, GDBusNodeInfo, NONE, g_dbus_node_info_ref, g_dbus_node_info_unref, GIOMM_API) _IGNORE(g_dbus_node_info_ref, g_dbus_node_info_unref) public: diff --git a/gio/src/dbusmenumodel.hg b/gio/src/dbusmenumodel.hg index f704350f..1f24ad6d 100644 --- a/gio/src/dbusmenumodel.hg +++ b/gio/src/dbusmenumodel.hg @@ -25,7 +25,7 @@ namespace Gio namespace DBus { -class Connection; +class GIOMM_API Connection; _GMMPROC_EXTRA_NAMESPACE(DBus) @@ -35,9 +35,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * Gio::DBus::Connection::export_menu_model(). * @newin{2,32} */ -class MenuModel : public ::Gio::MenuModel +class GIOMM_API MenuModel : public ::Gio::MenuModel { - _CLASS_GOBJECT(MenuModel, GDBusMenuModel, G_DBUS_MENU_MODEL, ::Gio::MenuModel, GMenuModel) + _CLASS_GOBJECT(MenuModel, GDBusMenuModel, G_DBUS_MENU_MODEL, ::Gio::MenuModel, GMenuModel, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/dbusmessage.hg b/gio/src/dbusmessage.hg index 544f5e34..77b08f66 100644 --- a/gio/src/dbusmessage.hg +++ b/gio/src/dbusmessage.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> #include <glibmm/variant.h> #include <glibmm/utility.h> @@ -44,9 +46,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,28} * @ingroup DBus */ -class Message : public Glib::Object +class GIOMM_API Message : public Glib::Object { - _CLASS_GOBJECT(Message, GDBusMessage, G_DBUS_MESSAGE, Glib::Object, GObject) + _CLASS_GOBJECT(Message, GDBusMessage, G_DBUS_MESSAGE, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/dbusmethodinvocation.hg b/gio/src/dbusmethodinvocation.hg index 65e81c02..44497584 100644 --- a/gio/src/dbusmethodinvocation.hg +++ b/gio/src/dbusmethodinvocation.hg @@ -26,7 +26,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Glib { -class Error; +class GIOMM_API Error; } @@ -52,9 +52,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,28} * @ingroup DBus */ -class MethodInvocation : public Glib::Object +class GIOMM_API MethodInvocation : public Glib::Object { - _CLASS_GOBJECT(MethodInvocation, GDBusMethodInvocation, G_DBUS_METHOD_INVOCATION, Glib::Object, GObject) + _CLASS_GOBJECT(MethodInvocation, GDBusMethodInvocation, G_DBUS_METHOD_INVOCATION, Glib::Object, GObject, , , GIOMM_API) public: _WRAP_METHOD(Glib::ustring get_sender() const, g_dbus_method_invocation_get_sender) diff --git a/gio/src/dbusobject.hg b/gio/src/dbusobject.hg index b4ac349e..c154157e 100644 --- a/gio/src/dbusobject.hg +++ b/gio/src/dbusobject.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -30,7 +32,7 @@ namespace Gio namespace DBus { -class Interface; +class GIOMM_API Interface; _GMMPROC_EXTRA_NAMESPACE(DBus) @@ -41,9 +43,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,34} */ -class Object : public Glib::Interface +class GIOMM_API Object : public Glib::Interface { - _CLASS_INTERFACE(Object, GDBusObject, G_DBUS_OBJECT, GDBusObjectIface) + _CLASS_INTERFACE(Object, GDBusObject, G_DBUS_OBJECT, GDBusObjectIface, , , GIOMM_API) public: _WRAP_METHOD(Glib::ustring get_object_path() const, g_dbus_object_get_object_path) diff --git a/gio/src/dbusobjectmanager.hg b/gio/src/dbusobjectmanager.hg index 00f60cab..61fa89dd 100644 --- a/gio/src/dbusobjectmanager.hg +++ b/gio/src/dbusobjectmanager.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> #include <glibmm/ustring.h> #include <vector> @@ -31,8 +33,8 @@ namespace Gio namespace DBus { -class Interface; -class Object; +class GIOMM_API Interface; +class GIOMM_API Object; _GMMPROC_EXTRA_NAMESPACE(DBus) @@ -49,9 +51,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,62} * @ingroup DBus */ -class ObjectManager : public Glib::Interface +class GIOMM_API ObjectManager : public Glib::Interface { - _CLASS_INTERFACE(ObjectManager, GDBusObjectManager, G_DBUS_OBJECT_MANAGER, GDBusObjectManagerIface) + _CLASS_INTERFACE(ObjectManager, GDBusObjectManager, G_DBUS_OBJECT_MANAGER, GDBusObjectManagerIface, , , GIOMM_API) public: _WRAP_METHOD(Glib::ustring get_object_path() const, g_dbus_object_manager_get_object_path) diff --git a/gio/src/dbusobjectmanagerclient.hg b/gio/src/dbusobjectmanagerclient.hg index 94e6c55a..42a9d38b 100644 --- a/gio/src/dbusobjectmanagerclient.hg +++ b/gio/src/dbusobjectmanagerclient.hg @@ -113,13 +113,13 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,62} * @ingroup DBus */ -class ObjectManagerClient +class GIOMM_API ObjectManagerClient : public Glib::Object, public Initable, public AsyncInitable, public ObjectManager { - _CLASS_GOBJECT(ObjectManagerClient, GDBusObjectManagerClient, G_DBUS_OBJECT_MANAGER_CLIENT, Glib::Object, GObject) + _CLASS_GOBJECT(ObjectManagerClient, GDBusObjectManagerClient, G_DBUS_OBJECT_MANAGER_CLIENT, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Initable) _IMPLEMENTS_INTERFACE(AsyncInitable) _IMPLEMENTS_INTERFACE(DBus::ObjectManager) diff --git a/gio/src/dbusobjectmanagerserver.hg b/gio/src/dbusobjectmanagerserver.hg index 1497d4b7..03392e61 100644 --- a/gio/src/dbusobjectmanagerserver.hg +++ b/gio/src/dbusobjectmanagerserver.hg @@ -57,9 +57,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,62} * @ingroup DBus */ -class ObjectManagerServer : public Glib::Object, public ObjectManager +class GIOMM_API ObjectManagerServer : public Glib::Object, public ObjectManager { - _CLASS_GOBJECT(ObjectManagerServer, GDBusObjectManagerServer, G_DBUS_OBJECT_MANAGER_SERVER, Glib::Object, GObject) + _CLASS_GOBJECT(ObjectManagerServer, GDBusObjectManagerServer, G_DBUS_OBJECT_MANAGER_SERVER, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(DBus::ObjectManager) protected: diff --git a/gio/src/dbusobjectproxy.hg b/gio/src/dbusobjectproxy.hg index 755b4fc9..fb1b0646 100644 --- a/gio/src/dbusobjectproxy.hg +++ b/gio/src/dbusobjectproxy.hg @@ -39,9 +39,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,62} * @ingroup DBus */ -class ObjectProxy : public Glib::Object, public Object +class GIOMM_API ObjectProxy : public Glib::Object, public Object { - _CLASS_GOBJECT(ObjectProxy, GDBusObjectProxy, G_DBUS_OBJECT_PROXY, Glib::Object, GObject) + _CLASS_GOBJECT(ObjectProxy, GDBusObjectProxy, G_DBUS_OBJECT_PROXY, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(DBus::Object) protected: diff --git a/gio/src/dbusobjectskeleton.hg b/gio/src/dbusobjectskeleton.hg index 41197da9..1ca7c674 100644 --- a/gio/src/dbusobjectskeleton.hg +++ b/gio/src/dbusobjectskeleton.hg @@ -41,9 +41,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,62} * @ingroup DBus */ -class ObjectSkeleton : public Glib::Object, public Object +class GIOMM_API ObjectSkeleton : public Glib::Object, public Object { - _CLASS_GOBJECT(ObjectSkeleton, GDBusObjectSkeleton, G_DBUS_OBJECT_SKELETON, Glib::Object, GObject) + _CLASS_GOBJECT(ObjectSkeleton, GDBusObjectSkeleton, G_DBUS_OBJECT_SKELETON, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(DBus::Object) protected: diff --git a/gio/src/dbusownname.hg b/gio/src/dbusownname.hg index 7d0c99a6..24884405 100644 --- a/gio/src/dbusownname.hg +++ b/gio/src/dbusownname.hg @@ -107,6 +107,7 @@ using SlotNameLost = sigc::slot<void(const Glib::RefPtr<Gio::DBus::Connection>&, * @newin{2,28} * @ingroup DBus */ +GIOMM_API guint own_name( BusType bus_type, const Glib::ustring& name, @@ -120,6 +121,7 @@ _IGNORE(g_bus_own_name) /** Stops owning a name. * @param owner_id An identifier obtained from own_name(). */ +GIOMM_API void unown_name(guint owner_id); _IGNORE(g_bus_unown_name) diff --git a/gio/src/dbusproxy.hg b/gio/src/dbusproxy.hg index 4185a3d1..41b813a9 100644 --- a/gio/src/dbusproxy.hg +++ b/gio/src/dbusproxy.hg @@ -61,13 +61,13 @@ _WRAP_ENUM(ProxyFlags, GDBusProxyFlags, gtype_func g_dbus_proxy_flags_get_type) * @newin{2,28} * @ingroup DBus */ -class Proxy +class GIOMM_API Proxy : public Glib::Object, public Initable, public AsyncInitable, public Interface { - _CLASS_GOBJECT(Proxy, GDBusProxy, G_DBUS_PROXY, Glib::Object, GObject) + _CLASS_GOBJECT(Proxy, GDBusProxy, G_DBUS_PROXY, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Initable) _IMPLEMENTS_INTERFACE(AsyncInitable) _IMPLEMENTS_INTERFACE(DBus::Interface) diff --git a/gio/src/dbusserver.hg b/gio/src/dbusserver.hg index bf0105de..91b47d3f 100644 --- a/gio/src/dbusserver.hg +++ b/gio/src/dbusserver.hg @@ -46,9 +46,9 @@ _GMMPROC_EXTRA_NAMESPACE(DBus) * @newin{2,28} * @ingroup DBus */ -class Server : public Glib::Object, public Initable +class GIOMM_API Server : public Glib::Object, public Initable { - _CLASS_GOBJECT(Server, GDBusServer, G_DBUS_SERVER, Glib::Object, GObject) + _CLASS_GOBJECT(Server, GDBusServer, G_DBUS_SERVER, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Initable) public: diff --git a/gio/src/dbussubtreevtable.hg b/gio/src/dbussubtreevtable.hg index 477dffc7..36b93126 100644 --- a/gio/src/dbussubtreevtable.hg +++ b/gio/src/dbussubtreevtable.hg @@ -41,7 +41,7 @@ namespace DBus * @newin{2,28} * @ingroup DBus */ -class SubtreeVTable +class GIOMM_API SubtreeVTable { _CLASS_GENERIC(SubtreeVTable, GDBusSubtreeVTable) diff --git a/gio/src/dbusutils.hg b/gio/src/dbusutils.hg index 85844dcd..68b0e139 100644 --- a/gio/src/dbusutils.hg +++ b/gio/src/dbusutils.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + _DEFS(giomm,gio) namespace Gio @@ -32,6 +34,7 @@ namespace DBus * @newin{2,28} * @ingroup DBus */ +GIOMM_API std::string generate_guid(); /** Checks if @a string is a D-Bus GUID. @@ -44,6 +47,7 @@ std::string generate_guid(); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_guid(const std::string& string); /** Checks if @a string is a valid D-Bus bus name (either unique or @@ -54,6 +58,7 @@ bool is_guid(const std::string& string); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_name(const Glib::ustring& string); /** Checks if @a string is a valid D-Bus unique bus name. @@ -63,6 +68,7 @@ bool is_name(const Glib::ustring& string); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_unique_name(const Glib::ustring& string); /** Checks if @a string is a valid D-Bus member (e.g. signal or method) name. @@ -72,6 +78,7 @@ bool is_unique_name(const Glib::ustring& string); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_member_name(const Glib::ustring& string); /** Checks if @a string is a valid D-Bus interface name. @@ -81,6 +88,7 @@ bool is_member_name(const Glib::ustring& string); * @newin{2,28} * @ingroup DBus */ +GIOMM_API bool is_interface_name(const Glib::ustring& string); } diff --git a/gio/src/dbuswatchname.hg b/gio/src/dbuswatchname.hg index 1821c9ea..27b6af20 100644 --- a/gio/src/dbuswatchname.hg +++ b/gio/src/dbuswatchname.hg @@ -81,6 +81,7 @@ using SlotNameVanished = sigc::slot<void(const Glib::RefPtr<Gio::DBus::Connectio * @newin{2,28} * @ingroup DBus */ +GIOMM_API guint watch_name( BusType bus_type, const Glib::ustring& name, @@ -104,6 +105,7 @@ _IGNORE(g_bus_watch_name) * @newin{2,28} * @ingroup DBus */ +GIOMM_API guint watch_name( const Glib::RefPtr<Connection>& connection, const Glib::ustring& name, @@ -117,6 +119,7 @@ _IGNORE(g_bus_watch_name_on_connection) * @param watcher_id An identifier obtained from watch_name(). * @ingroup DBus */ +GIOMM_API void unwatch_name(guint watcher_id); _IGNORE(g_bus_unwatch_name) diff --git a/gio/src/desktopappinfo.hg b/gio/src/desktopappinfo.hg index 40605931..e2afc0f1 100644 --- a/gio/src/desktopappinfo.hg +++ b/gio/src/desktopappinfo.hg @@ -28,7 +28,7 @@ _GMMPROC_WRAP_CONDITIONALLY(if !defined(G_OS_WIN32) && !defined(GLIBMM_OS_COCOA) namespace Glib { -class KeyFile; +class GLIBMM_API KeyFile; } @@ -40,11 +40,11 @@ namespace Gio * * @newin{2,16} */ -class DesktopAppInfo +class GIOMM_API DesktopAppInfo : public Glib::Object, public AppInfo { - _CLASS_GOBJECT(DesktopAppInfo, GDesktopAppInfo, G_DESKTOP_APP_INFO, Glib::Object, GObject) + _CLASS_GOBJECT(DesktopAppInfo, GDesktopAppInfo, G_DESKTOP_APP_INFO, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(AppInfo) public: diff --git a/gio/src/drive.hg b/gio/src/drive.hg index a89974aa..6a746734 100644 --- a/gio/src/drive.hg +++ b/gio/src/drive.hg @@ -42,9 +42,9 @@ namespace Gio * * @newin{2,16} */ -class Drive : public Glib::Interface +class GIOMM_API Drive : public Glib::Interface { - _CLASS_INTERFACE(Drive, GDrive, G_DRIVE, GDriveIface) + _CLASS_INTERFACE(Drive, GDrive, G_DRIVE, GDriveIface, , , GIOMM_API) public: _WRAP_ENUM(StartFlags, GDriveStartFlags) @@ -168,6 +168,7 @@ namespace Glib { //Pre-declare this so we can use it in TypeTrait: +GIOMM_API Glib::RefPtr<Gio::Drive> wrap(GDrive* object, bool take_copy); namespace Container_Helpers diff --git a/gio/src/emblem.hg b/gio/src/emblem.hg index 1ee816ba..7a70b9fa 100644 --- a/gio/src/emblem.hg +++ b/gio/src/emblem.hg @@ -34,11 +34,11 @@ namespace Gio * * @newin{2,20} */ -class Emblem +class GIOMM_API Emblem : public Glib::Object, public Icon { - _CLASS_GOBJECT(Emblem, GEmblem, G_EMBLEM, Glib::Object, GObject) + _CLASS_GOBJECT(Emblem, GEmblem, G_EMBLEM, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Icon) public: diff --git a/gio/src/emblemedicon.hg b/gio/src/emblemedicon.hg index de9a2910..8e2e84dc 100644 --- a/gio/src/emblemedicon.hg +++ b/gio/src/emblemedicon.hg @@ -34,11 +34,11 @@ namespace Gio * * @newin{2,20} */ -class EmblemedIcon +class GIOMM_API EmblemedIcon : public Glib::Object, public Icon { - _CLASS_GOBJECT(EmblemedIcon, GEmblemedIcon, G_EMBLEMED_ICON, Glib::Object, GObject) + _CLASS_GOBJECT(EmblemedIcon, GEmblemedIcon, G_EMBLEMED_ICON, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Icon) protected: diff --git a/gio/src/error.hg b/gio/src/error.hg index 7df46d2f..a754e219 100644 --- a/gio/src/error.hg +++ b/gio/src/error.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/error.h> #include <glibmm/interface.h> @@ -38,9 +40,9 @@ namespace Gio /** Exception class for giomm errors. */ -_WRAP_GERROR(Error, GIOErrorEnum, G_IO_ERROR, NO_GTYPE) -_WRAP_GERROR(ResolverError, GResolverError, G_RESOLVER_ERROR, NO_GTYPE) -_WRAP_GERROR(TlsError, GTlsError, G_TLS_ERROR, NO_GTYPE, s#^EOF$#ENDOFFILE#) +_WRAP_GERROR(Error, GIOErrorEnum, G_IO_ERROR, NO_GTYPE, decl_prefix GIOMM_API) +_WRAP_GERROR(ResolverError, GResolverError, G_RESOLVER_ERROR, NO_GTYPE, decl_prefix GIOMM_API) +_WRAP_GERROR(TlsError, GTlsError, G_TLS_ERROR, NO_GTYPE, s#^EOF$#ENDOFFILE#, decl_prefix GIOMM_API) } // namespace Gio diff --git a/gio/src/file.hg b/gio/src/file.hg index 32e2b0e1..86d888d1 100644 --- a/gio/src/file.hg +++ b/gio/src/file.hg @@ -40,8 +40,8 @@ typedef struct _GFileIface GFileIface; namespace Gio { -class Mount; -class Volume; +class GIOMM_API Mount; +class GIOMM_API Volume; _WRAP_ENUM(FileQueryInfoFlags, GFileQueryInfoFlags, NO_GTYPE) _WRAP_ENUM(FileMonitorFlags, GFileMonitorFlags, NO_GTYPE) @@ -73,7 +73,7 @@ _WRAP_ENUM(FileMonitorFlags, GFileMonitorFlags, NO_GTYPE) */ class File : public Glib::Interface { - _CLASS_INTERFACE(File, GFile, G_FILE, GFileIface) + _CLASS_INTERFACE(File, GFile, G_FILE, GFileIface, , , GIOMM_API) public: _WRAP_ENUM(CreateFlags, GFileCreateFlags, NO_GTYPE) @@ -2441,6 +2441,7 @@ namespace Glib { //Pre-declare this so we can use it in TypeTrait: +GIOMM_API Glib::RefPtr<Gio::File> wrap(GFile* object, bool take_copy); namespace Container_Helpers diff --git a/gio/src/fileattributeinfo.hg b/gio/src/fileattributeinfo.hg index 0c9c9a5b..7e045620 100644 --- a/gio/src/fileattributeinfo.hg +++ b/gio/src/fileattributeinfo.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <string> #include <gio/gio.h> //TODO: avoid this include #include <glibmm/object.h> @@ -31,7 +33,7 @@ _WRAP_ENUM(FileAttributeStatus, GFileAttributeStatus) * * @newin{2,16} */ -class FileAttributeInfo +class GIOMM_API FileAttributeInfo { _CLASS_GENERIC(FileAttributeInfo, GFileAttributeInfo) public: diff --git a/gio/src/fileattributeinfolist.hg b/gio/src/fileattributeinfolist.hg index 2ea1dc70..13142865 100644 --- a/gio/src/fileattributeinfolist.hg +++ b/gio/src/fileattributeinfolist.hg @@ -42,12 +42,13 @@ namespace Gio * * @newin{2,16} */ -class FileAttributeInfoList final +class GIOMM_API FileAttributeInfoList final { _CLASS_OPAQUE_REFCOUNTED(FileAttributeInfoList, GFileAttributeInfoList, g_file_attribute_info_list_new, g_file_attribute_info_list_ref, - g_file_attribute_info_list_unref) + g_file_attribute_info_list_unref, + GIOMM_API) _IGNORE(g_file_attribute_info_list_new, g_file_attribute_info_list_ref, g_file_attribute_info_list_unref) public: diff --git a/gio/src/filedescriptorbased.hg b/gio/src/filedescriptorbased.hg index 57f27dc3..8d6d77ef 100644 --- a/gio/src/filedescriptorbased.hg +++ b/gio/src/filedescriptorbased.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -37,7 +39,7 @@ namespace Gio */ class FileDescriptorBased : public Glib::Interface { - _CLASS_INTERFACE(FileDescriptorBased, GFileDescriptorBased, G_FILE_DESCRIPTOR_BASED, GFileDescriptorBasedIface) + _CLASS_INTERFACE(FileDescriptorBased, GFileDescriptorBased, G_FILE_DESCRIPTOR_BASED, GFileDescriptorBasedIface, , , GIOMM_API) _GTKMMPROC_WIN32_NO_WRAP public: diff --git a/gio/src/fileenumerator.hg b/gio/src/fileenumerator.hg index 6e59340e..7587977e 100644 --- a/gio/src/fileenumerator.hg +++ b/gio/src/fileenumerator.hg @@ -27,7 +27,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class File; +class GIOMM_API File; //TODO: Consider wrapping this like a std::iterator (or at least renaming it), though the asyncness probably makes that unsuitable. @@ -44,9 +44,9 @@ class File; * * @newin{2,16} */ -class FileEnumerator : public Glib::Object +class GIOMM_API FileEnumerator : public Glib::Object { - _CLASS_GOBJECT(FileEnumerator, GFileEnumerator, G_FILE_ENUMERATOR, Glib::Object, GObject) + _CLASS_GOBJECT(FileEnumerator, GFileEnumerator, G_FILE_ENUMERATOR, Glib::Object, GObject, , , GIOMM_API) public: _WRAP_METHOD(Glib::RefPtr<FileInfo> next_file(const Glib::RefPtr<Cancellable>& cancellable{?}), diff --git a/gio/src/fileicon.hg b/gio/src/fileicon.hg index dd4d3d66..3ce40b09 100644 --- a/gio/src/fileicon.hg +++ b/gio/src/fileicon.hg @@ -29,12 +29,12 @@ namespace Gio * * @newin{2,16} */ -class FileIcon +class GIOMM_API FileIcon : public Glib::Object, public Icon, public LoadableIcon { - _CLASS_GOBJECT(FileIcon, GFileIcon, G_FILE_ICON, Glib::Object, GObject) + _CLASS_GOBJECT(FileIcon, GFileIcon, G_FILE_ICON, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Icon) _IMPLEMENTS_INTERFACE(LoadableIcon) diff --git a/gio/src/fileinfo.hg b/gio/src/fileinfo.hg index d547cea2..c19ef2ad 100644 --- a/gio/src/fileinfo.hg +++ b/gio/src/fileinfo.hg @@ -32,10 +32,11 @@ _WRAP_ENUM(FileType, GFileType, NO_GTYPE) * * @newin{2,16} */ -class FileAttributeMatcher final +class GIOMM_API FileAttributeMatcher final { _CLASS_OPAQUE_REFCOUNTED(FileAttributeMatcher, GFileAttributeMatcher, - NONE, g_file_attribute_matcher_ref, g_file_attribute_matcher_unref) + NONE, g_file_attribute_matcher_ref, g_file_attribute_matcher_unref, + GIOMM_API) _IGNORE(g_file_attribute_matcher_ref, g_file_attribute_matcher_unref) public: @@ -67,9 +68,9 @@ public: * * FileAttributeMatcher allows for searching through a FileInfo for attributes. */ -class FileInfo : public Glib::Object +class GIOMM_API FileInfo : public Glib::Object { - _CLASS_GOBJECT(FileInfo, GFileInfo, G_FILE_INFO, Glib::Object, GObject) + _CLASS_GOBJECT(FileInfo, GFileInfo, G_FILE_INFO, Glib::Object, GObject, , , GIOMM_API) _IGNORE(g_file_info_get_modification_time, g_file_info_set_modification_time)dnl // deprecated public: diff --git a/gio/src/fileinputstream.hg b/gio/src/fileinputstream.hg index 0159d8ce..23d9a706 100644 --- a/gio/src/fileinputstream.hg +++ b/gio/src/fileinputstream.hg @@ -36,11 +36,11 @@ namespace Gio * * @newin{2,16} */ -class FileInputStream +class GIOMM_API FileInputStream : public Gio::InputStream, public Seekable { - _CLASS_GOBJECT(FileInputStream, GFileInputStream, G_FILE_INPUT_STREAM, Gio::InputStream, GInputStream) + _CLASS_GOBJECT(FileInputStream, GFileInputStream, G_FILE_INPUT_STREAM, Gio::InputStream, GInputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) public: diff --git a/gio/src/fileiostream.hg b/gio/src/fileiostream.hg index e6f66ce7..0a752f49 100644 --- a/gio/src/fileiostream.hg +++ b/gio/src/fileiostream.hg @@ -34,11 +34,11 @@ namespace Gio * * @newin{2,22} */ -class FileIOStream +class GIOMM_API FileIOStream : public Gio::IOStream, public Gio::Seekable { - _CLASS_GOBJECT(FileIOStream, GFileIOStream, G_FILE_IO_STREAM, Gio::IOStream, GIOStream) + _CLASS_GOBJECT(FileIOStream, GFileIOStream, G_FILE_IO_STREAM, Gio::IOStream, GIOStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) public: diff --git a/gio/src/filemonitor.hg b/gio/src/filemonitor.hg index 32643bab..fb4dafd6 100644 --- a/gio/src/filemonitor.hg +++ b/gio/src/filemonitor.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + //#include <giomm/file.h> #include <glibmm/object.h> @@ -25,7 +27,7 @@ namespace Gio { -class File; +class GIOMM_API File; /** Monitors a file or directory for changes. * To obtain a FileMonitor for a file or directory, use File::monitor_file() or @@ -36,9 +38,9 @@ class File; * * @newin{2,16} */ -class FileMonitor : public Glib::Object +class GIOMM_API FileMonitor : public Glib::Object { - _CLASS_GOBJECT(FileMonitor, GFileMonitor, G_FILE_MONITOR, Glib::Object, GObject) + _CLASS_GOBJECT(FileMonitor, GFileMonitor, G_FILE_MONITOR, Glib::Object, GObject, , , GIOMM_API) protected: public: diff --git a/gio/src/filenamecompleter.hg b/gio/src/filenamecompleter.hg index 5115c4f4..839e380f 100644 --- a/gio/src/filenamecompleter.hg +++ b/gio/src/filenamecompleter.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + //#include <giomm/file.h> #include <glibmm/object.h> @@ -24,16 +26,16 @@ _PINCLUDE(gio/gio.h) namespace Gio { -class File; +class GIOMM_API File; /** Completes partial file and directory names given a partial string by looking in the file system for clues. * Can return a list of possible completion strings for widget implementation. * * @newin{2,16} */ -class FilenameCompleter : public Glib::Object +class GIOMM_API FilenameCompleter : public Glib::Object { - _CLASS_GOBJECT(FilenameCompleter, GFilenameCompleter, G_FILENAME_COMPLETER, Glib::Object, GObject) + _CLASS_GOBJECT(FilenameCompleter, GFilenameCompleter, G_FILENAME_COMPLETER, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT _IGNORE(g_filename_completer_new) diff --git a/gio/src/fileoutputstream.hg b/gio/src/fileoutputstream.hg index f8682ab3..2e421044 100644 --- a/gio/src/fileoutputstream.hg +++ b/gio/src/fileoutputstream.hg @@ -39,11 +39,11 @@ namespace Gio * * @newin{2,16} */ -class FileOutputStream +class GIOMM_API FileOutputStream : public OutputStream, public Seekable { - _CLASS_GOBJECT(FileOutputStream, GFileOutputStream, G_FILE_OUTPUT_STREAM, Gio::OutputStream, GOutputStream) + _CLASS_GOBJECT(FileOutputStream, GFileOutputStream, G_FILE_OUTPUT_STREAM, Gio::OutputStream, GOutputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) public: diff --git a/gio/src/filterinputstream.hg b/gio/src/filterinputstream.hg index 1549bd4e..92ad7f52 100644 --- a/gio/src/filterinputstream.hg +++ b/gio/src/filterinputstream.hg @@ -31,9 +31,9 @@ namespace Gio * * @newin{2,16} */ -class FilterInputStream : public Gio::InputStream +class GIOMM_API FilterInputStream : public Gio::InputStream { - _CLASS_GOBJECT(FilterInputStream, GFilterInputStream, G_FILTER_INPUT_STREAM, Gio::InputStream, GInputStream) + _CLASS_GOBJECT(FilterInputStream, GFilterInputStream, G_FILTER_INPUT_STREAM, Gio::InputStream, GInputStream, , , GIOMM_API) protected: // This needs to be hand-coded because there is no public GFilterInputStream constructor. diff --git a/gio/src/filteroutputstream.hg b/gio/src/filteroutputstream.hg index 7a9f762b..67d59f51 100644 --- a/gio/src/filteroutputstream.hg +++ b/gio/src/filteroutputstream.hg @@ -32,9 +32,9 @@ namespace Gio * * @newin{2,16} */ -class FilterOutputStream : public Gio::OutputStream +class GIOMM_API FilterOutputStream : public Gio::OutputStream { - _CLASS_GOBJECT(FilterOutputStream, GFilterOutputStream, G_FILTER_OUTPUT_STREAM, Gio::OutputStream, GOutputStream) + _CLASS_GOBJECT(FilterOutputStream, GFilterOutputStream, G_FILTER_OUTPUT_STREAM, Gio::OutputStream, GOutputStream, , , GIOMM_API) protected: // This needs to be hand-coded because there is no public GFilterOutputStream constructor. diff --git a/gio/src/icon.hg b/gio/src/icon.hg index 23cba525..5f453d25 100644 --- a/gio/src/icon.hg +++ b/gio/src/icon.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> #include <glibmm/variant.h> @@ -43,9 +45,9 @@ namespace Gio * * @newin{2,16} */ -class Icon : public Glib::Interface +class GIOMM_API Icon : public Glib::Interface { - _CLASS_INTERFACE(Icon, GIcon, G_ICON, GIconIface) + _CLASS_INTERFACE(Icon, GIcon, G_ICON, GIconIface, , , GIOMM_API) public: // We can't just use a _WRAP_CREATE macro here since this is an abstract diff --git a/gio/src/inetaddress.hg b/gio/src/inetaddress.hg index e4c0c0ae..7a3145d8 100644 --- a/gio/src/inetaddress.hg +++ b/gio/src/inetaddress.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> #include <giomm/enums.h> @@ -37,10 +39,10 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class InetAddress +class GIOMM_API InetAddress : public Glib::Object { - _CLASS_GOBJECT(InetAddress, GInetAddress, G_INET_ADDRESS, Glib::Object, GObject) + _CLASS_GOBJECT(InetAddress, GInetAddress, G_INET_ADDRESS, Glib::Object, GObject, , , GIOMM_API) protected: _WRAP_CTOR(InetAddress(const guint8 *bytes, SocketFamily family), g_inet_address_new_from_bytes) diff --git a/gio/src/inetsocketaddress.hg b/gio/src/inetsocketaddress.hg index 4177cb56..07ddd138 100644 --- a/gio/src/inetsocketaddress.hg +++ b/gio/src/inetsocketaddress.hg @@ -35,10 +35,10 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class InetSocketAddress +class GIOMM_API InetSocketAddress : public SocketAddress { - _CLASS_GOBJECT(InetSocketAddress, GInetSocketAddress, G_INET_SOCKET_ADDRESS, SocketAddress, GSocketAddress) + _CLASS_GOBJECT(InetSocketAddress, GInetSocketAddress, G_INET_SOCKET_ADDRESS, SocketAddress, GSocketAddress, , , GIOMM_API) protected: _WRAP_CTOR(InetSocketAddress(const Glib::RefPtr<InetAddress>& address, guint16 port), g_inet_socket_address_new) diff --git a/gio/src/initable.hg b/gio/src/initable.hg index 09bca9fd..4743fa89 100644 --- a/gio/src/initable.hg +++ b/gio/src/initable.hg @@ -48,9 +48,9 @@ namespace Gio * * @newin{2,24} */ -class Initable : public Glib::Interface +class GIOMM_API Initable : public Glib::Interface { - _CLASS_INTERFACE(Initable, GInitable, G_INITABLE, GInitableIface) + _CLASS_INTERFACE(Initable, GInitable, G_INITABLE, GInitableIface, , , GIOMM_API) protected: _WRAP_METHOD(void init(const Glib::RefPtr<Cancellable>& cancellable{?}), diff --git a/gio/src/inputstream.hg b/gio/src/inputstream.hg index 16180432..b6b1a8dd 100644 --- a/gio/src/inputstream.hg +++ b/gio/src/inputstream.hg @@ -35,9 +35,9 @@ namespace Gio * * @newin{2,16} */ -class InputStream : public Glib::Object +class GIOMM_API InputStream : public Glib::Object { - _CLASS_GOBJECT(InputStream, GInputStream, G_INPUT_STREAM, Glib::Object, GObject) + _CLASS_GOBJECT(InputStream, GInputStream, G_INPUT_STREAM, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/iostream.hg b/gio/src/iostream.hg index f52fe175..b1022162 100644 --- a/gio/src/iostream.hg +++ b/gio/src/iostream.hg @@ -56,9 +56,9 @@ namespace Gio * * @newin{2,22} */ -class IOStream : public Glib::Object +class GIOMM_API IOStream : public Glib::Object { - _CLASS_GOBJECT(IOStream, GIOStream, G_IO_STREAM, Glib::Object, GObject) + _CLASS_GOBJECT(IOStream, GIOStream, G_IO_STREAM, Glib::Object, GObject, , , GIOMM_API) public: diff --git a/gio/src/listmodel.hg b/gio/src/listmodel.hg index 324a9ecc..875dece9 100644 --- a/gio/src/listmodel.hg +++ b/gio/src/listmodel.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> #include <gio/gio.h> @@ -73,9 +75,9 @@ namespace Gio * * @newin{2,50} */ -class ListModel : public Glib::Interface +class GIOMM_API ListModel : public Glib::Interface { - _CLASS_INTERFACE(ListModel, GListModel, G_LIST_MODEL, GListModelInterface) + _CLASS_INTERFACE(ListModel, GListModel, G_LIST_MODEL, GListModelInterface, , , GIOMM_API) protected: _WRAP_METHOD(void items_changed(guint position, guint removed, guint added), g_list_model_items_changed, newin "2,50") diff --git a/gio/src/liststore.hg b/gio/src/liststore.hg index 8c93c852..5585116e 100644 --- a/gio/src/liststore.hg +++ b/gio/src/liststore.hg @@ -34,11 +34,11 @@ namespace Gio * * @newin{2,50} */ -class ListStoreBase +class GIOMM_API ListStoreBase : public Glib::Object, public ListModel { - _CLASS_GOBJECT(ListStoreBase, GListStore, G_LIST_STORE, Glib::Object, GObject) + _CLASS_GOBJECT(ListStoreBase, GListStore, G_LIST_STORE, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(ListModel) _STRUCT_NOT_HIDDEN diff --git a/gio/src/loadableicon.hg b/gio/src/loadableicon.hg index a706f241..3b82a082 100644 --- a/gio/src/loadableicon.hg +++ b/gio/src/loadableicon.hg @@ -31,9 +31,9 @@ namespace Gio * * @newin{2,16} */ -class LoadableIcon : public Glib::Interface +class GIOMM_API LoadableIcon : public Glib::Interface { - _CLASS_INTERFACE(LoadableIcon, GLoadableIcon, G_LOADABLE_ICON, GLoadableIconIface) + _CLASS_INTERFACE(LoadableIcon, GLoadableIcon, G_LOADABLE_ICON, GLoadableIconIface, , , GIOMM_API) public: /** diff --git a/gio/src/memoryinputstream.hg b/gio/src/memoryinputstream.hg index 14852567..dd1bffc1 100644 --- a/gio/src/memoryinputstream.hg +++ b/gio/src/memoryinputstream.hg @@ -32,12 +32,12 @@ namespace Gio * * @newin{2,16} */ -class MemoryInputStream +class GIOMM_API MemoryInputStream : public Gio::InputStream, public Seekable, public PollableInputStream { - _CLASS_GOBJECT(MemoryInputStream, GMemoryInputStream, G_MEMORY_INPUT_STREAM, Gio::InputStream, GInputStream) + _CLASS_GOBJECT(MemoryInputStream, GMemoryInputStream, G_MEMORY_INPUT_STREAM, Gio::InputStream, GInputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) _IMPLEMENTS_INTERFACE(PollableInputStream) diff --git a/gio/src/memoryoutputstream.hg b/gio/src/memoryoutputstream.hg index 310caec7..84441b36 100644 --- a/gio/src/memoryoutputstream.hg +++ b/gio/src/memoryoutputstream.hg @@ -28,7 +28,7 @@ namespace Glib { // Forward declaration. -class Bytes; +class GLIBMM_API Bytes; } @@ -43,12 +43,12 @@ namespace Gio * * @newin{2,20} */ -class MemoryOutputStream : +class GIOMM_API MemoryOutputStream : public OutputStream, public Seekable, public PollableOutputStream { - _CLASS_GOBJECT(MemoryOutputStream, GMemoryOutputStream, G_MEMORY_OUTPUT_STREAM, Gio::OutputStream, GOutputStream) + _CLASS_GOBJECT(MemoryOutputStream, GMemoryOutputStream, G_MEMORY_OUTPUT_STREAM, Gio::OutputStream, GOutputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Seekable) _IMPLEMENTS_INTERFACE(PollableOutputStream) diff --git a/gio/src/menu.hg b/gio/src/menu.hg index 99d5ff13..725f3eb9 100644 --- a/gio/src/menu.hg +++ b/gio/src/menu.hg @@ -34,9 +34,9 @@ namespace Gio * * @newin{2,32} */ -class Menu : public Gio::MenuModel +class GIOMM_API Menu : public Gio::MenuModel { - _CLASS_GOBJECT(Menu, GMenu, G_MENU, ::Gio::MenuModel, GMenuModel) + _CLASS_GOBJECT(Menu, GMenu, G_MENU, ::Gio::MenuModel, GMenuModel, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/menuattributeiter.hg b/gio/src/menuattributeiter.hg index 558c240d..27d3f285 100644 --- a/gio/src/menuattributeiter.hg +++ b/gio/src/menuattributeiter.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -25,9 +27,9 @@ namespace Gio /** MenuAttributeIter - A menu attribute iterator. * @newin{2,32} */ -class MenuAttributeIter : public Glib::Object +class GIOMM_API MenuAttributeIter : public Glib::Object { - _CLASS_GOBJECT(MenuAttributeIter, GMenuAttributeIter, G_MENU_ATTRIBUTE_ITER, Glib::Object, GObject) + _CLASS_GOBJECT(MenuAttributeIter, GMenuAttributeIter, G_MENU_ATTRIBUTE_ITER, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/menuitem.hg b/gio/src/menuitem.hg index 02d1aedc..2ad85dac 100644 --- a/gio/src/menuitem.hg +++ b/gio/src/menuitem.hg @@ -30,9 +30,9 @@ namespace Gio * * @newin{2,32} */ -class MenuItem : public Glib::Object +class GIOMM_API MenuItem : public Glib::Object { - _CLASS_GOBJECT(MenuItem, GMenuItem, G_MENU_ITEM, Glib::Object, GObject) + _CLASS_GOBJECT(MenuItem, GMenuItem, G_MENU_ITEM, Glib::Object, GObject, , , GIOMM_API) protected: /** Creates a new MenuItem. diff --git a/gio/src/menulinkiter.hg b/gio/src/menulinkiter.hg index 8cba9dfc..10f6cada 100644 --- a/gio/src/menulinkiter.hg +++ b/gio/src/menulinkiter.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -22,14 +24,14 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class MenuModel; +class GIOMM_API MenuModel; /** MenuLinkIter - A menu link iterator. * @newin{2,32} */ -class MenuLinkIter : public Glib::Object +class GIOMM_API MenuLinkIter : public Glib::Object { - _CLASS_GOBJECT(MenuLinkIter, GMenuLinkIter, G_MENU_LINK_ITER, Glib::Object, GObject) + _CLASS_GOBJECT(MenuLinkIter, GMenuLinkIter, G_MENU_LINK_ITER, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/menumodel.hg b/gio/src/menumodel.hg index 81fb877c..0cc37ce8 100644 --- a/gio/src/menumodel.hg +++ b/gio/src/menumodel.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -43,8 +45,8 @@ enum MenuLink MENU_LINK_SUBMENU }; -class MenuAttributeIter; -class MenuLinkIter; +class GIOMM_API MenuAttributeIter; +class GIOMM_API MenuLinkIter; /** MenuModel - An abstract class representing the contents of a menu. * MenuModel represents the contents of a menu -- an ordered list of menu @@ -120,9 +122,9 @@ class MenuLinkIter; * See the C API docs for a graphical example. * @newin{2,32} */ -class MenuModel : public Glib::Object +class GIOMM_API MenuModel : public Glib::Object { - _CLASS_GOBJECT(MenuModel, GMenuModel, G_MENU_MODEL, Glib::Object, GObject) + _CLASS_GOBJECT(MenuModel, GMenuModel, G_MENU_MODEL, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/mount.hg b/gio/src/mount.hg index d4d93e0d..0b834f4a 100644 --- a/gio/src/mount.hg +++ b/gio/src/mount.hg @@ -35,9 +35,9 @@ namespace Gio { -class File; -class Drive; -class Volume; +class GIOMM_API File; +class GIOMM_API Drive; +class GIOMM_API Volume; /** The Mount interface represents user-visible mounts. * Mount is a "mounted" filesystem that you can access. Mounted is in quotes because it's not the same as a unix mount: @@ -51,9 +51,9 @@ class Volume; * * @newin{2,16} */ -class Mount : public Glib::Interface +class GIOMM_API Mount : public Glib::Interface { - _CLASS_INTERFACE(Mount, GMount, G_MOUNT, GMountIface) + _CLASS_INTERFACE(Mount, GMount, G_MOUNT, GMountIface, , , GIOMM_API) public: _WRAP_ENUM(UnmountFlags, GMountUnmountFlags, NO_GTYPE) @@ -242,6 +242,7 @@ namespace Glib { //Pre-declare this so we can use it in TypeTrait: +GIOMM_API Glib::RefPtr<Gio::Mount> wrap(GMount* object, bool take_copy); namespace Container_Helpers diff --git a/gio/src/mountoperation.hg b/gio/src/mountoperation.hg index 9a19e001..282ace83 100644 --- a/gio/src/mountoperation.hg +++ b/gio/src/mountoperation.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -39,9 +41,9 @@ _WRAP_ENUM(MountOperationResult, GMountOperationResult, NO_GTYPE) * * @newin{2,16} */ -class MountOperation : public Glib::Object +class GIOMM_API MountOperation : public Glib::Object { - _CLASS_GOBJECT(MountOperation, GMountOperation, G_MOUNT_OPERATION, Glib::Object, GObject) + _CLASS_GOBJECT(MountOperation, GMountOperation, G_MOUNT_OPERATION, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/networkaddress.hg b/gio/src/networkaddress.hg index ff5e123e..41bd61fd 100644 --- a/gio/src/networkaddress.hg +++ b/gio/src/networkaddress.hg @@ -32,10 +32,10 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class NetworkAddress : public Glib::Object, +class GIOMM_API NetworkAddress : public Glib::Object, public SocketConnectable { - _CLASS_GOBJECT(NetworkAddress, GNetworkAddress, G_NETWORK_ADDRESS, Glib::Object, GObject) + _CLASS_GOBJECT(NetworkAddress, GNetworkAddress, G_NETWORK_ADDRESS, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(SocketConnectable) _WRAP_CTOR(NetworkAddress(const std::string& hostname, guint16 port), g_network_address_new) diff --git a/gio/src/networkmonitor.hg b/gio/src/networkmonitor.hg index 7c36b2cf..f2dbf253 100644 --- a/gio/src/networkmonitor.hg +++ b/gio/src/networkmonitor.hg @@ -45,9 +45,9 @@ _WRAP_ENUM(NetworkConnectivity, GNetworkConnectivity) * @newin{2,44} */ -class NetworkMonitor : public Glib::Interface +class GIOMM_API NetworkMonitor : public Glib::Interface { - _CLASS_INTERFACE(NetworkMonitor, GNetworkMonitor, G_NETWORK_MONITOR, GNetworkMonitorInterface) + _CLASS_INTERFACE(NetworkMonitor, GNetworkMonitor, G_NETWORK_MONITOR, GNetworkMonitorInterface, , , GIOMM_API) public: _WRAP_METHOD(static Glib::RefPtr<NetworkMonitor> get_default(), g_network_monitor_get_default, newin "2,44") diff --git a/gio/src/networkservice.hg b/gio/src/networkservice.hg index 581fc788..47a07bb2 100644 --- a/gio/src/networkservice.hg +++ b/gio/src/networkservice.hg @@ -36,10 +36,10 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class NetworkService : public Glib::Object, +class GIOMM_API NetworkService : public Glib::Object, public SocketConnectable { - _CLASS_GOBJECT(NetworkService, GNetworkService, G_NETWORK_SERVICE, Glib::Object, GObject) + _CLASS_GOBJECT(NetworkService, GNetworkService, G_NETWORK_SERVICE, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(SocketConnectable) _WRAP_CTOR(NetworkService(const Glib::ustring& service, const Glib::ustring& protocol, const Glib::ustring& domain), g_network_service_new) diff --git a/gio/src/notification.hg b/gio/src/notification.hg index 2ab03845..add6fad8 100644 --- a/gio/src/notification.hg +++ b/gio/src/notification.hg @@ -25,7 +25,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class Icon; +class GIOMM_API Icon; /** User Notifications (pop up messages). @@ -54,9 +54,9 @@ class Icon; * * @newin{2,40} */ -class Notification : public Glib::Object +class GIOMM_API Notification : public Glib::Object { - _CLASS_GOBJECT(Notification, GNotification, G_NOTIFICATION, Glib::Object, GObject) + _CLASS_GOBJECT(Notification, GNotification, G_NOTIFICATION, Glib::Object, GObject, , , GIOMM_API) protected: // Can't use _WRAP_CTOR. GNotification has no properties, but it must have a title. diff --git a/gio/src/outputstream.hg b/gio/src/outputstream.hg index c87f23f9..22df6cc2 100644 --- a/gio/src/outputstream.hg +++ b/gio/src/outputstream.hg @@ -33,9 +33,9 @@ namespace Gio * * @newin{2,16} */ -class OutputStream : public Glib::Object +class GIOMM_API OutputStream : public Glib::Object { - _CLASS_GOBJECT(OutputStream, GOutputStream, G_OUTPUT_STREAM, Glib::Object, GObject) + _CLASS_GOBJECT(OutputStream, GOutputStream, G_OUTPUT_STREAM, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/permission.hg b/gio/src/permission.hg index d702b5be..b6b939da 100644 --- a/gio/src/permission.hg +++ b/gio/src/permission.hg @@ -45,9 +45,9 @@ namespace Gio * * @newin{2,42} */ -class Permission : public Glib::Object +class GIOMM_API Permission : public Glib::Object { - _CLASS_GOBJECT(Permission, GPermission, G_PERMISSION, Glib::Object, GObject) + _CLASS_GOBJECT(Permission, GPermission, G_PERMISSION, Glib::Object, GObject, , , GIOMM_API) public: diff --git a/gio/src/pollableinputstream.hg b/gio/src/pollableinputstream.hg index e834c3f1..8ed9f04b 100644 --- a/gio/src/pollableinputstream.hg +++ b/gio/src/pollableinputstream.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -27,7 +29,7 @@ typedef struct _GPollableInputStreamInterface GPollableInputStreamInterface; namespace Gio { -class Cancellable; +class GIOMM_API Cancellable; // GPollableInputStream requires GInputStream (a GObject), but Gio::PollableInputStream // shall not be derived from Gio::InputStream, like the Gio::Tls[Client|Server]Connection @@ -42,9 +44,9 @@ class Cancellable; * expects UNIX-file-descriptor-style asynchronous I/O rather than GIO-style. * @newin{2,34} */ -class PollableInputStream : public Glib::Interface +class GIOMM_API PollableInputStream : public Glib::Interface { - _CLASS_INTERFACE(PollableInputStream, GPollableInputStream, G_POLLABLE_INPUT_STREAM, GPollableInputStreamInterface) + _CLASS_INTERFACE(PollableInputStream, GPollableInputStream, G_POLLABLE_INPUT_STREAM, GPollableInputStreamInterface, , , GIOMM_API) public: _WRAP_METHOD(bool can_poll() const, g_pollable_input_stream_can_poll) diff --git a/gio/src/pollableoutputstream.hg b/gio/src/pollableoutputstream.hg index e761a872..f6500250 100644 --- a/gio/src/pollableoutputstream.hg +++ b/gio/src/pollableoutputstream.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -27,7 +29,7 @@ typedef struct _GPollableOutputStreamInterface GPollableOutputStreamInterface; namespace Gio { -class Cancellable; +class GIOMM_API Cancellable; // GPollableOutputStream requires GOutputStream (a GObject), but Gio::PollableOutputStream // shall not be derived from Gio::OutputStream, like the Gio::Tls[Client|Server]Connection @@ -43,9 +45,9 @@ class Cancellable; * GIO-style. * @newin{2,34} */ -class PollableOutputStream : public Glib::Interface +class GIOMM_API PollableOutputStream : public Glib::Interface { - _CLASS_INTERFACE(PollableOutputStream, GPollableOutputStream, G_POLLABLE_OUTPUT_STREAM, GPollableOutputStreamInterface) + _CLASS_INTERFACE(PollableOutputStream, GPollableOutputStream, G_POLLABLE_OUTPUT_STREAM, GPollableOutputStreamInterface, , , GIOMM_API) public: _WRAP_METHOD(bool can_poll() const, g_pollable_output_stream_can_poll) diff --git a/gio/src/propertyaction.hg b/gio/src/propertyaction.hg index bd7da4a2..a7e757ab 100644 --- a/gio/src/propertyaction.hg +++ b/gio/src/propertyaction.hg @@ -78,9 +78,9 @@ namespace Gio * * @newin{2,58} */ -class PropertyAction : public Glib::Object, public Action +class GIOMM_API PropertyAction : public Glib::Object, public Action { - _CLASS_GOBJECT(PropertyAction, GPropertyAction, G_PROPERTY_ACTION, Glib::Object, GObject) + _CLASS_GOBJECT(PropertyAction, GPropertyAction, G_PROPERTY_ACTION, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Action) protected: diff --git a/gio/src/proxy.hg b/gio/src/proxy.hg index 4fb94d24..eac5139b 100644 --- a/gio/src/proxy.hg +++ b/gio/src/proxy.hg @@ -43,9 +43,9 @@ namespace Gio * @ingroup NetworkIO * @newin{2,28} */ -class Proxy : public Glib::Interface +class GIOMM_API Proxy : public Glib::Interface { - _CLASS_INTERFACE(Proxy, GProxy, G_PROXY, GProxyInterface) + _CLASS_INTERFACE(Proxy, GProxy, G_PROXY, GProxyInterface, , , GIOMM_API) public: diff --git a/gio/src/proxyaddress.hg b/gio/src/proxyaddress.hg index 3221b4b9..ec2d0b37 100644 --- a/gio/src/proxyaddress.hg +++ b/gio/src/proxyaddress.hg @@ -28,10 +28,10 @@ namespace Gio * @ingroup NetworkIO * @newin{2,28} */ -class ProxyAddress +class GIOMM_API ProxyAddress : public InetSocketAddress { - _CLASS_GOBJECT(ProxyAddress, GProxyAddress, G_PROXY_ADDRESS, InetSocketAddress, GInetSocketAddress) + _CLASS_GOBJECT(ProxyAddress, GProxyAddress, G_PROXY_ADDRESS, InetSocketAddress, GInetSocketAddress, , , GIOMM_API) protected: _WRAP_CTOR(ProxyAddress(const Glib::RefPtr<InetAddress>& address, diff --git a/gio/src/proxyresolver.hg b/gio/src/proxyresolver.hg index fb2d0471..a28b950c 100644 --- a/gio/src/proxyresolver.hg +++ b/gio/src/proxyresolver.hg @@ -39,9 +39,9 @@ namespace Gio * @ingroup NetworkIO * @newin{2,28} */ -class ProxyResolver : public Glib::Interface +class GIOMM_API ProxyResolver : public Glib::Interface { - _CLASS_INTERFACE(ProxyResolver, GProxyResolver, G_PROXY_RESOLVER, GProxyResolverInterface) + _CLASS_INTERFACE(ProxyResolver, GProxyResolver, G_PROXY_RESOLVER, GProxyResolverInterface, , , GIOMM_API) public: diff --git a/gio/src/remoteactiongroup.hg b/gio/src/remoteactiongroup.hg index e4a63df4..d6e0957f 100644 --- a/gio/src/remoteactiongroup.hg +++ b/gio/src/remoteactiongroup.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/interface.h> _DEFS(giomm,gio) @@ -48,9 +50,9 @@ namespace Gio * platform data for action invocations that arrive by way of D-Bus. * @newin{2,32} */ -class RemoteActionGroup : public Glib::Interface +class GIOMM_API RemoteActionGroup : public Glib::Interface { - _CLASS_INTERFACE(RemoteActionGroup, GRemoteActionGroup, G_REMOTE_ACTION_GROUP, GRemoteActionGroupInterface) + _CLASS_INTERFACE(RemoteActionGroup, GRemoteActionGroup, G_REMOTE_ACTION_GROUP, GRemoteActionGroupInterface, , , GIOMM_API) public: _WRAP_METHOD(void activate_action(const Glib::ustring& action_name, const Glib::VariantBase& parameter, const Glib::VariantBase& platform_data), g_remote_action_group_activate_action_full) diff --git a/gio/src/resolver.hg b/gio/src/resolver.hg index 52d7fe29..7e9c5bee 100644 --- a/gio/src/resolver.hg +++ b/gio/src/resolver.hg @@ -28,7 +28,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Glib { -class VariantContainerBase; +class GLIBMM_API VariantContainerBase; } @@ -48,10 +48,10 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class Resolver +class GIOMM_API Resolver : public Glib::Object { - _CLASS_GOBJECT(Resolver, GResolver, G_RESOLVER, Glib::Object, GObject) + _CLASS_GOBJECT(Resolver, GResolver, G_RESOLVER, Glib::Object, GObject, , , GIOMM_API) protected: @@ -166,10 +166,19 @@ public: _WRAP_SIGNAL(void reload(), reload) }; +GIOMM_API std::string hostname_to_ascii (const Glib::ustring& hostname); + +GIOMM_API Glib::ustring hostname_to_unicode (const Glib::ustring& hostname); + +GIOMM_API bool hostname_is_non_ascii (const Glib::ustring& hostname); + +GIOMM_API bool hostname_is_ascii_encoded (const Glib::ustring& hostname); + +GIOMM_API bool hostname_is_ip_address (const Glib::ustring& hostname); } // namespace Gio diff --git a/gio/src/resource.hg b/gio/src/resource.hg index fda236b0..43ad6f05 100644 --- a/gio/src/resource.hg +++ b/gio/src/resource.hg @@ -32,7 +32,7 @@ namespace Gio /** Exception class for resource file handling errors. */ -_WRAP_GERROR(ResourceError, GResourceError, G_RESOURCE_ERROR, NO_GTYPE, newin "2,34") +_WRAP_GERROR(ResourceError, GResourceError, G_RESOURCE_ERROR, NO_GTYPE, newin "2,34", decl_prefix GIOMM_API) /** %Resource framework. * @@ -124,9 +124,9 @@ _WRAP_GERROR(ResourceError, GResourceError, G_RESOURCE_ERROR, NO_GTYPE, newin "2 * * @newin{2,44} */ -class Resource final +class GIOMM_API Resource final { - _CLASS_OPAQUE_REFCOUNTED(Resource, GResource, NONE, g_resource_ref, g_resource_unref) + _CLASS_OPAQUE_REFCOUNTED(Resource, GResource, NONE, g_resource_ref, g_resource_unref, GIOMM_API) _IGNORE(g_resource_ref, g_resource_unref) public: diff --git a/gio/src/seekable.hg b/gio/src/seekable.hg index f32f90dc..6af2f3f5 100644 --- a/gio/src/seekable.hg +++ b/gio/src/seekable.hg @@ -41,9 +41,9 @@ namespace Gio * * @newin{2,16} */ -class Seekable : public Glib::Interface +class GIOMM_API Seekable : public Glib::Interface { - _CLASS_INTERFACE(Seekable, GSeekable, G_SEEKABLE, GSeekableIface) + _CLASS_INTERFACE(Seekable, GSeekable, G_SEEKABLE, GSeekableIface, , , GIOMM_API) public: _WRAP_METHOD(goffset tell() const, g_seekable_tell) diff --git a/gio/src/settings.hg b/gio/src/settings.hg index 8c0a57b0..69c34719 100644 --- a/gio/src/settings.hg +++ b/gio/src/settings.hg @@ -25,7 +25,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class SettingsSchema; +class GIOMM_API SettingsSchema; /** A high-level API for application settings * @@ -34,9 +34,9 @@ class SettingsSchema; * * @newin{2,28} */ -class Settings : public Glib::Object +class GIOMM_API Settings : public Glib::Object { - _CLASS_GOBJECT(Settings, GSettings, G_SETTINGS, Glib::Object, GObject) + _CLASS_GOBJECT(Settings, GSettings, G_SETTINGS, Glib::Object, GObject, , , GIOMM_API) public: _WRAP_ENUM(BindFlags, GSettingsBindFlags) diff --git a/gio/src/settingsschema.hg b/gio/src/settingsschema.hg index 0be36712..e4fd8d5b 100644 --- a/gio/src/settingsschema.hg +++ b/gio/src/settingsschema.hg @@ -50,9 +50,9 @@ namespace Gio * * @newin{2,32} */ -class SettingsSchema final +class GIOMM_API SettingsSchema final { - _CLASS_OPAQUE_REFCOUNTED(SettingsSchema, GSettingsSchema, NONE, g_settings_schema_ref, g_settings_schema_unref) + _CLASS_OPAQUE_REFCOUNTED(SettingsSchema, GSettingsSchema, NONE, g_settings_schema_ref, g_settings_schema_unref, GIOMM_API) _IS_REFCOUNTED_BOXEDTYPE protected: diff --git a/gio/src/settingsschemakey.hg b/gio/src/settingsschemakey.hg index 4734ca05..49bcf418 100644 --- a/gio/src/settingsschemakey.hg +++ b/gio/src/settingsschemakey.hg @@ -35,9 +35,9 @@ namespace Gio * * @newin{2,32} */ -class SettingsSchemaKey final +class GIOMM_API SettingsSchemaKey final { - _CLASS_OPAQUE_REFCOUNTED(SettingsSchemaKey, GSettingsSchemaKey, NONE, g_settings_schema_key_ref, g_settings_schema_key_unref) + _CLASS_OPAQUE_REFCOUNTED(SettingsSchemaKey, GSettingsSchemaKey, NONE, g_settings_schema_key_ref, g_settings_schema_key_unref, GIOMM_API) protected: _IGNORE(g_settings_schema_key_ref, g_settings_schema_key_unref) diff --git a/gio/src/settingsschemasource.hg b/gio/src/settingsschemasource.hg index 878bc6c0..f2858545 100644 --- a/gio/src/settingsschemasource.hg +++ b/gio/src/settingsschemasource.hg @@ -37,9 +37,9 @@ namespace Gio * * @newin{2,32} */ -class SettingsSchemaSource final +class GIOMM_API SettingsSchemaSource final { - _CLASS_OPAQUE_REFCOUNTED(SettingsSchemaSource, GSettingsSchemaSource, NONE, g_settings_schema_source_ref, g_settings_schema_source_unref) + _CLASS_OPAQUE_REFCOUNTED(SettingsSchemaSource, GSettingsSchemaSource, NONE, g_settings_schema_source_ref, g_settings_schema_source_unref, GIOMM_API) protected: _IGNORE(g_settings_schema_source_ref, g_settings_schema_source_unref) diff --git a/gio/src/simpleaction.hg b/gio/src/simpleaction.hg index 58741121..6e1445c7 100644 --- a/gio/src/simpleaction.hg +++ b/gio/src/simpleaction.hg @@ -37,9 +37,9 @@ namespace Gio * * @newin{2,32} */ -class SimpleAction : public Glib::Object, public Action +class GIOMM_API SimpleAction : public Glib::Object, public Action { - _CLASS_GOBJECT(SimpleAction, GSimpleAction, G_SIMPLE_ACTION, Glib::Object, GObject) + _CLASS_GOBJECT(SimpleAction, GSimpleAction, G_SIMPLE_ACTION, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Action) _STRUCT_NOT_HIDDEN diff --git a/gio/src/simpleactiongroup.hg b/gio/src/simpleactiongroup.hg index d12e4a17..c0509d26 100644 --- a/gio/src/simpleactiongroup.hg +++ b/gio/src/simpleactiongroup.hg @@ -25,7 +25,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class Action; +class GIOMM_API Action; /** SimpleActionGroup - A simple ActionGroup implementation. * SimpleActionGroup is a hash table filled with Action objects, implementing @@ -33,11 +33,11 @@ class Action; * * @newin{2,32} */ -class SimpleActionGroup : public Glib::Object, - public ActionGroup, - public ActionMap +class GIOMM_API SimpleActionGroup : public Glib::Object, + public ActionGroup, + public ActionMap { - _CLASS_GOBJECT(SimpleActionGroup, GSimpleActionGroup, G_SIMPLE_ACTION_GROUP, Glib::Object, GObject) + _CLASS_GOBJECT(SimpleActionGroup, GSimpleActionGroup, G_SIMPLE_ACTION_GROUP, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(ActionGroup) _IMPLEMENTS_INTERFACE(ActionMap) diff --git a/gio/src/simpleiostream.hg b/gio/src/simpleiostream.hg index e510649d..af5714d9 100644 --- a/gio/src/simpleiostream.hg +++ b/gio/src/simpleiostream.hg @@ -36,9 +36,9 @@ namespace Gio * * @newin{2,46} */ -class SimpleIOStream : public Gio::IOStream +class GIOMM_API SimpleIOStream : public Gio::IOStream { - _CLASS_GOBJECT(SimpleIOStream, GSimpleIOStream, G_SIMPLE_IO_STREAM, Gio::IOStream, GIOStream) + _CLASS_GOBJECT(SimpleIOStream, GSimpleIOStream, G_SIMPLE_IO_STREAM, Gio::IOStream, GIOStream, , , GIOMM_API) protected: /** Creates a new SimpleIOStream wrapping @a input_stream and @a output_stream. diff --git a/gio/src/simplepermission.hg b/gio/src/simplepermission.hg index cce3b6bb..21dab98a 100644 --- a/gio/src/simplepermission.hg +++ b/gio/src/simplepermission.hg @@ -31,9 +31,9 @@ namespace Gio * Calling Permission::acquire() or Permission::release() will result * in errors. */ -class SimplePermission : public Permission +class GIOMM_API SimplePermission : public Permission { - _CLASS_GOBJECT(SimplePermission, GSimplePermission, G_SIMPLE_PERMISSION, Gio::Permission, GPermission) + _CLASS_GOBJECT(SimplePermission, GSimplePermission, G_SIMPLE_PERMISSION, Gio::Permission, GPermission, , , GIOMM_API) protected: diff --git a/gio/src/socket.hg b/gio/src/socket.hg index 1069eb2b..5d0f2383 100644 --- a/gio/src/socket.hg +++ b/gio/src/socket.hg @@ -28,7 +28,7 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class SocketSource; +class GIOMM_API SocketSource; /** @defgroup NetworkIO Portable Network I/O Functionality @@ -82,9 +82,9 @@ class SocketSource; * @newin{2,24} * @ingroup NetworkIO */ -class Socket : public Glib::Object, public Initable +class GIOMM_API Socket : public Glib::Object, public Initable { - _CLASS_GOBJECT(Socket, GSocket, G_SOCKET, Glib::Object, GObject) + _CLASS_GOBJECT(Socket, GSocket, G_SOCKET, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Initable) public: diff --git a/gio/src/socketaddress.hg b/gio/src/socketaddress.hg index 1be525e7..489efe23 100644 --- a/gio/src/socketaddress.hg +++ b/gio/src/socketaddress.hg @@ -32,10 +32,10 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class SocketAddress : public Glib::Object, +class GIOMM_API SocketAddress : public Glib::Object, public SocketConnectable { - _CLASS_GOBJECT(SocketAddress, GSocketAddress, G_SOCKET_ADDRESS, Glib::Object, GObject) + _CLASS_GOBJECT(SocketAddress, GSocketAddress, G_SOCKET_ADDRESS, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(SocketConnectable) public: diff --git a/gio/src/socketaddressenumerator.hg b/gio/src/socketaddressenumerator.hg index 28cf187d..050cc6af 100644 --- a/gio/src/socketaddressenumerator.hg +++ b/gio/src/socketaddressenumerator.hg @@ -24,16 +24,16 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class SocketAddress; +class GIOMM_API SocketAddress; /** Enumerator type for objects that contain or generate SocketAddresses * * @newin{2,24} * @ingroup NetworkIO */ -class SocketAddressEnumerator : public Glib::Object +class GIOMM_API SocketAddressEnumerator : public Glib::Object { - _CLASS_GOBJECT(SocketAddressEnumerator, GSocketAddressEnumerator, G_SOCKET_ADDRESS_ENUMERATOR, Glib::Object, GObject) + _CLASS_GOBJECT(SocketAddressEnumerator, GSocketAddressEnumerator, G_SOCKET_ADDRESS_ENUMERATOR, Glib::Object, GObject, , , GIOMM_API) public: _WRAP_METHOD(Glib::RefPtr<SocketAddress> next(const Glib::RefPtr<Cancellable>& cancellable{?}), g_socket_address_enumerator_next, errthrow) diff --git a/gio/src/socketclient.hg b/gio/src/socketclient.hg index e32cf6f5..755f14cc 100644 --- a/gio/src/socketclient.hg +++ b/gio/src/socketclient.hg @@ -49,9 +49,9 @@ _WRAP_ENUM(SocketClientEvent, GSocketClientEvent) * @newin{2,24} * @ingroup NetworkIO */ -class SocketClient : public Glib::Object +class GIOMM_API SocketClient : public Glib::Object { - _CLASS_GOBJECT(SocketClient, GSocketClient, G_SOCKET_CLIENT, Glib::Object, GObject) + _CLASS_GOBJECT(SocketClient, GSocketClient, G_SOCKET_CLIENT, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/socketconnectable.hg b/gio/src/socketconnectable.hg index 266a8a64..2488b8de 100644 --- a/gio/src/socketconnectable.hg +++ b/gio/src/socketconnectable.hg @@ -32,9 +32,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class SocketConnectable : public Glib::Interface +class GIOMM_API SocketConnectable : public Glib::Interface { - _CLASS_INTERFACE(SocketConnectable, GSocketConnectable, G_SOCKET_CONNECTABLE, GSocketConnectableIface) + _CLASS_INTERFACE(SocketConnectable, GSocketConnectable, G_SOCKET_CONNECTABLE, GSocketConnectableIface, , , GIOMM_API) public: _WRAP_METHOD (Glib::RefPtr<SocketAddressEnumerator> enumerate(), g_socket_connectable_enumerate) diff --git a/gio/src/socketconnection.hg b/gio/src/socketconnection.hg index 1c9a7386..64237676 100644 --- a/gio/src/socketconnection.hg +++ b/gio/src/socketconnection.hg @@ -46,9 +46,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class SocketConnection : public Gio::IOStream +class GIOMM_API SocketConnection : public Gio::IOStream { - _CLASS_GOBJECT(SocketConnection, GSocketConnection, G_SOCKET_CONNECTION, Gio::IOStream, GIOStream) + _CLASS_GOBJECT(SocketConnection, GSocketConnection, G_SOCKET_CONNECTION, Gio::IOStream, GIOStream, , , GIOMM_API) public: _WRAP_METHOD(bool connect(const Glib::RefPtr<SocketAddress>& address, const Glib::RefPtr<Cancellable>& cancellable{?}), g_socket_connection_connect, errthrow) diff --git a/gio/src/socketcontrolmessage.hg b/gio/src/socketcontrolmessage.hg index 620e8d8c..3048d8d7 100644 --- a/gio/src/socketcontrolmessage.hg +++ b/gio/src/socketcontrolmessage.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> #include <set> @@ -48,9 +50,9 @@ namespace Gio * @ingroup NetworkIO * @newin{2,28} */ -class SocketControlMessage : public Glib::Object +class GIOMM_API SocketControlMessage : public Glib::Object { - _CLASS_GOBJECT(SocketControlMessage, GSocketControlMessage, G_SOCKET_CONTROL_MESSAGE, Glib::Object, GObject) + _CLASS_GOBJECT(SocketControlMessage, GSocketControlMessage, G_SOCKET_CONTROL_MESSAGE, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/socketlistener.hg b/gio/src/socketlistener.hg index 0db6398c..ec369002 100644 --- a/gio/src/socketlistener.hg +++ b/gio/src/socketlistener.hg @@ -42,9 +42,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class SocketListener : public Glib::Object +class GIOMM_API SocketListener : public Glib::Object { - _CLASS_GOBJECT(SocketListener, GSocketListener, G_SOCKET_LISTENER, Glib::Object, GObject) + _CLASS_GOBJECT(SocketListener, GSocketListener, G_SOCKET_LISTENER, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/socketservice.hg b/gio/src/socketservice.hg index a21eb187..871af83a 100644 --- a/gio/src/socketservice.hg +++ b/gio/src/socketservice.hg @@ -54,9 +54,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class SocketService : public Gio::SocketListener +class GIOMM_API SocketService : public Gio::SocketListener { - _CLASS_GOBJECT(SocketService, GSocketService, G_SOCKET_SERVICE, Gio::SocketListener, GSocketListener) + _CLASS_GOBJECT(SocketService, GSocketService, G_SOCKET_SERVICE, Gio::SocketListener, GSocketListener, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/srvtarget.hg b/gio/src/srvtarget.hg index 727182d1..2372b937 100644 --- a/gio/src/srvtarget.hg +++ b/gio/src/srvtarget.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/value.h> _DEFS(giomm,gio) @@ -39,9 +41,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class SrvTarget +class GIOMM_API SrvTarget { - _CLASS_BOXEDTYPE(SrvTarget, GSrvTarget, NONE, g_srv_target_copy, g_srv_target_free) + _CLASS_BOXEDTYPE(SrvTarget, GSrvTarget, NONE, g_srv_target_copy, g_srv_target_free, GIOMM_API) public: SrvTarget(const Glib::ustring& hostname, guint16 port, guint16 priority, guint16 weight); diff --git a/gio/src/tcpconnection.hg b/gio/src/tcpconnection.hg index 6352c179..7a6394fd 100644 --- a/gio/src/tcpconnection.hg +++ b/gio/src/tcpconnection.hg @@ -32,9 +32,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class TcpConnection : public Gio::SocketConnection +class GIOMM_API TcpConnection : public Gio::SocketConnection { - _CLASS_GOBJECT(TcpConnection, GTcpConnection, G_TCP_CONNECTION, Gio::SocketConnection, GSocketConnection) + _CLASS_GOBJECT(TcpConnection, GTcpConnection, G_TCP_CONNECTION, Gio::SocketConnection, GSocketConnection, , , GIOMM_API) public: _WRAP_METHOD(void set_graceful_disconnect (bool graceful_disconnect), g_tcp_connection_set_graceful_disconnect) diff --git a/gio/src/tcpwrapperconnection.hg b/gio/src/tcpwrapperconnection.hg index 420d17ab..53a2c3f1 100644 --- a/gio/src/tcpwrapperconnection.hg +++ b/gio/src/tcpwrapperconnection.hg @@ -33,9 +33,9 @@ namespace Gio * @newin{2,44} * @ingroup NetworkIO */ -class TcpWrapperConnection : public Gio::TcpConnection +class GIOMM_API TcpWrapperConnection : public Gio::TcpConnection { - _CLASS_GOBJECT(TcpWrapperConnection, GTcpWrapperConnection, G_TCP_WRAPPER_CONNECTION, Gio::TcpConnection, GTcpConnection) + _CLASS_GOBJECT(TcpWrapperConnection, GTcpWrapperConnection, G_TCP_WRAPPER_CONNECTION, Gio::TcpConnection, GTcpConnection, , , GIOMM_API) public: diff --git a/gio/src/themedicon.hg b/gio/src/themedicon.hg index 1d9974bb..07466af6 100644 --- a/gio/src/themedicon.hg +++ b/gio/src/themedicon.hg @@ -36,11 +36,11 @@ namespace Gio * * @newin{2,16} */ -class ThemedIcon +class GIOMM_API ThemedIcon : public Glib::Object, public Icon { - _CLASS_GOBJECT(ThemedIcon, GThemedIcon, G_THEMED_ICON, Glib::Object, GObject) + _CLASS_GOBJECT(ThemedIcon, GThemedIcon, G_THEMED_ICON, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Icon) protected: diff --git a/gio/src/threadedsocketservice.hg b/gio/src/threadedsocketservice.hg index ef239745..ce804550 100644 --- a/gio/src/threadedsocketservice.hg +++ b/gio/src/threadedsocketservice.hg @@ -44,9 +44,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class ThreadedSocketService : public Gio::SocketService +class GIOMM_API ThreadedSocketService : public Gio::SocketService { - _CLASS_GOBJECT(ThreadedSocketService, GThreadedSocketService, G_THREADED_SOCKET_SERVICE, Gio::SocketService, GSocketService) + _CLASS_GOBJECT(ThreadedSocketService, GThreadedSocketService, G_THREADED_SOCKET_SERVICE, Gio::SocketService, GSocketService, , , GIOMM_API) protected: _WRAP_CTOR(ThreadedSocketService(int max_threads), g_threaded_socket_service_new) diff --git a/gio/src/tlscertificate.hg b/gio/src/tlscertificate.hg index 3f36566a..4b1af5ab 100644 --- a/gio/src/tlscertificate.hg +++ b/gio/src/tlscertificate.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> #include <giomm/enums.h> @@ -24,14 +26,14 @@ namespace Glib { // Forward declaration. -class ByteArray; +class GLIBMM_API ByteArray; } namespace Gio { -class SocketConnectable; +class GIOMM_API SocketConnectable; /** TlsCertificate - TLS certificate. * A certificate used for TLS authentication and encryption. This can represent @@ -40,9 +42,9 @@ class SocketConnectable; * needed when acting as a TlsServerConnection). * @newin{2,36} */ -class TlsCertificate : public Glib::Object +class GIOMM_API TlsCertificate : public Glib::Object { - _CLASS_GOBJECT(TlsCertificate, GTlsCertificate, G_TLS_CERTIFICATE, Glib::Object, GObject) + _CLASS_GOBJECT(TlsCertificate, GTlsCertificate, G_TLS_CERTIFICATE, Glib::Object, GObject, , , GIOMM_API) protected: _WRAP_CTOR(TlsCertificate(const std::string& data, gssize length), g_tls_certificate_new_from_pem, errthrow) diff --git a/gio/src/tlsclientconnection.hg b/gio/src/tlsclientconnection.hg index f5d0bce5..ca01922e 100644 --- a/gio/src/tlsclientconnection.hg +++ b/gio/src/tlsclientconnection.hg @@ -29,7 +29,7 @@ typedef struct _GTlsClientConnectionInterface GTlsClientConnectionInterface; namespace Gio { -class SocketConnectable; +class GIOMM_API SocketConnectable; // It's unusual that a subclass of Glib::Object is a base class of an interface. // For a discussion, see https://bugzilla.gnome.org/show_bug.cgi?id=776537 @@ -40,11 +40,11 @@ class SocketConnectable; * representing a client-side TLS connection. * @newin{2,36} */ -class TlsClientConnection +class GIOMM_API TlsClientConnection : public Glib::Interface, public TlsConnection { - _CLASS_INTERFACE(TlsClientConnection, GTlsClientConnection, G_TLS_CLIENT_CONNECTION, GTlsClientConnectionInterface) + _CLASS_INTERFACE(TlsClientConnection, GTlsClientConnection, G_TLS_CLIENT_CONNECTION, GTlsClientConnectionInterface, , , GIOMM_API) _CUSTOM_CTOR_CAST public: diff --git a/gio/src/tlsconnection.hg b/gio/src/tlsconnection.hg index 6ba9c73b..c70cc803 100644 --- a/gio/src/tlsconnection.hg +++ b/gio/src/tlsconnection.hg @@ -26,9 +26,9 @@ _PINCLUDE(giomm/private/iostream_p.h) namespace Gio { -class Cancellable; -class TlsDatabase; -class TlsInteraction; +class GIOMM_API Cancellable; +class GIOMM_API TlsDatabase; +class GIOMM_API TlsInteraction; /** TlsConnection - TLS connection type. * TlsConnection is the base TLS connection class type, which wraps an IOStream @@ -37,9 +37,9 @@ class TlsInteraction; * server-side TLS, respectively. * @newin{2,36} */ -class TlsConnection : public IOStream +class GIOMM_API TlsConnection : public IOStream { - _CLASS_GOBJECT(TlsConnection, GTlsConnection, G_TLS_CONNECTION, IOStream, GIOStream) + _CLASS_GOBJECT(TlsConnection, GTlsConnection, G_TLS_CONNECTION, IOStream, GIOStream, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/tlsdatabase.hg b/gio/src/tlsdatabase.hg index 571ff7dd..291d8a34 100644 --- a/gio/src/tlsdatabase.hg +++ b/gio/src/tlsdatabase.hg @@ -25,17 +25,17 @@ namespace Glib { // Forward declaration. -class ByteArray; +class GLIBMM_API ByteArray; } namespace Gio { -class Cancellable; -class SocketConnectable; -class TlsCertificate; -class TlsInteraction; +class GIOMM_API Cancellable; +class GIOMM_API SocketConnectable; +class GIOMM_API TlsCertificate; +class GIOMM_API TlsInteraction; /** TlsDatabase - TLS database type. * TlsDatabase is used to lookup certificates and other information from a @@ -46,9 +46,9 @@ class TlsInteraction; * It is used internally by TlsConnection. * @newin{2,36} */ -class TlsDatabase : public Glib::Object +class GIOMM_API TlsDatabase : public Glib::Object { - _CLASS_GOBJECT(TlsDatabase, GTlsDatabase, G_TLS_DATABASE, Glib::Object, GObject) + _CLASS_GOBJECT(TlsDatabase, GTlsDatabase, G_TLS_DATABASE, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/tlsfiledatabase.hg b/gio/src/tlsfiledatabase.hg index 01132293..232126f9 100644 --- a/gio/src/tlsfiledatabase.hg +++ b/gio/src/tlsfiledatabase.hg @@ -39,11 +39,11 @@ namespace Gio * * @newin{2,36} */ -class TlsFileDatabase +class GIOMM_API TlsFileDatabase : public Glib::Interface, public TlsDatabase { - _CLASS_INTERFACE(TlsFileDatabase, GTlsFileDatabase, G_TLS_FILE_DATABASE, GTlsFileDatabaseInterface) + _CLASS_INTERFACE(TlsFileDatabase, GTlsFileDatabase, G_TLS_FILE_DATABASE, GTlsFileDatabaseInterface, , , GIOMM_API) public: // It's not possible to use _WRAP_CTOR/_WRAP_CREATE to wrap the new diff --git a/gio/src/tlsinteraction.hg b/gio/src/tlsinteraction.hg index bcb3ec6b..daed3537 100644 --- a/gio/src/tlsinteraction.hg +++ b/gio/src/tlsinteraction.hg @@ -28,8 +28,8 @@ namespace Gio _WRAP_ENUM(TlsInteractionResult, GTlsInteractionResult) _WRAP_ENUM(TlsCertificateRequestFlags, GTlsCertificateRequestFlags) -class Cancellable; -class TlsPassword; +class GIOMM_API Cancellable; +class GIOMM_API TlsPassword; /** TlsInteraction - Interaction with the user during TLS operations. * TlsInteraction provides a mechanism for the TLS connection and database code @@ -53,9 +53,9 @@ class TlsPassword; * finish method. * @newin{2,36} */ -class TlsInteraction : public Glib::Object +class GIOMM_API TlsInteraction : public Glib::Object { - _CLASS_GOBJECT(TlsInteraction, GTlsInteraction, G_TLS_INTERACTION, Glib::Object, GObject) + _CLASS_GOBJECT(TlsInteraction, GTlsInteraction, G_TLS_INTERACTION, Glib::Object, GObject, , , GIOMM_API) protected: _CTOR_DEFAULT diff --git a/gio/src/tlspassword.hg b/gio/src/tlspassword.hg index e314af89..aec1bcba 100644 --- a/gio/src/tlspassword.hg +++ b/gio/src/tlspassword.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -27,9 +29,9 @@ namespace Gio * Holds a password used in TLS. * @newin{2,36} */ -class TlsPassword : public Glib::Object +class GIOMM_API TlsPassword : public Glib::Object { - _CLASS_GOBJECT(TlsPassword, GTlsPassword, G_TLS_PASSWORD, Glib::Object, GObject) + _CLASS_GOBJECT(TlsPassword, GTlsPassword, G_TLS_PASSWORD, Glib::Object, GObject, , , GIOMM_API) public: _WRAP_ENUM(Flags, GTlsPasswordFlags) diff --git a/gio/src/tlsserverconnection.hg b/gio/src/tlsserverconnection.hg index 67bd0a92..d4676119 100644 --- a/gio/src/tlsserverconnection.hg +++ b/gio/src/tlsserverconnection.hg @@ -37,9 +37,9 @@ namespace Gio * representing a server-side TLS connection. * @newin{2,36} */ -class TlsServerConnection : public Glib::Interface, public TlsConnection +class GIOMM_API TlsServerConnection : public Glib::Interface, public TlsConnection { - _CLASS_INTERFACE(TlsServerConnection, GTlsServerConnection, G_TLS_SERVER_CONNECTION, GTlsServerConnectionInterface) + _CLASS_INTERFACE(TlsServerConnection, GTlsServerConnection, G_TLS_SERVER_CONNECTION, GTlsServerConnectionInterface, , , GIOMM_API) _CUSTOM_CTOR_CAST public: diff --git a/gio/src/unixconnection.hg b/gio/src/unixconnection.hg index 1ddd1d24..3b157ab3 100644 --- a/gio/src/unixconnection.hg +++ b/gio/src/unixconnection.hg @@ -35,9 +35,9 @@ namespace Gio * @newin{2,24} * @ingroup NetworkIO */ -class UnixConnection : public Gio::SocketConnection +class GIOMM_API UnixConnection : public Gio::SocketConnection { - _CLASS_GOBJECT(UnixConnection, GUnixConnection, G_UNIX_CONNECTION, Gio::SocketConnection, GSocketConnection) + _CLASS_GOBJECT(UnixConnection, GUnixConnection, G_UNIX_CONNECTION, Gio::SocketConnection, GSocketConnection, , , GIOMM_API) _GTKMMPROC_WIN32_NO_WRAP public: diff --git a/gio/src/unixcredentialsmessage.hg b/gio/src/unixcredentialsmessage.hg index 9ba8239a..49eb02e1 100644 --- a/gio/src/unixcredentialsmessage.hg +++ b/gio/src/unixcredentialsmessage.hg @@ -22,7 +22,7 @@ _PINCLUDE(giomm/private/socketcontrolmessage_p.h) namespace Gio { -class Credentials; +class GIOMM_API Credentials; /** UnixCredentialsMessage - A SocketControlMessage containing credentials. * This SocketControlMessage contains a Credentials instance. It may be sent @@ -37,9 +37,9 @@ class Credentials; * @ingroup NetworkIO * @newin{2,28} */ -class UnixCredentialsMessage : public SocketControlMessage +class GIOMM_API UnixCredentialsMessage : public SocketControlMessage { - _CLASS_GOBJECT(UnixCredentialsMessage, GUnixCredentialsMessage, G_UNIX_CREDENTIALS_MESSAGE, Gio::SocketControlMessage, GSocketControlMessage) + _CLASS_GOBJECT(UnixCredentialsMessage, GUnixCredentialsMessage, G_UNIX_CREDENTIALS_MESSAGE, Gio::SocketControlMessage, GSocketControlMessage, , , GIOMM_API) _GTKMMPROC_WIN32_NO_WRAP protected: diff --git a/gio/src/unixfdlist.hg b/gio/src/unixfdlist.hg index f3885a14..6fa6bfb0 100644 --- a/gio/src/unixfdlist.hg +++ b/gio/src/unixfdlist.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> _DEFS(giomm,gio) @@ -33,9 +35,9 @@ namespace Gio * @ingroup NetworkIO * @newin{2,28} */ -class UnixFDList : public Glib::Object +class GIOMM_API UnixFDList : public Glib::Object { - _CLASS_GOBJECT(UnixFDList, GUnixFDList, G_UNIX_FD_LIST, Glib::Object, GObject) + _CLASS_GOBJECT(UnixFDList, GUnixFDList, G_UNIX_FD_LIST, Glib::Object, GObject, , , GIOMM_API) _GTKMMPROC_WIN32_NO_WRAP protected: diff --git a/gio/src/unixfdmessage.hg b/gio/src/unixfdmessage.hg index 3398a0ce..acc54ad3 100644 --- a/gio/src/unixfdmessage.hg +++ b/gio/src/unixfdmessage.hg @@ -22,7 +22,7 @@ _PINCLUDE(giomm/private/socketcontrolmessage_p.h) namespace Gio { -class UnixFDList; +class GIOMM_API UnixFDList; /** UnixFDMessage — A GSocketControlMessage containing a GUnixFDList. * This SocketControlMessage contains a UnixFDList. It may be sent using @@ -37,9 +37,9 @@ class UnixFDList; * @ingroup NetworkIO * @newin{2,28} */ -class UnixFDMessage : public SocketControlMessage +class GIOMM_API UnixFDMessage : public SocketControlMessage { - _CLASS_GOBJECT(UnixFDMessage, GUnixFDMessage, G_UNIX_FD_MESSAGE, Gio::SocketControlMessage, GSocketControlMessage) + _CLASS_GOBJECT(UnixFDMessage, GUnixFDMessage, G_UNIX_FD_MESSAGE, Gio::SocketControlMessage, GSocketControlMessage, , , GIOMM_API) _GTKMMPROC_WIN32_NO_WRAP protected: diff --git a/gio/src/unixinputstream.hg b/gio/src/unixinputstream.hg index b3521cdc..74d745c7 100644 --- a/gio/src/unixinputstream.hg +++ b/gio/src/unixinputstream.hg @@ -33,10 +33,10 @@ namespace Gio * * @newin{2,16} */ -class UnixInputStream +class GIOMM_API UnixInputStream : public Gio::InputStream, public PollableInputStream, public FileDescriptorBased { - _CLASS_GOBJECT(UnixInputStream, GUnixInputStream, G_UNIX_INPUT_STREAM, Gio::InputStream, GInputStream) + _CLASS_GOBJECT(UnixInputStream, GUnixInputStream, G_UNIX_INPUT_STREAM, Gio::InputStream, GInputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(PollableInputStream) _IMPLEMENTS_INTERFACE(FileDescriptorBased) _GTKMMPROC_WIN32_NO_WRAP diff --git a/gio/src/unixmount.hg b/gio/src/unixmount.hg index 7c8f2f63..f815de6c 100644 --- a/gio/src/unixmount.hg +++ b/gio/src/unixmount.hg @@ -32,11 +32,11 @@ namespace Gio // TODO: GUnixMount seems to be hidden (the gunixmount.h header is not installed.) // But we do need to wrap GUnixMountPoint, GUnixMountEntry and GUnixMountMonitor from gunixmounts.h - notice the s. murrayc. /* -class UnixMount +class GIOMM_API UnixMount : public Glib::Object, public Mount { - _CLASS_GOBJECT(UnixMount, GUnixMount, G_UNIX_MOUNT, Glib::Object, GObject) + _CLASS_GOBJECT(UnixMount, GUnixMount, G_UNIX_MOUNT, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Mount) _GTKMMPROC_WIN32_NO_WRAP }; diff --git a/gio/src/unixoutputstream.hg b/gio/src/unixoutputstream.hg index 5f00910b..d8cae5f0 100644 --- a/gio/src/unixoutputstream.hg +++ b/gio/src/unixoutputstream.hg @@ -32,10 +32,10 @@ namespace Gio * * @newin{2,16} */ -class UnixOutputStream +class GIOMM_API UnixOutputStream : public Gio::OutputStream, public PollableOutputStream, public FileDescriptorBased { - _CLASS_GOBJECT(UnixOutputStream, GUnixOutputStream, G_UNIX_OUTPUT_STREAM, Gio::OutputStream, GOutputStream) + _CLASS_GOBJECT(UnixOutputStream, GUnixOutputStream, G_UNIX_OUTPUT_STREAM, Gio::OutputStream, GOutputStream, , , GIOMM_API) _IMPLEMENTS_INTERFACE(PollableOutputStream) _IMPLEMENTS_INTERFACE(FileDescriptorBased) _GTKMMPROC_WIN32_NO_WRAP diff --git a/gio/src/unixsocketaddress.hg b/gio/src/unixsocketaddress.hg index cfbeac6e..ca250a8b 100644 --- a/gio/src/unixsocketaddress.hg +++ b/gio/src/unixsocketaddress.hg @@ -23,7 +23,7 @@ _PINCLUDE(giomm/private/socketaddress_p.h) namespace Glib { -class ByteArray; +class GLIBMM_API ByteArray; } namespace Gio @@ -45,10 +45,10 @@ namespace Gio * @newin{2,28} * @ingroup NetworkIO */ -class UnixSocketAddress +class GIOMM_API UnixSocketAddress : public SocketAddress { - _CLASS_GOBJECT(UnixSocketAddress, GUnixSocketAddress, G_UNIX_SOCKET_ADDRESS, SocketAddress, GSocketAddress) + _CLASS_GOBJECT(UnixSocketAddress, GUnixSocketAddress, G_UNIX_SOCKET_ADDRESS, SocketAddress, GSocketAddress, , , GIOMM_API) _GTKMMPROC_WIN32_NO_WRAP public: diff --git a/gio/src/volume.hg b/gio/src/volume.hg index 4bad6c45..5859dc29 100644 --- a/gio/src/volume.hg +++ b/gio/src/volume.hg @@ -33,8 +33,8 @@ namespace Gio // Making a forward declaration here to avoid circular dependency. // file.hg already includes volume.h. -class File; -class Drive; +class GIOMM_API File; +class GIOMM_API Drive; /** The Volume interface represents user-visible objects that can be mounted. * @@ -50,9 +50,9 @@ class Drive; * * @newin{2,16} */ -class Volume : public Glib::Interface +class GIOMM_API Volume : public Glib::Interface { - _CLASS_INTERFACE(Volume, GVolume, G_DRIVE, GVolumeIface) + _CLASS_INTERFACE(Volume, GVolume, G_DRIVE, GVolumeIface, , , GIOMM_API) public: _WRAP_METHOD(std::string get_name() const, g_volume_get_name) _WRAP_METHOD(std::string get_uuid() const, g_volume_get_uuid) @@ -188,6 +188,7 @@ namespace Glib { //Pre-declare this so we can use it in TypeTrait: +GIOMM_API Glib::RefPtr<Gio::Volume> wrap(GVolume* object, bool take_copy); namespace Container_Helpers diff --git a/gio/src/volumemonitor.hg b/gio/src/volumemonitor.hg index 2449a4db..88460d5b 100644 --- a/gio/src/volumemonitor.hg +++ b/gio/src/volumemonitor.hg @@ -33,9 +33,9 @@ namespace Gio * * @newin{2,16} */ -class VolumeMonitor : public Glib::Object +class GIOMM_API VolumeMonitor : public Glib::Object { - _CLASS_GOBJECT(VolumeMonitor, GVolumeMonitor, G_VOLUME_MONITOR, Glib::Object, GObject) + _CLASS_GOBJECT(VolumeMonitor, GVolumeMonitor, G_VOLUME_MONITOR, Glib::Object, GObject, , , GIOMM_API) protected: public: diff --git a/gio/src/zlibcompressor.hg b/gio/src/zlibcompressor.hg index 58e7cc86..a0127087 100644 --- a/gio/src/zlibcompressor.hg +++ b/gio/src/zlibcompressor.hg @@ -14,6 +14,8 @@ * License along with this library. If not, see <http://www.gnu.org/licenses/>. */ +_CONFIGINCLUDE(giommconfig.h) + #include <glibmm/object.h> #include <giomm/converter.h> @@ -25,16 +27,16 @@ namespace Gio _WRAP_ENUM(ZlibCompressorFormat, GZlibCompressorFormat) -class FileInfo; +class GIOMM_API FileInfo; /** ZlibCompressor - Zlib compressor. * ZlibCompressor is an implementation of Converter that compresses data using * zlib. * @newin{2,34} */ -class ZlibCompressor : public Glib::Object, public Converter +class GIOMM_API ZlibCompressor : public Glib::Object, public Converter { - _CLASS_GOBJECT(ZlibCompressor, GZlibCompressor, G_ZLIB_COMPRESSOR, Glib::Object, GObject) + _CLASS_GOBJECT(ZlibCompressor, GZlibCompressor, G_ZLIB_COMPRESSOR, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Converter) protected: diff --git a/gio/src/zlibdecompressor.hg b/gio/src/zlibdecompressor.hg index aab97633..7ff479a1 100644 --- a/gio/src/zlibdecompressor.hg +++ b/gio/src/zlibdecompressor.hg @@ -24,16 +24,16 @@ _PINCLUDE(glibmm/private/object_p.h) namespace Gio { -class FileInfo; +class GIOMM_API FileInfo; /** ZlibDecompressor - Zlib decompressor. * ZlibDecompressor is an implementation of Converter that decompresses data * compressed with zlib. * @newin{2,34} */ -class ZlibDecompressor : public Glib::Object, public Converter +class GIOMM_API ZlibDecompressor : public Glib::Object, public Converter { - _CLASS_GOBJECT(ZlibDecompressor, GZlibDecompressor, G_ZLIB_DECOMPRESSOR, Glib::Object, GObject) + _CLASS_GOBJECT(ZlibDecompressor, GZlibDecompressor, G_ZLIB_DECOMPRESSOR, Glib::Object, GObject, , , GIOMM_API) _IMPLEMENTS_INTERFACE(Converter) protected: |