Changeset 8345
- Timestamp:
- 27/01/12 14:06:14 (4 months ago)
- Location:
- branches/e4fix/EDIT4
- Files:
-
- 11 modified
-
ED4_ProteinViewer.cxx (modified) (2 diffs)
-
ED4_base.cxx (modified) (7 diffs)
-
ED4_cursor.cxx (modified) (2 diffs)
-
ED4_manager.cxx (modified) (8 diffs)
-
ED4_members.cxx (modified) (4 diffs)
-
ED4_nds.cxx (modified) (1 diff)
-
ED4_no_class.cxx (modified) (1 diff)
-
ED4_root.cxx (modified) (3 diffs)
-
ED4_terminal.cxx (modified) (4 diffs)
-
EDB_root_bact.cxx (modified) (1 diff)
-
ed4_class.hxx (modified) (14 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/e4fix/EDIT4/ED4_ProteinViewer.cxx
r8340 r8345 835 835 ED4_counter++; 836 836 837 new_SeqManager->re size_requested_by_child();837 new_SeqManager->request_resize(); 838 838 } 839 839 } … … 905 905 terminal; 906 906 terminal = terminal->get_next_terminal()) 907 { 908 if (terminal->is_sequence_terminal()) { 909 ED4_sequence_terminal *seqTerminal = terminal->to_sequence_terminal(); 910 if (seqTerminal->species_name) 911 { 912 ED4_species_manager *speciesManager = terminal->get_parent(ED4_L_SPECIES)->to_species_manager(); 913 if (speciesManager && !speciesManager->flag.is_consensus && !speciesManager->flag.is_SAI) 914 { 915 PV_AddNewAAseqTerminals(seqTerminal, speciesManager); 916 } 917 } 918 } 919 } 920 ED4_ROOT->main_manager->update_info.set_resize(1); 921 ED4_ROOT->main_manager->resize_requested_by_parent(); 907 { 908 if (terminal->is_sequence_terminal()) { 909 ED4_sequence_terminal *seqTerminal = terminal->to_sequence_terminal(); 910 if (seqTerminal->species_name) 911 { 912 ED4_species_manager *speciesManager = terminal->get_parent(ED4_L_SPECIES)->to_species_manager(); 913 if (speciesManager && !speciesManager->flag.is_consensus && !speciesManager->flag.is_SAI) 914 { 915 PV_AddNewAAseqTerminals(seqTerminal, speciesManager); 916 } 917 } 918 } 919 } 920 ED4_ROOT->main_manager->request_resize(); // @@@ instead needs to be called whenever adding or deleting PV-terminals 922 921 923 922 gTerminalsCreated = true; -
branches/e4fix/EDIT4/ED4_base.cxx
r8341 r8345 132 132 GB_pop_transaction(GLOBAL_gb_main); 133 133 134 if (parent) parent->resize_requested_by_child();134 request_resize(); 135 135 // parent = 0; 136 136 // delete this; // @@@ crashes when removing callback deleted_from_database() … … 837 837 } 838 838 839 ED4_returncode ED4_base::set_width() // sets object length of terminals to Consensus_Name_terminal if existing 840 { // else to MAXSPECIESWIDTH 841 int i; 839 ED4_returncode ED4_base::set_width() { 840 // sets object length of terminals to Consensus_Name_terminal if existing 841 // else to MAXSPECIESWIDTH 842 843 int i; 842 844 843 845 if (is_species_manager() && !flag.is_consensus && !parent->flag.is_consensus) { 844 ED4_species_manager *species_manager= to_species_manager();846 ED4_species_manager *species_manager = to_species_manager(); 845 847 ED4_multi_name_manager *multi_name_manager = species_manager->get_defined_level(ED4_L_MULTI_NAME)->to_multi_name_manager(); // case I'm a species 846 ED4_terminal *consensus_terminal = parent->to_multi_species_manager()->get_consensus_terminal();848 ED4_terminal *consensus_terminal = parent->to_multi_species_manager()->get_consensus_terminal(); 847 849 848 850 for (i=0; i < multi_name_manager->children->members(); i++) { 849 851 ED4_name_manager *name_manager = multi_name_manager->children->member(i)->to_name_manager(); 850 if (consensus_terminal) { 851 name_manager->children->member(0)->extension.size[WIDTH] = consensus_terminal->extension.size[WIDTH]; 852 } 853 else { 854 name_manager->children->member(0)->extension.size[WIDTH] = MAXSPECIESWIDTH; 855 } 856 857 name_manager->resize_requested_by_child(); 852 ED4_base *nameTerm = name_manager->children->member(0); 853 int width = consensus_terminal ? consensus_terminal->extension.size[WIDTH] : MAXSPECIESWIDTH; 854 855 nameTerm->extension.size[WIDTH] = width; 856 nameTerm->request_resize(); 858 857 } 859 858 … … 874 873 } 875 874 } 876 s pecies_manager->children->member(i)->resize_requested_by_child();875 smember->request_resize(); 877 876 } 878 877 } 879 878 else if (is_group_manager()) { 880 ED4_group_manager *group_manager = this->to_group_manager();881 ED4_multi_species_manager *multi_species_manager = group_manager->get_defined_level(ED4_L_MULTI_SPECIES)->to_multi_species_manager();882 ED4_terminal *mark_consensus_terminal = multi_species_manager->get_consensus_terminal();883 ED4_terminal *consensus_terminal= parent->to_multi_species_manager()->get_consensus_terminal();879 ED4_group_manager *group_manager = to_group_manager(); 880 ED4_multi_species_manager *multi_species_manager = group_manager->get_defined_level(ED4_L_MULTI_SPECIES)->to_multi_species_manager(); 881 ED4_terminal *mark_consensus_terminal = multi_species_manager->get_consensus_terminal(); 882 ED4_terminal *consensus_terminal = parent->to_multi_species_manager()->get_consensus_terminal(); 884 883 885 884 if (consensus_terminal) { // we're a group in another group … … 890 889 } 891 890 892 mark_consensus_terminal-> parent->resize_requested_by_child();891 mark_consensus_terminal->request_resize(); 893 892 894 893 for (i=0; i < multi_species_manager->children->members(); i++) { … … 957 956 } 958 957 959 ED4_returncode ED4_manager::hide_children() { 960 int i; 961 962 for (i=0; i<children->members(); i++) { 958 void ED4_manager::hide_children() { 959 for (int i=0; i<children->members(); i++) { 963 960 ED4_base *member = children->member(i); 964 961 if (!member->is_spacer_terminal() && !member->flag.is_consensus) { // don't hide spacer and Consensus … … 966 963 } 967 964 } 968 969 update_info.set_resize(1); 970 resize_requested_by_parent(); 971 972 return ED4_R_OK; 973 } 974 975 976 ED4_returncode ED4_manager::unhide_children() 977 { 978 if (!children) { 979 return ED4_R_WARNING; 980 } 981 else { 965 request_resize(); 966 } 967 968 969 void ED4_manager::unhide_children() { 970 if (children) { 982 971 for (int i=0; i < children->members(); i++) { 983 972 children->member(i)->flag.hidden = 0; // make child visible 984 973 } 985 986 update_info.set_resize(1); 987 resize_requested_by_parent(); 988 989 return ED4_R_OK; 974 request_resize(); 990 975 } 991 976 } … … 1081 1066 } 1082 1067 1083 ED4_returncode ED4_base::set_links(ED4_base *temp_width_link, ED4_base *temp_height_link) // sets links in hierarchy : 1084 // width-link sets links between objects on same level 1085 { // height-link sets links between objects on different levels 1086 if (temp_width_link) 1087 { 1088 if (width_link) // if object already has a link 1089 width_link->linked_objects.delete_elem((void *) this); // delete link and 1090 1091 width_link = temp_width_link; // set new link to temp_width_link 1092 temp_width_link->linked_objects.append_elem((void *) this); 1093 } 1094 1095 if (temp_height_link) 1096 { 1097 if (height_link != NULL) 1098 height_link->linked_objects.delete_elem((void *) this); 1099 1100 height_link = temp_height_link; 1101 temp_height_link->linked_objects.append_elem((void *) this); 1102 } 1103 1104 return (ED4_R_OK); 1105 } 1106 1107 ED4_returncode ED4_base::link_changed(ED4_base *link) 1108 { 1109 if ((width_link == link) || (height_link == link)) 1110 if (calc_bounding_box()) 1111 if (parent != NULL) 1112 parent->resize_requested_by_child(); 1113 1114 return (ED4_R_OK); 1068 void ED4_base::set_links(ED4_base *new_width, ED4_base *new_height) { 1069 // sets links in hierarchy : 1070 // width-link sets links between objects on same level 1071 // height-link sets links between objects on different levels 1072 1073 if (new_width) { 1074 if (width_link) width_link->linked_objects.delete_elem((void *) this); 1075 width_link = new_width; 1076 new_width->linked_objects.append_elem((void *) this); 1077 } 1078 1079 if (new_height) { 1080 if (height_link) height_link->linked_objects.delete_elem((void *) this); 1081 height_link = new_height; 1082 new_height->linked_objects.append_elem((void *) this); 1083 } 1115 1084 } 1116 1085 -
branches/e4fix/EDIT4/ED4_cursor.cxx
r8342 r8345 644 644 PV_AddCorrespondingOrfTerminals(name_term); 645 645 } 646 ED4_ROOT->main_manager->update_info.set_resize(1); 647 ED4_ROOT->main_manager->resize_requested_by_parent(); 646 ED4_ROOT->main_manager->request_resize(); // @@@ instead needs to be called whenever adding or deleting PV-terminals 648 647 // it should create new AA Sequence terminals if the protein viewer is enabled 649 648 } … … 758 757 PV_AddOrfTerminalsToLoadedSpecies(); 759 758 } 760 761 ED4_ROOT->main_manager->update_info.set_resize(1); 762 ED4_ROOT->main_manager->resize_requested_by_parent(); 759 ED4_ROOT->main_manager->request_resize(); // @@@ instead needs to be called whenever adding or deleting PV-terminals 763 760 } 764 761 -
branches/e4fix/EDIT4/ED4_manager.cxx
r8342 r8345 708 708 } 709 709 710 ED4_returncode ED4_manager::calc_size_requested_by_parent() {711 if (calc_bounding_box()) {712 if (parent) {713 parent->resize_requested_by_child();714 }715 }716 717 return (ED4_R_OK);718 }719 720 710 ED4_returncode ED4_manager::refresh_requested_by_child() { 721 711 // handles a refresh-request from a child … … 753 743 } 754 744 745 inline void ED4_base::resize_requested_by_link(ED4_base *link) { 746 e4_assert((width_link == link) || (height_link == link)); // wrong link 747 if (calc_bounding_box()) request_resize(); 748 } 749 750 void ED4_base::request_resize_of_linked() { 751 ED4_list_elem *current_list_elem = linked_objects.first(); 752 while (current_list_elem) { 753 ED4_base *object = (ED4_base *) current_list_elem->elem(); 754 if (object) object->resize_requested_by_link(this); 755 current_list_elem = current_list_elem->next(); 756 } 757 } 758 755 759 bool ED4_manager::calc_bounding_box() { 756 760 // calculates the smallest rectangle containing the object. 757 761 // returns true if bounding box has changed. 758 AW_pos sum_width = 0; 759 AW_pos sum_height = 0; 760 AW_pos max_x = 0; 761 AW_pos max_y = 0; 762 AW_pos dummy = 0; 763 ED4_index i = 0; 764 bool bb_changed = false; 765 ED4_list_elem *current_list_elem; 766 ED4_base *child, *object; 762 AW_pos sum_width = 0; 763 AW_pos sum_height = 0; 764 AW_pos max_x = 0; 765 AW_pos max_y = 0; 766 AW_pos dummy = 0; 767 ED4_index i = 0; 768 bool bb_changed = false; 769 ED4_base *child; 767 770 768 771 // initialize with first child … … 809 812 } 810 813 811 if (bb_changed) { // tell linked objects about our change of bounding box 812 current_list_elem = linked_objects.first(); 813 while (current_list_elem) { 814 object = (ED4_base *) current_list_elem->elem(); 815 if (object) { 816 object->link_changed(this); 817 } 818 819 current_list_elem = current_list_elem->next(); 820 } 821 } 814 if (bb_changed) request_resize_of_linked(); 822 815 return bb_changed; 823 816 } … … 873 866 } 874 867 875 ED4_returncode ED4_manager::resize_requested_by_parent() {868 void ED4_manager::resize_requested_children() { 876 869 if (update_info.resize) { // object wants to resize 877 870 update_info.set_resize(0); // first clear the resize flag (remember it could be set again from somewhere below the hierarchy) … … 884 877 885 878 child->update_info.set_resize(1); 886 child->resize_requested_ by_parent();879 child->resize_requested_children(); 887 880 } 888 881 889 882 distribute_children(); 890 if (calc_bounding_box()) { // recalculate current object's bounding_box 891 resize_requested_by_child(); 892 } 893 } 894 895 return ED4_R_OK; 896 } 897 ED4_returncode ED4_root_group_manager::resize_requested_by_parent() { 898 ED4_returncode result = ED4_R_OK; 899 883 if (calc_bounding_box()) request_resize(); 884 } 885 } 886 void ED4_root_group_manager::resize_requested_children() { 900 887 if (update_info.resize) { 901 update_remap(); 902 result = ED4_manager::resize_requested_by_parent(); 903 } 904 905 return result; 888 update_remap(); // @@@ should this better be handled by an update request? 889 ED4_manager::resize_requested_children(); 890 } 906 891 } 907 892 908 893 static void update_scrolled_rectangles(ED4_window *win) { win->update_scrolled_rectangle(); } 909 ED4_returncode ED4_main_manager::resize_requested_by_parent() {894 void ED4_main_manager::resize_requested_children() { 910 895 if (update_info.resize) { 911 ED4_manager::resize_requested_ by_parent();896 ED4_manager::resize_requested_children(); 912 897 ED4_with_all_edit_windows(update_scrolled_rectangles); 913 898 } 914 return ED4_R_OK;915 }916 917 ED4_returncode ED4_manager::Resize() {918 if (!flag.hidden) {919 while (update_info.resize) {920 resize_requested_by_parent();921 if (parent) break;922 }923 }924 925 return ED4_R_OK;926 }927 ED4_returncode ED4_terminal::Resize() {928 return ED4_R_OK;929 899 } 930 900 … … 1178 1148 } 1179 1149 1180 ED4_returncode ED4_manager::resize_requested_by_child() { 1181 // handles a resize-request from a child 1182 if (!update_info.resize) { // this is the first resize request 1183 if (parent) { // if we have a parent, tell him about our resize 1184 parent->resize_requested_by_child(); 1185 } 1186 update_info.set_resize(1); 1187 } 1188 return ED4_R_OK; 1189 } 1190 1191 void ED4_manager::update_requested_by_child() { 1150 void ED4_manager::update_requested_by_child() { // @@@ same as set_update -> DRY 1192 1151 if (!update_info.update_requested) { 1193 1152 if (parent) parent->update_requested_by_child(); … … 1883 1842 } 1884 1843 } 1885 void ED4_remap::mark_compile_needed() {1886 if (mode!=ED4_RM_NONE && !update_needed) {1887 update_needed = 1;1888 if (ED4_ROOT && ED4_ROOT->root_group_man) { // test if root_group_man already exists1889 ED4_ROOT->root_group_man->resize_requested_by_child(); // remapping is recompiled while re-displaying the root_group_manager1890 }1891 }1892 }1893 1844 void ED4_remap::mark_compile_needed_force() { 1894 1845 if (!update_needed) { … … 1899 1850 } 1900 1851 } 1852 void ED4_remap::mark_compile_needed() { 1853 if (mode!=ED4_RM_NONE) mark_compile_needed_force(); 1854 } 1855 1901 1856 GB_ERROR ED4_remap::compile(ED4_root_group_manager *gm) 1902 1857 { -
branches/e4fix/EDIT4/ED4_members.cxx
r8159 r8345 154 154 } 155 155 156 ED4_returncode ED4_members::insert_member(ED4_base *new_member) // inserts a new member into current owners's member array and157 { // asks to adjust owner's bounding box 158 ED4_index index;159 ED4_properties prop; 160 161 prop = owner()->spec.static_prop; // properties of parent object 162 156 ED4_returncode ED4_members::insert_member(ED4_base *new_member) { 157 // inserts a new member into current owners's member array and 158 // asks to adjust owner's bounding box 159 160 ED4_properties prop = owner()->spec.static_prop; // properties of parent object 161 162 ED4_index index; 163 163 if ((index = search_member(&(new_member->extension), prop)) < 0) { // search list for a suitable position 164 164 index = 0; // list was empty … … 186 186 new_member->index = index; 187 187 188 owner()->re size_requested_by_child();// tell owner about resize188 owner()->request_resize(); // tell owner about resize 189 189 190 190 return (ED4_R_OK); … … 228 228 229 229 owner()->spec.announce_added(new_member->spec.level); 230 231 owner()->resize_requested_by_child(); 230 owner()->request_resize(); 231 232 232 return ED4_R_OK; 233 233 } … … 250 250 e4_assert(members_ok()); 251 251 252 owner()->re size_requested_by_child(); // tell owner about resize252 owner()->request_resize(); 253 253 254 254 return (ED4_R_OK); -
branches/e4fix/EDIT4/ED4_nds.cxx
r8344 r8345 52 52 ED4_calc_terminal_extentions(); 53 53 ED4_ROOT->main_manager->route_down_hierarchy(update_terminal_extension).expect_no_error(); 54 ED4_ROOT->main_manager->re size_requested_by_child();54 ED4_ROOT->main_manager->request_resize(); 55 55 } 56 56 } -
branches/e4fix/EDIT4/ED4_no_class.cxx
r8344 r8345 1025 1025 } 1026 1026 1027 if (this_object->parent) { 1028 this_object->parent->resize_requested_by_child(); 1029 } 1027 this_object->request_resize(); 1030 1028 1031 1029 return NULL; -
branches/e4fix/EDIT4/ED4_root.cxx
r8343 r8345 111 111 if (main_manager->update_info.update_requested) { 112 112 main_manager->update_requested_children(); 113 redraw = true; 113 redraw = true; // @@@ needed ? 114 114 } 115 115 116 116 while (main_manager->update_info.resize) { 117 main_manager->resize_requested_ by_parent();117 main_manager->resize_requested_children(); 118 118 redraw = true; 119 119 } … … 473 473 } 474 474 475 ED4_returncode ED4_root::resize_all() 476 { 475 void ED4_root::resize_all() { 477 476 while (main_manager->update_info.resize) { 478 main_manager->resize_requested_by_parent(); 479 } 480 481 return (ED4_R_OK); 477 main_manager->resize_requested_children(); 478 } 482 479 } 483 480 … … 739 736 first_window->update_window_coords(); 740 737 resize_all(); 741 742 738 743 739 main_manager->route_down_hierarchy(force_group_update).expect_no_error(); -
branches/e4fix/EDIT4/ED4_terminal.cxx
r8341 r8345 331 331 e4_assert(0); 332 332 return NULL; 333 }334 335 ED4_returncode ED4_terminal::resize_requested_by_child()336 {337 e4_assert(0);338 return ED4_R_IMPOSSIBLE;339 333 } 340 334 … … 645 639 } 646 640 647 648 ED4_returncode ED4_terminal::calc_size_requested_by_parent()649 {650 return ED4_R_OK;651 }652 653 641 void ED4_terminal::update_requested_children() {} 654 642 … … 656 644 // calculates the smallest rectangle containing the object. 657 645 // requests refresh and returns true if bounding box has changed. 658 659 bool bb_changed = false; 660 ED4_list_elem *current_list_elem; 661 ED4_base *object; 646 647 bool bb_changed = false; 662 648 663 649 if (width_link) { … … 677 663 678 664 if (bb_changed) { 679 current_list_elem = linked_objects.first(); 680 while (current_list_elem) { 681 object = (ED4_base *) current_list_elem->elem(); 682 683 if (object != NULL) { 684 object->link_changed(this); 685 } 686 687 current_list_elem = current_list_elem->next(); 688 } 689 665 request_resize_of_linked(); 690 666 request_refresh(); 691 667 } 692 693 668 return bb_changed; 694 669 } 695 670 696 ED4_returncode ED4_terminal::resize_requested_by_parent() {671 void ED4_terminal::resize_requested_children() { 697 672 if (update_info.resize) { // likes to resize? 698 if (calc_bounding_box()) { // size changed? 699 parent->resize_requested_by_child(); // tell parent! 700 } 701 } 702 703 return ED4_R_OK; 673 if (calc_bounding_box()) { 674 request_resize(); 675 } 676 } 704 677 } 705 678 -
branches/e4fix/EDIT4/EDB_root_bact.cxx
r8337 r8345 584 584 sequence_terminal->set_links(ref_sequence_terminal, ref_sequence_terminal); 585 585 sequence_manager->children->append_member(sequence_terminal); 586 sequence_terminal->parent->resize_requested_by_child();587 586 588 587 (*y) += height_terminal + height_spacer; -
branches/e4fix/EDIT4/ed4_class.hxx
r8344 r8345 1063 1063 virtual int adjust_clipping_rectangle(); // sets scrolling area in AW_MIDDLE_AREA 1064 1064 virtual ED4_returncode Show(int refresh_all=0, int is_cleared=0) = 0; 1065 virtual ED4_returncode Resize() = 0;1066 1065 virtual bool calc_bounding_box() = 0; 1067 1066 1068 1067 ED4_returncode clear_background(int color=0); 1069 1068 1070 // functions concerned with links in the hierarchy 1071 ED4_returncode set_links(ED4_base *width_link, ED4_base *height_link); 1072 ED4_returncode link_changed(ED4_base *link); 1069 void set_links(ED4_base *width_link, ED4_base *height_link); 1073 1070 1074 1071 // functions concerned with special initialization … … 1095 1092 1096 1093 // functions which refer to the object as a child, i.e. travelling down the hierarchy 1097 virtual void request_refresh(int clear=1)=0; 1098 virtual ED4_returncode resize_requested_by_child()=0; 1099 virtual ED4_returncode resize_requested_by_parent()=0; // @@@ name is wrong! should be resize_requested_children! 1094 virtual void request_refresh(int clear=1) = 0; 1095 1096 inline void request_resize(); 1097 void request_resize_of_linked(); 1098 void resize_requested_by_link(ED4_base *link); 1099 virtual void resize_requested_children() = 0; 1100 1100 1101 1101 virtual void delete_requested_children() = 0; 1102 1102 virtual void Delete() = 0; 1103 1103 1104 1104 inline void set_update(); 1105 1105 virtual void update_requested_children() = 0; 1106 1106 1107 virtual ED4_returncode calc_size_requested_by_parent()=0;1108 1107 virtual ED4_returncode move_requested_by_parent(ED4_move_info *mi)=0; 1109 1108 virtual ED4_returncode event_sent_by_parent(AW_event *event, AW_window *aww); … … 1252 1251 // functions concerned with graphics 1253 1252 virtual ED4_returncode Show(int refresh_all=0, int is_cleared=0); 1254 virtual ED4_returncode Resize();1255 1253 virtual bool calc_bounding_box(); 1256 1254 … … 1259 1257 // top-down functions, means travelling down the hierarchy 1260 1258 virtual ED4_returncode event_sent_by_parent(AW_event *event, AW_window *aww); 1259 1261 1260 virtual void request_refresh(int clear=1); 1262 1261 ED4_returncode clear_refresh(); 1263 virtual ED4_returncode resize_requested_by_parent(); 1262 1263 virtual void resize_requested_children(); 1264 1264 1265 1265 virtual void update_requested_children(); … … 1268 1268 virtual void Delete(); 1269 1269 1270 virtual ED4_returncode calc_size_requested_by_parent();1271 1270 virtual ED4_returncode move_requested_by_parent(ED4_move_info *mi); 1272 1271 … … 1284 1283 // bottom-up functions 1285 1284 virtual ED4_returncode move_requested_by_child(ED4_move_info *moveinfo); 1286 virtual ED4_returncoderesize_requested_by_child();1285 inline void resize_requested_by_child(); 1287 1286 virtual ED4_returncode refresh_requested_by_child(); 1288 1287 void delete_requested_by_child(); … … 1322 1321 ED4_terminal *get_last_terminal(int start_index=-1) const; 1323 1322 1324 ED4_returncodehide_children();1325 ED4_returncodeunhide_children();1323 void hide_children(); 1324 void unhide_children(); 1326 1325 1327 1326 bool is_hidden() const { … … 1354 1353 // functions concerning graphic output 1355 1354 virtual ED4_returncode Show(int refresh_all=0, int is_cleared=0) = 0; 1356 virtual ED4_returncode Resize();1357 1355 virtual ED4_returncode draw() = 0; 1358 1356 1359 1357 virtual int adjust_clipping_rectangle(); 1360 1358 virtual bool calc_bounding_box(); 1361 virtual ED4_returncode calc_size_requested_by_parent();1362 1359 1363 1360 ED4_returncode draw_drag_box(AW_pos x, AW_pos y, GB_CSTR text = NULL, int cursor_y=-1); … … 1365 1362 // functions which concern the object as a child 1366 1363 virtual void request_refresh(int clear=1); 1367 virtual ED4_returncode resize_requested_by_child(); 1368 virtual ED4_returncode resize_requested_by_parent();1364 1365 virtual void resize_requested_children(); 1369 1366 1370 1367 virtual void update_requested_children(); … … 1523 1520 1524 1521 // functions concerned with global refresh and resize 1525 ED4_returncoderesize_all();1522 void resize_all(); 1526 1523 1527 1524 ED4_returncode special_window_refresh(); … … 1607 1604 1608 1605 virtual ED4_returncode Show(int refresh_all=0, int is_cleared=0); 1609 virtual ED4_returncode resize_requested_by_parent();1606 virtual void resize_requested_children(); 1610 1607 1611 1608 void clear_whole_background(); … … 1802 1799 1803 1800 virtual ED4_returncode Show(int refresh_all=0, int is_cleared=0); 1804 virtual ED4_returncode resize_requested_by_parent();1801 virtual void resize_requested_children(); 1805 1802 1806 1803 DECLARE_DUMP_FOR_LEAFCLASS(ED4_abstract_group_manager); … … 2134 2131 // inlines which need complete classdefs 2135 2132 2136 inline void ED4_base::set_update() { 2133 inline void ED4_base::set_update() { // @@@ rename into request_update 2137 2134 if (!update_info.update_requested) { 2138 2135 update_info.update_requested = 1; … … 2140 2137 } 2141 2138 } 2139 2140 inline void ED4_base::request_resize() { 2141 update_info.set_resize(1); 2142 if (parent) parent->resize_requested_by_child(); 2143 } 2144 2145 void ED4_manager::resize_requested_by_child() { 2146 if (!update_info.resize) request_resize(); 2147 } 2148 2142 2149 2143 2150 inline bool ED4_terminal::setCursorTo(ED4_cursor *cursor, int seq_pos, bool unfoldGroups, ED4_CursorJumpType jump_type) {
