view m-toolbox/classes/+utils/@helper/class2plist.m @ 39:11e3ed9d2115 database-connection-manager

Implement databases listing in database connection dialog
author Daniele Nicolodi <nicolodi@science.unitn.it>
date Mon, 05 Dec 2011 16:20:06 +0100
parents f0afece42f48
children
line wrap: on
line source

% CLASS2PLIST create a plist from the class properties.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% DESCRIPTION: CLASS2PLIST create a plist from the class properties.
%
% CALL:        pl = class2plist('class_name');
%              pl = class2plist(obj);
%
% VERSION:     $Id: class2plist.m,v 1.2 2008/08/05 16:27:28 ingo Exp $
%
% HISTORY:     15-04-2008 M Hewitson
%                 Creation
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function pl = class2plist(varargin)

  props = properties(varargin{1});

  if isobject(varargin{1})
    obj = varargin{1};
  elseif ischar(varargin{1})
    obj = feval(varargin{1});
  else
    error('### Unknown input.');
  end

  pl = plist();

  % Loop over properties
  for jj=1:length(props)
    % get property
    p = props{jj};
    pl.append(p, obj.(p));
  end

end