Use ColorMenuItem in Spider saver
This commit is contained in:
@@ -4,6 +4,8 @@ SetSubDirSupportedPlatformsBeOSCompatible ;
|
|||||||
|
|
||||||
AddResources Spider : Spider.rdef ;
|
AddResources Spider : Spider.rdef ;
|
||||||
|
|
||||||
|
UsePrivateHeaders interface ;
|
||||||
|
|
||||||
ScreenSaver Spider :
|
ScreenSaver Spider :
|
||||||
Polygon.cpp
|
Polygon.cpp
|
||||||
PolygonQueue.cpp
|
PolygonQueue.cpp
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
#include "SpiderView.h"
|
#include "SpiderView.h"
|
||||||
|
|
||||||
#include <Catalog.h>
|
#include <Catalog.h>
|
||||||
|
#include <ColorMenuItem.h>
|
||||||
#include <ControlLook.h>
|
#include <ControlLook.h>
|
||||||
#include <Message.h>
|
|
||||||
#include <Menu.h>
|
|
||||||
#include <MenuField.h>
|
#include <MenuField.h>
|
||||||
#include <MenuItem.h>
|
#include <Message.h>
|
||||||
|
#include <PopUpMenu.h>
|
||||||
#include <Slider.h>
|
#include <Slider.h>
|
||||||
#include <StringView.h>
|
#include <StringView.h>
|
||||||
|
|
||||||
@@ -105,64 +105,68 @@ SpiderView::SpiderView(BRect frame, SpiderSaver* saver, uint32 queueNumber,
|
|||||||
AddChild(fQueueDepthSlider);
|
AddChild(fQueueDepthSlider);
|
||||||
|
|
||||||
// color menu field
|
// color menu field
|
||||||
BMenu* menu = new BMenu(B_TRANSLATE("Color"));
|
BPopUpMenu* menu = new BPopUpMenu(B_TRANSLATE("Color"));
|
||||||
BMenuItem* item;
|
BColorMenuItem* item;
|
||||||
BMessage* message;
|
BMessage* message;
|
||||||
|
|
||||||
// red
|
// red
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", RED);
|
message->AddInt32("color", RED);
|
||||||
item = new BMenuItem(B_TRANSLATE("Red"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Red"), message,
|
||||||
|
(rgb_color){ 255, 65, 54 });
|
||||||
item->SetMarked(color == RED);
|
item->SetMarked(color == RED);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
// green
|
// green
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", GREEN);
|
message->AddInt32("color", GREEN);
|
||||||
item = new BMenuItem(B_TRANSLATE("Green"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Green"), message,
|
||||||
|
(rgb_color){ 46, 204, 64 });
|
||||||
item->SetMarked(color == GREEN);
|
item->SetMarked(color == GREEN);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
// blue
|
// blue
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", BLUE);
|
message->AddInt32("color", BLUE);
|
||||||
item = new BMenuItem(B_TRANSLATE("Blue"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Blue"), message,
|
||||||
|
(rgb_color){ 0, 116, 217 });
|
||||||
item->SetMarked(color == BLUE);
|
item->SetMarked(color == BLUE);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
// yellow
|
// yellow
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", YELLOW);
|
message->AddInt32("color", YELLOW);
|
||||||
item = new BMenuItem(B_TRANSLATE("Yellow"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Yellow"), message,
|
||||||
|
(rgb_color){ 255, 220, 0 });
|
||||||
item->SetMarked(color == YELLOW);
|
item->SetMarked(color == YELLOW);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
// purple
|
// purple
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", PURPLE);
|
message->AddInt32("color", PURPLE);
|
||||||
item = new BMenuItem(B_TRANSLATE("Purple"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Purple"), message,
|
||||||
|
(rgb_color){ 177, 13, 201 });
|
||||||
item->SetMarked(color == PURPLE);
|
item->SetMarked(color == PURPLE);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
// cyan
|
// cyan
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", CYAN);
|
message->AddInt32("color", CYAN);
|
||||||
item = new BMenuItem(B_TRANSLATE("Cyan"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Cyan"), message,
|
||||||
|
(rgb_color){ 127, 219, 255 });
|
||||||
item->SetMarked(color == CYAN);
|
item->SetMarked(color == CYAN);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
// gray
|
// gray
|
||||||
message = new BMessage(kMsgColor);
|
message = new BMessage(kMsgColor);
|
||||||
message->AddInt32("color", GRAY);
|
message->AddInt32("color", GRAY);
|
||||||
item = new BMenuItem(B_TRANSLATE("Gray"), message);
|
item = new BColorMenuItem(B_TRANSLATE("Gray"), message,
|
||||||
|
(rgb_color){ 170, 170, 170 });
|
||||||
item->SetMarked(color == GRAY);
|
item->SetMarked(color == GRAY);
|
||||||
menu->AddItem(item);
|
menu->AddItem(item);
|
||||||
|
|
||||||
menu->SetLabelFromMarked(true);
|
|
||||||
menu->SetRadioMode(true);
|
|
||||||
|
|
||||||
frame.OffsetBy(0.0f, viewHeight);
|
frame.OffsetBy(0.0f, viewHeight);
|
||||||
fColorMenuField = new BMenuField(frame, "color", B_TRANSLATE("Color"),
|
fColorMenuField = new BMenuField( frame, "color", B_TRANSLATE("Color"),
|
||||||
menu);
|
menu);
|
||||||
fColorMenuField->SetDivider(fColorMenuField->StringWidth(
|
fColorMenuField->SetDivider(fColorMenuField->StringWidth(
|
||||||
B_TRANSLATE("Color")) + be_control_look->DefaultItemSpacing());
|
B_TRANSLATE("Color")) + be_control_look->DefaultItemSpacing());
|
||||||
|
|||||||
Reference in New Issue
Block a user