2 * Copyright 2001-2015, Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
5 #ifndef _OPTION_POP_UP_H
6 #define _OPTION_POP_UP_H
9 #include <OptionControl.h>
15 class BOptionPopUp
: public BOptionControl
{
17 BOptionPopUp(BRect frame
, const char* name
,
18 const char* label
, BMessage
* message
,
19 uint32 resizeMask
= B_FOLLOW_LEFT_TOP
,
20 uint32 flags
= B_WILL_DRAW
);
21 BOptionPopUp(BRect frame
, const char* name
,
22 const char* label
, BMessage
* message
,
23 bool fixed
, uint32 resizeMask
25 uint32 flags
= B_WILL_DRAW
);
26 BOptionPopUp(const char* name
,
27 const char* label
, BMessage
* message
,
28 uint32 flags
= B_WILL_DRAW
);
30 virtual ~BOptionPopUp();
32 BMenuField
* MenuField();
34 virtual bool GetOptionAt(int32 index
, const char** _name
,
36 virtual void RemoveOptionAt(int32 index
);
37 virtual int32
CountOptions() const;
38 virtual status_t
AddOptionAt(const char* name
, int32 value
,
41 virtual void AllAttached();
42 virtual void AttachedToWindow();
43 virtual void MessageReceived(BMessage
* message
);
44 virtual void SetLabel(const char* text
);
45 virtual void SetValue(int32 value
);
46 virtual void SetEnabled(bool enabled
);
47 virtual void GetPreferredSize(float* _width
,
49 virtual void ResizeToPreferred();
51 virtual int32
SelectedOption(const char** _name
= 0,
52 int32
* _value
= 0) const;
54 // Forbidden and FBC padding
56 BOptionPopUp(const BOptionPopUp
& other
);
57 BOptionPopUp
& operator=(const BOptionPopUp
& other
);
60 virtual status_t
_Reserved_OptionControl_0(void*, ...);
61 virtual status_t
_Reserved_OptionControl_1(void*, ...);
62 virtual status_t
_Reserved_OptionControl_2(void*, ...);
63 virtual status_t
_Reserved_OptionControl_3(void*, ...);
65 virtual status_t
_Reserved_OptionPopUp_0(void*, ...);
66 virtual status_t
_Reserved_OptionPopUp_1(void*, ...);
67 virtual status_t
_Reserved_OptionPopUp_2(void*, ...);
68 virtual status_t
_Reserved_OptionPopUp_3(void*, ...);
69 virtual status_t
_Reserved_OptionPopUp_4(void*, ...);
70 virtual status_t
_Reserved_OptionPopUp_5(void*, ...);
71 virtual status_t
_Reserved_OptionPopUp_6(void*, ...);
72 virtual status_t
_Reserved_OptionPopUp_7(void*, ...);
75 BMenuField
* fMenuField
;
80 #endif // _OPTION_POP_UP_H