diff scripts/plot/uimenu.m @ 13703:22ce748da25f

Add missing UI objects: uicontextmenu, uitoolbar, uipushtool and uitoggletool. * graphics.h.in (uicontextmenu, uitoolbar, uipushtool, uitoggletool): New graphic object classes. (uicontrol::properties::cdata): Allow "single" and "uint8" data. * graphics.cc (uitoolbar): New class implementation. * gl-render.cc (opengl_renderer::draw): Skip new object types. * plot/private/__uiobject_split_args__.m: Don't use varargin. Add parent_type and use_gcf arguments. Check that number of arguments is a multiple of 2. * plot/uicontrol.m: Adapt call to __uiobject_split_args__. * plot/uipanel.m: Likewise. * plot/uimenu.m: Rewrite to use __uiobject_split_args__. * plot/uicontextmenu.m: New file. * plot/uitoolbar.m: Likewise. * plot/uipushtool.m: Likewise. * plot/uitoggletool.m: Likewise. * plot/modules.mk (plot_FCN_FILES): Add uicontextmenu.m, uitoolbar.m, uipushtool.m and uitoggletool.m.
author Michael Goffioul <michael.goffioul@gmail.com>
date Fri, 14 Oct 2011 23:19:06 +0100
parents 931d4b7dc205
children 08ae07e40d4f
line wrap: on
line diff
old mode 100644
new mode 100755
--- a/scripts/plot/uimenu.m
+++ b/scripts/plot/uimenu.m
@@ -79,18 +79,7 @@
 
 function hui = uimenu (varargin)
 
-  args = varargin;
-
-  if (ishandle (args{1}))
-    h = args{1};
-    args(1) = [];
-  else
-    h = gcf ();
-  endif
-
-  if (rem (length (args), 2))
-    error ("uimenu: expecting PROPERTY/VALUE pairs");
-  endif
+  [h, args] = __uiobject_split_args__ ("uimenu", varargin, {"figure", "uicontextmenu", "uimenu"});
 
   tmp = __go_uimenu__ (h, args{:});