diff libinterp/dldfcn/__init_fltk__.cc @ 30999:fef2957c38ec

Deprecate uimenu properties "label" and "callback" (bug #62443) Replace "label" property with "text". Replace "callback" property with "menuselectedfcn". Both old properties are hidden, but continue to exist and work as before to support old code. * NEWS.8.md: Announce deprecation. * graphics.in.h (uimenu::BEGIN_PROPERTIES): Mark "callback" property with "hgs" for hidden, get, set routines. Mark "label" property with "hgs". * graphics.in.h (uimenu::get_callback, uimenu::set_callback): New functions which simply relay calls to "get_menuselectedfcn" and "set_menuselectedfcn". * Menu.cc (Menu::actionTriggered, Menu::actionHovered): Replace "callback" with "menuselectedfcn" in gh_callback_event calls. * __init_fltk__.cc (script_cb): Rename "execute_callback" to "execute_menuselectedfcn". * __init_fltk__.cc (update_menuselectedfcn): Rename function from "update_callback". Rename "get_callback" to "get_menuselectedfcn". * __init_fltk__.cc (add_to_uimenu): Rename "update_callback" to "update_menuselectedfcn". * __init_fltk__.cc (uimenu_update): Rename "ID_CALLBACK" to "ID_MENUSELECTEDFCN". * uimenu.m: Update documentation to use "menuselectedfcn" and "text". Update demos and BIST tests to use new property names. * __add_default_menu__.m: Update code to use "menuselectedfcn" and "text".
author Rik <rik@octave.org>
date Sat, 14 May 2022 19:06:56 -0700
parents 753e48aa488c
children 670a0d878af1
line wrap: on
line diff
--- a/libinterp/dldfcn/__init_fltk__.cc	Sat May 14 18:03:35 2022 -0700
+++ b/libinterp/dldfcn/__init_fltk__.cc	Sat May 14 19:06:56 2022 -0700
@@ -297,7 +297,7 @@
 
 static void script_cb (Fl_Widget *, void *data)
 {
-  static_cast<uimenu::properties *> (data)->execute_callback ();
+  static_cast<uimenu::properties *> (data)->execute_menuselectedfcn ();
 }
 
 class fltk_uimenu
@@ -463,7 +463,7 @@
       }
   }
 
-  void update_callback (uimenu::properties& uimenup)
+  void update_menuselectedfcn (uimenu::properties& uimenup)
   {
     std::string fltk_label = uimenup.get___fltk_label__ ();
     if (! fltk_label.empty ())
@@ -472,7 +472,7 @@
           = const_cast<Fl_Menu_Item *> (m_menubar->find_item (fltk_label.c_str ()));
         if (item)
           {
-            if (! uimenup.get_callback ().isempty ())
+            if (! uimenup.get_menuselectedfcn ().isempty ())
               item->callback (static_cast<Fl_Callback *> (script_cb),
                               static_cast<void *> (&uimenup));
             else
@@ -635,7 +635,7 @@
 
     add_entry (uimenup);
     update_foregroundcolor (uimenup);
-    update_callback (uimenup);
+    update_menuselectedfcn (uimenup);
     update_accelerator (uimenup);
     update_enable (uimenup);
     update_visible (uimenup);
@@ -962,8 +962,8 @@
             m_uimenu->update_accelerator (uimenup);
             break;
 
-          case uimenu::properties::ID_CALLBACK:
-            m_uimenu->update_callback (uimenup);
+          case uimenu::properties::ID_MENUSELECTEDFCN:
+            m_uimenu->update_menuselectedfcn (uimenup);
             break;
 
           case uimenu::properties::ID_CHECKED: