CComponentsWindow: use negative values for discret percental dimensions

Also add possibility to use placeholder for better readability and
better compatibilty with previous implementations.
See doc in source files for more details


Origin commit data
------------------
Commit: cf9a953b59
Author: Thilo Graf <dbt@novatux.de>
Date: 2017-03-03 (Fri, 03 Mar 2017)
This commit is contained in:
2017-03-03 09:01:58 +01:00
parent 845326aa07
commit 8effbfe1cf
2 changed files with 21 additions and 10 deletions

View File

@@ -169,13 +169,13 @@ void CComponentsWindow::initWindowSize()
if (cc_parent)
return;
if (width > 0 && width <= 100) //percentage conversion TODO: behavior inside parent
width = frameBuffer->getScreenWidth()*width/100;
if (width < 0 && width >= -100) //percentage conversion TODO: behavior inside parent
width = frameBuffer->getScreenWidth()*abs(width)/100;
if (width == 0 || (unsigned)width > frameBuffer->getScreenWidth())
width = frameBuffer->getScreenWidth();
if (height > 0 && height <= 100) //percentage conversion TODO: behavior inside parent
height = frameBuffer->getScreenHeight()*height/100;
if (height < 0 && height >= -100) //percentage conversion TODO: behavior inside parent
height = frameBuffer->getScreenHeight()*abs(height)/100;
if (height == 0 || (unsigned)height > frameBuffer->getScreenHeight())
height = frameBuffer->getScreenHeight();
}