First cut of adding a default file name

The default file name is OS specific and tries to follow the customs on
each of the OSs. It can be configured through the preferences dialog.

On MacOS we get a strange warning which appears to be a well documented
Gtk bug on MacOS.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2012-09-09 09:06:44 -07:00
parent b681294631
commit b73f29fea3
7 changed files with 168 additions and 6 deletions

19
macos.c
View file

@ -1,5 +1,6 @@
/* macos.c */
/* implements Mac OS X specific functions */
#include "dive.h"
#include "display-gtk.h"
#include <CoreFoundation/CoreFoundation.h>
#include <mach-o/dyld.h>
@ -85,6 +86,24 @@ const char *subsurface_icon_name()
return path;
}
const char *subsurface_default_filename()
{
if (default_filename) {
return default_filename;
} else {
const char *home, *user;
char *buffer;
int len;
home = g_get_home_dir();
user = g_get_user_name();
len = strlen(home) + strlen(user) + 45;
buffer = malloc(len);
snprintf(buffer, len, "%s/Library/Application Support/Subsurface/%s.xml", home, user);
return buffer;
}
}
void subsurface_ui_setup(GtkSettings *settings, GtkWidget *menubar,
GtkWidget *vbox, GtkUIManager *ui_manager)
{