]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/frame.cpp
More asserts (well, checks) without _T()
[wxWidgets.git] / src / msw / frame.cpp
index 4cba2dd81f22687da8cccfe710ec3c5075b9a2d0..f3123bd1d470820e4ebe242111810deaa608f1eb 100644 (file)
@@ -241,28 +241,11 @@ void wxFrame::DoGetPosition(int *x, int *y) const
 
 void wxFrame::DoSetSize(int x, int y, int width, int height, int sizeFlags)
 {
-  int currentX, currentY;
-  int x1 = x;
-  int y1 = y;
-  int w1 = width;
-  int h1 = height;
+    wxWindow::DoSetSize(x, y, width, height, sizeFlags);
 
-  GetPosition(&currentX, &currentY);
-  if (x == -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE))
-    x1 = currentX;
-  if (y == -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE))
-    y1 = currentY;
-
-  int ww,hh ;
-  GetSize(&ww,&hh) ;
-  if (width == -1) w1 = ww ;
-  if (height==-1) h1 = hh ;
-
-  MoveWindow(GetHwnd(), x1, y1, w1, h1, (BOOL)TRUE);
-
-  wxSizeEvent event(wxSize(width, height), m_windowId);
-  event.SetEventObject( this );
-  GetEventHandler()->ProcessEvent(event);
+    wxSizeEvent event(wxSize(width, height), m_windowId);
+    event.SetEventObject( this );
+    GetEventHandler()->ProcessEvent(event);
 }
 
 bool wxFrame::Show(bool show)
@@ -653,18 +636,21 @@ void wxFrame::OnMenuHighlight(wxMenuEvent& event)
 {
   if (GetStatusBar())
   {
+    wxString help;
     int menuId = event.GetMenuId();
     if ( menuId != -1 )
     {
       wxMenuBar *menuBar = GetMenuBar();
       if (menuBar && menuBar->FindItem(menuId))
       {
-        // set status text even if the string is empty - this will at
-        // least remove the string from the item which was previously
-        // selected
-        SetStatusText(menuBar->GetHelpString(menuId));
+        help = menuBar->GetHelpString(menuId);
       }
     }
+
+    // set status text even if the string is empty - this will at
+    // least remove the string from the item which was previously
+    // selected
+    SetStatusText(help);
   }
 }
 
@@ -846,10 +832,7 @@ bool wxFrame::MSWTranslateMessage(WXMSG* pMsg)
         return FALSE;
 
     const wxAcceleratorTable& acceleratorTable = menuBar->GetAccelTable();
-    return acceleratorTable.Ok() &&
-           ::TranslateAccelerator(GetHwnd(),
-                                  GetTableHaccel(acceleratorTable),
-                                  (MSG *)pMsg);
+    return acceleratorTable.Translate(this, pMsg);
 }
 
 // ---------------------------------------------------------------------------
@@ -863,7 +846,7 @@ bool wxFrame::HandlePaint()
     {
         if ( m_iconized )
         {
-            HICON hIcon = m_icon.Ok() ? GetIconHicon(m_icon)
+            HICON hIcon = m_icon.Ok() ? GetHiconOf(m_icon)
                                       : (HICON)m_defaultIcon;
 
             // Hold a pointer to the dc so long as the OnPaint() message
@@ -895,10 +878,7 @@ bool wxFrame::HandlePaint()
         }
         else
         {
-            wxPaintEvent event(m_windowId);
-            event.m_eventObject = this;
-
-            return GetEventHandler()->ProcessEvent(event);
+            return wxWindow::HandlePaint();
         }
     }
     else
@@ -992,20 +972,22 @@ bool wxFrame::HandleCommand(WXWORD id, WXWORD cmd, WXHWND control)
     return FALSE;
 }
 
-bool wxFrame::HandleMenuSelect(WXWORD nItem, WXWORD nFlags, WXHMENU hMenu)
+bool wxFrame::HandleMenuSelect(WXWORD nItem, WXWORD flags, WXHMENU hMenu)
 {
     int item;
-    if ( nFlags == 0xFFFF && hMenu == 0 )
+    if ( flags == 0xFFFF && hMenu == 0 )
     {
-        // FIXME: what does this do? does it ever happen?
+        // menu was removed from screen
         item = -1;
     }
-    else if ((nFlags != MF_SEPARATOR) && (nItem != 0) && (nItem != 65535))
+    else if ( !(flags & MF_POPUP) && !(flags & MF_SEPARATOR) )
     {
         item = nItem;
     }
     else
     {
+        // don't give hints for separators (doesn't make sense) nor for the
+        // items opening popup menus (they don't have them anyhow)
         return FALSE;
     }
 
@@ -1059,7 +1041,7 @@ long wxFrame::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
 
         case WM_QUERYDRAGICON:
             {
-                HICON hIcon = m_icon.Ok() ? GetIconHicon(m_icon)
+                HICON hIcon = m_icon.Ok() ? GetHiconOf(m_icon)
                                           : (HICON)(m_defaultIcon);
                 rc = (long)hIcon;
                 processed = rc != 0;