Code covered by the BSD License  

Highlights from
HandleGraphicsSetGet class

5.0

5.0 | 2 ratings Rate this file 14 Downloads (last 30 days) File Size: 74.2 KB File ID: #30713

HandleGraphicsSetGet class

by

 

10 Mar 2011 (Updated )

An extension of the handle graphics set/get class HGSETGET.

Editor's Notes:

This file was selected as MATLAB Central Pick of the Week

| Watch this File

File Information
Description

The HGSETGETPLUS class allows the user to:

* Implement a handle class with a get/set interface.
* Define validation criteria for properties that are checked when the
method SET is called.
* Display those criteria for a given property or all the properties.
* Set defaults for the properties.
* Allow a variety of input types in a consistent manner.

Example:
>> h = hgsetgetplusTemplate

h =

  hgsetgetplusTemplate handle

  Properties:
    length: 0
      unit: 'm'

  Methods, Events, Superclasses

>> set(h)
    length: 'double -and- scalar'
      unit: '[ {m} | cm ]'

>> set(h,'unit','kg')
??? Error using ==> setOneProperty
Expected kg to match one of these strings:

  m, cm

The input, 'kg', did not match any of the valid strings.

------
I would like to thank Jiro Doke for some ideas that got me started and for encouraging me to submit this.

Acknowledgements

This file inspired Hgsetgetex: Extension Of Hgsetget Class (V.2.5).

MATLAB release MATLAB 7.11 (R2010b)
Other requirements This class requires the MATLAB builtin class hgsetget. It contains a folder with unit tests. To run them, the <http://www.mathworks.com/matlabcentral/fileexchange/22846-matlab-xunit-test-framework Matlab xUnit Test Framework> is needed.
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (3)
25 Apr 2014 Martin

Nice and useful submission, have just started using it.

However, a slight bug appeared when I defined a configuration without any choices, caused by line 21 in configToString.m:
if ~isempty(config.choices)

It could be changed to:
if isfield(config,'choices') && ~isempty(config.choices)

15 Mar 2011 Eric Johnson

This is an excellent submission. My favorite feature is the enumeration of allowable property values for an object. As the reviewer above commented, this is well organized and documented.

10 Mar 2011 Matthew

Professional work. Clear documentation and examples. I also appreciate the unit test provided, which adds greatly to my confidence in this work.
Thanks.

Updates
18 Mar 2011

Added an acknowledgement

Contact us