MGR: Modify Simple Preferences dialog to match Advanced Preferences dialog and Web Preferences.

This commit is contained in:
Charlie Fenton 2015-03-24 04:50:40 -07:00
parent 7d0974a5a4
commit 6490731914
2 changed files with 614 additions and 583 deletions

File diff suppressed because it is too large Load Diff

View File

@ -51,15 +51,26 @@ class CTransparentCheckBox;
#define SYMBOL_CDLGPREFERENCES_IDNAME ID_DLGPREFERENCES #define SYMBOL_CDLGPREFERENCES_IDNAME ID_DLGPREFERENCES
#define SYMBOL_CDLGPREFERENCES_SIZE wxDefaultSize #define SYMBOL_CDLGPREFERENCES_SIZE wxDefaultSize
#define SYMBOL_CDLGPREFERENCES_POSITION wxDefaultPosition #define SYMBOL_CDLGPREFERENCES_POSITION wxDefaultPosition
#define ID_WORKBETWEENBEGIN 10004
#define ID_WORKBETWEENEND 10006 #define ID_SG_PREFS_START ID_DLGPREFERENCES+1
#define ID_CONNECTBETWEENBEGIN 10007
#define ID_CONNECTBETWEENEND 10009 enum {
#define ID_MAXDISKUSAGE 10010 ID_SGPREFERENCESCLEAR = ID_SG_PREFS_START,
#define ID_MAXCPUUSAGE 10011 ID_CHKPROCONBATTERIES,
#define ID_WORKWHILEONBATTERY 10005 ID_CHKPROCINUSE,
#define ID_WORKWHENIDLE 10012 ID_TXTPROCIDLEFOR,
#define ID_SGPREFERENCESCLEAR 10001 ID_CHKPROCEVERYDAY,
ID_TXTPROCEVERYDAYSTART,
ID_TXTPROCEVERYDAYSTOP,
ID_TXTPOCUSECPUTIME,
ID_CHKNETEVERYDAY,
ID_TXTNETEVERYDAYSTART,
ID_TXTNETEVERYDAYSTOP,
ID_CHKDISKMAXSPACE,
ID_TXTDISKMAXSPACE,
ID_SG_PREFS_LAST
};
////@end control identifiers ////@end control identifiers
/*! /*!
@ -108,66 +119,58 @@ public:
////@end CPanelPreferences event handler declarations ////@end CPanelPreferences event handler declarations
////@begin CPanelPreferences member function declarations
wxString GetWorkBetweenBegin() const { return m_strWorkBetweenBegin ; }
void SetWorkBetweenBegin(wxString value) { m_strWorkBetweenBegin = value ; }
wxString GetWorkBetweenEnd() const { return m_strWorkBetweenEnd ; }
void SetWorkBetweenEnd(wxString value) { m_strWorkBetweenEnd = value ; }
wxString GetConnectBetweenBegin() const { return m_strConnectBetweenBegin ; }
void SetConnectBetweenBegin(wxString value) { m_strConnectBetweenBegin = value ; }
wxString GetConnectBetweenEnd() const { return m_strConnectBetweenEnd ; }
void SetConnectBetweenEnd(wxString value) { m_strConnectBetweenEnd = value ; }
wxString GetMaxDiskUsage() const { return m_strMaxDiskUsage ; }
void SetMaxDiskUsage(wxString value) { m_strMaxDiskUsage = value ; }
wxString GetMaxCPUUsage() const { return m_strMaxCPUUsage ; }
void SetMaxCPUUsage(wxString value) { m_strMaxCPUUsage = value ; }
bool GetWorkWhileOnBattery() const { return m_bWorkWhileOnBattery ; }
void SetWorkWhileOnBattery(bool value) { m_bWorkWhileOnBattery = value ; }
wxString GetWorkWhenIdle() const { return m_strWorkWhenIdle ; }
void SetWorkWhenIdle(wxString value) { m_strWorkWhenIdle = value ; }
////@end CPanelPreferences member function declarations
void OnButtonClear(); void OnButtonClear();
void OnOK(); bool OnOK();
bool UpdateControlStates(); bool UpdateControlStates();
bool ClearPreferenceSettings(); bool ClearPreferenceSettings();
wxString DoubleToTimeString(double dt);
double TimeStringToDouble(wxString timeStr);
double RoundToHundredths(double td);
void DisplayValue(double value, wxTextCtrl* textCtrl, wxCheckBox* checkBox=NULL);
bool ReadPreferenceSettings(); bool ReadPreferenceSettings();
bool SavePreferenceSettings(); bool SavePreferenceSettings();
bool ValidateInput();
void ShowErrorMessage(wxString& msg,wxTextCtrl* errorCtrl);
bool IsValidFloatChar(const wxChar& ch);
bool IsValidFloatValue(const wxString& value, bool allowNegative=false);
bool IsValidFloatValueBetween(const wxString& value, double minVal, double maxVal);
bool IsValidTimeChar(const wxChar& ch);
bool IsValidTimeValue(const wxString& value);
void OnHandleCheckboxEvent(wxCommandEvent& ev);
void addNewRowToSizer(wxSizer* toSizer, wxString& toolTipText,
wxWindow* first, wxWindow* second, wxWindow* third,
wxWindow* fourth=NULL, wxWindow* fifth=NULL);
wxSize getTextCtrlSize(wxString maxText);
bool doesLocalPrefsFileExist();
private: private:
////@begin CPanelPreferences member variables ////@begin CPanelPreferences member variables
wxComboBox* m_WorkBetweenBeginCtrl; wxCheckBox* m_chkProcOnBatteries;
wxComboBox* m_WorkBetweenEndCtrl; wxCheckBox* m_chkProcInUse;
wxComboBox* m_ConnectBetweenBeginCtrl; wxTextCtrl* m_txtProcIdleFor;
wxComboBox* m_ConnectBetweenEndCtrl; wxCheckBox* m_chkProcEveryDay;
wxComboBox* m_MaxDiskUsageCtrl; wxTextCtrl* m_txtProcEveryDayStart;
wxComboBox* m_MaxCPUUsageCtrl; wxTextCtrl* m_txtProcEveryDayStop;
wxCheckBox* m_WorkWhileOnBatteryCtrl; wxTextCtrl* m_txtProcUseCPUTime;
wxComboBox* m_WorkWhenIdleCtrl; wxCheckBox* m_chkNetEveryDay;
wxString m_strWorkBetweenBegin; wxTextCtrl* m_txtNetEveryDayStart;
wxString m_strWorkBetweenEnd; wxTextCtrl* m_txtNetEveryDayStop;
wxString m_strConnectBetweenBegin; wxCheckBox* m_chkDiskMaxSpace;
wxString m_strConnectBetweenEnd; wxTextCtrl* m_txtDiskMaxSpace;
wxString m_strMaxDiskUsage;
wxString m_strMaxCPUUsage; wxTextValidator* m_vTimeValidator;
bool m_bWorkWhileOnBattery;
wxString m_strWorkWhenIdle;
wxButton* m_btnClear; wxButton* m_btnClear;
wxString *web_prefs_url;
////@end CPanelPreferences member variables ////@end CPanelPreferences member variables
GLOBAL_PREFS global_preferences_working; GLOBAL_PREFS global_preferences_working;
GLOBAL_PREFS_MASK global_preferences_mask; GLOBAL_PREFS_MASK global_preferences_mask;
GLOBAL_PREFS_MASK global_preferences_override_mask; GLOBAL_PREFS_MASK global_preferences_override_mask;
GLOBAL_PREFS defaultPrefs;
}; };