Commit a0764279 authored by Eric Petit's avatar Eric Petit

* modules/gui/beos/MessagesWindow.cpp: fixed a nasty bug

 * modules/gui/beos/PreferencesWindow.*: now you can save preferences
parent 2aa9dde7
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* MessagesWindow.cpp: beos interface * MessagesWindow.cpp: beos interface
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000, 2001 VideoLAN * Copyright (C) 1999, 2000, 2001 VideoLAN
* $Id: MessagesWindow.cpp,v 1.7 2003/02/10 15:23:46 titer Exp $ * $Id: MessagesWindow.cpp,v 1.8 2003/05/07 17:27:30 titer Exp $
* *
* Authors: Eric Petit <titer@videolan.org> * Authors: Eric Petit <titer@videolan.org>
* *
...@@ -46,6 +46,8 @@ MessagesWindow::MessagesWindow( intf_thread_t * p_intf, ...@@ -46,6 +46,8 @@ MessagesWindow::MessagesWindow( intf_thread_t * p_intf,
{ {
this->p_intf = p_intf; this->p_intf = p_intf;
SetSizeLimits( 200, 2000, 200, 2000 );
BRect rect, textRect; BRect rect, textRect;
rect = Bounds(); rect = Bounds();
...@@ -55,6 +57,7 @@ MessagesWindow::MessagesWindow( intf_thread_t * p_intf, ...@@ -55,6 +57,7 @@ MessagesWindow::MessagesWindow( intf_thread_t * p_intf,
fMessagesView = new BTextView( rect, "messages", textRect, fMessagesView = new BTextView( rect, "messages", textRect,
B_FOLLOW_ALL, B_WILL_DRAW ); B_FOLLOW_ALL, B_WILL_DRAW );
fMessagesView->MakeEditable( false ); fMessagesView->MakeEditable( false );
fMessagesView->MakeSelectable( false );
fMessagesView->SetStylable( true ); fMessagesView->SetStylable( true );
fScrollView = new BScrollView( "scrollview", fMessagesView, B_WILL_DRAW, fScrollView = new BScrollView( "scrollview", fMessagesView, B_WILL_DRAW,
B_FOLLOW_ALL, false, true ); B_FOLLOW_ALL, false, true );
...@@ -183,6 +186,7 @@ static int UpdateMessages( intf_thread_t * p_intf ) ...@@ -183,6 +186,7 @@ static int UpdateMessages( intf_thread_t * p_intf )
} }
/* Scroll at the end */ /* Scroll at the end */
if( scrollBar->LockLooper() ) if( scrollBar->LockLooper() )
{ {
float min, max; float min, max;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* PreferencesWindow.cpp: beos interface * PreferencesWindow.cpp: beos interface
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000, 2001 VideoLAN * Copyright (C) 1999, 2000, 2001 VideoLAN
* $Id: PreferencesWindow.cpp,v 1.17 2003/05/07 16:47:10 titer Exp $ * $Id: PreferencesWindow.cpp,v 1.18 2003/05/07 17:27:30 titer Exp $
* *
* Authors: Eric Petit <titer@videolan.org> * Authors: Eric Petit <titer@videolan.org>
* *
...@@ -82,6 +82,9 @@ PreferencesWindow::PreferencesWindow( intf_thread_t * p_interface, ...@@ -82,6 +82,9 @@ PreferencesWindow::PreferencesWindow( intf_thread_t * p_interface,
fConfigScroll( NULL ), fConfigScroll( NULL ),
p_intf( p_interface ) p_intf( p_interface )
{ {
SetSizeLimits( PREFS_WINDOW_WIDTH, PREFS_WINDOW_WIDTH,
200, 2000 );
BRect rect; BRect rect;
/* The "background" view */ /* The "background" view */
...@@ -272,15 +275,20 @@ PreferencesWindow::PreferencesWindow( intf_thread_t * p_interface, ...@@ -272,15 +275,20 @@ PreferencesWindow::PreferencesWindow( intf_thread_t * p_interface,
rect.InsetBy( 10, 10 ); rect.InsetBy( 10, 10 );
rect.left = rect.right - 80; rect.left = rect.right - 80;
rect.top = rect.bottom - 25; rect.top = rect.bottom - 25;
button = new BButton( rect, "", _("OK"), new BMessage( PREFS_OK ), button = new BButton( rect, "", _("Close"), new BMessage( PREFS_CLOSE ),
B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM ); B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM );
button->MakeDefault( true );
fPrefsView->AddChild( button ); fPrefsView->AddChild( button );
rect.OffsetBy( -90, 0 ); rect.OffsetBy( -90, 0 );
button = new BButton( rect, "", _("Revert"), new BMessage( PREFS_REVERT ), button = new BButton( rect, "", _("Apply"), new BMessage( PREFS_APPLY ),
B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM ); B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM );
fPrefsView->AddChild( button ); fPrefsView->AddChild( button );
rect.OffsetBy( -90, 0 ); rect.OffsetBy( -90, 0 );
button = new BButton( rect, "", _("Apply"), new BMessage( PREFS_APPLY ), button = new BButton( rect, "", _("Save"), new BMessage( PREFS_SAVE ),
B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM );
fPrefsView->AddChild( button );
rect.OffsetBy( -90, 0 );
button = new BButton( rect, "", _("Revert"), new BMessage( PREFS_REVERT ),
B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM ); B_FOLLOW_RIGHT | B_FOLLOW_BOTTOM );
fPrefsView->AddChild( button ); fPrefsView->AddChild( button );
...@@ -316,8 +324,7 @@ void PreferencesWindow::MessageReceived( BMessage * message ) ...@@ -316,8 +324,7 @@ void PreferencesWindow::MessageReceived( BMessage * message )
Update(); Update();
break; break;
case PREFS_OK: case PREFS_CLOSE:
ApplyChanges( true );
PostMessage( B_QUIT_REQUESTED ); PostMessage( B_QUIT_REQUESTED );
break; break;
...@@ -329,6 +336,10 @@ void PreferencesWindow::MessageReceived( BMessage * message ) ...@@ -329,6 +336,10 @@ void PreferencesWindow::MessageReceived( BMessage * message )
ApplyChanges( true ); ApplyChanges( true );
break; break;
case PREFS_SAVE:
SaveChanges();
break;
default: default:
BWindow::MessageReceived( message ); BWindow::MessageReceived( message );
} }
...@@ -484,6 +495,15 @@ void PreferencesWindow::ApplyChanges( bool doIt ) ...@@ -484,6 +495,15 @@ void PreferencesWindow::ApplyChanges( bool doIt )
} }
} }
/*****************************************************************************
* PreferencesWindow::SaveChanges
*****************************************************************************/
void PreferencesWindow::SaveChanges()
{
ApplyChanges( true );
config_SaveConfigFile( p_intf, NULL );
}
/***************************************************************************** /*****************************************************************************
* PreferencesWindow::ReallyQuit * PreferencesWindow::ReallyQuit
*****************************************************************************/ *****************************************************************************/
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* PreferencesWindow.h * PreferencesWindow.h
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000, 2001 VideoLAN * Copyright (C) 1999, 2000, 2001 VideoLAN
* $Id: PreferencesWindow.h,v 1.11 2003/05/05 13:06:02 titer Exp $ * $Id: PreferencesWindow.h,v 1.12 2003/05/07 17:27:30 titer Exp $
* *
* Authors: Eric Petit <titer@videolan.org> * Authors: Eric Petit <titer@videolan.org>
* *
...@@ -29,9 +29,10 @@ ...@@ -29,9 +29,10 @@
#define PREFS_WINDOW_WIDTH 600 #define PREFS_WINDOW_WIDTH 600
#define PREFS_WINDOW_HEIGHT 400 #define PREFS_WINDOW_HEIGHT 400
#define PREFS_ITEM_SELECTED 'pris' #define PREFS_ITEM_SELECTED 'pris'
#define PREFS_OK 'prok' #define PREFS_CLOSE 'prcl'
#define PREFS_REVERT 'prre' #define PREFS_REVERT 'prre'
#define PREFS_APPLY 'prap' #define PREFS_APPLY 'prap'
#define PREFS_SAVE 'prsa'
#define TEXT_HEIGHT 16 #define TEXT_HEIGHT 16
class ConfigView : public BView class ConfigView : public BView
...@@ -70,6 +71,7 @@ class PreferencesWindow : public BWindow ...@@ -70,6 +71,7 @@ class PreferencesWindow : public BWindow
void Update(); void Update();
void UpdateScrollBar(); void UpdateScrollBar();
void ApplyChanges( bool doIt ); void ApplyChanges( bool doIt );
void SaveChanges();
void ReallyQuit(); void ReallyQuit();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment