Salut

je cherche à encapsuler une fonction (waitbar en l’occurrence) afin d'en modifier le comportement sur certaine conditions
dans cette fonction, je cherche parfois a appeler la fonction encapsulée avec les mêmes arguments d'entrée et de sortie que la fonction "encapsulatrice"

comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
function varargout = mywaitbar(varargin)
varargout = waitbar(varargin)
bien sur ca ne marche pas

pour le moment j'ai écris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function varargout = mywaitbar(varargin)
switch nargin
        case 0
            h = waitbar();
        case 1
            h = waitbar(varargin{1});
        case 2
            h = waitbar(varargin{1},varargin{2});
        case 3
            h = waitbar(varargin{1},varargin{2},varargin{3});
        otherwise
            h = waitbar(varargin{1},varargin{2},varargin{3},varargin{4});
    end
 
    if nargout
       varargout{1} = h;
    end
ce qui marche jusqu'à 4 arguments ...
ca me convient, mais si il y avais moyen d'écrire cela de manière plus propre et plus générique ..

merci
Fabien