| 117 newobj->widget = widget; |
117 newobj->widget = widget; |
| 118 uic_object_created(newobj); |
118 uic_object_created(newobj); |
| 119 return newobj; |
119 return newobj; |
| 120 } |
120 } |
| 121 |
121 |
| 122 void uic_object_push_container(UiObject *toplevel, UiContainerX *newcontainer) { |
122 void uic_object_push_container(UiObject *toplevel, UiContainer *newcontainer) { |
| 123 newcontainer->prev = toplevel->container_end; |
123 newcontainer->prev = toplevel->container_end; |
| 124 if(toplevel->container_end) { |
124 if(toplevel->container_end) { |
| 125 toplevel->container_end->next = newcontainer; |
125 toplevel->container_end->next = newcontainer; |
| 126 toplevel->container_end = newcontainer; |
126 toplevel->container_end = newcontainer; |
| 127 } else { |
127 } else { |
| 146 * sub-container, 2 container objects are added to the list, however we want |
146 * sub-container, 2 container objects are added to the list, however we want |
| 147 * only one container, otherwise ui_container_finish() would not work |
147 * only one container, otherwise ui_container_finish() would not work |
| 148 */ |
148 */ |
| 149 void uic_object_remove_second_last_container(UiObject *toplevel) { |
149 void uic_object_remove_second_last_container(UiObject *toplevel) { |
| 150 if(toplevel->container_end && toplevel->container_end->prev) { |
150 if(toplevel->container_end && toplevel->container_end->prev) { |
| 151 UiContainerX *end = toplevel->container_end; |
151 UiContainer *end = toplevel->container_end; |
| 152 UiContainerX *rm = toplevel->container_end->prev; |
152 UiContainer *rm = toplevel->container_end->prev; |
| 153 |
153 |
| 154 end->prev = rm->prev; |
154 end->prev = rm->prev; |
| 155 if(rm->prev) { |
155 if(rm->prev) { |
| 156 rm->prev->next = end; |
156 rm->prev->next = end; |
| 157 } else { |
157 } else { |