Rewrote OptionPopUp.h and OptionControl.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22663 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1,19 +1,11 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
/
|
* Copyright 2001-2007, Haiku, Inc. All Rights Reserved.
|
||||||
/ File: OptionControl.h
|
* Distributed under the terms of the MIT License.
|
||||||
/
|
*/
|
||||||
/ Description: A BOptionControl is an abstract interface for BControls that select
|
|
||||||
/ between a set of named values; the names are displayed to the user, but the
|
|
||||||
/ corresponding values are returned in Value().
|
|
||||||
/
|
|
||||||
/ Copyright 1997-99, Be Incorporated, All Rights Reserved
|
|
||||||
/
|
|
||||||
*******************************************************************************/
|
|
||||||
|
|
||||||
#if !defined(_OPTION_CONTROL_H)
|
#ifndef _OPTION_CONTROL_H
|
||||||
#define _OPTION_CONTROL_H
|
#define _OPTION_CONTROL_H
|
||||||
|
|
||||||
#include <InterfaceDefs.h>
|
|
||||||
#include <Control.h>
|
#include <Control.h>
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
@@ -21,75 +13,54 @@ enum {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
class BOptionControl :
|
class BOptionControl : public BControl {
|
||||||
public BControl
|
public:
|
||||||
{
|
BOptionControl(BRect frame, const char *name, const char *label,
|
||||||
public:
|
BMessage *message,
|
||||||
|
uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP,
|
||||||
|
uint32 flags = B_WILL_DRAW);
|
||||||
|
virtual ~BOptionControl();
|
||||||
|
|
||||||
BOptionControl(
|
virtual void MessageReceived(BMessage *message);
|
||||||
BRect frame,
|
|
||||||
const char * name,
|
|
||||||
const char * label,
|
|
||||||
BMessage * message,
|
|
||||||
uint32 resize = B_FOLLOW_LEFT | B_FOLLOW_TOP,
|
|
||||||
uint32 flags = B_WILL_DRAW);
|
|
||||||
virtual ~BOptionControl();
|
|
||||||
|
|
||||||
virtual void MessageReceived(
|
status_t AddOption(const char *name, int32 value);
|
||||||
BMessage * message);
|
virtual bool GetOptionAt(int32 index, const char **outName,
|
||||||
|
int32 *outValue) = 0;
|
||||||
|
virtual void RemoveOptionAt(int32 index) = 0;
|
||||||
|
virtual int32 CountOptions() const = 0;
|
||||||
|
virtual status_t AddOptionAt(const char *name, int32 value,
|
||||||
|
int32 index) = 0;
|
||||||
|
virtual int32 SelectedOption(const char **name = 0,
|
||||||
|
int32 *outValue = 0) const = 0;
|
||||||
|
|
||||||
status_t AddOption(
|
virtual status_t SelectOptionFor(int32 value);
|
||||||
const char * name,
|
virtual status_t SelectOptionFor(const char *name);
|
||||||
int32 value);
|
|
||||||
virtual bool GetOptionAt(
|
|
||||||
int32 index,
|
|
||||||
const char ** out_name,
|
|
||||||
int32 * out_value) = 0;
|
|
||||||
virtual void RemoveOptionAt(
|
|
||||||
int32 index) = 0;
|
|
||||||
virtual int32 CountOptions() const = 0;
|
|
||||||
virtual status_t AddOptionAt(
|
|
||||||
const char * name,
|
|
||||||
int32 value,
|
|
||||||
int32 index) = 0;
|
|
||||||
virtual int32 SelectedOption( // index >= 0 returned directly
|
|
||||||
const char ** name = 0,
|
|
||||||
int32 * value = 0) const = 0;
|
|
||||||
|
|
||||||
virtual status_t SelectOptionFor(
|
protected:
|
||||||
int32 value);
|
BMessage* MakeValueMessage(int32 value);
|
||||||
virtual status_t SelectOptionFor(
|
|
||||||
const char *name);
|
|
||||||
protected:
|
|
||||||
|
|
||||||
BMessage * MakeValueMessage(
|
private:
|
||||||
int32 value);
|
BOptionControl();
|
||||||
|
BOptionControl(const BOptionControl &clone);
|
||||||
|
BOptionControl &operator=(const BOptionControl &clone);
|
||||||
|
|
||||||
private:
|
virtual status_t _Reserved_OptionControl_0(void *, ...);
|
||||||
|
virtual status_t _Reserved_OptionControl_1(void *, ...);
|
||||||
BOptionControl(); /* private unimplemented */
|
virtual status_t _Reserved_OptionControl_2(void *, ...);
|
||||||
BOptionControl(
|
virtual status_t _Reserved_OptionControl_3(void *, ...);
|
||||||
const BOptionControl & clone);
|
virtual status_t _Reserved_OptionControl_4(void *, ...);
|
||||||
BOptionControl & operator=(
|
virtual status_t _Reserved_OptionControl_5(void *, ...);
|
||||||
const BOptionControl & clone);
|
virtual status_t _Reserved_OptionControl_6(void *, ...);
|
||||||
|
virtual status_t _Reserved_OptionControl_7(void *, ...);
|
||||||
/* Mmmh, stuffing! */
|
virtual status_t _Reserved_OptionControl_8(void *, ...);
|
||||||
virtual status_t _Reserved_OptionControl_0(void *, ...);
|
virtual status_t _Reserved_OptionControl_9(void *, ...);
|
||||||
virtual status_t _Reserved_OptionControl_1(void *, ...);
|
virtual status_t _Reserved_OptionControl_10(void *, ...);
|
||||||
virtual status_t _Reserved_OptionControl_2(void *, ...);
|
virtual status_t _Reserved_OptionControl_11(void *, ...);
|
||||||
virtual status_t _Reserved_OptionControl_3(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_4(void *, ...);
|
uint32 _reserved_selection_control_[8];
|
||||||
virtual status_t _Reserved_OptionControl_5(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_6(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_7(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_8(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_9(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_10(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_11(void *, ...);
|
|
||||||
|
|
||||||
uint32 _reserved_selection_control_[8];
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif /* _OPTION_CONTROL_H */
|
#endif /* _OPTION_CONTROL_H */
|
||||||
|
|
||||||
|
|||||||
@@ -1,105 +1,70 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
/
|
* Copyright 2001-2007, Haiku, Inc. All Rights Reserved.
|
||||||
/ File: OptionPopUp.h
|
* Distributed under the terms of the MIT License.
|
||||||
/
|
*/
|
||||||
/ Description: A BOptionPopUp is a BControl that has a popup menu.
|
|
||||||
/
|
|
||||||
/ Copyright 1997-99, Be Incorporated, All Rights Reserved
|
|
||||||
/
|
|
||||||
*******************************************************************************/
|
|
||||||
|
|
||||||
|
#ifndef _OPTION_POP_UP_H
|
||||||
#if !defined(_OPTION_POP_UP_H)
|
|
||||||
#define _OPTION_POP_UP_H
|
#define _OPTION_POP_UP_H
|
||||||
|
|
||||||
#include <OptionControl.h>
|
#include <OptionControl.h>
|
||||||
|
|
||||||
|
|
||||||
class BMenuField;
|
class BMenuField;
|
||||||
|
class BOptionPopUp : public BOptionControl {
|
||||||
|
public:
|
||||||
|
BOptionPopUp(BRect frame, const char *name, const char *label,
|
||||||
|
BMessage *message, uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP,
|
||||||
|
uint32 flags = B_WILL_DRAW);
|
||||||
|
BOptionPopUp(BRect frame, const char *name, const char *label,
|
||||||
|
BMessage *message, bool fixed,
|
||||||
|
uint32 resizeMask = B_FOLLOW_LEFT | B_FOLLOW_TOP,
|
||||||
|
uint32 flags = B_WILL_DRAW);
|
||||||
|
~BOptionPopUp();
|
||||||
|
|
||||||
|
BMenuField* MenuField();
|
||||||
|
|
||||||
|
virtual bool GetOptionAt(int32 index, const char **outName,
|
||||||
|
int32 *outValue);
|
||||||
|
virtual void RemoveOptionAt(int32 index);
|
||||||
|
virtual int32 CountOptions() const;
|
||||||
|
virtual status_t AddOptionAt(const char *name, int32 value,
|
||||||
|
int32 index);
|
||||||
|
|
||||||
|
virtual void AllAttached();
|
||||||
|
virtual void MessageReceived(BMessage *message);
|
||||||
|
virtual void SetLabel(const char *text);
|
||||||
|
virtual void SetValue(int32 value);
|
||||||
|
virtual void SetEnabled(bool enabled);
|
||||||
|
virtual void GetPreferredSize(float *width, float *height);
|
||||||
|
virtual void ResizeToPreferred();
|
||||||
|
|
||||||
|
virtual int32 SelectedOption(const char **outName = 0,
|
||||||
|
int32 * outValue = 0) const;
|
||||||
|
private:
|
||||||
|
|
||||||
|
BOptionPopUp();
|
||||||
|
BOptionPopUp(const BOptionPopUp &clone);
|
||||||
|
BOptionPopUp &operator=(const BOptionPopUp &clone);
|
||||||
|
|
||||||
|
|
||||||
|
virtual status_t _Reserved_OptionControl_0(void *, ...);
|
||||||
|
virtual status_t _Reserved_OptionControl_1(void *, ...);
|
||||||
|
virtual status_t _Reserved_OptionControl_2(void *, ...);
|
||||||
|
virtual status_t _Reserved_OptionControl_3(void *, ...);
|
||||||
|
|
||||||
class BOptionPopUp :
|
virtual status_t _Reserved_OptionPopUp_0(void *, ...);
|
||||||
public BOptionControl
|
virtual status_t _Reserved_OptionPopUp_1(void *, ...);
|
||||||
{
|
virtual status_t _Reserved_OptionPopUp_2(void *, ...);
|
||||||
public:
|
virtual status_t _Reserved_OptionPopUp_3(void *, ...);
|
||||||
BOptionPopUp(
|
virtual status_t _Reserved_OptionPopUp_4(void *, ...);
|
||||||
BRect frame,
|
virtual status_t _Reserved_OptionPopUp_5(void *, ...);
|
||||||
const char * name,
|
virtual status_t _Reserved_OptionPopUp_6(void *, ...);
|
||||||
const char * label,
|
virtual status_t _Reserved_OptionPopUp_7(void *, ...);
|
||||||
BMessage * message,
|
|
||||||
uint32 resize = B_FOLLOW_LEFT | B_FOLLOW_TOP,
|
|
||||||
uint32 flags = B_WILL_DRAW);
|
|
||||||
BOptionPopUp(
|
|
||||||
BRect frame,
|
|
||||||
const char * name,
|
|
||||||
const char * label,
|
|
||||||
BMessage * message,
|
|
||||||
bool fixed,
|
|
||||||
uint32 resize = B_FOLLOW_LEFT | B_FOLLOW_TOP,
|
|
||||||
uint32 flags = B_WILL_DRAW);
|
|
||||||
~BOptionPopUp();
|
|
||||||
|
|
||||||
BMenuField * MenuField();
|
|
||||||
|
|
||||||
virtual bool GetOptionAt(
|
|
||||||
int32 index,
|
|
||||||
const char ** out_name,
|
|
||||||
int32 * out_value);
|
|
||||||
virtual void RemoveOptionAt(
|
|
||||||
int32 index);
|
|
||||||
virtual int32 CountOptions() const;
|
|
||||||
virtual status_t AddOptionAt(
|
|
||||||
const char * name,
|
|
||||||
int32 value,
|
|
||||||
int32 index);
|
|
||||||
|
|
||||||
virtual void AllAttached();
|
|
||||||
virtual void MessageReceived(
|
|
||||||
BMessage * message);
|
|
||||||
virtual void SetLabel(
|
|
||||||
const char *text);
|
|
||||||
virtual void SetValue(
|
|
||||||
int32 value);
|
|
||||||
virtual void SetEnabled(
|
|
||||||
bool on);
|
|
||||||
virtual void GetPreferredSize(
|
|
||||||
float *width,
|
|
||||||
float *height);
|
|
||||||
virtual void ResizeToPreferred();
|
|
||||||
virtual int32 SelectedOption(
|
|
||||||
const char ** outName = 0,
|
|
||||||
int32 * outValue = 0) const;
|
|
||||||
private:
|
|
||||||
|
|
||||||
BOptionPopUp(); /* private unimplemented */
|
|
||||||
BOptionPopUp(
|
|
||||||
const BOptionPopUp & clone);
|
|
||||||
BOptionPopUp & operator=(
|
|
||||||
const BOptionPopUp & clone);
|
|
||||||
|
|
||||||
/* Mmmh, stuffing! */
|
|
||||||
virtual status_t _Reserved_OptionControl_0(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_1(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_2(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionControl_3(void *, ...);
|
|
||||||
/* Mmmh, stuffing! */
|
|
||||||
virtual status_t _Reserved_OptionPopUp_0(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_1(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_2(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_3(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_4(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_5(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_6(void *, ...);
|
|
||||||
virtual status_t _Reserved_OptionPopUp_7(void *, ...);
|
|
||||||
|
|
||||||
|
|
||||||
BMenuField * _mField;
|
BMenuField* fMenuField;
|
||||||
uint32 _reserved_menu_control_[8];
|
uint32 _reserved_menu_control_[8];
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* _OPTION_POP_UP_H */
|
#endif /* _OPTION_POP_UP_H */
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2003-2005, Haiku, Inc.
|
* Copyright 2003-2007, Haiku, Inc.
|
||||||
* Distributed under the terms of the MIT license.
|
* Distributed under the terms of the MIT license.
|
||||||
*
|
*
|
||||||
* Authors:
|
* Authors:
|
||||||
* Stefano Ceccherini ([email protected])
|
* Stefano Ceccherini <[email protected]>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@@ -38,8 +38,8 @@ BOptionPopUp::BOptionPopUp(BRect frame, const char *name, const char *label,
|
|||||||
: BOptionControl(frame, name, label, message, resize, flags)
|
: BOptionControl(frame, name, label, message, resize, flags)
|
||||||
{
|
{
|
||||||
BPopUpMenu *popUp = new BPopUpMenu(label, true, true);
|
BPopUpMenu *popUp = new BPopUpMenu(label, true, true);
|
||||||
_mField = new BMenuField(Bounds(), "_menu", label, popUp);
|
fMenuField = new BMenuField(Bounds(), "_menu", label, popUp);
|
||||||
AddChild(_mField);
|
AddChild(fMenuField);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -58,8 +58,8 @@ BOptionPopUp::BOptionPopUp(BRect frame, const char *name, const char *label,
|
|||||||
: BOptionControl(frame, name, label, message, resize, flags)
|
: BOptionControl(frame, name, label, message, resize, flags)
|
||||||
{
|
{
|
||||||
BPopUpMenu *popUp = new BPopUpMenu(label, true, true);
|
BPopUpMenu *popUp = new BPopUpMenu(label, true, true);
|
||||||
_mField = new BMenuField(Bounds(), "_menu", label, popUp, fixed);
|
fMenuField = new BMenuField(Bounds(), "_menu", label, popUp, fixed);
|
||||||
AddChild(_mField);
|
AddChild(fMenuField);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ BOptionPopUp::~BOptionPopUp()
|
|||||||
BMenuField *
|
BMenuField *
|
||||||
BOptionPopUp::MenuField()
|
BOptionPopUp::MenuField()
|
||||||
{
|
{
|
||||||
return _mField;
|
return fMenuField;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -91,7 +91,7 @@ bool
|
|||||||
BOptionPopUp::GetOptionAt(int32 index, const char **outName, int32 *outValue)
|
BOptionPopUp::GetOptionAt(int32 index, const char **outName, int32 *outValue)
|
||||||
{
|
{
|
||||||
bool result = false;
|
bool result = false;
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
|
|
||||||
if (menu != NULL) {
|
if (menu != NULL) {
|
||||||
BMenuItem *item = menu->ItemAt(index);
|
BMenuItem *item = menu->ItemAt(index);
|
||||||
@@ -115,7 +115,7 @@ BOptionPopUp::GetOptionAt(int32 index, const char **outName, int32 *outValue)
|
|||||||
void
|
void
|
||||||
BOptionPopUp::RemoveOptionAt(int32 index)
|
BOptionPopUp::RemoveOptionAt(int32 index)
|
||||||
{
|
{
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
if (menu != NULL) {
|
if (menu != NULL) {
|
||||||
BMenuItem *item = menu->ItemAt(index);
|
BMenuItem *item = menu->ItemAt(index);
|
||||||
if (item != NULL) {
|
if (item != NULL) {
|
||||||
@@ -131,7 +131,7 @@ BOptionPopUp::RemoveOptionAt(int32 index)
|
|||||||
int32
|
int32
|
||||||
BOptionPopUp::CountOptions() const
|
BOptionPopUp::CountOptions() const
|
||||||
{
|
{
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
return (menu != NULL) ? menu->CountItems() : 0;
|
return (menu != NULL) ? menu->CountItems() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -147,7 +147,7 @@ BOptionPopUp::CountOptions() const
|
|||||||
status_t
|
status_t
|
||||||
BOptionPopUp::AddOptionAt(const char *name, int32 value, int32 index)
|
BOptionPopUp::AddOptionAt(const char *name, int32 value, int32 index)
|
||||||
{
|
{
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
if (menu == NULL)
|
if (menu == NULL)
|
||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
|
|
||||||
@@ -182,10 +182,10 @@ BOptionPopUp::AddOptionAt(const char *name, int32 value, int32 index)
|
|||||||
void
|
void
|
||||||
BOptionPopUp::AllAttached()
|
BOptionPopUp::AllAttached()
|
||||||
{
|
{
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
if (menu != NULL) {
|
if (menu != NULL) {
|
||||||
float labelWidth = _mField->StringWidth(_mField->Label());
|
float labelWidth = fMenuField->StringWidth(fMenuField->Label());
|
||||||
_mField->SetDivider(labelWidth + kLabelSpace);
|
fMenuField->SetDivider(labelWidth + kLabelSpace);
|
||||||
menu->SetTargetForItems(this);
|
menu->SetTargetForItems(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -205,11 +205,11 @@ void
|
|||||||
BOptionPopUp::SetLabel(const char *text)
|
BOptionPopUp::SetLabel(const char *text)
|
||||||
{
|
{
|
||||||
BControl::SetLabel(text);
|
BControl::SetLabel(text);
|
||||||
_mField->SetLabel(text);
|
fMenuField->SetLabel(text);
|
||||||
// We are not sure the menu can keep the whole
|
// We are not sure the menu can keep the whole
|
||||||
// string as label, so we ask it what label it's got
|
// string as label, so we ask it what label it's got
|
||||||
float newWidth = _mField->StringWidth(_mField->Label());
|
float newWidth = fMenuField->StringWidth(fMenuField->Label());
|
||||||
_mField->SetDivider(newWidth + kLabelSpace);
|
fMenuField->SetDivider(newWidth + kLabelSpace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -221,7 +221,7 @@ void
|
|||||||
BOptionPopUp::SetValue(int32 value)
|
BOptionPopUp::SetValue(int32 value)
|
||||||
{
|
{
|
||||||
BControl::SetValue(value);
|
BControl::SetValue(value);
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
if (menu == NULL)
|
if (menu == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -267,7 +267,7 @@ BOptionPopUp::GetPreferredSize(float* _width, float* _height)
|
|||||||
// Calculate control's height, looking at the BMenuField font's height
|
// Calculate control's height, looking at the BMenuField font's height
|
||||||
if (_height != NULL) {
|
if (_height != NULL) {
|
||||||
font_height fontHeight;
|
font_height fontHeight;
|
||||||
_mField->GetFontHeight(&fontHeight);
|
fMenuField->GetFontHeight(&fontHeight);
|
||||||
|
|
||||||
*_height = fontHeight.ascent + fontHeight.descent
|
*_height = fontHeight.ascent + fontHeight.descent
|
||||||
+ fontHeight.leading + kHeightModifier;
|
+ fontHeight.leading + kHeightModifier;
|
||||||
@@ -275,7 +275,7 @@ BOptionPopUp::GetPreferredSize(float* _width, float* _height)
|
|||||||
|
|
||||||
if (_width != NULL) {
|
if (_width != NULL) {
|
||||||
float maxWidth = 0;
|
float maxWidth = 0;
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
if (menu == NULL)
|
if (menu == NULL)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -291,7 +291,7 @@ BOptionPopUp::GetPreferredSize(float* _width, float* _height)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
maxWidth += _mField->StringWidth(BControl::Label()) + kLabelSpace + kWidthModifier;
|
maxWidth += fMenuField->StringWidth(BControl::Label()) + kLabelSpace + kWidthModifier;
|
||||||
*_width = maxWidth;
|
*_width = maxWidth;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -309,8 +309,8 @@ BOptionPopUp::ResizeToPreferred()
|
|||||||
GetPreferredSize(&width, &height);
|
GetPreferredSize(&width, &height);
|
||||||
ResizeTo(width, height);
|
ResizeTo(width, height);
|
||||||
|
|
||||||
float newWidth = _mField->StringWidth(BControl::Label());
|
float newWidth = fMenuField->StringWidth(BControl::Label());
|
||||||
_mField->SetDivider(newWidth + kLabelSpace);
|
fMenuField->SetDivider(newWidth + kLabelSpace);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -322,7 +322,7 @@ BOptionPopUp::ResizeToPreferred()
|
|||||||
int32
|
int32
|
||||||
BOptionPopUp::SelectedOption(const char **outName, int32 *outValue) const
|
BOptionPopUp::SelectedOption(const char **outName, int32 *outValue) const
|
||||||
{
|
{
|
||||||
BMenu *menu = _mField->Menu();
|
BMenu *menu = fMenuField->Menu();
|
||||||
if (menu != NULL) {
|
if (menu != NULL) {
|
||||||
BMenuItem *marked = menu->FindMarked();
|
BMenuItem *marked = menu->FindMarked();
|
||||||
if (marked != NULL) {
|
if (marked != NULL) {
|
||||||
|
|||||||
Reference in New Issue
Block a user