Extended the screen test app: now we try to set the display_mode, and we also print the color_space with the other info.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12525 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Stefano Ceccherini 2005-05-02 09:52:51 +00:00
parent 55814cfde4
commit 712ab9be40

View File

@ -4,24 +4,59 @@
#include <stdio.h>
#include <string.h>
// TODO: very basic, will need to be extended
int main()
{
BApplication app("application/x-vnd.BScreenTest");
BScreen screen;
display_mode mode;
if (!screen.IsValid()) {
printf("Invalid BScreen object\n");
exit(-1);
}
status_t status = screen.GetMode(&mode);
display_mode oldMode;
status_t status = screen.GetMode(&oldMode);
if (status < B_OK)
printf("%s\n", strerror(status));
else
printf("width: %d, height: %d\n", mode.virtual_width, mode.virtual_height);
printf("width: %d, height: %d, space: %lu\n",
oldMode.virtual_width,
oldMode.virtual_height,
oldMode.space);
printf("Screen frame: \n");
printf("Screen frame: ");
screen.Frame().PrintToStream();
}
printf("\nTrying to set mode to 800x600: ");
display_mode newMode = oldMode;
newMode.virtual_width = 800;
newMode.virtual_height = 600;
status = screen.SetMode(&newMode);
if (status < B_OK)
printf("FAILED (%s)\n", strerror(status));
else {
printf("OK\n");
status_t status = screen.GetMode(&newMode);
if (status < B_OK)
printf("%s\n", strerror(status));
else {
printf("width: %d, height: %d, space: %lu\n",
newMode.virtual_width,
newMode.virtual_height,
newMode.space);
printf("Screen frame: ");
screen.Frame().PrintToStream();
printf("\n");
}
}
snooze(4000000);
printf("resetting video mode: ");
status = screen.SetMode(&oldMode);
if (status < B_OK)
printf("FAILED (%s)\n", strerror(status));
else
printf("OK\n");
}