示例#1
0
文件: icontainer.c 项目: jcupitt/nip2
static void 
icontainer_real_child_remove( iContainer *parent, iContainer *child )
{
	iContainerClass *icontainer_child_class = ICONTAINER_GET_CLASS( child );

	g_assert( IS_ICONTAINER( parent ) && IS_ICONTAINER( child ) );

#ifdef DEBUG
	printf( "icontainer_real_child_remove: parent %s \"%s\"; "
		"child %s \"%s\"\n", 
		G_OBJECT_TYPE_NAME( parent ), NN( IOBJECT( parent )->name ),
		G_OBJECT_TYPE_NAME( child ), NN( IOBJECT( child )->name ) );
#endif /*DEBUG*/

	if( parent->current == child )
		icontainer_current( parent, NULL ); 

	/* We're about to break the link ... trigger the parent_remove() on 
	 * the child.
	 */
	icontainer_child_class->parent_remove( child );

	icontainer_unlink( child ); 

	UNREF( child );

	iobject_changed( IOBJECT( parent ) );
}
示例#2
0
文件: icontainer.c 项目: jcupitt/nip2
iContainer *
icontainer_next( iContainer *parent )
{
	iContainer *child;
	int i;

	if( !parent->children ) 
		return( NULL ); 

	if( !parent->current )
		i = 0;
	else
		i = g_slist_index( parent->children, parent->current ) + 1;

	if( !(child = g_slist_nth_data( parent->children, i )) )
		child = ICONTAINER( parent->children->data );

	icontainer_current( parent, child );

	return( child ); 
}
示例#3
0
文件: workspace.c 项目: imclab/nip2
/* Select a column. Can select NULL for no current col in this ws.
 */
void
workspace_column_select( Workspace *ws, Column *col )
{
	icontainer_current( ICONTAINER( ws ), ICONTAINER( col ) ); 
}