d59729f396
fixed it by looking for funny things that deviated from the sameples, and doing various recommended safe things, and found a few sql errors, and one by one the crashes went away. The new wxWidgets just seems less tolerant of little careless stuff that is not right.
299 lines
7.8 KiB
C++
299 lines
7.8 KiB
C++
#pragma once
|
|
// Define a new frame type
|
|
class Frame : public wxFrame
|
|
{
|
|
int m_TipOfTheDayIndex;
|
|
int m_FileDialogFilterIndex;
|
|
std::string m_strLastUsedFile;
|
|
public:
|
|
bool m_showTipsAtStartup;
|
|
Frame(const wxString& title);
|
|
virtual ~Frame();
|
|
void StorePositionToConfig(void);
|
|
void RestorePositionFromConfig(const wxSize&);
|
|
|
|
#if wxUSE_MSGDLG
|
|
void MessageBox(wxCommandEvent& event);
|
|
void MessageBoxDialog(wxCommandEvent& event);
|
|
void MessageBoxDialogWindowModal(wxCommandEvent& event);
|
|
void MessageBoxDialogWindowModalClosed(wxWindowModalDialogEvent& event);
|
|
void MessageBoxInfo(wxCommandEvent& event);
|
|
void MessageBoxWindowModal(wxCommandEvent& event);
|
|
void MessageBoxWindowModalClosed(wxWindowModalDialogEvent& event);
|
|
#endif // wxUSE_MSGDLG
|
|
#if wxUSE_RICHMSGDLG
|
|
void RichMessageDialog(wxCommandEvent& event);
|
|
#endif // wxUSE_RICHMSGDLG
|
|
|
|
#if wxUSE_COLOURDLG
|
|
void ChooseColour(wxCommandEvent& event);
|
|
void GetColour(wxCommandEvent& event);
|
|
#endif // wxUSE_COLOURDLG
|
|
|
|
#if wxUSE_FONTDLG
|
|
void ChooseFont(wxCommandEvent& event);
|
|
#endif // wxUSE_FONTDLG
|
|
|
|
#if wxUSE_LOG_DIALOG
|
|
void LogDialog(wxCommandEvent& event);
|
|
#endif // wxUSE_LOG_DIALOG
|
|
|
|
#if wxUSE_INFOBAR
|
|
void InfoBarSimple(wxCommandEvent& event);
|
|
void InfoBarSimpleWrapped(wxCommandEvent& event);
|
|
void InfoBarAdvanced(wxCommandEvent& event);
|
|
#endif // wxUSE_INFOBAR
|
|
|
|
#if wxUSE_CHOICEDLG
|
|
void SingleChoice(wxCommandEvent& event);
|
|
void MultiChoice(wxCommandEvent& event);
|
|
#endif // wxUSE_CHOICEDLG
|
|
|
|
#if wxUSE_REARRANGECTRL
|
|
void Rearrange(wxCommandEvent& event);
|
|
#endif // wxUSE_REARRANGECTRL
|
|
|
|
#if wxUSE_ADDREMOVECTRL
|
|
void AddRemove(wxCommandEvent& event);
|
|
#endif // wxUSE_ADDREMOVECTRL
|
|
|
|
#if wxUSE_TEXTDLG
|
|
void LineEntry(wxCommandEvent& event);
|
|
void TextEntry(wxCommandEvent& event);
|
|
void PasswordEntry(wxCommandEvent& event);
|
|
#endif // wxUSE_TEXTDLG
|
|
|
|
#ifdef wxUSE_CREDENTIALDLG
|
|
void CredentialEntry(wxCommandEvent& event);
|
|
#endif // wxUSE_CREDENTIALDLG
|
|
|
|
#if wxUSE_NUMBERDLG
|
|
void NumericEntry(wxCommandEvent& event);
|
|
#endif // wxUSE_NUMBERDLG
|
|
|
|
#if wxUSE_FILEDLG
|
|
void OnFileOpen(wxCommandEvent& event);
|
|
void FileOpen2(wxCommandEvent& event);
|
|
void FilesOpen(wxCommandEvent& event);
|
|
void FilesOpenWindowModal(wxCommandEvent& event);
|
|
void FilesOpenWindowModalClosed(wxWindowModalDialogEvent& event);
|
|
void OnSaveNew(wxCommandEvent& event);
|
|
void FileSaveWindowModal(wxCommandEvent& event);
|
|
void FileSaveWindowModalClosed(wxWindowModalDialogEvent& event);
|
|
void MacToggleAlwaysShowTypes(wxCommandEvent& event);
|
|
#endif // wxUSE_FILEDLG
|
|
|
|
#if USE_FILEDLG_GENERIC
|
|
void FileOpenGeneric(wxCommandEvent& event);
|
|
void FilesOpenGeneric(wxCommandEvent& event);
|
|
void FileSaveGeneric(wxCommandEvent& event);
|
|
#endif // USE_FILEDLG_GENERIC
|
|
|
|
#if wxUSE_DIRDLG
|
|
void DirChoose(wxCommandEvent& event);
|
|
void DirChooseWindowModal(wxCommandEvent& event);
|
|
void DirChooseWindowModalClosed(wxWindowModalDialogEvent& event);
|
|
void DirChooseNew(wxCommandEvent& event);
|
|
void DirChooseMultiple(wxCommandEvent& event);
|
|
#endif // wxUSE_DIRDLG
|
|
|
|
#if USE_DIRDLG_GENERIC
|
|
void GenericDirChoose(wxCommandEvent& event);
|
|
#endif // USE_DIRDLG_GENERIC
|
|
|
|
#if wxUSE_STARTUP_TIPS
|
|
void ShowTip(wxCommandEvent& event);
|
|
#endif // wxUSE_STARTUP_TIPS
|
|
|
|
#if USE_MODAL_PRESENTATION
|
|
void ModalDlg(wxCommandEvent& event);
|
|
#endif // USE_MODAL_PRESENTATION
|
|
void ModelessDlg(wxCommandEvent& event);
|
|
void DlgCenteredScreen(wxCommandEvent& event);
|
|
void DlgCenteredParent(wxCommandEvent& event);
|
|
void MiniFrame(wxCommandEvent& event);
|
|
void DlgOnTop(wxCommandEvent& event);
|
|
|
|
#if wxUSE_PROGRESSDLG
|
|
void ShowProgress(wxCommandEvent& event);
|
|
#ifdef wxHAS_NATIVE_PROGRESSDIALOG
|
|
void ShowProgressGeneric(wxCommandEvent& event);
|
|
#endif // wxHAS_NATIVE_PROGRESSDIALOG
|
|
void DoShowProgress(wxGenericProgressDialog& dialog);
|
|
#endif // wxUSE_PROGRESSDLG
|
|
void ShowAppProgress(wxCommandEvent& event);
|
|
|
|
#if wxUSE_ABOUTDLG
|
|
void ShowSimpleAboutDialog(wxCommandEvent& event);
|
|
void ShowFancyAboutDialog(wxCommandEvent& event);
|
|
void ShowFullAboutDialog(wxCommandEvent& event);
|
|
void ShowCustomAboutDialog(wxCommandEvent& event);
|
|
#endif // wxUSE_ABOUTDLG
|
|
|
|
#if wxUSE_BUSYINFO
|
|
void ShowBusyInfo(wxCommandEvent& event);
|
|
void ShowRichBusyInfo(wxCommandEvent& event);
|
|
#endif // wxUSE_BUSYINFO
|
|
|
|
#if wxUSE_FINDREPLDLG
|
|
void ShowFindDialog(wxCommandEvent& event);
|
|
void ShowReplaceDialog(wxCommandEvent& event);
|
|
void OnFindDialog(wxFindDialogEvent& event);
|
|
#endif // wxUSE_FINDREPLDLG
|
|
|
|
#if USE_COLOURDLG_GENERIC
|
|
void ChooseColourGeneric(wxCommandEvent& event);
|
|
#endif // USE_COLOURDLG_GENERIC
|
|
|
|
#if USE_FONTDLG_GENERIC
|
|
void ChooseFontGeneric(wxCommandEvent& event);
|
|
#endif // USE_FONTDLG_GENERIC
|
|
|
|
void OnPropertySheet(wxCommandEvent& event);
|
|
|
|
void OnRequestUserAttention(wxCommandEvent& event);
|
|
#if wxUSE_NOTIFICATION_MESSAGE
|
|
void OnNotifMsg(wxCommandEvent& event);
|
|
#endif // wxUSE_NOTIFICATION_MESSAGE
|
|
|
|
#if wxUSE_RICHTOOLTIP
|
|
void OnRichTipDialog(wxCommandEvent& event);
|
|
#endif // wxUSE_RICHTOOLTIP
|
|
|
|
void OnStandardButtonsSizerDialog(wxCommandEvent& event);
|
|
|
|
void OnTestDefaultActionDialog(wxCommandEvent& event);
|
|
void OnModalHook(wxCommandEvent& event);
|
|
void OnSimulatedUnsaved(wxCommandEvent& event);
|
|
|
|
void OnExit(wxCommandEvent& event);
|
|
void OnClose(wxCloseEvent& event);
|
|
|
|
private:
|
|
#if wxUSE_COLOURDLG
|
|
void OnColourChanged(wxColourDialogEvent& event);
|
|
void DoApplyColour(const wxColour& colour);
|
|
#endif // wxUSE_COLOURDLG
|
|
|
|
#if wxUSE_DIRDLG
|
|
void DoDirChoose(int style);
|
|
#endif // wxUSE_DIRDLG
|
|
|
|
#if USE_MODAL_PRESENTATION
|
|
MyModelessDialog* m_dialog;
|
|
#endif // USE_MODAL_PRESENTATION
|
|
|
|
#if wxUSE_FINDREPLDLG
|
|
wxFindReplaceData m_findData;
|
|
|
|
wxFindReplaceDialog* m_dlgFind,
|
|
* m_dlgReplace;
|
|
#endif // wxUSE_FINDREPLDLG
|
|
|
|
wxColourData m_clrData;
|
|
|
|
// just a window which we use to show the effect of font/colours selection
|
|
wxWindow* m_canvas;
|
|
|
|
#if wxUSE_INFOBAR
|
|
void OnInfoBarRedo(wxCommandEvent& event);
|
|
|
|
wxInfoBar* m_infoBarSimple,
|
|
* m_infoBarAdvanced;
|
|
#endif // wxUSE_INFOBAR
|
|
|
|
#if USE_SETTINGS_DIALOG
|
|
SettingsData m_settingsData;
|
|
#endif // USE_SETTINGS_DIALOG
|
|
|
|
#if wxUSE_TIPWINDOW
|
|
void OnShowTip(wxCommandEvent& event);
|
|
void OnUpdateShowTipUI(wxUpdateUIEvent& event);
|
|
|
|
wxTipWindow* m_tipWindow;
|
|
#endif // wxUSE_TIPWINDOW
|
|
|
|
bool m_confirmExit;
|
|
wxDECLARE_EVENT_TABLE();
|
|
};
|
|
|
|
class MyCanvas : public wxScrolledWindow
|
|
{
|
|
public:
|
|
MyCanvas(wxWindow* parent) : wxScrolledWindow(parent, wxID_ANY)
|
|
{
|
|
SetForegroundColour(*wxBLACK);
|
|
SetBackgroundColour(*wxWHITE);
|
|
SetFont(*wxNORMAL_FONT);
|
|
}
|
|
|
|
private:
|
|
void OnPaint(wxPaintEvent& event);
|
|
|
|
wxDECLARE_EVENT_TABLE();
|
|
};
|
|
|
|
|
|
// Menu IDs
|
|
enum
|
|
{
|
|
DIALOGS_CHOOSE_COLOUR = wxID_HIGHEST,
|
|
DIALOGS_CHOOSE_COLOUR_ALPHA,
|
|
DIALOGS_GET_COLOUR,
|
|
DIALOGS_CHOOSE_FONT,
|
|
DIALOGS_MESSAGE_BOX,
|
|
DIALOGS_MESSAGE_DIALOG,
|
|
DIALOGS_MESSAGE_BOX_WXINFO,
|
|
DIALOGS_RICH_MESSAGE_DIALOG,
|
|
DIALOGS_SINGLE_CHOICE,
|
|
DIALOGS_MULTI_CHOICE,
|
|
DIALOGS_REARRANGE,
|
|
DIALOGS_ADDREMOVE,
|
|
DIALOGS_LINE_ENTRY,
|
|
DIALOGS_TEXT_ENTRY,
|
|
DIALOGS_PASSWORD_ENTRY,
|
|
DIALOGS_CREDENTIAL_ENTRY,
|
|
DIALOGS_FILE_OPEN,
|
|
DIALOGS_FILE_OPEN2,
|
|
DIALOGS_FILES_OPEN,
|
|
DIALOGS_FILE_SAVE,
|
|
DIALOGS_FILE_USE_CUSTOMIZER,
|
|
DIALOGS_FILE_USE_EXTRA_CONTROL_CREATOR,
|
|
DIALOGS_MAC_TOGGLE_ALWAYS_SHOW_TYPES,
|
|
DIALOGS_DIR_CHOOSE,
|
|
DIALOGS_DIRNEW_CHOOSE,
|
|
DIALOGS_DIRMULTIPLE_CHOOSE,
|
|
DIALOGS_TIP,
|
|
DIALOGS_NUM_ENTRY,
|
|
DIALOGS_LOG_DIALOG,
|
|
DIALOGS_INFOBAR_SIMPLE,
|
|
DIALOGS_INFOBAR_SIMPLE_WRAPPED,
|
|
DIALOGS_INFOBAR_ADVANCED,
|
|
DIALOGS_MODAL,
|
|
DIALOGS_MODELESS,
|
|
DIALOGS_CENTRE_SCREEN,
|
|
DIALOGS_CENTRE_PARENT,
|
|
DIALOGS_MINIFRAME,
|
|
DIALOGS_ONTOP,
|
|
DIALOGS_MODELESS_BTN,
|
|
DIALOGS_ABOUTDLG_SIMPLE,
|
|
DIALOGS_ABOUTDLG_FANCY,
|
|
DIALOGS_ABOUTDLG_FULL,
|
|
DIALOGS_ABOUTDLG_CUSTOM,
|
|
DIALOGS_BUSYINFO,
|
|
DIALOGS_BUSYINFO_RICH,
|
|
DIALOGS_FIND,
|
|
DIALOGS_REPLACE,
|
|
DIALOGS_REQUEST,
|
|
DIALOGS_NOTIFY_MSG,
|
|
DIALOGS_SHOW_TIP,
|
|
DIALOGS_RICHTIP_DIALOG,
|
|
DIALOGS_PROPERTY_SHEET,
|
|
DIALOGS_PROPERTY_SHEET_TOOLBOOK,
|
|
DIALOGS_PROPERTY_SHEET_BUTTONTOOLBOOK,
|
|
DIALOGS_STANDARD_BUTTON_SIZER_DIALOG,
|
|
DIALOGS_TEST_DEFAULT_ACTION,
|
|
DIALOGS_MODAL_HOOK,
|
|
DIALOGS_SIMULATE_UNSAVED
|
|
};
|