1
0
Fork 0
LAview.Object-Example/src/laview-core/object-plugins/AppDirs.vala

38 lines
1.3 KiB
Vala

namespace Get {
extern void library_path (string so_path, void *addr);
}
namespace LAview.ObjectExample {
class AppDirs : Object {
public static File so_path;
public static File exec_dir;
public static File common_dir;
public static string ui_dir;
public static string settings_dir;
public static void init () {
char _so_path[256];
Get.library_path ((string)_so_path, (void*)init);
so_path = File.new_for_path ((string)_so_path);
exec_dir = so_path.get_parent ();
common_dir = exec_dir.get_parent ();
common_dir = common_dir.get_parent().get_parent();
ui_dir = Path.build_path (Path.DIR_SEPARATOR_S, common_dir.get_path(),
"share/laview-object-example-"+Config.VERSION_MAJOR.to_string()+"/ui");
stdout.printf ("Vala:so_path=%s\n", so_path.get_path());
settings_dir = Path.build_path (Path.DIR_SEPARATOR_S, common_dir.get_path(), "share/glib-2.0/schemas");
string w32dhack_sdir = settings_dir+"/laview-object-example-"+Config.VERSION_MAJOR.to_string();
if (File.new_for_path(w32dhack_sdir+"/gschemas.compiled").query_exists ())
settings_dir = w32dhack_sdir;
stdout.printf ("ui_dir = %s\n", ui_dir);
stdout.printf ("settings_dir = %s\n", settings_dir);
}
public static void terminate () {
}
}
}