modified Resize methods

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7598 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Adi Oanca 2004-05-16 19:07:12 +00:00
parent 70cdc7af60
commit d7113e23eb

View File

@ -1755,33 +1755,30 @@ void BWindow::MoveTo(float x, float y){
void BWindow::ResizeBy(float dx, float dy){
float dxNew;
float dyNew;
// stay in minimum & maximum frame limits
(fFrame.Width() + dx) < fMinWindWidth ? fMinWindWidth : fFrame.Width() + dx;
(fFrame.Width() + dx) > fMaxWindWidth ? fMaxWindWidth : fFrame.Width() + dx;
dxNew = (fFrame.Width() + dx) < fMinWindWidth ? fFrame.Width() - fMinWindWidth : dx;
if (dxNew == dx)
dxNew = (fFrame.Width() + dx) > fMaxWindWidth ? fMaxWindWidth - fFrame.Width() : dx;
(fFrame.Height() + dy) < fMinWindHeight ? fMinWindHeight : fFrame.Height() + dy;
(fFrame.Height() + dy) > fMaxWindHeight ? fMaxWindHeight : fFrame.Height() + dy;
dyNew = (fFrame.Height() + dy) < fMinWindHeight ? fFrame.Height() - fMinWindHeight : dy;
if (dyNew == dy)
dyNew = (fFrame.Height() + dy) > fMaxWindHeight ? fMaxWindHeight - fFrame.Height() : dy;
ResizeTo( fFrame.Width() + dx, fFrame.Height() + dy );
Lock();
session->WriteInt32( AS_WINDOW_RESIZE );
session->WriteFloat( dxNew );
session->WriteFloat( dyNew );
session->Sync( );
Unlock();
}
//------------------------------------------------------------------------------
void BWindow::ResizeTo(float width, float height){
// stay in minimum & maximum frame limits
width = (width < fMinWindWidth) ? fMinWindWidth : width;
width = (width > fMaxWindWidth) ? fMaxWindWidth : width;
height = (height < fMinWindHeight) ? fMinWindHeight : height;
height = (height > fMaxWindHeight) ? fMaxWindHeight : height;
Lock();
session->WriteInt32( AS_WINDOW_RESIZE );
session->WriteFloat( width );
session->WriteFloat( height );
session->Sync( );
Unlock();
ResizeBy(width - fFrame.Width(), height - fFrame.Height());
}
//------------------------------------------------------------------------------