From 060fe2ebc6f5ed26c445f95b3cd6c9ee5bc24e28 Mon Sep 17 00:00:00 2001 From: scratko Date: Tue, 12 Nov 2024 01:23:17 +0300 Subject: Added menu-bar and file chooser --- menu_callbacks.cpp | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 menu_callbacks.cpp (limited to 'menu_callbacks.cpp') diff --git a/menu_callbacks.cpp b/menu_callbacks.cpp new file mode 100644 index 0000000..df70514 --- /dev/null +++ b/menu_callbacks.cpp @@ -0,0 +1,34 @@ +#include +#include +#include + +#include "menu_callbacks.hpp" + +void load_file_callback(Fl_Widget *sender, void *window) +{ + auto dialog = Fl_Native_File_Chooser{}; + dialog.type(Fl_Native_File_Chooser::BROWSE_FILE); + dialog.filter("JPEG Files (*.jpg)\tPNG Files (*.png)"); +#if defined(_WIN32) + dialog.directory((string {getenv("HOMEPATH")} + "\\Desktop").c_str()); +#else + dialog.directory((std::string {getenv("HOME")} + "/Desktop").c_str()); +#endif + dialog.options(Fl_Native_File_Chooser::SAVEAS_CONFIRM | + Fl_Native_File_Chooser::NEW_FOLDER); + if (dialog.show() == 0) + printf("%s\n", dialog.filename()); +} + +void exit_callback(Fl_Widget *w, void *params) +{ + w->parent()->hide(); +} + +void solve_problem_callback(Fl_Widget *w, void *params) +{ +} + +void about_callback(Fl_Widget *w, void *params) +{ +} -- cgit v1.2.3