- RgnHandle updateRgn = NewRgn() ;
- GetWindowUpdateRgn( GetControlOwner(inControl) , updateRgn ) ;
-#if UMA_USE_APPEARANCE
- if ( UMAHasAppearance() )
- {
- ::MoveControl( inControl , x , y ) ;
- }
- else
-#endif
-#if !TARGET_CARBON
- {
- AGAMoveControl( inControl , x ,y ) ;
- }
-#else
- {
- }
-#endif
- InvalRgn( updateRgn ) ;
+ if ( UMAHasAppearance() )
+ {
+ bool visible = UMAIsControlVisible( inControl ) ;
+ if ( visible ) {
+ SetControlVisibility( inControl , false , false ) ;
+ Rect ctrlBounds ;
+ InvalWindowRect(GetControlOwner(inControl),GetControlBounds(inControl,&ctrlBounds) ) ;
+ }
+ ::MoveControl( inControl , x , y ) ;
+ if ( visible ) {
+ SetControlVisibility( inControl , true , false ) ;
+ Rect ctrlBounds ;
+ InvalWindowRect(GetControlOwner(inControl),GetControlBounds(inControl,&ctrlBounds) ) ;
+ }
+ }