Mercurial > hg > octave-nkf
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 |