joeydev/include/utils.h

68 lines
2.7 KiB
C

/*
* JoeyDev
* Copyright (C) 2018-2023 Scott Duensing <scott@kangaroopunch.com>
*
* This software is provided 'as-is', without any express or implied
* warranty. In no event will the authors be held liable for any damages
* arising from the use of this software.
*
* Permission is granted to anyone to use this software for any purpose,
* including commercial applications, and to alter it and redistribute it
* freely, subject to the following restrictions:
*
* 1. The origin of this software must not be misrepresented; you must not
* claim that you wrote the original software. If you use this software
* in a product, an acknowledgment in the product documentation would be
* appreciated but is not required.
* 2. Altered source versions must be plainly marked as such, and must not be
* misrepresented as being the original software.
* 3. This notice may not be removed or altered from any source distribution.
*/
#ifndef UTILS_H
#define UTILS_H
#include "common.h"
#ifdef _WIN32
#define UTIL_PATH_CHAR '\\'
#else
#define UTIL_PATH_CHAR '/'
#endif
extern char __utilFilenameBuffer[FILENAME_MAX];
char *utilCreateString(char *format, ...);
char *utilCreateStringVArgs(char *format, va_list args);
char *utilDeobfuscateASCII(char *obfuscated);
void utilDequote(char *string);
void utilEnsureBufferSize(unsigned char **buffer, int *length, int wanted);
void utilExtractResource(char *path);
char *utilFileBasename(char *path);
gboolean utilFileCopy(char *from, char *to);
gboolean utilFileExists(char *filename);
gboolean utilFileOpen(WindowDataT *self, char *extension, char *what);
char *utilFileRemoveExtension(char *filename);
gboolean utilFileSaveAs(WindowDataT *self, char *extension, char *what);
gboolean utilFileSaveOtherAs(WindowDataT *self, char *extension, char *what, char **filename);
GtkWidget *utilFindChildWidget(GtkWidget *parent, const gchar *name);
char *utilGetToken(char *input, char *delimit, char *openblock, char *closeblock);
WindowDataT *utilGetWindowData(GtkWidget *window);
gboolean utilGetWidgetsFromMemory(char *resource, char *name[], GtkWidget **widgets[], gpointer userData);
gboolean utilMkDirP(const char *dir, const mode_t mode);
char *utilObfuscateASCII(char *clearText);
gboolean utilQuestionDialog(GtkWidget *parent, char *title, char *question);
void utilSetDirty(WindowDataT *self, gboolean dirty);
void utilUpdatePath(WindowDataT *self);
void utilWindowRegister(gpointer windowData);
int utilWindowsCloseAll(void);
int utilWindowsOpen(void);
gboolean utilWindowUnRegister(gpointer windowData);
#endif // UTILS_H