# HG changeset patch # User John W. Eaton # Date 1285924564 14400 # Node ID 8a3b7e8fcbbcac05b4c1ce60a0359750179ca5b8 # Parent a22f3a673f3334c530d0b7c173574d618e4fe331 graphics.cc, graphics.h.in, genprops.awk: use octave_map and octave_scalar_map instead of Octave_map diff -r a22f3a673f33 -r 8a3b7e8fcbbc src/ChangeLog --- a/src/ChangeLog Fri Oct 01 04:44:33 2010 -0400 +++ b/src/ChangeLog Fri Oct 01 05:16:04 2010 -0400 @@ -1,3 +1,21 @@ +2010-10-01 John W. Eaton + + * graphics.cc (base_properties::get_dynamic): Create and return + octave_scalar_map object instead of Octave_map. + (base_graphics_object::remove_all_listeners): Use octave_map + instead of Octave_map. + (base_graphics_object::values_as_string): Likewise. + + * graphics.h.in, graphics.cc (property_list::as_struct): + Return octave_scalar_map instead of Octave_map. + (base_graphics_object::values_as_struct): Likewise. + (graphics_object:values_as_struct): Likewise. + (graphics_object::set): Accept octave_map instead of Octave_map. + + * genprops.awk: Use octave_map instead of Octave_map in + generated code. Convert second arg to octave_value in call to + octave_map::assign. + 2010-10-01 John W. Eaton * mex.cc (mxArray_struct::as_octave_value): Use octave_map diff -r a22f3a673f33 -r 8a3b7e8fcbbc src/genprops.awk --- a/src/genprops.awk Fri Oct 01 04:44:33 2010 -0400 +++ b/src/genprops.awk Fri Oct 01 05:16:04 2010 -0400 @@ -466,21 +466,21 @@ if (base) { printf ("octave_value\nbase_properties::get (bool all) const\n{\n"); - printf (" Octave_map m = get_dynamic (all).map_value ();\n\n"); + printf (" octave_map m = get_dynamic (all).map_value ();\n\n"); } else { printf ("octave_value\n%s::properties::get (bool all) const\n{\n", class_name); - printf (" Octave_map m = base_properties::get (all).map_value ();\n\n"); + printf (" octave_map m = base_properties::get (all).map_value ();\n\n"); } for (i = 1; i <= idx; i++) { if (hidden[i]) - printf (" if (all)\n m.assign (\"%s\", get_%s ()%s);\n", name[i], name[i], + printf (" if (all)\n m.assign (\"%s\", octave_value (get_%s ()%s));\n", name[i], name[i], (type[i] == "handle_property" || type[i] == "graphics_handle" ? ".as_octave_value ()" : "")); else - printf (" m.assign (\"%s\", get_%s ()%s);\n", name[i], name[i], + printf (" m.assign (\"%s\", octave_value (get_%s ()%s));\n", name[i], name[i], (type[i] == "handle_property" || type[i] == "graphics_handle" ? ".as_octave_value ()" : "")); } diff -r a22f3a673f33 -r 8a3b7e8fcbbc src/graphics.cc --- a/src/graphics.cc Fri Oct 01 04:44:33 2010 -0400 +++ b/src/graphics.cc Fri Oct 01 05:16:04 2010 -0400 @@ -1548,10 +1548,10 @@ return retval; } -Octave_map +octave_scalar_map property_list::as_struct (const std::string& prefix_arg) const { - Octave_map m; + octave_scalar_map m; for (plist_map_const_iterator p = begin (); p != end (); p++) { @@ -1684,9 +1684,9 @@ // Set properties given in a struct array void -graphics_object::set (const Octave_map& m) -{ - for (Octave_map::const_iterator p = m.begin (); +graphics_object::set (const octave_map& m) +{ + for (octave_map::const_iterator p = m.begin (); p != m.end (); p++) { caseless_str name = m.key (p); @@ -2086,7 +2086,7 @@ octave_value base_properties::get_dynamic (bool all) const { - Octave_map m; + octave_scalar_map m; for (std::map::const_iterator it = all_props.begin (); it != all_props.end (); ++it) @@ -2469,9 +2469,9 @@ void base_graphics_object::remove_all_listeners (void) { - Octave_map m = get (true).map_value (); - - for (Octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) + octave_map m = get (true).map_value (); + + for (octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) { // FIXME -- there has to be a better way. I think we want to // ask whether it is OK to delete the listener for the given @@ -2498,9 +2498,9 @@ if (valid_object ()) { - Octave_map m = get ().map_value (); + octave_map m = get ().map_value (); - for (Octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) + for (octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) { if (pa->first != "children") { @@ -2523,16 +2523,17 @@ return retval; } -Octave_map +octave_scalar_map base_graphics_object::values_as_struct (void) { - Octave_map retval; + octave_scalar_map retval; if (valid_object ()) { - Octave_map m = get ().map_value (); + octave_scalar_map m = get ().scalar_map_value (); - for (Octave_map::const_iterator pa = m.begin (); pa != m.end (); pa++) + for (octave_scalar_map::const_iterator pa = m.begin (); + pa != m.end (); pa++) { if (pa->first != "children") { @@ -2541,10 +2542,9 @@ if (p.ok () && ! p.is_hidden ()) { if (p.is_radio ()) - retval.assign (p.get_name (), - octave_value (p.values_as_cell ())); + retval.assign (p.get_name (), p.values_as_cell ()); else - retval.assign (p.get_name (), octave_value (Cell ())); + retval.assign (p.get_name (), Cell ()); } } } diff -r a22f3a673f33 -r 8a3b7e8fcbbc src/graphics.h.in --- a/src/graphics.h.in Fri Oct 01 04:44:33 2010 -0400 +++ b/src/graphics.h.in Fri Oct 01 05:16:04 2010 -0400 @@ -1619,7 +1619,7 @@ return plist_map.find (go_name); } - Octave_map as_struct (const std::string& prefix_arg) const; + octave_scalar_map as_struct (const std::string& prefix_arg) const; private: plist_map_type plist_map; @@ -2116,7 +2116,7 @@ virtual std::string values_as_string (void); - virtual Octave_map values_as_struct (void); + virtual octave_scalar_map values_as_struct (void); virtual graphics_handle get_parent (void) const { @@ -2302,7 +2302,7 @@ void set (const Array& names, const Cell& values, octave_idx_type row); - void set (const Octave_map& m); + void set (const octave_map& m); void set_value_or_default (const caseless_str& name, const octave_value& val); @@ -2348,7 +2348,7 @@ std::string values_as_string (void) { return rep->values_as_string (); } - Octave_map values_as_struct (void) { return rep->values_as_struct (); } + octave_map values_as_struct (void) { return rep->values_as_struct (); } graphics_handle get_parent (void) const { return rep->get_parent (); } diff -r a22f3a673f33 -r 8a3b7e8fcbbc src/oct-map.h --- a/src/oct-map.h Fri Oct 01 04:44:33 2010 -0400 +++ b/src/oct-map.h Fri Oct 01 05:16:04 2010 -0400 @@ -220,7 +220,7 @@ // set contents of a given field. add if not exist. void setfield (const std::string& key, const octave_value& val); void assign (const std::string& k, const octave_value& val) - { setfield (k, val); } + { setfield (k, val); } // remove a given field. do nothing if not exist. void rmfield (const std::string& key);