20 #ifndef _MFORMS_APP_H_
21 #define _MFORMS_APP_H_
26 #include "base/geometry.h"
27 #include "base/drawing.h"
45 #ifndef DOXYGEN_SHOULD_SKIP_THIS
49 void (*set_status_text)(App *app,
const std::string &title);
51 std::string (*get_resource_path)(App *app,
const std::string &file);
52 std::string (*get_executable_path)(App *app,
const std::string &file);
53 base::Rect (*get_application_bounds)(App *app);
55 int (*enter_event_loop)(App *app,
float max_wait_time);
56 void (*exit_event_loop)(App *app,
int result);
58 void (*begin_thread_loop)();
59 void (*end_thread_loop)();
63 float (*backing_scale_factor)(App *app);
78 App(DockingPointDelegate *delegate,
bool delete_on_destroy);
83 static void instantiate(DockingPointDelegate *delegate,
bool delete_on_destroy);
93 void set_status_text(
const std::string &text);
98 std::string get_resource_path(
const std::string &file);
100 std::string get_executable_path(
const std::string &file);
105 base::Rect get_application_bounds();
110 int enter_event_loop(
float timeout = 0.0);
113 void exit_event_loop(
int retcode);
116 static void begin_thread_loop();
117 static void end_thread_loop();
122 float backing_scale_factor();
123 #ifndef DOXYGEN_SHOULD_SKIP_THIS
125 void set_user_data_folder_path(
const std::string &path) { _user_data_folder = path; }