Example #1
0
/*
 * Popup Menu Handler.
 * Expand or Collapse the whole hierarchical tree.
 */
static void
gdisp_popupMenuHandler ( Kernel_T    *kernel,
			 PopupMenu_T *menu,
			 gpointer     menuData, /* cTree */
			 gpointer     itemData )
{

  GtkWidget *cTree  = (GtkWidget*)menuData;
  guint      action = GPOINTER_TO_UINT(itemData);

  /*
   * itemData : 0-collapse, 1-expand
   */
  if (action == 1 /* expand */) {

    gtk_ctree_expand_recursive(GTK_CTREE(cTree),
			       (GtkCTreeNode*)NULL);

  }
  else {

    gtk_ctree_collapse_recursive(GTK_CTREE(cTree),
				 (GtkCTreeNode*)NULL);

  }

}
Example #2
0
/* Recursively collapses the directory tree entry of the given directory */
void
dirtree_entry_collapse_recursive( GNode *dnode )
{
	g_assert( NODE_IS_DIR(dnode) );

	block_colexp_handlers( );
	gtk_ctree_collapse_recursive( GTK_CTREE(dir_ctree_w), DIR_NODE_DESC(dnode)->ctnode );
	unblock_colexp_handlers( );
}
Example #3
0
/* Collapse one node and all its subnodes. */
int
clip_GTK_CTREECOLLAPSERECURSIVE(ClipMachine * cm)
{
	C_widget   *cctree = _fetch_cw_arg(cm);
	C_object    *cnode = _fetch_cobject(cm,_clip_spar(cm,2));
	CHECKCWID(cctree,GTK_IS_CTREE);
	CHECKOPT2(2,MAP_t,NUMERIC_t); CHECKCOBJOPT(cnode,cnode->type==GTK_TYPE_CTREE_NODE);
	gtk_ctree_collapse_recursive(GTK_CTREE(cctree->widget),
			GTK_CTREE_NODE(cnode->object));
	return 0;
err:
	return 1;
}