Enlightenment CVS committal

Author  : moom16
Project : e17
Module  : proto

Dir     : e17/proto/etk/src/lib


Modified Files:
        etk_button.c etk_container.c etk_dialog.c etk_menu.c 
        etk_notebook.c etk_scrolled_view.c etk_tree.c 


Log Message:
* More notebook work
* Now, when a container is deleted, the children are deleted too


===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_button.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- etk_button.c        2 Dec 2005 21:57:55 -0000       1.7
+++ etk_button.c        24 Dec 2005 18:13:06 -0000      1.8
@@ -64,7 +64,7 @@
 
    if (!button_type)
    {
-      button_type = etk_type_new("Etk_Button", ETK_BIN_TYPE, 
sizeof(Etk_Button), ETK_CONSTRUCTOR(_etk_button_constructor), 
ETK_DESTRUCTOR(_etk_button_destructor));
+      button_type = etk_type_new("Etk_Button", ETK_BIN_TYPE, 
sizeof(Etk_Button), ETK_CONSTRUCTOR(_etk_button_constructor), NULL);
 
       _etk_button_signals[ETK_BUTTON_PRESSED_SIGNAL] = 
etk_signal_new("pressed", button_type, ETK_MEMBER_OFFSET(Etk_Button, pressed), 
etk_marshaller_VOID__VOID, NULL, NULL);
       _etk_button_signals[ETK_BUTTON_RELEASED_SIGNAL] = 
etk_signal_new("released", button_type, ETK_MEMBER_OFFSET(Etk_Button, 
released), etk_marshaller_VOID__VOID, NULL, NULL);
@@ -302,35 +302,6 @@
    etk_signal_connect("mouse_click", ETK_OBJECT(button), 
ETK_CALLBACK(_etk_button_mouse_click_cb), NULL);
 }
 
-/* Destroys the button */
-static void _etk_button_destructor(Etk_Button *button)
-{
-   Etk_Widget *widget; 
-
-   if (!button)
-      return;
-
-   if (button->alignment)
-   {
-      widget = button->alignment;
-      button->alignment = NULL;
-      etk_object_destroy(ETK_OBJECT(widget));
-   }
-   if (button->hbox)
-   {
-      widget = button->hbox;
-      button->hbox = NULL;
-      etk_object_destroy(ETK_OBJECT(widget));
-   }
-   if (button->label)
-   {
-      widget = button->label;
-      button->label = NULL;
-      etk_object_destroy(ETK_OBJECT(widget));
-   }
-}
-
-
 /* Sets the property whose id is "property_id" to the value "value" */
 static void _etk_button_property_set(Etk_Object *object, int property_id, 
Etk_Property_Value *value)
 {
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_container.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- etk_container.c     13 Nov 2005 12:04:05 -0000      1.4
+++ etk_container.c     24 Dec 2005 18:13:06 -0000      1.5
@@ -215,18 +215,15 @@
 static void _etk_container_destructor(Etk_Container *container)
 {
    Etk_Widget *child;
-   Evas_List *l;
 
    if (!container)
       return;
 
-   for (l = container->children; l; )
+   while (container->children)
    {
-      child = ETK_WIDGET(l->data);
-      l = l->next;
-      etk_widget_parent_set(child, NULL);
+      child = ETK_WIDGET(container->children->data);
+      etk_object_destroy(ETK_OBJECT(child));
    }
-   container->children = evas_list_free(container->children);
 }
 
 
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_dialog.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- etk_dialog.c        2 Dec 2005 21:57:55 -0000       1.1
+++ etk_dialog.c        24 Dec 2005 18:13:06 -0000      1.2
@@ -27,7 +27,6 @@
 };
 
 static void _etk_dialog_constructor(Etk_Dialog *dialog);
-static void _etk_dialog_destructor(Etk_Dialog *dialog);
 static void _etk_dialog_property_set(Etk_Object *object, int property_id, 
Etk_Property_Value *value);
 static void _etk_dialog_property_get(Etk_Object *object, int property_id, 
Etk_Property_Value *value);
 
@@ -49,7 +48,7 @@
 
    if (!dialog_type)
    {
-      dialog_type = etk_type_new("Etk_Dialog", ETK_WINDOW_TYPE, 
sizeof(Etk_Dialog), ETK_CONSTRUCTOR(_etk_dialog_constructor), 
ETK_DESTRUCTOR(_etk_dialog_destructor));
+      dialog_type = etk_type_new("Etk_Dialog", ETK_WINDOW_TYPE, 
sizeof(Etk_Dialog), ETK_CONSTRUCTOR(_etk_dialog_constructor), NULL);
 
       _etk_dialog_signals[ETK_DIALOG_CLOSE_SIGNAL] = etk_signal_new("close", 
dialog_type, -1, etk_marshaller_VOID__VOID, NULL, NULL);
       _etk_dialog_signals[ETK_DIALOG_RESPONSE_SIGNAL] = 
etk_signal_new("response", dialog_type, -1, etk_marshaller_VOID__INT, NULL, 
NULL);
@@ -198,20 +197,6 @@
    dialog->has_separator = TRUE;
 }
 
-/* Destroys the dialog */
-static void _etk_dialog_destructor(Etk_Dialog *dialog)
-{
-   if (!dialog)
-      return;
-
-   /* TODO: destroy ? */
-   etk_object_destroy(ETK_OBJECT(dialog->main_area_vbox));
-   etk_object_destroy(ETK_OBJECT(dialog->separator));
-   etk_object_destroy(ETK_OBJECT(dialog->action_area_hbox));
-   etk_object_destroy(ETK_OBJECT(dialog->dialog_vbox));
-}
-
-
 /* Sets the property whose id is "property_id" to the value "value" */
 static void _etk_dialog_property_set(Etk_Object *object, int property_id, 
Etk_Property_Value *value)
 {
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_menu.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- etk_menu.c  20 Nov 2005 10:33:28 -0000      1.3
+++ etk_menu.c  24 Dec 2005 18:13:06 -0000      1.4
@@ -214,6 +214,7 @@
 {
    if (!menu)
       return;
+   etk_container_remove(ETK_CONTAINER(menu->window), ETK_WIDGET(menu));
    etk_object_destroy(ETK_OBJECT(menu->window));
 }
 
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_notebook.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- etk_notebook.c      23 Dec 2005 23:01:06 -0000      1.2
+++ etk_notebook.c      24 Dec 2005 18:13:06 -0000      1.3
@@ -19,7 +19,7 @@
 static void _etk_notebook_size_allocate(Etk_Widget *widget, Etk_Geometry 
geometry);
 static void _etk_notebook_tab_toggled_cb(Etk_Object *object, void *data);
 static Etk_Notebook_Page *_etk_notebook_page_create(Etk_Notebook *notebook, 
const char *tab_label, Etk_Widget *page_widget);
-static void _etk_notebook_page_activate(Etk_Notebook_Page *page);
+static void _etk_notebook_current_page_show(Etk_Notebook *notebook);
 
 /**************************
  *
@@ -109,9 +109,7 @@
    for (l = notebook->pages; l; l = l->next)
    {
       page = l->data;
-      /* TODO */
-      etk_object_destroy(ETK_OBJECT(page->tab));
-      etk_object_destroy(ETK_OBJECT(page->page_frame));
+      etk_signal_disconnect("toggled", ETK_OBJECT(page->tab), 
ETK_CALLBACK(_etk_notebook_tab_toggled_cb));
       free(page);
    }
 }
@@ -182,6 +180,7 @@
          max_tab_height = tab_requisition.h;
    }
    
+   /* TODO */
    //tab_offset = (geometry.w - tabs_width) * 0.5;
    tab_offset = 0;
    tab_geometry.y = geometry.y;
@@ -250,8 +249,7 @@
          if (notebook->current_page)
             etk_widget_hide(notebook->current_page->page_frame);
          notebook->current_page = page;
-         etk_widget_show(notebook->current_page->page_frame);
-         etk_widget_size_recalc_queue(ETK_WIDGET(notebook));
+         _etk_notebook_current_page_show(notebook);
       }
    }
 }
@@ -272,8 +270,8 @@
    
    new_page = malloc(sizeof(Etk_Notebook_Page));
    prev_page = notebook->pages ? notebook->pages->data : NULL;
-   new_page->tab = etk_radio_button_new_with_label_from_widget(tab_label, 
prev_page ? ETK_RADIO_BUTTON(prev_page->tab) : NULL);
-   etk_object_properties_set(ETK_OBJECT(new_page->tab), "theme_group", 
"notebook_tab", NULL);
+   new_page->tab = etk_widget_new(ETK_RADIO_BUTTON_TYPE, "theme_group", 
"notebook_tab", "label", tab_label,
+      "group", prev_page ? 
etk_radio_button_group_get(ETK_RADIO_BUTTON(prev_page->tab)) : NULL, NULL);
    etk_object_data_set(ETK_OBJECT(new_page->tab), "_Etk_Notebook::Page", 
new_page);
    etk_widget_parent_set(new_page->tab, ETK_CONTAINER(notebook));
    etk_widget_visibility_locked_set(new_page->tab, TRUE);
@@ -290,18 +288,35 @@
       etk_bin_child_set(ETK_BIN(new_page->page_frame), new_page->page_widget);
    
    if (!notebook->current_page)
-      _etk_notebook_page_activate(new_page);
+   {
+      notebook->current_page = new_page;
+      _etk_notebook_current_page_show(notebook);
+   }
    etk_widget_size_recalc_queue(ETK_WIDGET(notebook));
    
    return new_page;
 }
 
-/* Activates a page of the notebook */
-static void _etk_notebook_page_activate(Etk_Notebook_Page *page)
+/* Shows the active page */
+static void _etk_notebook_current_page_show(Etk_Notebook *notebook)
 {
-   if (!page)
+   Evas_List *l;
+   Etk_Notebook_Page *p;
+   
+   if (!notebook || !notebook->current_page)
       return;
-   etk_toggle_button_active_set(ETK_TOGGLE_BUTTON(page->tab), TRUE);
+   
+   etk_widget_show(notebook->current_page->page_frame);
+   etk_widget_member_object_raise(ETK_WIDGET(notebook), 
notebook->current_page->page_frame->smart_object);
+   
+   for (l = notebook->pages; l; l = l->next)
+   {
+      p = l->data;
+      etk_widget_member_object_raise(ETK_WIDGET(notebook), 
p->tab->smart_object);
+   }
+   evas_object_raise(notebook->current_page->tab->smart_object);
+   etk_widget_member_object_raise(ETK_WIDGET(notebook), 
notebook->current_page->tab->smart_object);         
+   etk_widget_size_recalc_queue(ETK_WIDGET(notebook));
 }
 
 /** @} */
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_scrolled_view.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -3 -r1.10 -r1.11
--- etk_scrolled_view.c 22 Dec 2005 16:41:14 -0000      1.10
+++ etk_scrolled_view.c 24 Dec 2005 18:13:06 -0000      1.11
@@ -48,7 +48,7 @@
 
    if (!scrolled_view_type)
    {
-      scrolled_view_type = etk_type_new("Etk_Scrolled_View", ETK_BIN_TYPE, 
sizeof(Etk_Scrolled_View), ETK_CONSTRUCTOR(_etk_scrolled_view_constructor), 
ETK_DESTRUCTOR(_etk_scrolled_view_destructor));
+      scrolled_view_type = etk_type_new("Etk_Scrolled_View", ETK_BIN_TYPE, 
sizeof(Etk_Scrolled_View), ETK_CONSTRUCTOR(_etk_scrolled_view_constructor), 
NULL);
 
       etk_type_property_add(scrolled_view_type, "hpolicy", 
ETK_SCROLLED_VIEW_HPOLICY_PROPERTY, ETK_PROPERTY_INT, 
ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(ETK_POLICY_AUTO));
       etk_type_property_add(scrolled_view_type, "vpolicy", 
ETK_SCROLLED_VIEW_VPOLICY_PROPERTY, ETK_PROPERTY_INT, 
ETK_PROPERTY_READABLE_WRITABLE, etk_property_value_int(ETK_POLICY_AUTO));
@@ -197,18 +197,6 @@
    etk_signal_connect("value_changed", ETK_OBJECT(scrolled_view->vscrollbar), 
ETK_CALLBACK(_etk_scrolled_view_vscrollbar_value_changed_cb), scrolled_view);
 }
 
-/* Destroys the scrolled_view */
-static void _etk_scrolled_view_destructor(Etk_Scrolled_View *scrolled_view)
-{
-   if (!scrolled_view)
-      return;
-
-   etk_widget_parent_set(scrolled_view->hscrollbar, NULL);
-   etk_object_destroy(ETK_OBJECT(scrolled_view->hscrollbar));
-   etk_widget_parent_set(scrolled_view->vscrollbar, NULL);
-   etk_object_destroy(ETK_OBJECT(scrolled_view->vscrollbar));
-}
-
 /* Sets the property whose id is "property_id" to the value "value" */
 static void _etk_scrolled_view_property_set(Etk_Object *object, int 
property_id, Etk_Property_Value *value)
 {
===================================================================
RCS file: /cvsroot/enlightenment/e17/proto/etk/src/lib/etk_tree.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -3 -r1.23 -r1.24
--- etk_tree.c  22 Dec 2005 16:41:14 -0000      1.23
+++ etk_tree.c  24 Dec 2005 18:13:06 -0000      1.24
@@ -1524,14 +1524,7 @@
    for (l = tree->rows_widgets; l; l = l->next)
       _etk_tree_row_objects_free(l->data, tree);
    tree->rows_widgets = evas_list_free(tree->rows_widgets);
-
-   for (i = 0; i < tree->num_cols; i++)
-   {
-      if (tree->columns[i])
-         etk_object_destroy(ETK_OBJECT(tree->columns[i]));
-   }
    free(tree->columns);
-   /* TODO: etk_object_destroy(ETK_OBJECT(tree->grid)); */
 }
 
 /* Sets the property whose id is "property_id" to the value "value" */
@@ -1649,9 +1642,7 @@
 {
    if (!tree_col)
       return;
-   
    etk_tree_model_free(tree_col->model);
-   /* TODO: etk_object_destroy("header"); */
 }
 
 /* Sets the property whose id is "property_id" to the value "value" */




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to