示例#1
0
bool stacking_assoc(WStacking *st, WRegion *reg)
{
    assert(st->reg==NULL);
    
    if(stacking_of_reg==NULL){
        stacking_of_reg=make_rb();
        if(stacking_of_reg==NULL)
            return FALSE;
    }

    if(rb_insertp(stacking_of_reg, reg, st)==NULL)
        return FALSE;
    
    st->reg=reg;
    return TRUE;
}
示例#2
0
文件: return.c 项目: dkogan/notion
bool region_do_set_return(WRegion *reg, WPHolder *ph)
{
    Rb_node node;

    assert(!OBJ_IS_BEING_DESTROYED(reg));

    region_unset_return(reg);

    if(retrb==NULL){
        retrb=make_rb();
        if(retrb==NULL)
            return FALSE;
    }

    node=rb_insertp(retrb, reg, ph);

    region_notify_change(reg, ioncore_g.notifies.set_return);

    return (node!=NULL);
}