function buildObj(varargin)
  
  mainfig = varargin{end};
    
  % get object name
  varh = findobj(mainfig.handle, 'Tag', 'VariableTxt');
  varname = get(varh, 'String');

  % get base workspace variables
  ws_vars = evalin('base','who');
  
  % check if this one is there or not
  if ismember(varname, ws_vars)
    j = 1;
    vname = varname;
    while ismember(vname, ws_vars)
      vname = sprintf('%s_%03d', varname, j);
      j = j + 1;
    end
  else
    vname = varname;
  end
  
  disp(sprintf('** exporting to %s', vname));
  
  % get constructor string
  h = findobj(mainfig.handle, 'Tag', 'ConstructorDisplay');
  cstr = get(h, 'String');
  
  cmd = sprintf('%s = %s;', vname, cstr);
  evalin('base', cmd);
  
  
  
end
