X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9f3a38fcd5f464e46bf842ddc13d7f85f8773c57..0ce742cf092c9244f27957e308c16f3c2631042d:/include/wx/dialog.h diff --git a/include/wx/dialog.h b/include/wx/dialog.h index a14930b5b0..ac5f9a9672 100644 --- a/include/wx/dialog.h +++ b/include/wx/dialog.h @@ -1,3 +1,14 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: wx/dialog.h +// Purpose: wxDialogBase class +// Author: Vadim Zeitlin +// Modified by: +// Created: 29.06.99 +// RCS-ID: $Id$ +// Copyright: (c) Vadim Zeitlin +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + #ifndef _WX_DIALOG_H_BASE_ #define _WX_DIALOG_H_BASE_ @@ -6,43 +17,22 @@ class WXDLLEXPORT wxDialogBase : public wxPanel { -protected: - // functions to help with dialog layout - // ------------------------------------ - - // constants used in dialog layout - static const long LAYOUT_X_MARGIN; - static const long LAYOUT_Y_MARGIN; - static const long MARGIN_BETWEEN_BUTTONS; - - // Split the message in lines putting them into the array and calculating - // the maximum line width/height which is returned as wxSize. - wxSize SplitTextMessage(const wxString& message, wxArrayString *lines); +public: + // the modal dialogs have a return code - usually the id of the last + // pressed button + void SetReturnCode(int returnCode) { m_returnCode = returnCode; } + int GetReturnCode() const { return m_returnCode; } - // Creates the (possibly multiline) message, assuming each line has the - // size sizeText (which can be retrieved from SplitTextMessage). Returns - // the bottom border of the multiline text zone. - long CreateTextMessage(const wxArrayString& lines, - const wxPoint& posText, - const wxSize& sizeText); - - // Returns the preferred size for the buttons in the dialog - wxSize GetStandardButtonSize(bool hasCancel = TRUE); - - // Create the standard [Ok] and [Cancel] (if hasCancel) buttons centering - // them with respect to the dialog width wDialog at vertical position y. - // wButton and hButton is the size of the button (which can be retrieved - // from GetStandardButtonSize) - void CreateStandardButtons(long wDialog, - long y, - long wButton, - long hButton, - bool hasCancel = TRUE); - - // Returns the standard height of single line text ctrl (it's not the same - // as the height of just text which may be retrieved from - // wxGetCharHeight()) - long GetStandardTextHeight(); +protected: + // splits text up at newlines and places the + // lines into a vertical wxBoxSizer + wxSizer *CreateTextSizer( const wxString &message ); + + // places buttons into a horizontal wxBoxSizer + wxSizer *CreateButtonSizer( long flags ); + + // the return code from modal dialog + int m_returnCode; }; #if defined(__WXMSW__) @@ -55,6 +45,8 @@ protected: #include "wx/qt/dialog.h" #elif defined(__WXMAC__) #include "wx/mac/dialog.h" +#elif defined(__WXPM__) + #include "wx/os2/dialog.h" #elif defined(__WXSTUBS__) #include "wx/stubs/dialog.h" #endif