comparison src/graphics.cc @ 6733:d6e615183a80

[project @ 2007-06-15 18:21:22 by jwe]
author jwe
date Fri, 15 Jun 2007 18:21:22 +0000
parents 4ba39e63b005
children 813172f035de
comparison
equal deleted inserted replaced
6732:4ba39e63b005 6733:d6e615183a80
2144 { 2144 {
2145 ColumnVector hcv (args(0).vector_value ()); 2145 ColumnVector hcv (args(0).vector_value ());
2146 2146
2147 if (! error_state) 2147 if (! error_state)
2148 { 2148 {
2149 bool request_drawnow = false;
2150
2149 for (octave_idx_type n = 0; n < hcv.length (); n++) 2151 for (octave_idx_type n = 0; n < hcv.length (); n++)
2150 { 2152 {
2151 graphics_object obj = gh_manager::get_object (hcv(n)); 2153 graphics_object obj = gh_manager::get_object (hcv(n));
2152 2154
2153 if (obj) 2155 if (obj)
2154 { 2156 {
2155 obj.set (args.splice (0, 1)); 2157 obj.set (args.splice (0, 1));
2156 2158
2157 feval ("__request_drawnow__"); 2159 request_drawnow = true;
2158 } 2160 }
2159 else 2161 else
2160 error ("set: invalid handle (= %g)", hcv(n)); 2162 {
2163 error ("set: invalid handle (= %g)", hcv(n));
2164 break;
2165 }
2161 } 2166 }
2167
2168 if (! error_state && request_drawnow)
2169 feval ("__request_drawnow__");
2162 } 2170 }
2163 else 2171 else
2164 error ("set: expecting graphics handle as first argument"); 2172 error ("set: expecting graphics handle as first argument");
2165 } 2173 }
2166 else 2174 else
2187 { 2195 {
2188 ColumnVector hcv (args(0).vector_value ()); 2196 ColumnVector hcv (args(0).vector_value ());
2189 2197
2190 if (! error_state) 2198 if (! error_state)
2191 { 2199 {
2192 for (octave_idx_type n = 0; n < hcv.length (); n++) 2200 octave_idx_type len = hcv.length ();
2201
2202 vlist.resize (len);
2203
2204 for (octave_idx_type n = 0; n < len; n++)
2193 { 2205 {
2194 graphics_object obj = gh_manager::get_object (hcv(n)); 2206 graphics_object obj = gh_manager::get_object (hcv(n));
2195 2207
2196 if (obj) 2208 if (obj)
2197 { 2209 {
2202 property_name property = args(1).string_value (); 2214 property_name property = args(1).string_value ();
2203 2215
2204 if (! error_state) 2216 if (! error_state)
2205 vlist(n) = obj.get (property); 2217 vlist(n) = obj.get (property);
2206 else 2218 else
2207 error ("get: expecting property name as second argument"); 2219 {
2220 error ("get: expecting property name as second argument");
2221 break;
2222 }
2208 } 2223 }
2209 } 2224 }
2210 else 2225 else
2211 error ("get: invalid handle (= %g)", hcv(n)); 2226 {
2227 error ("get: invalid handle (= %g)", hcv(n));
2228 break;
2229 }
2212 } 2230 }
2213 } 2231 }
2214 else 2232 else
2215 error ("get: expecting graphics handle as first argument"); 2233 error ("get: expecting graphics handle as first argument");
2216 } 2234 }
2217 else 2235 else
2218 print_usage (); 2236 print_usage ();
2219 2237
2220 if (vlist.length () > 1) 2238 if (! error_state)
2221 { 2239 {
2222 Cell c(vlist); 2240 octave_idx_type len = vlist.length ();
2223 retval = c; 2241
2224 } 2242 if (len > 1)
2225 else 2243 retval = Cell (vlist);
2226 retval = vlist(0); 2244 else if (len == 1)
2245 retval = vlist(0);
2246 }
2227 2247
2228 return retval; 2248 return retval;
2229 } 2249 }
2230 2250
2231 static octave_value 2251 static octave_value