summaryrefslogtreecommitdiff
path: root/fluid/fluid.h
diff options
context:
space:
mode:
authorMatthias Melcher <github@matthiasm.com>2023-09-26 15:01:03 +0100
committerGitHub <noreply@github.com>2023-09-26 16:01:03 +0200
commit71b8e77935bc9b0a3afc97d322037f2549165d2f (patch)
treea7e5e0cfec35b0ab30d6369d7b9ecd9eb3ddd48b /fluid/fluid.h
parent2bbdd4946561444fffba2bf047b0926a2cf9f5fe (diff)
FLUID: adds greatly enhanced Shell Commands (#774)
The user can add an arbitrary number of highly configurable shell commands through the setting panel. The commands can be saved as user preferences, inside the .fl file, or exported to an external file. Shell scripts can be limited to individual platforms, can have shortcut keys, etc. . * documentation will follow * support to call `fltk-config` will follow
Diffstat (limited to 'fluid/fluid.h')
-rw-r--r--fluid/fluid.h33
1 files changed, 24 insertions, 9 deletions
diff --git a/fluid/fluid.h b/fluid/fluid.h
index 024dc61ff..402194edd 100644
--- a/fluid/fluid.h
+++ b/fluid/fluid.h
@@ -28,6 +28,8 @@
#define MENUHEIGHT 25
#define WINHEIGHT (BROWSERHEIGHT+MENUHEIGHT)
+// ---- types
+
class Fl_Double_Window;
class Fl_Window;
class Fl_Menu_Bar;
@@ -36,6 +38,19 @@ class Fl_Choice;
class Fl_Button;
class Fl_Check_Button;
+/**
+ Indicate the storage location for tools like layout suites and shell macros.
+ \see class Fd_Shell_Command, class Fd_Layout_Suite
+ */
+typedef enum {
+ FD_STORE_INTERNAL, ///< stored inside FLUID app
+ FD_STORE_USER, ///< suite is stored in the user wide FLUID settings
+ FD_STORE_PROJECT, ///< suite is stored within the current .fl project file
+ FD_STORE_FILE ///< store suite in external file
+} Fd_Tool_Store;
+
+// ---- global variables
+
extern int force_parent;
extern Fl_Preferences fluid_prefs;
@@ -71,9 +86,6 @@ extern Fl_Check_Button *guides_button;
extern int modflag;
-extern void enter_project_dir();
-extern void leave_project_dir();
-
extern int update_file; // fluid -u
extern int compile_file; // fluid -c
extern int compile_strings; // fluic -cs
@@ -81,7 +93,11 @@ extern int batch_mode;
extern int pasteoffset;
-// ---- project settings
+extern Fl_String g_code_filename_arg;
+extern Fl_String g_header_filename_arg;
+extern Fl_String g_launch_path;
+
+// ---- project class declaration
class Fluid_Project {
public:
@@ -123,16 +139,15 @@ public:
extern Fluid_Project g_project;
-extern Fl_String g_code_filename_arg;
-extern Fl_String g_header_filename_arg;
-extern Fl_String g_launch_path;
-
-
// ---- public functions
+extern void enter_project_dir();
+extern void leave_project_dir();
extern void set_filename(const char *c);
extern void set_modflag(int mf, int mfc=-1);
+extern const Fl_String &get_tmpdir();
+
// ---- public callback functions
extern void save_cb(Fl_Widget *, void *v);