diff options
author | Robert Tari <robert@tari.in> | 2024-08-27 14:43:59 +0200 |
---|---|---|
committer | Robert Tari <robert@tari.in> | 2024-08-27 14:43:59 +0200 |
commit | 269aa4c7df03e1e581c01866c91bcfa5524d6334 (patch) | |
tree | 2fcd022cbfcb82537b15ae334b563cfaf16e5dde /src/glib.h | |
parent | 4bfbd579171d9194956376c7153f378ff6eb9d4e (diff) | |
download | ayatana-settings-269aa4c7df03e1e581c01866c91bcfa5524d6334.tar.gz ayatana-settings-269aa4c7df03e1e581c01866c91bcfa5524d6334.tar.bz2 ayatana-settings-269aa4c7df03e1e581c01866c91bcfa5524d6334.zip |
Rewrite using C/CMake/Gtk4 and add some features/tweaks
Diffstat (limited to 'src/glib.h')
-rw-r--r-- | src/glib.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/glib.h b/src/glib.h new file mode 100644 index 0000000..be9cb06 --- /dev/null +++ b/src/glib.h @@ -0,0 +1,61 @@ +#ifndef __GLIB__ +#define __GLIB__ + +#include <glib.h> +#include <gio/gio.h> + +G_BEGIN_DECLS + +static inline void file_Copy (gchar *sPathIn, gchar *sPathOut) +{ + GError *pError = NULL; + GFile *pFileIn = g_file_new_for_path (sPathIn); + GFile *pFileOut = g_file_new_for_path (sPathOut); + g_file_copy (pFileIn, pFileOut, G_FILE_COPY_NONE, NULL, NULL, NULL, &pError); + g_object_unref (pFileIn); + g_object_unref (pFileOut); + + if (pError) + { + g_error ("Panic: Failed copying file from %s to %s: %s", sPathIn, sPathOut, pError->message); + g_clear_error (&pError); + + return; + } +} + +static inline gboolean string_Equal (gchar *sText, gchar *sText2) +{ + gint nEquality = g_strcmp0 (sText, sText2); + + return (nEquality == 0); +} + +static inline guint string_Length (gchar *sText) +{ + glong nLength = g_utf8_strlen (sText, -1); + + return nLength; +} + +static inline gchar* string_Replace (gchar *sText, gchar *sFind, gchar *sReplace) +{ + GString *sString = g_string_new (sText); + g_string_replace (sString, sFind, sReplace, 0); + gchar *sNewText = g_string_free_and_steal (sString); + + return sNewText; +} + +static inline gchar* string_Remove (gchar *sText, gchar *sRemove) +{ + gchar *sNewText = string_Replace (sText, sRemove, ""); + + return sNewText; +} + +#define string_ToInt atoi + +G_END_DECLS + +#endif |