Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
BAlert Class Reference

The BAlert class defines a modal alert dialog which displays a short message and provides a set of labeled buttons that allow the user to respond. More...

Inherits BWindow.

Public Member Functions

 BAlert ()
 Create an unconfigured BAlert dialog.
 
 BAlert (BMessage *data)
 Unarchives an alert from a BMessage.
 
 BAlert (const char *title, const char *text, const char *button1, const char *button2, const char *button3, button_width width, button_spacing spacing, alert_type type=B_INFO_ALERT)
 Creates and initializes a BAlert dialog.
 
 BAlert (const char *title, const char *text, const char *button1, const char *button2=NULL, const char *button3=NULL, button_width width=B_WIDTH_AS_USUAL, alert_type type=B_INFO_ALERT)
 Creates and initializes a BAlert dialog.
 
virtual ~BAlert ()
 Destructor method.
 
void AddButton (const char *label, char key=0)
 Adds a button to the alert.
 
BButtonButtonAt (int32 index) const
 Returns a pointer to the BButton at the specified index.
 
int32 CountButtons () const
 Counts the number of buttons in the alert.
 
virtual void DispatchMessage (BMessage *message, BHandler *handler)
 Sends out a message.
 
virtual void FrameResized (float newWidth, float newHeight)
 Resizes the alert dialog.
 
virtual status_t GetSupportedSuites (BMessage *data)
 
int32 Go ()
 Displays the alert window.
 
status_t Go (BInvoker *invoker)
 Displays the alert window from a specified invoker.
 
virtual void MessageReceived (BMessage *message)
 Initiates an action from a received message.
 
virtual status_t Perform (perform_code d, void *arg)
 Perform some action. (Internal Method)
 
virtual void Quit ()
 Quits the window closing it.
 
virtual bool QuitRequested ()
 Hook method that gets called with the window is closed.
 
virtual BHandlerResolveSpecifier (BMessage *message, int32 index, BMessage *specifier, int32 form, const char *property)
 
void SetButtonSpacing (button_spacing spacing)
 Set the button spacing for the alert.
 
void SetButtonWidth (button_width width)
 Set the button width for the buttons of the alert.
 
void SetIcon (BBitmap *bitmap)
 Set a custom icon for the alert.
 
void SetShortcut (int32 buttonIndex, char key)
 Sets the shortcut character which is mapped to a button at the specified index.
 
void SetText (const char *text)
 Set the text for the alert.
 
void SetType (alert_type type)
 Set the type of the alert.
 
char Shortcut (int32 buttonIndex) const
 Gets the shortcut character which is mapped to a button at the specified index.
 
BTextViewTextView () const
 Returns the Alert's TextView.
 
alert_type Type () const
 Get the alert_type of this alert.
 
- Public Member Functions inherited from BWindow
 BWindow (BMessage *archive)
 Archive constructor.
 
 BWindow (BRect frame, const char *title, window_look look, window_feel feel, uint32 flags, uint32 workspace=B_CURRENT_WORKSPACE)
 Creates a new BWindow object with the specified look and feel.
 
 BWindow (BRect frame, const char *title, window_type type, uint32 flags, uint32 workspace=B_CURRENT_WORKSPACE)
 Creates a new BWindow object.
 
virtual ~BWindow ()
 Destroys the BWindow object and all attached views.
 
void Activate (bool=true)
 Activates or deactivates the window based on active.
 
void AddChild (BLayoutItem *child)
 Add the child layout item to the view hierarchy.
 
void AddChild (BView *child, BView *before=NULL)
 Adds child to the view hierarchy immediately before before.
 
status_t AddToSubset (BWindow *window)
 Adds window to be in the subset of the BWindow.
 
virtual status_t Archive (BMessage *archive, bool deep=true) const
 Archives the object into the data message.
 
void BeginViewTransaction ()
 Stall updates to App Server allowing you to batch drawing commands to limit flickering.
 
BRect Bounds () const
 Returns the bounding rectangle of the window.
 
void CenterIn (const BRect &rect)
 Center the window in rect.
 
void CenterOnScreen ()
 Centers the window on the screen the window is currently on.
 
void CenterOnScreen (screen_id id)
 Centers the window on the screen with the passed in id.
 
BViewChildAt (int32 index) const
 Returns a pointer to the child view found at index.
 
void Close ()
 Deprecated alias for BWindow::Quit().
 
void ConvertFromScreen (BPoint *point) const
 Convert point from the screen's coordinate system to the window's coordinate system in place.
 
BPoint ConvertFromScreen (BPoint point) const
 Returns point converted from the screen's coordinate system to the window's coordinate system.
 
void ConvertFromScreen (BRect *rect) const
 Convert rect from the screen's coordinate system to the window's coordinate system in place.
 
BRect ConvertFromScreen (BRect rect) const
 Returns rect converted from the screen's coordinate system to the window's coordinate system.
 
void ConvertToScreen (BPoint *point) const
 Convert point to the screen's coordinate system in place.
 
BPoint ConvertToScreen (BPoint point) const
 Returns point converted to the screen's coordinate system.
 
void ConvertToScreen (BRect *rect) const
 Convert rect to the screen's coordinate system in place.
 
BRect ConvertToScreen (BRect rect) const
 Returns rect converted to the screen's coordinate system.
 
int32 CountChildren () const
 Returns the number of child views that the window has.
 
BViewCurrentFocus () const
 Returns a pointer to the current focus view of the window.
 
BRect DecoratorFrame () const
 Returns the frame rectangle of the window decorator.
 
BButtonDefaultButton () const
 Returns a pointer to the default button set on the window.
 
void DisableUpdates ()
 Suppresses drawing within the window.
 
virtual void DispatchMessage (BMessage *message, BHandler *handler)
 Window's central message-processing method.
 
void EnableUpdates ()
 Re-enable drawing within the window.
 
void EndViewTransaction ()
 Ends a view transaction allowing update to go to App Server again.
 
window_feel Feel () const
 Returns the current window feel flag.
 
BViewFindView (BPoint) const
 Returns a pointer to the attached view located at the specified point.
 
BViewFindView (const char *viewName) const
 Returns the attached view with the specified viewName.
 
uint32 Flags () const
 Returns the current window flags.
 
void Flush () const
 Flushes the window's connection to App Server causing any pending messages to be processed then returns immediately.
 
BRect Frame () const
 Returns the frame rectangle of the window.
 
virtual void FrameMoved (BPoint newPosition)
 Hook method that gets called when the window is moved.
 
virtual void FrameResized (float newWidth, float newHeight)
 Hook method that gets called when the window is resized.
 
status_t GetDecoratorSettings (BMessage *settings) const
 Fill out the window's decorator settings into settings.
 
BLayoutGetLayout () const
 Get the layout of the window.
 
void GetSizeLimits (float *minWidth, float *maxWidth, float *minHeight, float *maxHeight)
 Fills out the size limits set on the window.
 
virtual status_t GetSupportedSuites (BMessage *data)
 Reports the suites of messages and specifiers understood by the window.
 
status_t GetWindowAlignment (window_alignment *mode=NULL, int32 *h=NULL, int32 *hOffset=NULL, int32 *width=NULL, int32 *widthOffset=NULL, int32 *v=NULL, int32 *vOffset=NULL, int32 *height=NULL, int32 *heightOffset=NULL) const
 Fills out the pointers with the alignment of the content of the window on the screen.
 
virtual void Hide ()
 Removes the window from the screen, removes it from Deskbar's window list, and passes active status to another window.
 
void InvalidateLayout (bool descendants=false)
 Invalidate layout.
 
bool InViewTransaction () const
 Returns whether or not the window is currently in a view transaction.
 
bool IsActive () const
 Returns whether or not the window is active.
 
bool IsFloating () const
 Returns whether or not the window is floating.
 
bool IsFront () const
 Returns whether or not the window is the frontmost on screen.
 
bool IsHidden () const
 Returns whether or not the window is hidden.
 
bool IsMinimized () const
 Returns whether or not the window is minimized.
 
bool IsModal () const
 Returns whether or not the window is modal.
 
bool IsOffscreenWindow () const
 Tests if window is used for drawing into a BBitmap. This is mostly used by the Interface Kit itself.
 
BMenuBarKeyMenuBar () const
 Returns a pointer to the key menu bar set to the window.
 
BViewLastMouseMovedView () const
 Returns a pointer to the attached view that most recently received a B_MOUSE_MOVED message.
 
void Layout (bool force)
 Update the size limits and do the layout of the topmost view attached to the window.
 
window_look Look () const
 Returns the current window look flag.
 
virtual void MenusBeginning ()
 Hook method that gets called just before a menu owned by the window is shown.
 
virtual void MenusEnded ()
 Hook method that gets called just before a menu owned by the window is hidden.
 
virtual void MessageReceived (BMessage *message)
 Handle message received by the associated looper.
 
virtual void Minimize (bool minimize)
 Minimizes or un-minimizes the window based on minimize.
 
void MoveBy (float dx, float dy)
 Move the window by dx pixels horizontally and dy pixels vertically.
 
void MoveOnScreen (uint32 flags=0)
 Update window size and position to make it visible on screen.
 
void MoveTo (BPoint)
 Move the window to point.
 
void MoveTo (float x, float y)
 Move the window to the specified x and y coordinates.
 
bool NeedsUpdate () const
 Returns whether or not any of the attached views need to be updated.
 
virtual status_t Perform (perform_code code, void *data)
 Internal method.
 
bigtime_t PulseRate () const
 Returns the pulse rate of the window.
 
virtual void Quit ()
 Deletes the window and all child views, destroys the window thread, removes the window's connection to the Application Server, and deletes the object.
 
virtual bool QuitRequested ()
 Hook method that gets called when the window receives a B_QUIT_REQUESTED message.
 
bool RemoveChild (BView *child)
 Removes child from the view hierarchy.
 
status_t RemoveFromSubset (BWindow *window)
 Remove window from the subset of the BWindow.
 
void ResizeBy (float dx, float dy)
 Resize the window by dx pixels horizontally and dy pixels vertically.
 
void ResizeTo (float width, float height)
 Resize the window to the specified width and height.
 
void ResizeToPreferred ()
 Resize the window to the preferred size of the window's layout.
 
virtual BHandlerResolveSpecifier (BMessage *message, int32 index, BMessage *specifier, int32 what, const char *property)
 
virtual thread_id Run ()
 Spawns the message loop thread and starts the window running.
 
virtual void ScreenChanged (BRect screenSize, color_space depth)
 Hook method that is called when the screen that the window is located on changes size or location or the color space of the screen changes.
 
status_t SendBehind (const BWindow *window)
 Moves the BWindow object behind window.
 
status_t SetDecoratorSettings (const BMessage &settings)
 Set the window decorator settings according to settings.
 
void SetDefaultButton (BButton *button)
 Set the default button of the window to button.
 
status_t SetFeel (window_feel feel)
 Changes the window feel set in the constructor to feel.
 
status_t SetFlags (uint32)
 Changes the window flags set in the constructor to flags.
 
void SetKeyMenuBar (BMenuBar *bar)
 Set the specified menu bar as the key menu bar for the window.
 
virtual void SetLayout (BLayout *layout)
 Sets the layout of the window.
 
status_t SetLook (window_look look)
 Changes the window look set in the constructor to look.
 
void SetPulseRate (bigtime_t rate)
 Sets how often B_PULSE messages are posted to the window.
 
void SetSizeLimits (float minWidth, float maxWidth, float minHeight, float maxHeight)
 Set size limits on the window.
 
void SetTitle (const char *title)
 Sets the window title to title.
 
status_t SetType (window_type type)
 Changes the window type set in the constructor to type.
 
status_t SetWindowAlignment (window_alignment mode, int32 h, int32 hOffset=0, int32 width=0, int32 widthOffset=0, int32 v=0, int32 vOffset=0, int32 height=0, int32 heightOffset=0)
 Sets the alignment of the content of the window on the screen.
 
void SetWorkspaces (uint32)
 Sets the set of workspaces where the window can be displayed.
 
void SetZoomLimits (float maxWidth, float maxHeight)
 Sets the maximum size that the window will zoom to when Zoom() is called.
 
virtual void Show ()
 Shows the window on screen, places it frontmost on the screen, adds the window to Deskbar's window list, and makes it the active window.
 
BSize Size () const
 Returns the size of the window.
 
void Sync () const
 Synchronizes the attached window's connection to App Server causing any pending messages to be processed and then waits for the App Server to respond.
 
const char * Title () const
 Returns the window title as set by the constructor or SetTitle().
 
window_type Type () const
 Returns the current window type flag.
 
void UpdateIfNeeded ()
 Invokes Draw() immediately on each child view that needs updating.
 
void UpdateSizeLimits ()
 Updates the window's size limits from the minimum and maximum sizes of its top view.
 
virtual void WindowActivated (bool focus)
 Hook method that gets called when the window becomes activated or deactivated.
 
virtual void WorkspaceActivated (int32 workspace, bool state)
 Hook method that gets called when the active workspace changes.
 
uint32 Workspaces () const
 Returns the set of workspaces where the window can be displayed.
 
virtual void WorkspacesChanged (uint32 oldWorkspaces, uint32 newWorkspaces)
 Hook method that gets called whenever the workspaces the window is in changes.
 
void Zoom ()
 Resize the window to the minimum of the screen size, the maximum values set by SetSizeLimits(), and the maximum values set by SetZoomLimits().
 
virtual void Zoom (BPoint origin, float width, float height)
 Move window to origin, then resize to width and height.
 
void AddShortcut (uint32 key, uint32 modifiers, BMessage *message)
 Creates a keyboard shortcut that sends a message to the window.
 
void AddShortcut (uint32 key, uint32 modifiers, BMessage *message, BHandler *target)
 Creates a keyboard shortcut that sends a message to the specified target.
 
bool HasShortcut (uint32 key, uint32 modifiers)
 Returns whether or not the specified shortcut is set on the window.
 
void RemoveShortcut (uint32 key, uint32 modifiers)
 Removes the specified shortcut from the window.
 
- Public Member Functions inherited from BLooper
 BLooper (const char *name=NULL, int32 priority=B_NORMAL_PRIORITY, int32 portCapacity=B_LOOPER_PORT_DEFAULT_CAPACITY)
 Construct a new BLooper with a priority and an capacity.
 
virtual ~BLooper ()
 Destruct the looper.
 
virtual status_t Perform (perform_code d, void *arg)
 Internal method.
 
status_t PostMessage (uint32 command)
 Post a message with the command as what identifier to this looper.
 
status_t PostMessage (BMessage *message)
 Post a message to this looper.
 
status_t PostMessage (uint32 command, BHandler *handler, BHandler *replyTo=NULL)
 Sends a message with command what identifier to the handler associated with this looper. A response may be sent to the replyTo handler asynchronously.
 
status_t PostMessage (BMessage *message, BHandler *handler, BHandler *replyTo=NULL)
 Send a message to the handler associated with this looper. A response may be sent to the replyTo handler asynchronously.
 
BMessageCurrentMessage () const
 Retrieve the current message.
 
BMessageDetachCurrentMessage ()
 Get ownership of the message currently being processed.
 
void DispatchExternalMessage (BMessage *message, BHandler *handler, bool &_detached)
 Internal method to support single-threaded GUI toolkits.
 
BMessageQueueMessageQueue () const
 Get a pointer to the internal message queue of this looper.
 
bool IsMessageWaiting () const
 Check if there is a message waiting.
 
void AddHandler (BHandler *handler)
 Associate a handler to this looper.
 
bool RemoveHandler (BHandler *handler)
 Disassociate a handler from this looper.
 
int32 CountHandlers () const
 Get the number of handlers associated with this looper.
 
BHandlerHandlerAt (int32 index) const
 Get the handler at an index of the list of associated handlers.
 
int32 IndexOf (BHandler *handler) const
 Get the index of the handler that is in the associated handler list.
 
BHandlerPreferredHandler () const
 Get the preferred handler.
 
void SetPreferredHandler (BHandler *handler)
 Set a preferred handler.
 
thread_id LockingThread () const
 Return the thread id of the thread that currently holds the lock.
 
int32 CountLocks () const
 Return the number of recursive locks that are currently being held on this looper.
 
int32 CountLockRequests () const
 Return the number of pending locks.
 
sem_id Sem () const
 Return the id of the semaphore that is used to lock this looper.
 
virtual void AddCommonFilter (BMessageFilter *filter)
 Add a common filter to the list of filters that are applied to all incoming messages.
 
virtual bool RemoveCommonFilter (BMessageFilter *filter)
 Remove a filter from the common message filter list.
 
virtual void SetCommonFilterList (BList *filters)
 Set a new list of filters that need to be applied to all incoming messages.
 
BListCommonFilterList () const
 Return a list of filters applied to all incoming messages.
 
 BLooper (BMessage *data)
 Construct a looper from an archived message.
 
void Loop ()
 Run the event loop in the current thread.
 
bool Lock ()
 Lock the looper.
 
void Unlock ()
 Unlock a locked looper.
 
bool IsLocked () const
 Check if a looper is locked.
 
status_t LockWithTimeout (bigtime_t timeout)
 Lock a looper with a timeout.
 
thread_id Thread () const
 Return the thread id of the internal message looper thread.
 
team_id Team () const
 Return the team id in which this looper exists.
 
- Public Member Functions inherited from BHandler
 BHandler (const char *name=NULL)
 Construct a new handler with a name.
 
virtual ~BHandler ()
 Free the filters of this handler, as well as the list of observers.
 
virtual status_t Perform (perform_code d, void *arg)
 Perform some action (Internal method defined for binary compatibility purposes).
 
 BHandler (BMessage *data)
 Construct a handler from an archived message.
 
BLooperLooper () const
 Return a pointer to the looper that this handler is associated with.
 
void SetName (const char *name)
 Set or change the name of this handler.
 
const char * Name () const
 Return the name of this handler.
 
virtual void SetNextHandler (BHandler *handler)
 Set the next handler in the chain that the message is passed on to if this handler cannot process it.
 
BHandlerNextHandler () const
 Return the next hander in the chain to which the message is passed on.
 
virtual void AddFilter (BMessageFilter *filter)
 Add filter as a prerequisite to this handler.
 
virtual bool RemoveFilter (BMessageFilter *filter)
 Remove filter from the filter list.
 
virtual void SetFilterList (BList *filters)
 Set the internal list of filters to filters.
 
BListFilterList ()
 Return a pointer to the list of filters.
 
bool LockLooper ()
 Lock the looper associated with this handler.
 
status_t LockLooperWithTimeout (bigtime_t timeout)
 Lock the looper associated with this handler, with a time out value.
 
void UnlockLooper ()
 Unlock the looper.
 
status_t StartWatching (BMessenger target, uint32 what)
 Subscribe this handler to watch a specific state change of a target.
 
status_t StartWatchingAll (BMessenger target)
 Subscribe this handler to watch a target for all events.
 
status_t StopWatching (BMessenger target, uint32 what)
 Unsubscribe this handler from watching a specific state.
 
status_t StopWatchingAll (BMessenger target)
 Unsubscribe this handler from watching all states.
 
status_t StartWatching (BHandler *observer, uint32 what)
 Subscribe an observer for a specific state change of this handler.
 
status_t StartWatchingAll (BHandler *observer)
 Subscribe an observer for a all state changes.
 
status_t StopWatching (BHandler *observer, uint32 what)
 Unsubscribe an observer from watching a specific state.
 
status_t StopWatchingAll (BHandler *observer)
 Unsubscribe an observer from watching all states.
 
virtual void SendNotices (uint32 what, const BMessage *notice=NULL)
 Emit a state change to the observers.
 
bool IsWatched () const
 Check if there are any observers watching this handler.
 
- Public Member Functions inherited from BArchivable
 BArchivable ()
 Constructor. Does nothing.
 
 BArchivable (BMessage *from)
 Constructor. Does important behind-the-scenes work in the unarchiving process.
 
virtual ~BArchivable ()
 Destructor. Does nothing.
 
virtual status_t AllArchived (BMessage *archive) const
 Method relating to the use of BArchiver.
 
virtual status_t AllUnarchived (const BMessage *archive)
 Method relating to the use of BUnarchiver.
 
virtual status_t Archive (BMessage *into, bool deep=true) const
 Archive the object into a BMessage.
 
virtual status_t Perform (perform_code d, void *arg)
 Perform some action (Internal method defined for binary compatibility purposes).
 

Static Public Member Functions

static BPoint AlertPosition (float width, float height)
 Resizes the Alert window to the width and height specified and return the Point of the top-left corner of the alert window.
 
- Static Public Member Functions inherited from BWindow
static BArchivableInstantiate (BMessage *archive)
 Creates a new BWindow object from the data message.
 
- Static Public Member Functions inherited from BLooper
static BArchivableInstantiate (BMessage *data)
 Static method to instantiate a looper from an archived message.
 
static BLooperLooperForThread (thread_id thread)
 Static method to retrieve a BLooper for a specified thread.
 
- Static Public Member Functions inherited from BHandler
static BArchivableInstantiate (BMessage *data)
 Static method to instantiate a handler from an archived message.
 
- Static Public Member Functions inherited from BArchivable
static BArchivableInstantiate (BMessage *archive)
 Static member to restore objects from messages.
 

Archiving

virtual status_t Archive (BMessage *data, bool deep=true) const
 Archives the BAlert into archive.
 
static BArchivableInstantiate (BMessage *data)
 Instantiates a BAlert from a BMessage.
 

Additional Inherited Members

- Protected Member Functions inherited from BLooper
BMessageMessageFromPort (bigtime_t=B_INFINITE_TIMEOUT)
 Hook method to retrieve a message from the looper's port.
 

Detailed Description

The BAlert class defines a modal alert dialog which displays a short message and provides a set of labeled buttons that allow the user to respond.

The alert can be configured with a set of one to three buttons. These buttons are assigned indexes 0, 1, and 2 from right-to-left respectively and are automatically positioned by the system. The user can either click on one of the buttons or use a shortcut key to select a button.

The layout of the buttons can be configured by setting the button_width and button_spacing properties in the BAlert constructor. The icon displayed in the alert can also be configured by setting the alert_type property. The right-most button (index 0) is the default button which can be activated by pushing the Enter key.

Below is an example of an unsaved changes alert dialog:

When the user responds by selecting one of the buttons the alert window is removed from the screen. The index of the selected button is returned to the calling application and the BAlert object is deleted.

The code used to create and display an alert dialog like the one shown above is shown below:

BAlert* alert = new BAlert("Close and save dialog", "Save changes to...",
"Cancel", "Don't save", "Save", B_WIDTH_AS_USUAL, B_OFFSET_SPACING,
alert->SetShortcut(0, B_ESCAPE);
int32 button_index = alert->Go();
@ B_OFFSET_SPACING
Definition: Alert.h:25
@ B_WARNING_ALERT
Definition: Alert.h:19
@ B_WIDTH_AS_USUAL
Definition: InterfaceDefs.h:193
__haiku_int32 int32
4-bytes signed integer.
Definition: SupportDefs.h:24
The BAlert class defines a modal alert dialog which displays a short message and provides a set of la...
Definition: Alert.h:37
void SetShortcut(int32 buttonIndex, char key)
Sets the shortcut character which is mapped to a button at the specified index.
int32 Go()
Displays the alert window.
BAlert()
Create an unconfigured BAlert dialog.

The messaged displayed in the dialog window along with the button labels are set by the strings in the contructor. The Cancel button is offset to the left relative to the other buttons by setting the B_OFFSET_SPACING flag. The B_WARNING_ALERT flag displays the exclamation mark icon in the dialog.

Any alert with a Cancel button should map the Escape key as shown in the example above. You can setup additional shortcut keys for the buttons with the SetShortcut() method.

The Go() method does the work of loading up and removing the alert window and returns the index of the button that the user selected.

Since
BeOS R3

Constructor & Destructor Documentation

◆ BAlert() [1/4]

BAlert::BAlert ( )

Create an unconfigured BAlert dialog.

This method creates an unconfigured BAlert. You can configure it with methods like SetText(), SetType() and SetButtonSpacing.

It is advised to use one of the other constructors that help set up all the configuration in one go, instead of doing it piece by piece with this method.

Since
BeOS R3

◆ BAlert() [2/4]

BAlert::BAlert ( const char *  title,
const char *  text,
const char *  button1,
const char *  button2 = NULL,
const char *  button3 = NULL,
button_width  width = B_WIDTH_AS_USUAL,
alert_type  type = B_INFO_ALERT 
)

Creates and initializes a BAlert dialog.

Parameters
titleThe title of the window. Since the alert window doesn't have a title tab, the title is not actually displayed anywhere but is useful for debugging purposes.
textThe text that is displayed at the top of the window.
button1Button 1 label
button2Button 2 label
button3Button 3 label
widthA constant that describes how the button should be sized. Options are
  • B_WIDTH_AS_USUAL
  • B_WIDTH_FROM_WIDEST
  • B_WIDTH_FROM_LABEL
See button_width for details.
typeConstant that determines which alert icon is displayed. Options are
  • B_EMPTY_ALERT
  • B_INFO_ALERT
  • B_IDEA_ALERT
  • B_WARNING_ALERT
  • B_STOP_ALERT
See alert_type for details.
Since
BeOS R3

◆ BAlert() [3/4]

BAlert::BAlert ( const char *  title,
const char *  text,
const char *  button1,
const char *  button2,
const char *  button3,
button_width  width,
button_spacing  spacing,
alert_type  type = B_INFO_ALERT 
)

Creates and initializes a BAlert dialog.

You can also set the spacing with this constructor.

Parameters
titleThe title of the window. Since the alert window doesn't have a title tab, the title is not actually displayed anywhere but is useful for debugging purposes.
textThe text that is displayed at the top of the window.
button1Button 1 label
button2Button 2 label
button3Button 3 label
widthA constant that describes how the button should be sized. Options are
  • B_WIDTH_AS_USUAL
  • B_WIDTH_FROM_WIDEST
  • B_WIDTH_FROM_LABEL
See button_width for details.
spacingDetermines how the buttons are spaced. Options are
  • B_EVEN_SPACING
  • B_OFFSET_SPACING
See button_spacing for details.
typeConstant that determines which alert icon is displayed. Options are
  • B_EMPTY_ALERT
  • B_INFO_ALERT
  • B_IDEA_ALERT
  • B_WARNING_ALERT
  • B_STOP_ALERT
See alert_type for details.
Since
BeOS R4

◆ BAlert() [4/4]

BAlert::BAlert ( BMessage data)

Unarchives an alert from a BMessage.

Parameters
dataThe archive.
Since
BeOS R3

◆ ~BAlert()

BAlert::~BAlert ( )
virtual

Destructor method.

Standard Destructor method to delete a BAlert.

Since
BeOS R3

Member Function Documentation

◆ AddButton()

void BAlert::AddButton ( const char *  label,
char  key = 0 
)

Adds a button to the alert.

Parameters
labelThe label of the button.
keyThe key a user can press to quickly select this button.
Since
BeOS R3

◆ AlertPosition()

BPoint BAlert::AlertPosition ( float  width,
float  height 
)
static

Resizes the Alert window to the width and height specified and return the Point of the top-left corner of the alert window.

Parameters
widthThe desired width of the alert window.
heightThe desired height of the alert window.
Returns
The BPoint of the top-left corner of the Alert window.
Since
BeOS R3

◆ Archive()

status_t BAlert::Archive ( BMessage data,
bool  deep = true 
) const
virtual

Archives the BAlert into archive.

Parameters
dataThe target archive which the BAlert data will go into.
deepWhether or not to recursively archive the BAlert's children.
Returns
A status code.
Return values
B_OKThe archive operation was successful.
B_BAD_VALUEThe archive operation failed.
Since
BeOS R3

Reimplemented from BWindow.

◆ ButtonAt()

BButton * BAlert::ButtonAt ( int32  index) const

Returns a pointer to the BButton at the specified index.

The index of the buttons begins at 0 and counts from left to right. If a BButton does not exist for the specified index then NULL is returned.

Parameters
indexThe index of the desired button.
Returns
A pointer to the BButton at the specified index.
Since
BeOS R3

◆ CountButtons()

int32 BAlert::CountButtons ( ) const

Counts the number of buttons in the alert.

Returns
The number of buttons in this alert window.
See also
AddButton() and ButtonAt()
Since
BeOS R3

◆ DispatchMessage()

void BAlert::DispatchMessage ( BMessage msg,
BHandler handler 
)
virtual

Sends out a message.

This method called automatically as messages arrive in the queue, you should never call DispatchMessage() yourself.

Warning
Don't override this method in your BWindow subclass. Override MessageReceived() instead to alter the window's message dispatching mechanism.
See also
BLooper::DispatchMessage()
Since
BeOS R3

Reimplemented from BWindow.

◆ FrameResized()

void BAlert::FrameResized ( float  newWidth,
float  newHeight 
)
virtual

Resizes the alert dialog.

Parameters
newWidthThe new width of the window.
newHeightThe new height of the window.
Since
BeOS R3

Reimplemented from BWindow.

◆ GetSupportedSuites()

status_t BAlert::GetSupportedSuites ( BMessage data)
virtual

Reports the suites of messages and specifiers understood by the window.

Since
BeOS R3

Reimplemented from BWindow.

◆ Go() [1/2]

int32 BAlert::Go ( )

Displays the alert window.

This version of Go() that does not include an invoker is synchronous. Go() returns once the user has clicked a button and the panel has been removed from the screen. The BAlert object is deleted before the method returns.

If the BAlert is sent a B_QUIT_REQUESTED message while the alert window is still on screen then Go() returns -1.

Returns
The index of the button clicked.
Since
BeOS R3

◆ Go() [2/2]

status_t BAlert::Go ( BInvoker invoker)

Displays the alert window from a specified invoker.

This version of Go() with an invoker is asynchronous. It returns immediately with B_OK and the button index is set to the field of the BMessage that is sent to the target of the invoker.

Go() deletes the BAlert object after the message is sent.

If you call Go() with a NULL invoker argument than the BMessage is not sent.

If the BAlert is sent a B_QUIT_REQUESTED method while the alert window is still on screen then the message is not sent.

Returns
A status code.
Since
BeOS R3

◆ Instantiate()

BArchivable * BAlert::Instantiate ( BMessage data)
static

Instantiates a BAlert from a BMessage.

Parameters
dataThe message to instantiate the BAlert.
Returns
a BArchivable object of the BAlert.
Since
BeOS R3

◆ MessageReceived()

void BAlert::MessageReceived ( BMessage message)
virtual

Initiates an action from a received message.

Parameters
messageThe message received by the looper.
See also
BHandler::MessageReceived()
Since
BeOS R3

Reimplemented from BWindow.

◆ Perform()

status_t BAlert::Perform ( perform_code  code,
void *  _data 
)
virtual

Perform some action. (Internal Method)

Parameters
codeThe perform code.
_dataA pointer to store some data.
Returns
A status code.
See also
BLooper::Perform()
Since
Haiku R1

Reimplemented from BWindow.

◆ Quit()

void BAlert::Quit ( )
virtual

Quits the window closing it.

Use this method to destroy a window rather than using the delete operator.

This method works much like the BLooper::Quit(), it doesn't return when called from the BWindow's thread and it returns after all messages have been processed when called from another thread and the BWindow and its thread has been destroyed.

Warning
The window must first be locked before calling Quit().
See also
BLooper::Quit()
Since
BeOS R3

Reimplemented from BWindow.

◆ QuitRequested()

bool BAlert::QuitRequested ( )
virtual

Hook method that gets called with the window is closed.

See also
Quit()
BLooper::QuitRequested()
Since
BeOS R3

Reimplemented from BWindow.

◆ ResolveSpecifier()

BHandler * BAlert::ResolveSpecifier ( BMessage message,
int32  index,
BMessage specifier,
int32  what,
const char *  property 
)
virtual

Determine the proper handler for a scripting message.

Parameters
messageThe scripting message to determine the handler.
indexThe index of the specifier.
specifierThe message which contains the specifier.
whatThe 'what' field of the specifier message.
propertyThe name of the target property.
Returns
A pointer to the proper BHandler for the given scripting message.
Since
BeOS R3

Reimplemented from BWindow.

◆ SetButtonSpacing()

void BAlert::SetButtonSpacing ( button_spacing  spacing)

Set the button spacing for the alert.

Parameters
spacingPass one of the button_spacing values to configure the spacing.
Since
BeOS R3

◆ SetButtonWidth()

void BAlert::SetButtonWidth ( button_width  width)

Set the button width for the buttons of the alert.

Parameters
widthPass one of the button_width values to configure the width.
Since
BeOS R3

◆ SetIcon()

void BAlert::SetIcon ( BBitmap bitmap)

Set a custom icon for the alert.

Parameters
bitmapA valid BBitmap. The BAlert assumes ownership of the bitmap.
Since
Haiku R1

◆ SetShortcut()

void BAlert::SetShortcut ( int32  index,
char  key 
)

Sets the shortcut character which is mapped to a button at the specified index.

A button can only have one shortcut except for the rightmost button which, in addition to the shortcut you set, is always mapped to B_ENTER.

If you create a "Cancel" button then you should set its shortcut to B_ESCAPE.

Parameters
indexThe index of the button to set the shortcut to.
keyThe shortcut character to set.
Since
BeOS R3

◆ SetText()

void BAlert::SetText ( const char *  text)

Set the text for the alert.

Parameters
textThe text you want the alert to display.
Since
BeOS R3

◆ SetType()

void BAlert::SetType ( alert_type  type)

Set the type of the alert.

Parameters
typePass one of the alert_type enum values to set the type.
Since
BeOS R3

◆ Shortcut()

char BAlert::Shortcut ( int32  index) const

Gets the shortcut character which is mapped to a button at the specified index.

Parameters
indexThe index of the button to get the shortcut of.
Returns
The shortcut character mapped to the button at the specified index.
Since
BeOS R3

◆ TextView()

BTextView * BAlert::TextView ( ) const

Returns the Alert's TextView.

Since
BeOS R3

◆ Type()

alert_type BAlert::Type ( ) const

Get the alert_type of this alert.

Returns
Returns one of the values from the alert_type enum.
Since
BeOS R3