]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cmdproc.h
avoid creating and immediately destroying a wxGraphicsContext when creating a wxDC...
[wxWidgets.git] / include / wx / cmdproc.h
index a74a3df5bf5eadc1178b100d5459d0dab07a82cf..4fa3e34c192a94fe317160c26307d1ca0b31bdc5 100644 (file)
 #include "wx/object.h"
 #include "wx/list.h"
 
-class WXDLLEXPORT wxMenu;
+class WXDLLIMPEXP_FWD_CORE wxMenu;
 
 // ----------------------------------------------------------------------------
 // wxCommand: a single command capable of performing itself
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxCommand : public wxObject
+class WXDLLIMPEXP_CORE wxCommand : public wxObject
 {
 public:
     wxCommand(bool canUndoIt = false, const wxString& name = wxEmptyString);
-    ~wxCommand(){}
+    virtual ~wxCommand(){}
 
     // Override this to perform a command
     virtual bool Do() = 0;
@@ -49,7 +49,7 @@ private:
 // wxCommandProcessor: wxCommand manager
 // ----------------------------------------------------------------------------
 
-class WXDLLEXPORT wxCommandProcessor : public wxObject
+class WXDLLIMPEXP_CORE wxCommandProcessor : public wxObject
 {
 public:
     // if max number of commands is -1, it is unlimited
@@ -87,7 +87,8 @@ public:
 #endif // wxUSE_MENUS
 
     // command list access
-    wxList& GetCommands() const { return (wxList&) m_commands; }
+    wxList& GetCommands() { return m_commands; }
+    const wxList& GetCommands() const { return m_commands; }
     wxCommand *GetCurrentCommand() const
     {
         return (wxCommand *)(m_currentCommand ? m_currentCommand->GetData() : NULL);
@@ -96,10 +97,7 @@ public:
     virtual void ClearCommands();
 
     // Has the current project been changed?
-    virtual bool IsDirty() const
-    {
-        return m_currentCommand && (m_lastSavedCommand != m_currentCommand);
-    }
+    virtual bool IsDirty() const;
 
     // Mark the current command as the one where the last save took place
     void MarkAsSaved()
@@ -136,7 +134,7 @@ protected:
 
 private:
     DECLARE_DYNAMIC_CLASS(wxCommandProcessor)
-    DECLARE_NO_COPY_CLASS(wxCommandProcessor)
+    wxDECLARE_NO_COPY_CLASS(wxCommandProcessor);
 };
 
 #endif // _WX_CMDPROC_H_