Mercurial > octave-dspies
diff scripts/gui/private/__get_funcname__.m @ 18971:f084aab05cd9
Move checks for graphics_toolkit GUI functions to own script.
* __get_funcname__.m: New function to buid the function name
from basename and graphics_toolkit.
* uigetdir.m, uigetfile.m, uiputfile.m: Adapt to use __get_funcname__
with basename = mfilename ()
author | Andreas Weber <andy.weber.aw@gmail.com> |
---|---|
date | Thu, 31 Jul 2014 00:03:56 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/gui/private/__get_funcname__.m Thu Jul 31 00:03:56 2014 +0200 @@ -0,0 +1,42 @@ +## Copyright (C) 2014 Andreas Weber +## +## This file is part of Octave. +## +## Octave is free software; you can redistribute it and/or modify it +## under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 3 of the License, or (at +## your option) any later version. +## +## Octave is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +## General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with Octave; see the file COPYING. If not, see +## <http://www.gnu.org/licenses/>. + +## -*- texinfo -*- +## @deftypefn {Function File} {@var{funcname} =} __get_funcname__ (@var{basename}) +## Internal function. +## +## Build function name for the current graphics toolkit according to schema +## __[basename]_[graphics_toolkit]__, use fltk as default. +## @end deftypefn + +## Author: Andreas Weber + +function funcname = __get_funcname__ (basename) + + if (! __octave_link_enabled__ ()) + tk = graphics_toolkit (); + funcname = strcat ("__", basename, "_", tk, "__"); + if ((numel (tk) > 0) && (! strcmp(tk, "fltk")) && (! __is_function__ (funcname))) + warning ("%s: no implementation for toolkit '%s', using 'fltk' instead",basename, tk); + endif + funcname = strcat ("__", basename, "_fltk__"); + else + funcname = ""; + endif + +endfunction