Mercurial > octave
diff libinterp/corefcn/octave-link.h @ 25921:9c47eedc44e2
msgbox.m: use graphics objects to build dialog (bug #42490)
* msgbox.m (__msgbox__): New subfunction to build a standard dialog using
graphics objects and import standard icons using the GUI's resource_manger.
Implement Matlab compatible "opt" argument for changing the "windowstyle"
property of the figure and the "interpreter" property of the displayed text.
Add BIST for input checks. Update documentation.
* errordlg.m, helpdlg.m, warndlg.m: Adapt argument checks. Update documentation.
* BaseControl.cc: Prevent BaseControl objects from using invalid pointers to
figure objects.
* libgui/src/icons/dialog-error.png/svg, dialog-information.png/svg,
dialog-warning.png/svg:
New fallback Tango icons (png and original svg) for message dialogs.
* libgui/src/icons/module.mk: Add new icons to octave_gui_ICONS.
* libgui/src/resource.qrc: Add new icons.
* libgui/src/icons/icons_license: Add new icons to the list.
* octave-link.h (octave_link::message_dialog, octave_link::do_message_dialog):
Remove methods.
(octave_link::get_named_icon, octave_link::do_get_named_icon): New methods
to retrieve an icon pixels by name.
* octave-link.cc (F__octave_link_message_dialog__): Remove interpreter function.
* octave-link.cc (F__octave_link_named_icon__): New interpreter function.
* octave-link.h/cc (octave_qt_link::do_message_dialog) Remove method.
(octave_qt_link::do_get_named_icon) Implements octave_link::do_get_named_icon.
Make use of resource_manager::icon to get an icon by name and eventually
fallback to Tango version.
author | Pantxo Diribarne <pantxo.diribarne@gmail.com> |
---|---|
date | Mon, 08 Oct 2018 09:16:29 +0200 |
parents | d3c6de326bae |
children | 700b3f415ebe |
line wrap: on
line diff
--- a/libinterp/corefcn/octave-link.h Sat Oct 06 11:10:36 2018 +0200 +++ b/libinterp/corefcn/octave-link.h Mon Oct 08 09:16:29 2018 +0200 @@ -33,6 +33,7 @@ #include "oct-mutex.h" #include "octave.h" #include "event-queue.h" +#include "uint8NDArray.h" class octave_value; class string_vector; @@ -148,13 +149,6 @@ return enabled () ? instance->do_prompt_new_edit_file (file) : false; } - static int - message_dialog (const std::string& dlg, const std::string& msg, - const std::string& title) - { - return enabled () ? instance->do_message_dialog (dlg, msg, title) : 0; - } - static std::string question_dialog (const std::string& msg, const std::string& title, const std::string& btn1, const std::string& btn2, @@ -241,6 +235,13 @@ if (enabled ()) instance->do_execute_command_in_terminal (command); } + + static uint8NDArray + get_named_icon (const std::string& icon_name) + { + return (enabled () ? + instance->do_get_named_icon (icon_name) : uint8NDArray ()); + } static void set_workspace (void); @@ -491,11 +492,6 @@ virtual bool do_edit_file (const std::string& file) = 0; virtual bool do_prompt_new_edit_file (const std::string& file) = 0; - - virtual int - do_message_dialog (const std::string& dlg, const std::string& msg, - const std::string& title) = 0; - virtual std::string do_question_dialog (const std::string& msg, const std::string& title, const std::string& btn1, const std::string& btn2, @@ -536,6 +532,9 @@ virtual void do_execute_command_in_terminal (const std::string& command) = 0; + virtual uint8NDArray + do_get_named_icon (const std::string& icon_name) = 0; + virtual void do_set_workspace (bool top_level, bool debug, const octave::symbol_scope& scope,