|
From: Foster B. <fos...@us...> - 2005-04-19 17:56:34
|
Update of /cvsroot/adobe-source/sandbox/visual_refactor/adobe/source In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32418/adobe/source Modified Files: eve.cpp Added Files: extents.cpp Removed Files: rectangle.cpp Log Message: rectangle now extents; started work on the ui_core, client_assembler API cleanup Index: eve.cpp =================================================================== RCS file: /cvsroot/adobe-source/sandbox/visual_refactor/adobe/source/eve.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** eve.cpp 18 Apr 2005 21:15:44 -0000 1.1 --- eve.cpp 19 Apr 2005 17:55:54 -0000 1.2 *************** *** 47,51 **** /*************************************************************************************************/ ! struct eve_t::view_proxy_t : rectangle_slices_t { view_proxy_t(const dictionary_t& parameters, const eve_t::signal_suite_t& signals); --- 47,51 ---- /*************************************************************************************************/ ! struct eve_t::view_proxy_t : extents_slices_t { view_proxy_t(const dictionary_t& parameters, const eve_t::signal_suite_t& signals); *************** *** 201,205 **** { (*alignment_table_g)( parameters.get<adobe::name_t>(key_horizontal), ! data.slice_m[adobe::rectangle_slices_t::horizontal].alignment_m); } --- 201,205 ---- { (*alignment_table_g)( parameters.get<adobe::name_t>(key_horizontal), ! data.slice_m[adobe::extents_slices_t::horizontal].alignment_m); } *************** *** 207,211 **** { (*alignment_table_g)( parameters.get<adobe::name_t>(key_vertical), ! data.slice_m[adobe::rectangle_slices_t::vertical].alignment_m); } --- 207,211 ---- { (*alignment_table_g)( parameters.get<adobe::name_t>(key_vertical), ! data.slice_m[adobe::extents_slices_t::vertical].alignment_m); } *************** *** 215,220 **** { // Turn on all guides - then selectively suppress ! data.slice_m[adobe::rectangle_slices_t::vertical].suppress_m = false; ! data.slice_m[adobe::rectangle_slices_t::horizontal].suppress_m = false; adobe::array_t guide_mask(parameters.get<adobe::array_t>(key_guide_mask)); --- 215,220 ---- { // Turn on all guides - then selectively suppress ! data.slice_m[adobe::extents_slices_t::vertical].suppress_m = false; ! data.slice_m[adobe::extents_slices_t::horizontal].suppress_m = false; adobe::array_t guide_mask(parameters.get<adobe::array_t>(key_guide_mask)); *************** *** 223,228 **** iter != last; ++iter) { ! if (iter->get<adobe::name_t>() == key_guide_baseline) data.slice_m[adobe::rectangle_slices_t::vertical].suppress_m = true; ! if (iter->get<adobe::name_t>() == key_guide_label) data.slice_m[adobe::rectangle_slices_t::horizontal].suppress_m = true; } } --- 223,228 ---- iter != last; ++iter) { ! if (iter->get<adobe::name_t>() == key_guide_baseline) data.slice_m[adobe::extents_slices_t::vertical].suppress_m = true; ! if (iter->get<adobe::name_t>() == key_guide_label) data.slice_m[adobe::extents_slices_t::horizontal].suppress_m = true; } } *************** *** 232,237 **** if (parameters.count(key_guide_balance)) // an empty array would allow baselines out. { ! data.slice_m[adobe::rectangle_slices_t::vertical].balance_m = false; ! data.slice_m[adobe::rectangle_slices_t::horizontal].balance_m = false; adobe::array_t guide_balance(parameters.get<adobe::array_t>(key_guide_balance)); --- 232,237 ---- if (parameters.count(key_guide_balance)) // an empty array would allow baselines out. { ! data.slice_m[adobe::extents_slices_t::vertical].balance_m = false; ! data.slice_m[adobe::extents_slices_t::horizontal].balance_m = false; adobe::array_t guide_balance(parameters.get<adobe::array_t>(key_guide_balance)); *************** *** 240,245 **** iter != last; ++iter) { ! if (iter->get<adobe::name_t>() == key_guide_baseline) data.slice_m[adobe::rectangle_slices_t::vertical].balance_m = true; ! if (iter->get<adobe::name_t>() == key_guide_label) data.slice_m[adobe::rectangle_slices_t::horizontal].balance_m = true; } } --- 240,245 ---- iter != last; ++iter) { ! if (iter->get<adobe::name_t>() == key_guide_baseline) data.slice_m[adobe::extents_slices_t::vertical].balance_m = true; ! if (iter->get<adobe::name_t>() == key_guide_label) data.slice_m[adobe::extents_slices_t::horizontal].balance_m = true; } } *************** *** 262,266 **** if (iter != parameters.end() && data.placement_m == adobe::eve_t::place_row && !parameters.count(key_guide_mask)) { ! data.slice_m[adobe::rectangle_slices_t::vertical].suppress_m = false; } --- 262,266 ---- if (iter != parameters.end() && data.placement_m == adobe::eve_t::place_row && !parameters.count(key_guide_mask)) { ! data.slice_m[adobe::extents_slices_t::vertical].suppress_m = false; } *************** *** 273,277 **** { (*alignment_table_g)( iter->second.get<adobe::name_t>(), ! data.slice_m[adobe::rectangle_slices_t::horizontal].child_alignment_m); } } --- 273,277 ---- { (*alignment_table_g)( iter->second.get<adobe::name_t>(), ! data.slice_m[adobe::extents_slices_t::horizontal].child_alignment_m); } } *************** *** 283,287 **** { (*alignment_table_g)( iter->second.get<adobe::name_t>(), ! data.slice_m[adobe::rectangle_slices_t::vertical].child_alignment_m); } } --- 283,287 ---- { (*alignment_table_g)( iter->second.get<adobe::name_t>(), ! data.slice_m[adobe::extents_slices_t::vertical].child_alignment_m); } } *************** *** 427,431 **** /*************************************************************************************************/ ! class eve_t::implementation_t : private rectangle_slices_t { public: --- 427,431 ---- /*************************************************************************************************/ ! class eve_t::implementation_t : private extents_slices_t { public: *************** *** 1039,1043 **** long length = zero_length; ! guides_t::iterator guide_iter(pslice.guides_m.begin()); for (child_iterator iter (first); iter != riter.base(); ++iter) { --- 1039,1043 ---- long length = zero_length; ! guide_set_t::iterator guide_iter(pslice.guide_set_m.begin()); for (child_iterator iter (first); iter != riter.base(); ++iter) { *************** *** 1078,1084 **** long guide_length(0); ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guides_m.size()) { ! guide_length = *guide_iter - (iter_pslice.guides_m.front() + length); length += guide_length; } --- 1078,1084 ---- long guide_length(0); ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guide_set_m.size()) { ! guide_length = *guide_iter - (iter_pslice.guide_set_m.front() + length); length += guide_length; } *************** *** 1121,1125 **** length += iter_pslice.length_m; ! std::advance(guide_iter, guides_t::difference_type(iter_pslice.guides_m.size())); } } --- 1121,1125 ---- length += iter_pslice.length_m; ! std::advance(guide_iter, guide_set_t::difference_type(iter_pslice.guide_set_m.size())); } } *************** *** 1170,1176 **** long guide_length(0); ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guides_m.size()) { ! guide_length = pslice.guides_m.front() - (iter_pslice.guides_m.front() + iter_length); iter_length += guide_length; } --- 1170,1176 ---- long guide_length(0); ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guide_set_m.size()) { ! guide_length = pslice.guide_set_m.front() - (iter_pslice.guide_set_m.front() + iter_length); iter_length += guide_length; } *************** *** 1240,1244 **** */ ! pslice.guides_m.clear(); /* --- 1240,1244 ---- */ ! pslice.guide_set_m.clear(); /* *************** *** 1254,1261 **** eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guide_count += iter_pslice.guides_m.size(); } ! pslice.guides_m.resize(guide_count); } --- 1254,1261 ---- eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guide_count += iter_pslice.guide_set_m.size(); } ! pslice.guide_set_m.resize(guide_count); } *************** *** 1273,1277 **** */ ! pslice.guides_m.clear(); std::size_t guide_count(0); --- 1273,1277 ---- */ ! pslice.guide_set_m.clear(); std::size_t guide_count(0); *************** *** 1283,1290 **** eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guide_count = std::max(guide_count, iter_pslice.guides_m.size()); } ! pslice.guides_m.resize(guide_count); } --- 1283,1290 ---- eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guide_count = std::max(guide_count, iter_pslice.guide_set_m.size()); } ! pslice.guide_set_m.resize(guide_count); } *************** *** 1298,1302 **** long length(gslice.frame_m.first + gslice.margin_m.first); eve_t::calculate_data_t::spacing_t::const_iterator spacing_iter(geometry_m.spacing_m.begin()); ! guides_t::iterator guide_iter(pslice.guides_m.begin()); // accumulate the length and update the position. --- 1298,1302 ---- long length(gslice.frame_m.first + gslice.margin_m.first); eve_t::calculate_data_t::spacing_t::const_iterator spacing_iter(geometry_m.spacing_m.begin()); ! guide_set_t::iterator guide_iter(pslice.guide_set_m.begin()); // accumulate the length and update the position. *************** *** 1308,1322 **** eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guides_t::iterator first_guide (guide_iter); ! for (guides_t::iterator guide(iter_pslice.guides_m.begin()); ! guide != iter_pslice.guides_m.end(); ++guide, ++guide_iter) { *guide_iter = std::max(*guide_iter, *guide + length); } ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guides_m.size()) { ! length = *first_guide - iter_pslice.guides_m.front(); } --- 1308,1322 ---- eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guide_set_t::iterator first_guide (guide_iter); ! for (guide_set_t::iterator guide(iter_pslice.guide_set_m.begin()); ! guide != iter_pslice.guide_set_m.end(); ++guide, ++guide_iter) { *guide_iter = std::max(*guide_iter, *guide + length); } ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guide_set_m.size()) { ! length = *first_guide - iter_pslice.guide_set_m.front(); } *************** *** 1326,1336 **** // balance the guides ! if (gslice.balance_m && pslice.guides_m.size() > 2) { ! guides_t::iterator iter(adobe::max_adjacent_difference(pslice.guides_m)); ! guides_t::iterator previous(iter); ++iter; ! guides_t::value_type difference(*iter - *previous); ! guides_t::value_type accumulate(pslice.guides_m.front()); /* --- 1326,1336 ---- // balance the guides ! if (gslice.balance_m && pslice.guide_set_m.size() > 2) { ! guide_set_t::iterator iter(adobe::max_adjacent_difference(pslice.guide_set_m)); ! guide_set_t::iterator previous(iter); ++iter; ! guide_set_t::value_type difference(*iter - *previous); ! guide_set_t::value_type accumulate(pslice.guide_set_m.front()); /* *************** *** 1339,1343 **** */ ! for (guides_t::iterator first(adobe::advance_of(pslice.guides_m.begin())), last(pslice.guides_m.end()); first != last; ++first) { --- 1339,1343 ---- */ ! for (guide_set_t::iterator first(adobe::advance_of(pslice.guide_set_m.begin())), last(pslice.guide_set_m.end()); first != last; ++first) { *************** *** 1383,1388 **** if (iter_gslice.suppress_m) continue; ! guides_t::iterator guide_iter (pslice.guides_m.begin()); ! for (guides_t::iterator guide(iter_pslice.guides_m.begin()); guide != iter_pslice.guides_m.end(); ++guide, ++guide_iter) { *guide_iter = std::max(*guide_iter, *guide + iter_length); --- 1383,1388 ---- if (iter_gslice.suppress_m) continue; ! guide_set_t::iterator guide_iter (pslice.guide_set_m.begin()); ! for (guide_set_t::iterator guide(iter_pslice.guide_set_m.begin()); guide != iter_pslice.guide_set_m.end(); ++guide, ++guide_iter) { *guide_iter = std::max(*guide_iter, *guide + iter_length); *************** *** 1418,1424 **** } ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guides_m.size()) { ! iter_length += pslice.guides_m.front() - (iter_pslice.guides_m.front() + iter_length); } --- 1418,1424 ---- } ! if ((iter->geometry_m.placement_m == place_leaf) && iter_pslice.guide_set_m.size()) { ! iter_length += pslice.guide_set_m.front() - (iter_pslice.guide_set_m.front() + iter_length); } *************** *** 1442,1446 **** long length(gslice.frame_m.first + gslice.margin_m.first); eve_t::calculate_data_t::spacing_t::const_iterator spacing_iter(geometry_m.spacing_m.begin()); ! guides_t::iterator guide_iter(pslice.guides_m.begin()); // accumulate the length and update the position. --- 1442,1446 ---- long length(gslice.frame_m.first + gslice.margin_m.first); eve_t::calculate_data_t::spacing_t::const_iterator spacing_iter(geometry_m.spacing_m.begin()); ! guide_set_t::iterator guide_iter(pslice.guide_set_m.begin()); // accumulate the length and update the position. *************** *** 1452,1457 **** eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guides_t::iterator guide(iter_pslice.guides_m.begin()); ! guides_t::iterator guide_last(iter_pslice.guides_m.end()); if ((iter->geometry_m.placement_m == place_leaf) && guide != guide_last) --- 1452,1457 ---- eve_t::place_data_t::slice_t& iter_pslice(iter->place_m.slice_m[select]); ! guide_set_t::iterator guide(iter_pslice.guide_set_m.begin()); ! guide_set_t::iterator guide_last(iter_pslice.guide_set_m.end()); if ((iter->geometry_m.placement_m == place_leaf) && guide != guide_last) *************** *** 1496,1500 **** if (iter_gslice.suppress_m) continue; ! guides_t::iterator guide_iter(pslice.guides_m.begin()); // Leaf nodes are offset to the first guide. --- 1496,1500 ---- if (iter_gslice.suppress_m) continue; ! guide_set_t::iterator guide_iter(pslice.guide_set_m.begin()); // Leaf nodes are offset to the first guide. *************** *** 1512,1517 **** } ! guides_t::iterator guide(iter_pslice.guides_m.begin()); ! guides_t::iterator guide_last(iter_pslice.guides_m.end()); if (iter->geometry_m.placement_m == place_leaf && guide != guide_last) --- 1512,1517 ---- } ! guide_set_t::iterator guide(iter_pslice.guide_set_m.begin()); ! guide_set_t::iterator guide_last(iter_pslice.guide_set_m.end()); if (iter->geometry_m.placement_m == place_leaf && guide != guide_last) *************** *** 1593,1597 **** length_m = data.length_m; outset_m = data.outset_m; ! guides_m = data.guides_m; return *this; --- 1593,1597 ---- length_m = data.length_m; outset_m = data.outset_m; ! guide_set_m = data.guide_set_m; return *this; --- NEW FILE: extents.cpp --- /* Copyright 2005 Adobe Systems Incorporated Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt or a copy at http://opensource.adobe.com/licenses.html) */ /****************************************************************************************************/ #include <adobe/extents.hpp> #include <adobe/algorithm.hpp> #if defined(ADOBE_SERIALIZATION) #include <adobe/future/iomanip.hpp> #include <adobe/name.hpp> #include <iostream> #endif /****************************************************************************************************/ namespace adobe { /****************************************************************************************************/ bool operator == (const adobe::extents_t& x, const adobe::extents_t& y) { return x.slice_m[adobe::extents_slices_t::vertical] == y.slice_m[adobe::extents_slices_t::vertical] && x.slice_m[adobe::extents_slices_t::horizontal] == y.slice_m[adobe::extents_slices_t::horizontal]; } /****************************************************************************************************/ #if defined(ADOBE_SERIALIZATION) std::ostream& operator << (std::ostream& s, const adobe::extents_t& x) { static adobe::value_t key_vertical (adobe::static_name_t("vertical")); static adobe::value_t key_horizontal (adobe::static_name_t("horizontal")); s << adobe::begin_bag("[0]"); s << adobe::begin_sequence; s << adobe::format(key_vertical); s << adobe::format(x.slice_m[adobe::extents_slices_t::vertical]); s << adobe::end_sequence; s << adobe::begin_sequence; s << adobe::format(key_horizontal); s << adobe::format(x.slice_m[adobe::extents_slices_t::horizontal]); s << adobe::end_sequence; s << adobe::end_bag; return s; } #endif /****************************************************************************************************/ bool operator == (const adobe::extents_t::slice_t& x, const adobe::extents_t::slice_t& y) { return x.length_m == y.length_m && x.outset_m == y.outset_m && x.frame_m == y.frame_m && x.inset_m == y.inset_m && x.poi_m.size() == y.poi_m.size() && adobe::equal(x.poi_m, y.poi_m.begin()); } /****************************************************************************************************/ #if defined(ADOBE_SERIALIZATION) std::ostream& operator << (std::ostream& s, const adobe::extents_t::slice_t& x) { static adobe::value_t key_length (adobe::static_name_t("length")); static adobe::value_t key_outset (adobe::static_name_t("outset")); static adobe::value_t key_frame (adobe::static_name_t("frame")); static adobe::value_t key_inset (adobe::static_name_t("inset")); static adobe::value_t key_poi_set (adobe::static_name_t("poi_set")); adobe::guide_set_t::const_iterator first(x.poi_m.begin()); adobe::guide_set_t::const_iterator last(x.poi_m.end()); adobe::guide_set_t::const_iterator back(last - 1); s << adobe::begin_bag("[0]") << adobe::begin_sequence << adobe::format(key_length) << adobe::format(x.length_m) << adobe::end_sequence << adobe::begin_sequence << adobe::format(key_outset) << adobe::begin_sequence << adobe::format(x.outset_m.first) << adobe::format(x.outset_m.second) << adobe::end_sequence << adobe::end_sequence << adobe::begin_sequence << adobe::format(key_frame) << adobe::begin_sequence << adobe::format(x.frame_m.first) << adobe::format(x.frame_m.second) << adobe::end_sequence << adobe::end_sequence << adobe::begin_sequence << adobe::format(key_inset) << adobe::begin_sequence << adobe::format(x.inset_m.first) << adobe::format(x.inset_m.second) << adobe::end_sequence << adobe::end_sequence << adobe::begin_sequence << adobe::format(key_poi_set) << adobe::begin_sequence; for (; first != last; ++first) s << adobe::format(*first); s << adobe::end_sequence << adobe::end_sequence << adobe::end_bag; return s; } #endif /****************************************************************************************************/ } // namespace adobe /****************************************************************************************************/ --- rectangle.cpp DELETED --- |