File Exchange

image thumbnail

pushprop

version 1.0 (3.93 KB) by

Get, set and restore Handle Graphics objects

3 Downloads

Updated

No License

PUSHPROP is used to temporarily save and optionally set one or more properties of one or more Handle Graphics objects.

PUSHPROP is used in passages normally coded like this:

SavedProp = get(h, 'Property');
set(h, 'Property', newval);
% ... interact some more with object h
set(h, 'Property', SavedProp);

With PUSHPROP, the above segment can be written as

SavedProp = pushprop(h, 'Property', newval);
% ... interact some more with object h
SavedProp.pop();

Although it does save you one line of code, the real advantage is that the saved and restored property name(s) only need to be entered once, making the code easier to maintain and also makes the coder's intentions more transparent.

PUSHPROP closely mimics the syntax of SET, except for the output. Also, it behaves consistently for a structure array, in that it treats the elements in the array as individual setting for each handle. SET uses the last element of the struct for all objects.

Example:
% Set the current figure's background color to red for two seconds.
SavedColor=pushprop(gcf, 'Color', [1 0 0]);
pause(2);
SavedColor.pop();

Comments and Ratings (1)

J Wagberg

About three minutes after hitting the submit key for this entry, I realized that PUSHPROP will not restore properly for some combinations of properties, e.g. the sequence 'Units' followed by 'Position' would fail to restore correctly. New version has already been posted and will show up soon.

MATLAB Release
MATLAB 7.5 (R2007b)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video