Mercurial > octave-nkf
comparison src/graphics.cc @ 11074:8a3b7e8fcbbc
graphics.cc, graphics.h.in, genprops.awk: use octave_map and octave_scalar_map instead of Octave_map
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 01 Oct 2010 05:16:04 -0400 |
parents | e81914f3921f |
children | b748b86cb8c1 |
comparison
equal
deleted
inserted
replaced
11073:a22f3a673f33 | 11074:8a3b7e8fcbbc |
---|---|
1546 } | 1546 } |
1547 | 1547 |
1548 return retval; | 1548 return retval; |
1549 } | 1549 } |
1550 | 1550 |
1551 Octave_map | 1551 octave_scalar_map |
1552 property_list::as_struct (const std::string& prefix_arg) const | 1552 property_list::as_struct (const std::string& prefix_arg) const |
1553 { | 1553 { |
1554 Octave_map m; | 1554 octave_scalar_map m; |
1555 | 1555 |
1556 for (plist_map_const_iterator p = begin (); p != end (); p++) | 1556 for (plist_map_const_iterator p = begin (); p != end (); p++) |
1557 { | 1557 { |
1558 std::string prefix = prefix_arg + p->first; | 1558 std::string prefix = prefix_arg + p->first; |
1559 | 1559 |
1682 %! set (h, {"linewidth"}, {10, "x"; 5, "o"}); | 1682 %! set (h, {"linewidth"}, {10, "x"; 5, "o"}); |
1683 */ | 1683 */ |
1684 | 1684 |
1685 // Set properties given in a struct array | 1685 // Set properties given in a struct array |
1686 void | 1686 void |
1687 graphics_object::set (const Octave_map& m) | 1687 graphics_object::set (const octave_map& m) |
1688 { | 1688 { |
1689 for (Octave_map::const_iterator p = m.begin (); | 1689 for (octave_map::const_iterator p = m.begin (); |
1690 p != m.end (); p++) | 1690 p != m.end (); p++) |
1691 { | 1691 { |
1692 caseless_str name = m.key (p); | 1692 caseless_str name = m.key (p); |
1693 | 1693 |
1694 octave_value val = octave_value (m.contents (p).elem (m.numel () - 1)); | 1694 octave_value val = octave_value (m.contents (p).elem (m.numel () - 1)); |
2084 } | 2084 } |
2085 | 2085 |
2086 octave_value | 2086 octave_value |
2087 base_properties::get_dynamic (bool all) const | 2087 base_properties::get_dynamic (bool all) const |
2088 { | 2088 { |
2089 Octave_map m; | 2089 octave_scalar_map m; |
2090 | 2090 |
2091 for (std::map<caseless_str, property, cmp_caseless_str>::const_iterator it = all_props.begin (); | 2091 for (std::map<caseless_str, property, cmp_caseless_str>::const_iterator it = all_props.begin (); |
2092 it != all_props.end (); ++it) | 2092 it != all_props.end (); ++it) |
2093 if (all || ! it->second.is_hidden ()) | 2093 if (all || ! it->second.is_hidden ()) |
2094 m.assign (it->second.get_name (), it->second.get ()); | 2094 m.assign (it->second.get_name (), it->second.get ()); |
2467 } | 2467 } |
2468 | 2468 |
2469 void | 2469 void |
2470 base_graphics_object::remove_all_listeners (void) | 2470 base_graphics_object::remove_all_listeners (void) |
2471 { | 2471 { |
2472 Octave_map m = get (true).map_value (); | 2472 octave_map m = get (true).map_value (); |
2473 | 2473 |
2474 for (Octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) | 2474 for (octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) |
2475 { | 2475 { |
2476 // FIXME -- there has to be a better way. I think we want to | 2476 // FIXME -- there has to be a better way. I think we want to |
2477 // ask whether it is OK to delete the listener for the given | 2477 // ask whether it is OK to delete the listener for the given |
2478 // property. How can we know in advance that it will be OK? | 2478 // property. How can we know in advance that it will be OK? |
2479 | 2479 |
2496 { | 2496 { |
2497 std::string retval; | 2497 std::string retval; |
2498 | 2498 |
2499 if (valid_object ()) | 2499 if (valid_object ()) |
2500 { | 2500 { |
2501 Octave_map m = get ().map_value (); | 2501 octave_map m = get ().map_value (); |
2502 | 2502 |
2503 for (Octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) | 2503 for (octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) |
2504 { | 2504 { |
2505 if (pa->first != "children") | 2505 if (pa->first != "children") |
2506 { | 2506 { |
2507 property p = get_properties ().get_property (pa->first); | 2507 property p = get_properties ().get_property (pa->first); |
2508 | 2508 |
2521 error ("base_graphics_object::values_as_string: invalid graphics object"); | 2521 error ("base_graphics_object::values_as_string: invalid graphics object"); |
2522 | 2522 |
2523 return retval; | 2523 return retval; |
2524 } | 2524 } |
2525 | 2525 |
2526 Octave_map | 2526 octave_scalar_map |
2527 base_graphics_object::values_as_struct (void) | 2527 base_graphics_object::values_as_struct (void) |
2528 { | 2528 { |
2529 Octave_map retval; | 2529 octave_scalar_map retval; |
2530 | 2530 |
2531 if (valid_object ()) | 2531 if (valid_object ()) |
2532 { | 2532 { |
2533 Octave_map m = get ().map_value (); | 2533 octave_scalar_map m = get ().scalar_map_value (); |
2534 | 2534 |
2535 for (Octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) | 2535 for (octave_scalar_map::const_iterator pa = m.begin (); |
2536 pa != m.end (); pa++) | |
2536 { | 2537 { |
2537 if (pa->first != "children") | 2538 if (pa->first != "children") |
2538 { | 2539 { |
2539 property p = get_properties ().get_property (pa->first); | 2540 property p = get_properties ().get_property (pa->first); |
2540 | 2541 |
2541 if (p.ok () && ! p.is_hidden ()) | 2542 if (p.ok () && ! p.is_hidden ()) |
2542 { | 2543 { |
2543 if (p.is_radio ()) | 2544 if (p.is_radio ()) |
2544 retval.assign (p.get_name (), | 2545 retval.assign (p.get_name (), p.values_as_cell ()); |
2545 octave_value (p.values_as_cell ())); | |
2546 else | 2546 else |
2547 retval.assign (p.get_name (), octave_value (Cell ())); | 2547 retval.assign (p.get_name (), Cell ()); |
2548 } | 2548 } |
2549 } | 2549 } |
2550 } | 2550 } |
2551 } | 2551 } |
2552 else | 2552 else |