Refined again the boot splash artwork. Everything is now centered as a whole.
The dividing line is back although with a little more spacing. Also the icon spacing is a little increased and I added a subtle outline as well as a little brighter background for the active icon look. The placement logic is now not independant of each other anymore, otherwise I couldn't center both images as a unit. But only the vertical placement is affected. Comments as always on the commit mailing list... :-) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24796 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
64b7ef1d0f
commit
75ab36bd50
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 20 KiB |
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 17 KiB |
File diff suppressed because it is too large
Load Diff
@ -872,34 +872,40 @@ fallback:
|
||||
// TODO: support compressed RGB image data (simple RLE?)
|
||||
|
||||
// render splash logo
|
||||
uint16 iconsHalfHeight = kSplashIconsHeight / 2;
|
||||
|
||||
int width = min_c(kSplashLogoWidth, gKernelArgs.frame_buffer.width);
|
||||
int height = min_c(kSplashLogoHeight, gKernelArgs.frame_buffer.height);
|
||||
int height = min_c(kSplashLogoHeight + iconsHalfHeight,
|
||||
gKernelArgs.frame_buffer.height);
|
||||
int placementX = max_c(0, min_c(100, kSplashLogoPlacementX));
|
||||
int placementY = max_c(0, min_c(100, kSplashLogoPlacementY));
|
||||
|
||||
int x = (gKernelArgs.frame_buffer.width - width) * placementX / 100;
|
||||
int y = (gKernelArgs.frame_buffer.height - height) * placementY / 100;
|
||||
|
||||
height = min_c(kSplashLogoHeight, gKernelArgs.frame_buffer.height);
|
||||
blit_image(kSplashLogoImage, NULL, width, height, kSplashLogoWidth,
|
||||
NULL, x, y);
|
||||
|
||||
// render initial (grayed out) icons
|
||||
// the grayed out version is the lower half of the icons image
|
||||
uint16 iconsHalfHeight = kSplashIconsHeight / 2;
|
||||
|
||||
width = min_c(kSplashIconsWidth, gKernelArgs.frame_buffer.width);
|
||||
height = min_c(iconsHalfHeight, gKernelArgs.frame_buffer.height);
|
||||
height = min_c(kSplashLogoHeight + iconsHalfHeight,
|
||||
gKernelArgs.frame_buffer.height);
|
||||
placementX = max_c(0, min_c(100, kSplashIconsPlacementX));
|
||||
placementY = max_c(0, min_c(100, kSplashIconsPlacementY));
|
||||
|
||||
x = (gKernelArgs.frame_buffer.width - width) * placementX / 100;
|
||||
y = (gKernelArgs.frame_buffer.height - height) * placementY / 100;
|
||||
y = kSplashLogoHeight + (gKernelArgs.frame_buffer.height - height)
|
||||
* placementY / 100;
|
||||
|
||||
// pointer into the lower half of the icons image data
|
||||
const uint8* lowerHalfIconImage = kSplashIconsImage
|
||||
+ (kSplashIconsWidth * iconsHalfHeight) * 3;
|
||||
blit_image(lowerHalfIconImage, NULL, width, height, kSplashIconsWidth,
|
||||
NULL, x, y);
|
||||
height = min_c(iconsHalfHeight, gKernelArgs.frame_buffer.height);
|
||||
blit_image(lowerHalfIconImage, NULL, width, height,
|
||||
kSplashIconsWidth, NULL, x, y);
|
||||
}
|
||||
|
||||
|
||||
|
@ -190,17 +190,18 @@ boot_splash_set_stage(int stage)
|
||||
|
||||
int iconsHalfHeight = kSplashIconsHeight / 2;
|
||||
int width = min_c(kSplashIconsWidth, sInfo->width);
|
||||
int height = min_c(iconsHalfHeight, sInfo->height);
|
||||
int height = min_c(kSplashLogoHeight + iconsHalfHeight, sInfo->height);
|
||||
int placementX = max_c(0, min_c(100, kSplashIconsPlacementX));
|
||||
int placementY = max_c(0, min_c(100, kSplashIconsPlacementY));
|
||||
|
||||
int x = (sInfo->width - width) * placementX / 100;
|
||||
int y = (sInfo->height - height) * placementY / 100;
|
||||
int y = kSplashLogoHeight + (sInfo->height - height) * placementY / 100;
|
||||
|
||||
int stageLeftEdge = width * stage / BOOT_SPLASH_STAGE_MAX;
|
||||
int stageRightEdge = width * (stage + 1) / BOOT_SPLASH_STAGE_MAX;
|
||||
|
||||
height = min_c(iconsHalfHeight, sInfo->height);
|
||||
blit_cropped(kSplashIconsImage, NULL, stageLeftEdge, 0, stageRightEdge,
|
||||
iconsHalfHeight, kSplashIconsWidth, NULL, x, y);
|
||||
height, kSplashIconsWidth, NULL, x, y);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user