Files
haiku-beta6/src/preferences/menu/ColorWindow.cpp
T
Axel Dörfler a10cf76ef5 Renamed src/prefs to "preferences", as the directory is usually called in BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 15:57:12 +00:00

69 lines
1.8 KiB
C++

#include "MenuApp.h"
ColorWindow::ColorWindow()
: BWindow(BRect(150,150,350,200), "Menu Color Scheme", B_TITLED_WINDOW, B_NOT_ZOOMABLE | B_NOT_RESIZABLE)
{
// Set and collect the variables for revert
get_menu_info(&info);
get_menu_info(&revert_info);
BView *colView = new BView(BRect(0,0,1000,100), "menuView",
B_FOLLOW_ALL_SIDES, B_WILL_DRAW | B_FULL_UPDATE_ON_RESIZE);
colorPicker = new ColorPicker();
colView->SetViewColor(219,219,219,255);
colView->AddChild(colorPicker);
AddChild(colView);
ResizeTo(383,130);
// Create the buttons and add them to the view
DefaultButton = new BButton(BRect(10,100,85,110), "Default", "Default",
new BMessage(MENU_COLOR_DEFAULT), B_FOLLOW_LEFT | B_FOLLOW_TOP, B_WILL_DRAW | B_NAVIGABLE);
RevertButton = new BButton(BRect(95,100,175,20), "REVERT", "Revert",
new BMessage(MENU_REVERT), B_FOLLOW_LEFT | B_FOLLOW_BOTTOM, B_WILL_DRAW | B_NAVIGABLE);
colView->AddChild(DefaultButton);
colView->AddChild(RevertButton);
}
ColorWindow::~ColorWindow()
{}
void
ColorWindow::MessageReceived(BMessage *msg)
{
switch(msg->what) {
case MENU_REVERT:
colorPicker->SetValue(revert_info.background_color);
info.background_color = colorPicker->ValueAsColor();
set_menu_info(&info);
be_app->PostMessage(UPDATE_WINDOW);
break;
case MENU_COLOR_DEFAULT:
// change to system color for system wide
// compatability
rgb_color color;
color.red = 219;
color.blue = 219;
color.green = 219;
color.alpha = 255;
colorPicker->SetValue(color);
case MENU_COLOR:{
get_menu_info(&info);
info.background_color = colorPicker->ValueAsColor();
set_menu_info(&info);
be_app->PostMessage(UPDATE_WINDOW);
break;}
default:
be_app->PostMessage(UPDATE_WINDOW);
BMessage(msg);
break;
}
}