Ejemplo n.º 1
0
/* Called when a key is pressed while the tree is focused:
 * we use this to delete the selected rows if "DEL" is pressed */
static Etk_Bool _etk_test_tree_key_down_cb(Etk_Object *object, Etk_Event_Key_Down *event, void *data)
{
   Etk_Tree *tree;
   Etk_Tree_Row *r;

   if (!(tree = ETK_TREE(object)))
      return ETK_FALSE;

   if (strcmp(event->keyname, "Delete") == 0)
   {
      /* We walk through all the rows of the tree, and we delete those which are selected.
       * Note that we can safely manipulate "r" with etk_tree_row_walk_next(), even if it
       * has been deleted with etk_tree_row_delete(), because etk_tree_row_delete() just
       * marks the row as deleted, but the row is not effectively deleted immediately */
      for (r = etk_tree_first_row_get(tree); r; r = etk_tree_row_walk_next(r, ETK_TRUE))
      {
         if (etk_tree_row_is_selected(r))
            etk_tree_row_delete(r);
      }

      return ETK_TRUE;
   }

   return ETK_FALSE;
}
Ejemplo n.º 2
0
void 
tree_populate(void)
{
   Eina_List *parts, *pp;
   Eina_List *progs;

   etk_tree_freeze(ETK_TREE(UI_PartsTree));
   etk_tree_clear(ETK_TREE(UI_PartsTree));

   parts = pp = edje_edit_parts_list_get(edje_o);
   while(pp)
   {
      printf("  P: %s\n", (char*)pp->data);
      tree_part_add((char*)pp->data, NULL);
      pp = pp->next;
   }
   edje_edit_string_list_free(parts);

   progs = pp = edje_edit_programs_list_get(edje_o);
   while(pp)
   {
      tree_program_add((char*)pp->data);
      pp = pp->next;
   }
   edje_edit_string_list_free(progs);

   etk_tree_row_select(etk_tree_first_row_get (ETK_TREE(UI_PartsTree)));
   etk_tree_thaw(ETK_TREE(UI_PartsTree));
}
Ejemplo n.º 3
0
Etk_Tree_Row * mainWindow_findrow(main_window* win, exalt_ethernet* eth)
{/*{{{*/
	Etk_Tree_Row* row;
	char* row_name;

	row = etk_tree_first_row_get(ETK_TREE(win->eth_list));
	//the first row is "General", we can jump it
	row = etk_tree_row_next_get(row);
	while(row)
	{
		etk_tree_row_fields_get(row, win->eth_col0, NULL, NULL, &row_name, NULL);
		if(strcmp(row_name,exalt_eth_get_name(eth))==0)
			return row;

		row = etk_tree_row_next_get(row);
	}

 	return NULL;
}/*}}}*/
Ejemplo n.º 4
0
Etk_Tree_Row * bootpanel_findrow(char* interface, boot_panel* pnl)
{
    Etk_Tree_Row* row;
    char* row_name;

    EXALT_ASSERT_RETURN(interface!=NULL);
    EXALT_ASSERT_RETURN(pnl!=NULL);

    row = etk_tree_first_row_get(ETK_TREE(pnl->eth_list));
    while(row)
    {
        etk_tree_row_fields_get(row, pnl->eth_col0, NULL, &row_name, NULL);
        if(strcmp(row_name,interface)==0)
            return row;

        row = etk_tree_row_next_get(row);
    }

    return NULL;
}
Ejemplo n.º 5
0
int mainWindow_eth_state_timer(void* data)
{/*{{{*/
	main_window* win = (main_window*)data;
	Etk_Tree_Row *row;
	char* row_name;
	exalt_ethernet* eth;

	row = etk_tree_first_row_get(ETK_TREE(win->eth_list));
	//the first row is "General", we can jump it
	row = etk_tree_row_next_get(row);
	while(row!=NULL)
	{
		etk_tree_row_fields_get(row, win->eth_col0, NULL, NULL, &row_name, NULL);
		eth=exalt_eth_get_ethernet_byname(row_name);
		if(eth)
		{
			if(exalt_eth_is_wireless(eth))
			{
				short radio;
				exalt_wireless_load_radio_button(eth);
				radio = exalt_wireless_raddiobutton_ison(exalt_eth_get_wireless(eth));
				if(radio && exalt_eth_is_activate(eth))
					etk_tree_row_fields_set(row, 0, win->eth_col0,PACKAGE_DATA_DIR ICONS_WIRELESS_ACTIVATE,NULL,row_name, NULL);
				else
					etk_tree_row_fields_set(row, 0, win->eth_col0,PACKAGE_DATA_DIR ICONS_WIRELESS_NOT_ACTIVATE,NULL,row_name, NULL);
			}
			else
				if(exalt_eth_is_activate(eth))
					etk_tree_row_fields_set(row, 0, win->eth_col0,PACKAGE_DATA_DIR ICONS_ETHERNET_ACTIVATE,NULL,row_name, NULL);
				else
					etk_tree_row_fields_set(row, 0, win->eth_col0,PACKAGE_DATA_DIR ICONS_ETHERNET_NOT_ACTIVATE,NULL,row_name, NULL);
		}
		row = etk_tree_row_next_get(row);
	}
	return 1;
}/*}}}*/