From 579be6b83ed76e63a19b361cb6ad53c6472a4966 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Fri, 17 Jun 2005 13:23:06 +0000 Subject: [PATCH] will support setting the drawing mode per object sometimes soon... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13202 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../servers/app/playground/ObjectView.cpp | 1 - .../servers/app/playground/ObjectWindow.cpp | 46 +++++++++++++++++-- 2 files changed, 41 insertions(+), 6 deletions(-) diff --git a/src/tests/servers/app/playground/ObjectView.cpp b/src/tests/servers/app/playground/ObjectView.cpp index adfb774822..ebe0a550de 100644 --- a/src/tests/servers/app/playground/ObjectView.cpp +++ b/src/tests/servers/app/playground/ObjectView.cpp @@ -80,7 +80,6 @@ ObjectView::Draw(BRect updateRect) DrawString(message, p); SetDrawingMode(B_OP_ALPHA); -// SetDrawingMode(B_OP_OVER); for (int32 i = 0; State* state = (State*)fStateList.ItemAt(i); i++) state->Draw(this); diff --git a/src/tests/servers/app/playground/ObjectWindow.cpp b/src/tests/servers/app/playground/ObjectWindow.cpp index 5d49b697b6..aab438e7d8 100644 --- a/src/tests/servers/app/playground/ObjectWindow.cpp +++ b/src/tests/servers/app/playground/ObjectWindow.cpp @@ -134,15 +134,51 @@ ObjectWindow::ObjectWindow(BRect frame, const char* name) controlGroup->AddChild(radioButton); // drawing mode -/* BPopUpMenu* popupMenu = new BPopUpMenu(""); + BPopUpMenu* popupMenu = new BPopUpMenu(""); message = new BMessage(MSG_SET_DRAWING_MODE); message->AddInt32("mode", B_OP_COPY); - popupMenu->AddItem(new BMenuItem("B_OP_COPY", message)); + popupMenu->AddItem(new BMenuItem("Copy", message)); message = new BMessage(MSG_SET_DRAWING_MODE); message->AddInt32("mode", B_OP_OVER); - popupMenu->AddItem(new BMenuItem("B_OP_OVER", message)); + popupMenu->AddItem(new BMenuItem("Over", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_INVERT); + popupMenu->AddItem(new BMenuItem("Invert", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_BLEND); + popupMenu->AddItem(new BMenuItem("Blend", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_SELECT); + popupMenu->AddItem(new BMenuItem("Select", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_ERASE); + popupMenu->AddItem(new BMenuItem("Erase", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_ADD); + popupMenu->AddItem(new BMenuItem("Add", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_SUBTRACT); + popupMenu->AddItem(new BMenuItem("Subtract", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_MIN); + popupMenu->AddItem(new BMenuItem("Min", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_MAX); + popupMenu->AddItem(new BMenuItem("Max", message)); + + message = new BMessage(MSG_SET_DRAWING_MODE); + message->AddInt32("mode", B_OP_ALPHA); + popupMenu->AddItem(new BMenuItem("Alpha", message)); b.OffsetBy(0, radioButton->Bounds().Height() + 5.0); fDrawingModeMF = new BMenuField(b, "drawing mode field", "Mode", @@ -151,9 +187,9 @@ ObjectWindow::ObjectWindow(BRect frame, const char* name) controlGroup->AddChild(fDrawingModeMF); fDrawingModeMF->SetDivider(fDrawingModeMF->StringWidth(fDrawingModeMF->Label()) + 10.0); -*/ + // red text control - b.OffsetBy(0, radioButton->Bounds().Height() + 5.0); + b.OffsetBy(0, fDrawingModeMF->Bounds().Height() + 5.0); fRedTC = new BTextControl(b, "red text control", "Red", "", new BMessage(MSG_SET_COLOR)); controlGroup->AddChild(fRedTC);