* modules/gui/wxwindows/playlist.cpp: better playlist window resizing.
authorGildas Bazin <gbazin@videolan.org>
Wed, 2 Jun 2004 12:59:47 +0000 (12:59 +0000)
committerGildas Bazin <gbazin@videolan.org>
Wed, 2 Jun 2004 12:59:47 +0000 (12:59 +0000)
modules/gui/wxwindows/playlist.cpp
modules/gui/wxwindows/wxwindows.h

index e4b206e..e00afd4 100644 (file)
@@ -320,6 +320,7 @@ Playlist::Playlist( intf_thread_t *_p_intf, wxWindow *p_parent ):
     listview->SetColumnWidth( 0, 250 );
     listview->InsertColumn( 1, wxU(_("Duration")) );
     listview->SetColumnWidth( 1, 75 );
+    listview->Layout();
 
     /* Create the Up-Down buttons */
     wxButton *up_button =
@@ -338,7 +339,7 @@ Playlist::Playlist( intf_thread_t *_p_intf, wxWindow *p_parent ):
 
     wxBoxSizer *panel_sizer = new wxBoxSizer( wxVERTICAL );
     panel_sizer->Add( listview, 1, wxEXPAND | wxALL, 5 );
-    panel_sizer->Add( bottom_sizer, 0, wxEXPAND | wxALL, 5);
+    panel_sizer->Add( bottom_sizer, 0, wxALL, 5);
     panel_sizer->Layout();
 
     playlist_panel->SetSizerAndFit( panel_sizer );
@@ -371,19 +372,15 @@ Playlist::Playlist( intf_thread_t *_p_intf, wxWindow *p_parent ):
 
     /* Update the playlist */
     Rebuild();
-    DoSize();
 }
 
 void Playlist::OnSize( wxSizeEvent& event)
-{
-    DoSize();
-    event.Skip();
-}
-
-void Playlist::DoSize()
 {
     wxSize size = GetClientSize();
-    if( listview ) listview->SetSize( 0,0, size.x ,size.y * 4 / 5);
+    if( listview )
+        listview->SetColumnWidth( 0, size.x - listview->GetColumnWidth(1)
+                                 - 15 /* margins */ );
+    event.Skip();
 }
 
 Playlist::~Playlist()
index 4201b8e..6bfa77c 100644 (file)
@@ -677,8 +677,7 @@ private:
 
     /* Event handlers (these functions should _not_ be virtual) */
 
-    void OnSize( wxSizeEvent &event);
-    void DoSize();
+    void OnSize( wxSizeEvent &event );
 
     void OnAddFile( wxCommandEvent& event );
     void OnAddMRL( wxCommandEvent& event );