void intern movewindow( UI_WINDOW *wptr, ORD row, ORD col ) /******************************************************/ { if( wptr->next != NULL ) { dirtynext( wptr->area, wptr->next ); } wptr->area.row = row; wptr->area.col = col; wptr->dirty = wptr->area; }
static void removewindow( UI_WINDOW *wptr ) /*****************************************/ { if( wptr->prev != NULL ) { wptr->prev->next = wptr->next; } else { UIData->area_head = wptr->next; } if( wptr->next != NULL ) { wptr->next->prev = wptr->prev; dirtynext( wptr->area, wptr->next ); } else { UIData->area_tail = wptr->prev; } }
void intern dirtynext( SAREA area, UI_WINDOW *wptr ) /**************************************************/ { register int i; auto SAREA areas[ 5 ]; dividearea( area, wptr->area, areas ); if( areas[ 0 ].height > 0 ) { dirtyarea( wptr, areas[ 0 ] ); } if( wptr->next != NULL ) { for( i = 1 ; i < 5 ; ++i ) { if( areas[ i ].height > 0 ) { dirtynext( areas[ i ], wptr->next ); } } } }
void global uidirty( SAREA area ) /*******************************/ { dirtynext( area, UIData->area_head ); uioffcursor(); }