]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/stc/stctest.cpp
add more high-level event concepts, fixing native button number
[wxWidgets.git] / samples / stc / stctest.cpp
index bfd85359de0fe788726cb0cd5aee7ead592e9acd..f34b476e2242e10b56767cc72e9035ea2e55527c 100644 (file)
 #include "edit.h"        // Edit module
 #include "prefs.h"       // Prefs
 
-#ifndef __WXMSW__
-    #include "../sample.xpm"
-#endif
-
 //----------------------------------------------------------------------------
 // resources
 //----------------------------------------------------------------------------
 
 // the application icon (under Windows and OS/2 it is in resources)
-#if !defined(__WXMSW__) && !defined(__WXPM__)
+#ifndef wxHAS_IMAGES_IN_RESOURCES
     #include "../sample.xpm"
 #endif
 
@@ -83,7 +79,7 @@ wxString *g_appname = NULL;
 
 //! global print data, to remember settings during the session
 wxPrintData *g_printData = (wxPrintData*) NULL;
-wxPageSetupData *g_pageSetupData = (wxPageSetupData*) NULL;
+wxPageSetupDialogData *g_pageSetupData = (wxPageSetupDialogData*) NULL;
 
 #endif // wxUSE_PRINTING_ARCHITECTURE
 
@@ -230,7 +226,6 @@ bool App::OnInit () {
     // open application frame
     m_frame->Layout ();
     m_frame->Show (true);
-    SetTopWindow (m_frame);
 
     return true;
 }
@@ -268,44 +263,18 @@ BEGIN_EVENT_TABLE (AppFrame, wxFrame)
     EVT_MENU (wxID_PREVIEW,          AppFrame::OnPrintPreview)
     EVT_MENU (wxID_PRINT,            AppFrame::OnPrint)
     EVT_MENU (wxID_EXIT,             AppFrame::OnExit)
-    // edit
+    // Menu items with standard IDs forwarded to the editor.
     EVT_MENU (wxID_CLEAR,            AppFrame::OnEdit)
     EVT_MENU (wxID_CUT,              AppFrame::OnEdit)
     EVT_MENU (wxID_COPY,             AppFrame::OnEdit)
     EVT_MENU (wxID_PASTE,            AppFrame::OnEdit)
-    EVT_MENU (myID_INDENTINC,        AppFrame::OnEdit)
-    EVT_MENU (myID_INDENTRED,        AppFrame::OnEdit)
     EVT_MENU (wxID_SELECTALL,        AppFrame::OnEdit)
-    EVT_MENU (myID_SELECTLINE,       AppFrame::OnEdit)
     EVT_MENU (wxID_REDO,             AppFrame::OnEdit)
     EVT_MENU (wxID_UNDO,             AppFrame::OnEdit)
-    // find
     EVT_MENU (wxID_FIND,             AppFrame::OnEdit)
-    EVT_MENU (myID_FINDNEXT,         AppFrame::OnEdit)
-    EVT_MENU (myID_REPLACE,          AppFrame::OnEdit)
-    EVT_MENU (myID_REPLACENEXT,      AppFrame::OnEdit)
-    EVT_MENU (myID_BRACEMATCH,       AppFrame::OnEdit)
-    EVT_MENU (myID_GOTO,             AppFrame::OnEdit)
-    // view
-    EVT_MENU_RANGE (myID_HILIGHTFIRST, myID_HILIGHTLAST,
+    // And all our edit-related menu commands.
+    EVT_MENU_RANGE (myID_EDIT_FIRST, myID_EDIT_LAST,
                                      AppFrame::OnEdit)
-    EVT_MENU (myID_DISPLAYEOL,       AppFrame::OnEdit)
-    EVT_MENU (myID_INDENTGUIDE,      AppFrame::OnEdit)
-    EVT_MENU (myID_LINENUMBER,       AppFrame::OnEdit)
-    EVT_MENU (myID_LONGLINEON,       AppFrame::OnEdit)
-    EVT_MENU (myID_WHITESPACE,       AppFrame::OnEdit)
-    EVT_MENU (myID_FOLDTOGGLE,       AppFrame::OnEdit)
-    EVT_MENU (myID_OVERTYPE,         AppFrame::OnEdit)
-    EVT_MENU (myID_READONLY,         AppFrame::OnEdit)
-    EVT_MENU (myID_WRAPMODEON,       AppFrame::OnEdit)
-    // extra
-    EVT_MENU (myID_CHANGELOWER,      AppFrame::OnEdit)
-    EVT_MENU (myID_CHANGEUPPER,      AppFrame::OnEdit)
-    EVT_MENU (myID_CONVERTCR,        AppFrame::OnEdit)
-    EVT_MENU (myID_CONVERTCRLF,      AppFrame::OnEdit)
-    EVT_MENU (myID_CONVERTLF,        AppFrame::OnEdit)
-    EVT_MENU (myID_CHARSETANSI,      AppFrame::OnEdit)
-    EVT_MENU (myID_CHARSETMAC,       AppFrame::OnEdit)
     // help
     EVT_MENU (wxID_ABOUT,            AppFrame::OnAbout)
 END_EVENT_TABLE ()
@@ -323,9 +292,6 @@ AppFrame::AppFrame (const wxString &title)
     SetTitle (*g_appname);
     SetBackgroundColour (wxT("WHITE"));
 
-    // about box shown for 1 seconds
-    AppAbout dlg(this, 1000);
-
     // create menu
     m_menuBar = new wxMenuBar;
     CreateMenu ();
@@ -435,7 +401,7 @@ void AppFrame::OnPrintPreview (wxCommandEvent &WXUNUSED(event)) {
         new wxPrintPreview (new EditPrint (m_edit),
                             new EditPrint (m_edit),
                             &printDialogData);
-    if (!preview->Ok()) {
+    if (!preview->IsOk()) {
         delete preview;
         wxMessageBox (_("There was a problem with previewing.\n\
                          Perhaps your current printer is not correctly?"),
@@ -549,6 +515,20 @@ void AppFrame::CreateMenu ()
     menuView->AppendSeparator();
     menuView->Append (myID_USECHARSET, _("Use &code page of .."), menuCharset);
 
+    // Annotations menu
+    wxMenu* menuAnnotations = new wxMenu;
+    menuAnnotations->Append(myID_ANNOTATION_ADD, _("&Add or edit an annotation..."),
+                            _("Add an annotation for the current line"));
+    menuAnnotations->Append(myID_ANNOTATION_REMOVE, _("&Remove annotation"),
+                            _("Remove the annotation for the current line"));
+    menuAnnotations->Append(myID_ANNOTATION_CLEAR, _("&Clear all annotations"));
+
+    wxMenu* menuAnnotationsStyle = new wxMenu;
+    menuAnnotationsStyle->AppendRadioItem(myID_ANNOTATION_STYLE_HIDDEN, _("&Hidden"));
+    menuAnnotationsStyle->AppendRadioItem(myID_ANNOTATION_STYLE_STANDARD, _("&Standard"));
+    menuAnnotationsStyle->AppendRadioItem(myID_ANNOTATION_STYLE_BOXED, _("&Boxed"));
+    menuAnnotations->AppendSubMenu(menuAnnotationsStyle, "&Style");
+
     // change case submenu
     wxMenu *menuChangeCase = new wxMenu;
     menuChangeCase->Append (myID_CHANGEUPPER, _("&Upper case"));
@@ -582,16 +562,20 @@ void AppFrame::CreateMenu ()
     m_menuBar->Append (menuFile, _("&File"));
     m_menuBar->Append (menuEdit, _("&Edit"));
     m_menuBar->Append (menuView, _("&View"));
+    m_menuBar->Append (menuAnnotations, _("&Annotations"));
     m_menuBar->Append (menuExtra, _("E&xtra"));
     m_menuBar->Append (menuWindow, _("&Window"));
     m_menuBar->Append (menuHelp, _("&Help"));
     SetMenuBar (m_menuBar);
+
+    m_menuBar->Check(myID_ANNOTATION_STYLE_BOXED, true);
 }
 
 void AppFrame::FileOpen (wxString fname)
 {
     wxFileName w(fname); w.Normalize(); fname = w.GetFullPath();
     m_edit->LoadFile (fname);
+    m_edit->SelectNone();
 }
 
 wxRect AppFrame::DeterminePrintSize () {