X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d15694e8cad1d44087323bd568ca33ff5b354f2c..ccc040255c07064f2ed96f1a345d21860b202cb6:/src/osx/listbox_osx.cpp

diff --git a/src/osx/listbox_osx.cpp b/src/osx/listbox_osx.cpp
index 9c6830eafb..a6e8b51418 100644
--- a/src/osx/listbox_osx.cpp
+++ b/src/osx/listbox_osx.cpp
@@ -1,5 +1,5 @@
 ///////////////////////////////////////////////////////////////////////////////
-// Name:        src/osx/carbon/listbox.cpp
+// Name:        src/osx/listbox_osx.cpp
 // Purpose:     wxListBox
 // Author:      Stefan Csomor
 // Modified by:
@@ -74,6 +74,9 @@ bool wxListBox::Create(
     DontCreatePeer();
     m_blockEvents = false;
 
+    if ( ! (style & wxNO_BORDER) )
+        style = (style & ~wxBORDER_MASK) | wxSUNKEN_BORDER ;
+
     wxASSERT_MSG( !(style & wxLB_MULTIPLE) || !(style & wxLB_EXTENDED),
                   wxT("only a single listbox selection mode can be specified") );
 
@@ -130,6 +133,11 @@ void wxListBox::FreeData()
 
 void wxListBox::DoSetFirstItem(int n)
 {
+    // osx actually only has an implementation for ensuring the visibility of a row, it does so  
+    // by scrolling the minimal amount necessary from the current scrolling position.
+    // in order to get the same behaviour I'd have to make sure first that the last line is visible, 
+    // followed by a scrollRowToVisible for the desired line 
+    GetListPeer()->ListScrollTo( GetCount()-1 );
     GetListPeer()->ListScrollTo( n );
 }