From 269aa4c7df03e1e581c01866c91bcfa5524d6334 Mon Sep 17 00:00:00 2001 From: Robert Tari Date: Tue, 27 Aug 2024 14:43:59 +0200 Subject: Rewrite using C/CMake/Gtk4 and add some features/tweaks --- src/glib.h | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 src/glib.h (limited to 'src/glib.h') 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 +#include + +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 -- cgit v1.2.3