Move ColorListView and ColorItem to shared in BPrivate namespace. ColorItem typedef to BPrivate::BColorItem for apps that are already using this class. Gravity screensaver: * ColorItem => BColorItem. * Use make_color() to set colors. Make color drop message name agnostic, check for B_RGB_COLOR_TYPE. Add be:sender and source to drag message. Add _SetTermColors() convenience method to set colors on all tabs. Change-Id: I5a9f55d3ab423ccaa341997cf444603373024553 Reviewed-on: https://review.haiku-os.org/c/haiku/+/8846 Reviewed-by: John Scipione <[email protected]>
48 lines
998 B
C++
Executable File
48 lines
998 B
C++
Executable File
/*
|
|
* Copyright 2009-2024 Haiku, Inc. All rights reserved.
|
|
* Distributed under the terms of the MIT License.
|
|
*/
|
|
#ifndef _COLOR_PREVIEW_H
|
|
#define _COLOR_PREVIEW_H
|
|
|
|
|
|
#include <Control.h>
|
|
|
|
|
|
class BMessage;
|
|
class BMessageRunner;
|
|
|
|
|
|
namespace BPrivate {
|
|
|
|
|
|
class BColorPreview : public BControl {
|
|
public:
|
|
BColorPreview(const char* name, const char* label,
|
|
BMessage* message, uint32 flags = B_WILL_DRAW);
|
|
virtual ~BColorPreview();
|
|
|
|
virtual void Draw(BRect updateRect);
|
|
virtual status_t Invoke(BMessage* message = NULL);
|
|
virtual void MessageReceived(BMessage *message);
|
|
virtual void MouseDown(BPoint where);
|
|
virtual void MouseMoved(BPoint where, uint32 transit, const BMessage* message);
|
|
virtual void MouseUp(BPoint where);
|
|
|
|
rgb_color Color() const;
|
|
void SetColor(rgb_color color);
|
|
|
|
private:
|
|
void _DragColor(BPoint where);
|
|
|
|
rgb_color fColor;
|
|
|
|
BMessageRunner* fMessageRunner;
|
|
};
|
|
|
|
|
|
} // namespace BPrivate
|
|
|
|
|
|
#endif // _COLOR_PREVIEW_H
|