# Control Widgets Tasks

|  |  |  |  | Task Summary | Owner
|  |  |  |  | BControl | Marc Flerackers
|  |  |  |  | BButton | Marc Flerackers
|  |  |  |  | BCheckBox | Marc Flerackers
|  |  |  |  | BColorControl |
|  |  |  |  | BPictureButton | Graham Macdonald
|  |  |  |  | BRadioButton | Marc Flerackers
|  |  |  |  | BSlider | Staffan Hellstrom
|  |  |  |  | BTab | Marc Flerackers
|  |  |  |  | BTabView | Marc Flerackers

|  |  |  |  | Task Details
BControl Class
|  |  |  |  | BControl(BRect frame, const char* name, const char* label, BMessage* message, uint32 resizeMask, uint32 flags);
|  |  |  |  | BControl(BMessage* data);
|  |  |  |  | virtual ~BControl();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void MakeFocus(bool state = true);
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 numBytes);
|  |  |  |  | virtual void MouseDown(BPoint pt);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage* msg);
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void SetLabel(const char* text);
|  |  |  |  | const char* Label() const;
|  |  |  |  | virtual void SetValue(int32 value);
|  |  |  |  | int32 Value() const;
|  |  |  |  | virtual void SetEnabled(bool on);
|  |  |  |  | bool IsEnabled() const;
|  |  |  |  | virtual void GetPreferredSize(float* width, float* height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual status_t Invoke(BMessage* msg = NULL);
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
|  |  |  |  | bool IsFocusChanging() const;
|  |  |  |  | bool IsTracking() const;
|  |  |  |  | void SetTracking(bool state);
|  |  |  |  | void SetValueNoUpdate(int32 value);
BButton Class
|  |  |  |  | BButton(BRect frame, const char* name, const char* label, BMessage* message, uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flags = B_WILL_DRAW | B_NAVIGABLE);
|  |  |  |  | BButton(BMessage* data);
|  |  |  |  | virtual ~BButton();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual void Draw(BRect updateRect);
|  |  |  |  | virtual void MouseDown(BPoint where);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 numBytes);
|  |  |  |  | virtual void MakeDefault(bool state);
|  |  |  |  | virtual void SetLabel(const char* text);
|  |  |  |  | bool IsDefault() const;
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage* msg);
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void SetValue(int32 value);
|  |  |  |  | virtual void GetPreferredSize(float* width, float* height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual status_t Invoke(BMessage* msg = NULL);
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float new_width, float new_height);
|  |  |  |  | virtual void MakeFocus(bool state = true);
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
BCheckBox Class
|  |  |  |  | BCheckBox(BRect frame, const char* name, const char* label, BMessage* message, uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flags = B_WILL_DRAW | B_NAVIGABLE);
|  |  |  |  | BCheckBox(BMessage* data);
|  |  |  |  | virtual ~BCheckBox();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual void Draw(BRect updateRect);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void MouseDown(BPoint where);
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 numBytes);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage* msg);
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void SetValue(int32 value);
|  |  |  |  | virtual void GetPreferredSize(float* width, float* height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual status_t Invoke(BMessage* msg = NULL);
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float new_width, float new_height);
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
|  |  |  |  | virtual void MakeFocus(bool state = true);
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
BColorControl Class
|  |  |  |  | BColorControl(BPoint start, color_control_layout layout, float cell_size, const char *name, BMessage *message = NULL, bool use_offscreen = false);
|  |  |  |  | BColorControl(BMessage *data);
|  |  |  |  | virtual ~BColorControl();
|  |  |  |  | static BArchivable *Instantiate(BMessage *data);
|  |  |  |  | virtual status_t Archive(BMessage *data, bool deep = true) const;
|  |  |  |  | virtual void SetValue(int32 color_value);
|  |  |  |  | void SetValue(rgb_color color);
|  |  |  |  | rgb_color ValueAsColor();
|  |  |  |  | virtual void SetEnabled(bool state);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void MessageReceived(BMessage *msg);
|  |  |  |  | virtual void Draw(BRect updateRect);
|  |  |  |  | virtual void MouseDown(BPoint where);
|  |  |  |  | virtual void KeyDown(const char *bytes, int32 numBytes);
|  |  |  |  | virtual void SetCellSize(float size);
|  |  |  |  | float CellSize() const;
|  |  |  |  | virtual void SetLayout(color_control_layout layout);
|  |  |  |  | color_control_layout Layout() const;
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage *msg);
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void GetPreferredSize(float *width, float *height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual status_t Invoke(BMessage *msg = NULL);
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float new_width, float new_height);
|  |  |  |  | virtual BHandler *ResolveSpecifier(BMessage *msg, int32 index, BMessage *specifier, int32 form, const char *property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage *data);
|  |  |  |  | virtual void MakeFocus(bool state = true);
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
BPictureButton Class
|  |  |  |  | BPictureButton(BRect frame, const char* name, BPicture* off, BPicture* on, BMessage* message, uint32 behavior = B_ONE_STATE_BUTTON, uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flgs = B_WILL_DRAW | B_NAVIGABLE);
|  |  |  |  | BPictureButton(BMessage* data);
|  |  |  |  | virtual ~BPictureButton();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual void Draw(BRect updateRect);
|  |  |  |  | virtual void MouseDown(BPoint where);
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 numBytes);
|  |  |  |  | virtual void SetEnabledOn(BPicture* on);
|  |  |  |  | virtual void SetEnabledOff(BPicture* off);
|  |  |  |  | virtual void SetDisabledOn(BPicture* on);
|  |  |  |  | virtual void SetDisabledOff(BPicture* off);
|  |  |  |  | BPicture* EnabledOn() const;
|  |  |  |  | BPicture* EnabledOff() const;
|  |  |  |  | BPicture* DisabledOn() const;
|  |  |  |  | BPicture* DisabledOff() const;
|  |  |  |  | virtual void SetBehavior(uint32 behavior);
|  |  |  |  | uint32 Behavior() const;
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage* msg);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void SetValue(int32 value);
|  |  |  |  | virtual status_t Invoke(BMessage* msg = NULL);
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float new_width, float new_height);
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual void GetPreferredSize(float* width, float* height);
|  |  |  |  | virtual void MakeFocus(bool state = true);
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
BRadioButton Class
|  |  |  |  | BRadioButton(BRect frame, const char* name, const char* label, BMessage* message, uint32 resizMask = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flags = B_WILL_DRAW | B_NAVIGABLE);
|  |  |  |  | BRadioButton(BMessage* data);
|  |  |  |  | virtual ~BRadioButton();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual void Draw(BRect updateRect);
|  |  |  |  | virtual void MouseDown(BPoint where);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 numBytes);
|  |  |  |  | virtual void SetValue(int32 value);
|  |  |  |  | virtual void GetPreferredSize(float* width, float* height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual status_t Invoke(BMessage* msg = NULL);
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage* msg);
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float new_width, float new_height);
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual void MakeFocus(bool state = true);
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
BSlider Class
|  |  |  |  | BSlider(BRect frame, const char* name, const char* label, BMessage* message, int32 minValue, int32 maxValue, thumb_style thumbType = B_BLOCK_THUMB, uint32 resizingMode = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flags = B_NAVIGABLE | B_WILL_DRAW | B_FRAME_EVENTS);
|  |  |  |  | BSlider(BRect frame, const char* name, const char* label, BMessage* message, int32 minValue, int32 maxValue, orientation posture /*= B_HORIZONTAL*/, thumb_style thumbType = B_BLOCK_THUMB, uint32 resizingMode = B_FOLLOW_LEFT | B_FOLLOW_TOP, uint32 flags = B_NAVIGABLE | B_WILL_DRAW | B_FRAME_EVENTS);
|  |  |  |  | BSlider(BMessage* data);
|  |  |  |  | virtual ~BSlider();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual status_t Perform(perform_code d, void* arg);
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float w,float h);
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 n);
|  |  |  |  | virtual void MouseDown(BPoint);
|  |  |  |  | virtual void MouseUp(BPoint pt);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 c, const BMessage* m);
|  |  |  |  | virtual void Pulse();
|  |  |  |  | virtual void SetLabel(const char* label);
|  |  |  |  | virtual void SetLimitLabels(const char* minLabel, const char* maxLabel);
|  |  |  |  | const char* MinLimitLabel() const;
|  |  |  |  | const char* MaxLimitLabel() const;
|  |  |  |  | virtual void SetValue(int32);
|  |  |  |  | virtual int32 ValueForPoint(BPoint) const;
|  |  |  |  | virtual void SetPosition(float);
|  |  |  |  | float Position() const;
|  |  |  |  | virtual void SetEnabled(bool on);
|  |  |  |  | void GetLimits(int32* minimum, int32* maximum);
|  |  |  |  | virtual void Draw(BRect);
|  |  |  |  | virtual void DrawSlider();
|  |  |  |  | virtual void DrawBar();
|  |  |  |  | virtual void DrawHashMarks();
|  |  |  |  | virtual void DrawThumb();
|  |  |  |  | virtual void DrawFocusMark();
|  |  |  |  | virtual void DrawText();
|  |  |  |  | virtual char* UpdateText() const;
|  |  |  |  | virtual BRect BarFrame() const;
|  |  |  |  | virtual BRect HashMarksFrame() const;
|  |  |  |  | virtual BRect ThumbFrame() const;
|  |  |  |  | virtual void SetFlags(uint32 flags);
|  |  |  |  | virtual void SetResizingMode(uint32 mode);
|  |  |  |  | virtual void GetPreferredSize( float* width, float* height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual status_t Invoke(BMessage* msg=NULL);
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
|  |  |  |  | virtual void SetModificationMessage(BMessage* message);
|  |  |  |  | BMessage* ModificationMessage() const;
|  |  |  |  | virtual void SetSnoozeAmount(int32);
|  |  |  |  | int32 SnoozeAmount() const;
|  |  |  |  | virtual void SetKeyIncrementValue(int32 value);
|  |  |  |  | int32 KeyIncrementValue() const;
|  |  |  |  | virtual void SetHashMarkCount(int32 count);
|  |  |  |  | int32 HashMarkCount() const;
|  |  |  |  | virtual void SetHashMarks(hash_mark_location where);
|  |  |  |  | hash_mark_location HashMarks() const;
|  |  |  |  | virtual void SetStyle(thumb_style s);
|  |  |  |  | thumb_style Style() const;
|  |  |  |  | virtual void SetBarColor(rgb_color);
|  |  |  |  | rgb_color BarColor() const;
|  |  |  |  | virtual void UseFillColor(bool, const rgb_color* c=NULL);
|  |  |  |  | bool FillColor(rgb_color*) const;
|  |  |  |  | BView* OffscreenView() const;
|  |  |  |  | orientation Orientation() const;
|  |  |  |  | virtual void SetOrientation(orientation);
|  |  |  |  | float BarThickness() const;
|  |  |  |  | virtual void SetBarThickness(float thickness);
|  |  |  |  | virtual void SetFont(const BFont* font, uint32 properties = B_FONT_ALL);
BTab Class
|  |  |  |  | BTab(BView* contents=NULL);
|  |  |  |  | BTab(BMessage* data);
|  |  |  |  | virtual ~BTab();
|  |  |  |  | static BArchivable* Instantiate(BMessage* data);
|  |  |  |  | virtual status_t Archive(BMessage* data, bool deep = true) const;
|  |  |  |  | virtual status_t Perform(uint32 d, void* arg);
|  |  |  |  | const char* Label() const;
|  |  |  |  | virtual void SetLabel(const char* label);
|  |  |  |  | bool IsSelected() const;
|  |  |  |  | virtual void Select(BView* owner);
|  |  |  |  | virtual void Deselect();
|  |  |  |  | virtual void SetEnabled(bool on);
|  |  |  |  | bool IsEnabled() const;
|  |  |  |  | void MakeFocus(bool infocus=true);
|  |  |  |  | bool IsFocus() const;
|  |  |  |  | virtual void SetView(BView* contents);
|  |  |  |  | BView* View() const;
|  |  |  |  | virtual void DrawFocusMark(BView* owner, BRect tabFrame);
|  |  |  |  | virtual void DrawLabel(BView* owner, BRect tabFrame);
|  |  |  |  | virtual void DrawTab(BView* owner, BRect tabFrame, tab_position, bool full=true);
BTabView Class
|  |  |  |  | BTabView(BRect frame, const char* name, button_width width = B_WIDTH_AS_USUAL, uint32 resizingMode = B_FOLLOW_ALL, uint32 flags = B_FULL_UPDATE_ON_RESIZE | B_WILL_DRAW | B_NAVIGABLE_JUMP | B_FRAME_EVENTS | B_NAVIGABLE);
|  |  |  |  | BTabView(BMessage*);
|  |  |  |  | virtual ~BTabView();
|  |  |  |  | static BArchivable* Instantiate(BMessage*);
|  |  |  |  | virtual status_t Archive(BMessage*, bool deep=true) const;
|  |  |  |  | virtual status_t Perform(perform_code d, void* arg);
|  |  |  |  | virtual void WindowActivated(bool state);
|  |  |  |  | virtual void AttachedToWindow();
|  |  |  |  | virtual void AllAttached();
|  |  |  |  | virtual void AllDetached();
|  |  |  |  | virtual void DetachedFromWindow();
|  |  |  |  | virtual void MessageReceived(BMessage* msg);
|  |  |  |  | virtual void FrameMoved(BPoint new_position);
|  |  |  |  | virtual void FrameResized(float w,float h);
|  |  |  |  | virtual void KeyDown(const char* bytes, int32 n);
|  |  |  |  | virtual void MouseDown(BPoint);
|  |  |  |  | virtual void MouseUp(BPoint);
|  |  |  |  | virtual void MouseMoved(BPoint pt, uint32 code, const BMessage* msg);
|  |  |  |  | virtual void Pulse();
|  |  |  |  | virtual void Select(int32 tabIndex);
|  |  |  |  | int32 Selection() const;
|  |  |  |  | virtual void MakeFocus(bool focusState = true);
|  |  |  |  | virtual void SetFocusTab(int32 tabIndex, bool focusState);
|  |  |  |  | int32 FocusTab() const;
|  |  |  |  | virtual void Draw(BRect);
|  |  |  |  | virtual BRect DrawTabs();
|  |  |  |  | virtual void DrawBox(BRect selectedTabFrame);
|  |  |  |  | virtual BRect TabFrame(int32 tabIndex) const;
|  |  |  |  | virtual void SetFlags(uint32 flags);
|  |  |  |  | virtual void SetResizingMode(uint32 mode);
|  |  |  |  | virtual void GetPreferredSize( float* width, float* height);
|  |  |  |  | virtual void ResizeToPreferred();
|  |  |  |  | virtual BHandler* ResolveSpecifier(BMessage* msg, int32 index, BMessage* specifier, int32 form, const char* property);
|  |  |  |  | virtual status_t GetSupportedSuites(BMessage* data);
|  |  |  |  | virtual void AddTab(BView* tabContents, BTab* tab=NULL);
|  |  |  |  | virtual BTab* RemoveTab(int32 tabIndex);
|  |  |  |  | virtual BTab* TabAt(int32 tabIndex) const;
|  |  |  |  | virtual void SetTabWidth(button_width s);
|  |  |  |  | button_width TabWidth() const;
|  |  |  |  | virtual void SetTabHeight(float height);
|  |  |  |  | float TabHeight() const;
|  |  |  |  | BView* ContainerView() const;
|  |  |  |  | int32 CountTabs() const;
|  |  |  |  | BView* ViewForTab(int32 tabIndex) const;

Legend
| Functional Spec
| Use Cases
| Unit Tests
| Technical Spec
| Implementation
| Completed

The OpenBeOS project is hosted by:

Copyright © 2001-2002 OpenBeOS Project