]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/tglbtn.cpp
preserve type when loaded image is rescaled, #11543
[wxWidgets.git] / src / msw / tglbtn.cpp
index dfe73630ee7bea586da7384c81d013c3ce2b05de..edadc6a1efb0d67322366d3327f6ded65ece0d6a 100644 (file)
@@ -48,7 +48,7 @@
 // macros
 // ----------------------------------------------------------------------------
 
 // macros
 // ----------------------------------------------------------------------------
 
-wxDEFINE_EVENT( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEvent )
+wxDEFINE_EVENT( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEvent );
 
 // ============================================================================
 // implementation
 
 // ============================================================================
 // implementation
@@ -65,7 +65,7 @@ BEGIN_EVENT_TABLE(wxBitmapToggleButton,wxToggleButtonBase)
    EVT_MOUSE_EVENTS(wxBitmapToggleButton::OnMouse)
    EVT_CHAR(wxBitmapToggleButton::OnChar)
    EVT_SIZE(wxBitmapToggleButton::OnSize)
    EVT_MOUSE_EVENTS(wxBitmapToggleButton::OnMouse)
    EVT_CHAR(wxBitmapToggleButton::OnChar)
    EVT_SIZE(wxBitmapToggleButton::OnSize)
-END_EVENT_TABLE();
+END_EVENT_TABLE()
 
 void wxBitmapToggleButton::Init()
 {
 
 void wxBitmapToggleButton::Init()
 {
@@ -82,9 +82,9 @@ bool wxBitmapToggleButton::Create( wxWindow *parent, wxWindowID id,
 
     if (!wxToggleButtonBase::Create( parent, id, pos, size, style, validator, name ))
         return false;
 
     if (!wxToggleButtonBase::Create( parent, id, pos, size, style, validator, name ))
         return false;
-        
+
     m_bitmap = label;
     m_bitmap = label;
-    
+
     if (size.x == -1 || size.y == -1)
     {
         wxSize new_size = GetBestSize();
     if (size.x == -1 || size.y == -1)
     {
         wxSize new_size = GetBestSize();
@@ -94,7 +94,7 @@ bool wxBitmapToggleButton::Create( wxWindow *parent, wxWindowID id,
             new_size.y = size.y;
         SetSize( new_size );
     }
             new_size.y = size.y;
         SetSize( new_size );
     }
-        
+
     return true;
 }
 
     return true;
 }
 
@@ -103,7 +103,7 @@ void wxBitmapToggleButton::SetValue(bool state)
     if (m_capturing) return;
 
     if (state == m_depressed) return;
     if (m_capturing) return;
 
     if (state == m_depressed) return;
-    
+
     m_depressed = state;
     Refresh();
 }
     m_depressed = state;
     Refresh();
 }
@@ -117,7 +117,7 @@ void wxBitmapToggleButton::SetLabel(const wxBitmap& label)
 {
     m_bitmap = label;
     m_disabledBitmap = wxBitmap();
 {
     m_bitmap = label;
     m_disabledBitmap = wxBitmap();
-    
+
     Refresh();
 }
 
     Refresh();
 }
 
@@ -127,18 +127,18 @@ bool wxBitmapToggleButton::Enable(bool enable)
 
     if (!wxToggleButtonBase::Enable( enable ))
       return false;
 
     if (!wxToggleButtonBase::Enable( enable ))
       return false;
-      
+
     Refresh();
     Refresh();
-    
+
     return true;
 }
 
 void wxBitmapToggleButton::OnPaint(wxPaintEvent &WXUNUSED(event))
 {
     wxSize size = GetSize();
     return true;
 }
 
 void wxBitmapToggleButton::OnPaint(wxPaintEvent &WXUNUSED(event))
 {
     wxSize size = GetSize();
-    
+
     wxBitmap bitmap = m_bitmap;
     wxBitmap bitmap = m_bitmap;
-    
+
     wxPaintDC dc(this);
     wxRendererNative &renderer = wxRendererNative::Get();
     int flags = 0;
     wxPaintDC dc(this);
     wxRendererNative &renderer = wxRendererNative::Get();
     int flags = 0;
@@ -146,7 +146,7 @@ void wxBitmapToggleButton::OnPaint(wxPaintEvent &WXUNUSED(event))
         flags |= wxCONTROL_PRESSED;
     wxRect rect(0,0,size.x,size.y);
     renderer.DrawPushButton( this, dc, rect, flags );
         flags |= wxCONTROL_PRESSED;
     wxRect rect(0,0,size.x,size.y);
     renderer.DrawPushButton( this, dc, rect, flags );
-    
+
     if (bitmap.IsOk())
     {
         if (!IsEnabled())
     if (bitmap.IsOk())
     {
         if (!IsEnabled())
@@ -156,27 +156,27 @@ void wxBitmapToggleButton::OnPaint(wxPaintEvent &WXUNUSED(event))
                 wxImage image = m_bitmap.ConvertToImage();
                 m_disabledBitmap = wxBitmap( image.ConvertToGreyscale() );
             }
                 wxImage image = m_bitmap.ConvertToImage();
                 m_disabledBitmap = wxBitmap( image.ConvertToGreyscale() );
             }
-            
+
             bitmap = m_disabledBitmap;
         }
             bitmap = m_disabledBitmap;
         }
-    
+
         wxSize bsize = bitmap.GetSize();
         int offset = 0;
         if (m_depressed) offset = 1;
         dc.DrawBitmap( bitmap, (size.x-bsize.x) / 2 + offset, (size.y-bsize.y) / 2 + offset, true );
     }
         wxSize bsize = bitmap.GetSize();
         int offset = 0;
         if (m_depressed) offset = 1;
         dc.DrawBitmap( bitmap, (size.x-bsize.x) / 2 + offset, (size.y-bsize.y) / 2 + offset, true );
     }
-    
+
 }
 
 void wxBitmapToggleButton::OnMouse(wxMouseEvent &event)
 {
     if (!IsEnabled())
         return;
 }
 
 void wxBitmapToggleButton::OnMouse(wxMouseEvent &event)
 {
     if (!IsEnabled())
         return;
-      
+
     wxSize size = GetSize();
     wxSize size = GetSize();
-    bool mouse_in = ((event.GetX() > 0) && (event.GetX() < size.x) && 
+    bool mouse_in = ((event.GetX() > 0) && (event.GetX() < size.x) &&
                      (event.GetY() > 0) && (event.GetY() < size.y));
                      (event.GetY() > 0) && (event.GetY() < size.y));
-    
+
     if (m_capturing)
     {
         bool old_depressed = m_depressed;
     if (m_capturing)
     {
         bool old_depressed = m_depressed;
@@ -184,7 +184,7 @@ void wxBitmapToggleButton::OnMouse(wxMouseEvent &event)
             m_depressed = !m_oldValue;
         else
             m_depressed = m_oldValue;
             m_depressed = !m_oldValue;
         else
             m_depressed = m_oldValue;
-            
+
         if (event.LeftUp())
         {
             ReleaseCapture();
         if (event.LeftUp())
         {
             ReleaseCapture();
@@ -197,7 +197,7 @@ void wxBitmapToggleButton::OnMouse(wxMouseEvent &event)
                 ProcessCommand(event);
             }
         }
                 ProcessCommand(event);
             }
         }
-            
+
         if (old_depressed != m_depressed)
            Refresh();
     }
         if (old_depressed != m_depressed)
            Refresh();
     }
@@ -220,7 +220,7 @@ void wxBitmapToggleButton::OnChar(wxKeyEvent &event)
    {
        m_depressed = !m_depressed;
        Refresh();
    {
        m_depressed = !m_depressed;
        Refresh();
-       
+
        wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, m_windowId);
        event.SetInt(GetValue());
        event.SetEventObject(this);
        wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, m_windowId);
        event.SetInt(GetValue());
        event.SetEventObject(this);
@@ -237,7 +237,7 @@ wxSize wxBitmapToggleButton::DoGetBestSize() const
 {
     if (!m_bitmap.IsOk())
         return wxSize(16,16);
 {
     if (!m_bitmap.IsOk())
         return wxSize(16,16);
-      
+
     wxSize ret = m_bitmap.GetSize();
     ret.x += 8;
     ret.y += 8;
     wxSize ret = m_bitmap.GetSize();
     ret.x += 8;
     ret.y += 8;
@@ -273,7 +273,7 @@ bool wxToggleButton::Create(wxWindow *parent,
     WXDWORD msStyle = MSWGetStyle(style, &exstyle);
     msStyle |= wxMSWButton::GetMultilineStyle(label);
 
     WXDWORD msStyle = MSWGetStyle(style, &exstyle);
     msStyle |= wxMSWButton::GetMultilineStyle(label);
 
-    return MSWCreateControl(_T("BUTTON"), msStyle, pos, size, label, exstyle);
+    return MSWCreateControl(wxT("BUTTON"), msStyle, pos, size, label, exstyle);
 }
 
 WXDWORD wxToggleButton::MSWGetStyle(long style, WXDWORD *exstyle) const
 }
 
 WXDWORD wxToggleButton::MSWGetStyle(long style, WXDWORD *exstyle) const