| // |
| // Copyright 2005 The Android Open Source Project |
| // |
| // Log preferences modal dialog. |
| // |
| #ifndef _SIM_LOG_PREFS_DIALOG_H |
| #define _SIM_LOG_PREFS_DIALOG_H |
| |
| /* |
| * Declaration of log preferences dialog. This class defines the outer |
| * wrapper as well as all of the pages. |
| */ |
| class LogPrefsDialog : public wxDialog { |
| DECLARE_EVENT_TABLE() |
| |
| public: |
| LogPrefsDialog(wxWindow* parent); |
| virtual ~LogPrefsDialog(void); |
| |
| void CreateControls(void); |
| |
| /* these correspond to radio buttons */ |
| typedef enum HeaderFormat { |
| kHFFull = 0, |
| kHFBrief, |
| kHFMinimal, |
| kHFInternal, // special -- used for internally generated msgs |
| }; |
| |
| /* |
| * Values edited in the preference pages. By Windows convention, |
| * these are public. |
| */ |
| /* format options */ |
| HeaderFormat mHeaderFormat; |
| bool mSingleLine; // put whole message on one line? |
| int mExtraSpacing; // double/triple-space messages? |
| int mPointSize; // text size |
| bool mUseColor; // colorful messages? |
| bool mFontMonospace; // use monospace font? |
| |
| /* limit options */ |
| int mDisplayMax; |
| int mPoolSizeKB; |
| |
| /* file options */ |
| bool mWriteFile; |
| wxString mFileName; |
| bool mTruncateOld; |
| |
| private: |
| bool TransferDataToWindow(void); |
| bool TransferDataFromWindow(void); |
| |
| wxPanel* CreateFormatPage(wxBookCtrlBase* parent); |
| wxPanel* CreateLimitsPage(wxBookCtrlBase* parent); |
| wxPanel* CreateFilesPage(wxBookCtrlBase* parent); |
| |
| void OnWriteFile(wxCommandEvent& event); |
| void EnableFileControls(bool enable); |
| |
| /* main notebook; for aesthetic reasons we may want a Choicebook */ |
| wxNotebook mNotebook; |
| |
| enum { |
| kMinWidth = 300, // minimum prefs dialog width, in pixels |
| }; |
| }; |
| |
| #endif // _SIM_LOG_PREFS_DIALOG_H |