2 * Copyright 2001-2013, Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
9 #include <Message.h> // For convenience
16 B_CONTROL_PARTIALLY_ON
= 2
27 class BControl
: public BView
, public BInvoker
{
29 BControl(BRect frame
, const char* name
,
30 const char* label
, BMessage
* message
,
31 uint32 resizingMode
, uint32 flags
);
32 BControl(const char* name
, const char* label
,
33 BMessage
* message
, uint32 flags
);
36 BControl(BMessage
* data
);
37 static BArchivable
* Instantiate(BMessage
* data
);
38 virtual status_t
Archive(BMessage
* data
, bool deep
= true) const;
40 virtual void WindowActivated(bool active
);
42 virtual void AttachedToWindow();
43 virtual void DetachedFromWindow();
44 virtual void AllAttached();
45 virtual void AllDetached();
47 virtual void MessageReceived(BMessage
* message
);
48 virtual void MakeFocus(bool focus
= true);
50 virtual void KeyDown(const char* bytes
, int32 numBytes
);
51 virtual void MouseDown(BPoint where
);
52 virtual void MouseUp(BPoint where
);
53 virtual void MouseMoved(BPoint where
, uint32 code
,
54 const BMessage
* dragMessage
);
56 virtual void SetLabel(const char* string
);
57 const char* Label() const;
59 virtual void SetValue(int32 value
);
62 virtual void SetEnabled(bool enabled
);
63 bool IsEnabled() const;
65 virtual void GetPreferredSize(float* _width
,
67 virtual void ResizeToPreferred();
69 virtual status_t
Invoke(BMessage
* message
= NULL
);
70 virtual BHandler
* ResolveSpecifier(BMessage
* message
,
71 int32 index
, BMessage
* specifier
,
72 int32 what
, const char* property
);
73 virtual status_t
GetSupportedSuites(BMessage
* message
);
75 virtual status_t
Perform(perform_code d
, void* arg
);
77 virtual status_t
SetIcon(const BBitmap
* bitmap
,
79 status_t
SetIconBitmap(const BBitmap
* bitmap
,
80 uint32 which
, uint32 flags
= 0);
81 const BBitmap
* IconBitmap(uint32 which
) const;
84 bool IsFocusChanging() const;
85 bool IsTracking() const;
86 void SetTracking(bool state
);
88 void SetValueNoUpdate(int32 value
);
94 virtual void _ReservedControl2();
95 virtual void _ReservedControl3();
96 virtual void _ReservedControl4();
98 BControl
& operator=(const BControl
&);
100 void InitData(BMessage
* data
= NULL
);
109 BPrivate::BIcon
* fIcon
;
111 #ifdef B_HAIKU_64_BIT