]> git.saurik.com Git - wxWidgets.git/blobdiff - src/palmos/frame.cpp
check that the version of __sync_sub_and_fetch that returns a value is supported...
[wxWidgets.git] / src / palmos / frame.cpp
index c81817af9299809c46f35c59c77839eb2eeef0b3..da9e70ede71effd888ea018ee81f863913a2693c 100644 (file)
 // headers
 // ----------------------------------------------------------------------------
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-    #pragma implementation "frame.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
@@ -28,8 +24,9 @@
     #pragma hdrstop
 #endif
 
+#include "wx/frame.h"
+
 #ifndef WX_PRECOMP
-    #include "wx/frame.h"
     #include "wx/app.h"
     #include "wx/menu.h"
     #include "wx/utils.h"
     #include "wx/dcclient.h"
     #include "wx/mdi.h"
     #include "wx/panel.h"
-#endif // WX_PRECOMP
-
-#if wxUSE_STATUSBAR
-    #include "wx/statusbr.h"
-    #include "wx/generic/statusbr.h"
-#endif // wxUSE_STATUSBAR
-
-#if wxUSE_TOOLBAR
+    #include "wx/log.h"
     #include "wx/toolbar.h"
-#endif // wxUSE_TOOLBAR
-
-#include "wx/menuitem.h"
-#include "wx/log.h"
+    #include "wx/statusbr.h"
+    #include "wx/menuitem.h"
+#endif // WX_PRECOMP
 
 #ifdef __WXUNIVERSAL__
     #include "wx/univ/theme.h"
     #include "wx/univ/colschem.h"
 #endif // __WXUNIVERSAL__
 
+#include <Event.h>
+#include <Form.h>
+
 // ----------------------------------------------------------------------------
 // globals
 // ----------------------------------------------------------------------------
@@ -70,7 +62,6 @@
 // ----------------------------------------------------------------------------
 
 BEGIN_EVENT_TABLE(wxFrame, wxFrameBase)
-    EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged)
     EVT_PAINT(wxFrame::OnPaint)
 END_EVENT_TABLE()
 
@@ -108,10 +99,14 @@ wxBEGIN_FLAGS( wxFrameStyle )
     // frame styles
     wxFLAGS_MEMBER(wxSTAY_ON_TOP)
     wxFLAGS_MEMBER(wxCAPTION)
+#if WXWIN_COMPATIBILITY_2_6
     wxFLAGS_MEMBER(wxTHICK_FRAME)
+#endif // WXWIN_COMPATIBILITY_2_6
     wxFLAGS_MEMBER(wxSYSTEM_MENU)
     wxFLAGS_MEMBER(wxRESIZE_BORDER)
+#if WXWIN_COMPATIBILITY_2_6
     wxFLAGS_MEMBER(wxRESIZE_BOX)
+#endif // WXWIN_COMPATIBILITY_2_6
     wxFLAGS_MEMBER(wxCLOSE_BOX)
     wxFLAGS_MEMBER(wxMAXIMIZE_BOX)
     wxFLAGS_MEMBER(wxMINIMIZE_BOX)
@@ -183,6 +178,10 @@ void wxFrame::DoSetClientSize(int width, int height)
 // Get size *available for subwindows* i.e. excluding menu bar, toolbar etc.
 void wxFrame::DoGetClientSize(int *x, int *y) const
 {
+    wxSize size = GetSize();
+    wxPoint pos = GetClientAreaOrigin();
+    *x = size.x - pos.x - 1;
+    *y = size.y - pos.y - 1;
 }
 
 // ----------------------------------------------------------------------------
@@ -208,31 +207,27 @@ bool wxFrame::HandleMenuOpen()
     return true;
 }
 
-bool wxFrame::HandleMenuSelect(EventType* event)
+bool wxFrame::HandleMenuSelect(WXEVENTPTR event)
 {
-    int ItemID = event->data.menu.itemID;
+    const EventType *palmEvent = (EventType *)event;
+    const int ItemID = palmEvent->data.menu.itemID;
 
     if (!m_frameMenuBar)
         return false;
 
-    int item=m_frameMenuBar->ProcessCommand(ItemID);
-    if(item==-1)
+    const int item = m_frameMenuBar->ProcessCommand(ItemID);
+    if (item==-1)
         return false;
 
     wxCommandEvent commandEvent(wxEVT_COMMAND_MENU_SELECTED, item);
     commandEvent.SetEventObject(this);
 
-    GetEventHandler()->ProcessEvent(commandEvent);
+    HandleWindowEvent(commandEvent);
     return true;
 }
 
 #endif // wxUSE_MENUS_NATIVE
 
-// Responds to colour changes, and passes event on to children.
-void wxFrame::OnSysColourChanged(wxSysColourChangedEvent& event)
-{
-}
-
 void wxFrame::OnPaint(wxPaintEvent& event)
 {
 #if wxUSE_STATUSBAR
@@ -275,24 +270,6 @@ void wxFrame::IconizeChildFrames(bool bIconize)
 {
 }
 
-// ===========================================================================
-// message processing
-// ===========================================================================
-
-// ---------------------------------------------------------------------------
-// our private (non virtual) message handlers
-// ---------------------------------------------------------------------------
-
-bool wxFrame::HandlePaint()
-{
-    return false;
-}
-
-bool wxFrame::HandleSize(int x, int y, WXUINT id)
-{
-    return false;
-}
-
 // ----------------------------------------------------------------------------
 // wxFrame size management: we exclude the areas taken by menu/status/toolbars
 // from the client area, so the client area is what's really available for the
@@ -309,7 +286,7 @@ wxPoint wxFrame::GetClientAreaOrigin() const
           Y = 0;
     while ( Y < maxY )
     {
-        if(!FrmPointInTitle(GetForm(),X,Y))
+        if(!FrmPointInTitle((FormType*)GetForm(),X,Y))
             return wxPoint(X,Y+1);
         Y++;
     }