|
From: Ralph T. <ra...@us...> - 2005-04-22 19:29:29
|
Update of /cvsroot/adobe-source/sandbox/visual_refactor/adobe/test/visual/sources In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14935/visual_refactor/adobe/test/visual/sources Modified Files: client_assembler.cpp Log Message: Small partial fix for tab control children's visibility. @bind and @value need to be set for children of tab controls now. Index: client_assembler.cpp =================================================================== RCS file: /cvsroot/adobe-source/sandbox/visual_refactor/adobe/test/visual/sources/client_assembler.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** client_assembler.cpp 22 Apr 2005 07:32:52 -0000 1.5 --- client_assembler.cpp 22 Apr 2005 19:29:20 -0000 1.6 *************** *** 2341,2346 **** client_proxy_t(parameters) { - //tab_group_proxy_t* tab_parent(dynamic_cast<tab_group_proxy_t*>(parent)); // maybe our parent is a tab group? - parameters.get(key_value, show_value_m); --- 2341,2344 ---- *************** *** 2350,2375 **** set_up_control(*this, control_m, parent, token); - // ! // REVISIT (ralpht): Uh-oh. I need to think about this before I have any idea how to ! // fix it. Doing a dynamic_cast on anything is not a real solution. // - - /* - if (show_value_m.type() == typeid(adobe::empty_t)) - { - if (tab_parent && tab_parent->panel_index_m < tab_parent->items_m.size()) - show_value_m = tab_parent->items_m[tab_parent->panel_index_m++].get<adobe::dictionary_t>()[key_value]; - } - - if (!bind_m) - { - if (tab_parent) - bind_m = tab_parent->bind_m; - } - if (bind_m) token.assemblage_m.hold_connection(sheet_m->monitor_value(bind_m, boost::bind(&panel_proxy_t::monitor_value, boost::ref(*this), _1))); - */ } --- 2348,2363 ---- set_up_control(*this, control_m, parent, token); // ! // REVISIT (ralpht): It used to be the case that panels would automatically ! // figure out if they had a tab_control parent, and then bind ! // to the tab control's visibility cell in the Adam sheet. No ! // more! Now you have to tell the panel to bind against the ! // visibility cell and which value it should show for. We might ! // be able to do something clever with signals, or make the ! // client_assembler manipulate incoming parameters for children ! // of tab controls. // if (bind_m) token.assemblage_m.hold_connection(sheet_m->monitor_value(bind_m, boost::bind(&panel_proxy_t::monitor_value, boost::ref(*this), _1))); } |