]> git.saurik.com Git - wxWidgets.git/blobdiff - src/motif/spinbutt.cpp
Applied bug fix [ 684949 ] Dialup Sample With Borland C++ 5.5.1 Free Compiler
[wxWidgets.git] / src / motif / spinbutt.cpp
index ba88785d9b4e73c5a1f9d4a7c01eff72f0b3ef64..426310515628c08c718902f8f1ddfde093d61c9d 100644 (file)
@@ -183,7 +183,7 @@ bool wxArrowButton::Create( wxSpinButton* parent, wxWindowID id,
                             ArrowDirection d,
                             const wxPoint& pos, const wxSize& size )
 {
-    int arrow_dir;
+    int arrow_dir = XmARROW_UP;
 
     switch( d )
     {
@@ -209,6 +209,7 @@ bool wxArrowButton::Create( wxSpinButton* parent, wxWindowID id,
         parentWidget,
         XmNarrowDirection, arrow_dir,
         XmNborderWidth, 0,
+        XmNshadowThickness, 0,
         NULL );
 
     XtAddCallback( (Widget) m_mainWidget,
@@ -224,6 +225,8 @@ bool wxArrowButton::Create( wxSpinButton* parent, wxWindowID id,
     AttachWidget( parent, m_mainWidget, (WXWidget) NULL,
                   pos.x, pos.y, size.x, size.y );
 
+    SetForegroundColour( parent->GetBackgroundColour() );
+
     return TRUE;
 }
 
@@ -279,10 +282,10 @@ bool wxSpinButton::Create( wxWindow *parent, wxWindowID id,
     wxPoint pt1, pt2;
     wxSize sz1, sz2;
     CalcSizes( wxPoint(0,0), newSize, pt1, sz1, pt2, sz2, isVert );
-    m_up = new wxArrowButton( this, -1, isVert ? wxARROW_UP : wxARROW_LEFT,
+    m_up = new wxArrowButton( this, -1, isVert ? wxARROW_UP : wxARROW_RIGHT,
                               pt1, sz1, 1 );
     m_down = new wxArrowButton( this, -1,
-                                isVert ? wxARROW_DOWN : wxARROW_RIGHT,
+                                isVert ? wxARROW_DOWN : wxARROW_LEFT,
                                 pt2, sz2, -1 );
 
     return TRUE;
@@ -331,14 +334,14 @@ void wxSpinButton::Increment( int delta )
 
     if( npos < m_min )
     {
-        if( GetWindowStyle() && wxSP_WRAP )
+        if( GetWindowStyle() & wxSP_WRAP )
             npos = m_max;
         else
             npos = m_min;
     }
     if( npos > m_max )
     {
-        if( GetWindowStyle() && wxSP_WRAP )
+        if( GetWindowStyle() & wxSP_WRAP )
             npos = m_min;
         else
             npos = m_max;
@@ -364,7 +367,7 @@ void wxSpinButton::Increment( int delta )
 
 wxSize wxSpinButton::DoGetBestSize() const
 {
-    return IsVertical() ? wxSize( 24, 34 ) : wxSize( 34, 24 );
+    return IsVertical() ? wxSize( 20, 30 ) : wxSize( 30, 20 );
 }
 
 // Attributes