[haiku-commits] haiku: hrev44600 - src/preferences/appearance

  • From: leavengood@xxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sun, 2 Sep 2012 21:35:48 +0200 (CEST)

hrev44600 adds 3 changesets to branch 'master'
old head: e53f0019b57484c9fe0b24371d9c8520b52af57d
new head: 6446fc35823ea31c3bd412a50ead1c4fb0c6d95b

----------------------------------------------------------------------------

5b60052: Make double scrollbar arrows default to false again.

fe855cd: Appearance preflet: Add a double scrollbar arrows setting.
  
  Rename the 'Decorators' tab to 'Look and feel'.
  
  Fixes #8926.

6446fc3: Rename DecorSettingsView to LookAndFeelSettingsView.

                                  [ Ryan Leavengood <leavengood@xxxxxxxxx> ]

----------------------------------------------------------------------------

6 files changed, 104 insertions(+), 44 deletions(-)
src/preferences/appearance/APRWindow.cpp           |   20 ++--
src/preferences/appearance/APRWindow.h             |    4 +-
src/preferences/appearance/Jamfile                 |    4 +-
...ettingsView.cpp => LookAndFeelSettingsView.cpp} |  100 ++++++++++++----
...corSettingsView.h => LookAndFeelSettingsView.h} |   18 ++-
src/servers/app/DesktopSettings.cpp                |    2 +-

############################################################################

Commit:      5b60052cfc0d6505729aab88507e017f66862696
URL:         http://cgit.haiku-os.org/haiku/commit/?id=5b60052
Author:      Ryan Leavengood <leavengood@xxxxxxxxx>
Date:        Sun Sep  2 19:11:51 2012 UTC

Make double scrollbar arrows default to false again.

----------------------------------------------------------------------------

diff --git a/src/servers/app/DesktopSettings.cpp 
b/src/servers/app/DesktopSettings.cpp
index c983c69..a634905 100644
--- a/src/servers/app/DesktopSettings.cpp
+++ b/src/servers/app/DesktopSettings.cpp
@@ -57,7 +57,7 @@ DesktopSettingsPrivate::_SetDefaults()
 
        // init scrollbar info
        fScrollBarInfo.proportional = true;
-       fScrollBarInfo.double_arrows = true;
+       fScrollBarInfo.double_arrows = false;
        fScrollBarInfo.knob = 1;
                // look of the knob (R5: (0, 1, 2), 1 = default)
        fScrollBarInfo.min_knob_size = 15;

############################################################################

Commit:      fe855cd5504348c7c0b688ff64c7930ca2cc78b2
URL:         http://cgit.haiku-os.org/haiku/commit/?id=fe855cd
Author:      Ryan Leavengood <leavengood@xxxxxxxxx>
Date:        Sun Sep  2 19:14:50 2012 UTC

Ticket:      https://dev.haiku-os.org/ticket/8926

Appearance preflet: Add a double scrollbar arrows setting.

Rename the 'Decorators' tab to 'Look and feel'.

Fixes #8926.

----------------------------------------------------------------------------

diff --git a/src/preferences/appearance/APRWindow.cpp 
b/src/preferences/appearance/APRWindow.cpp
index 6006482..1244cab 100644
--- a/src/preferences/appearance/APRWindow.cpp
+++ b/src/preferences/appearance/APRWindow.cpp
@@ -55,7 +55,7 @@ APRWindow::APRWindow(BRect frame)
        fColorsView = new APRView(B_TRANSLATE("Colors"));
 
        fDecorSettings = new DecorSettingsView(
-               B_TRANSLATE("Decorators"));
+               B_TRANSLATE("Look and feel"));
 
        fAntialiasingSettings = new AntialiasingSettingsView(
                B_TRANSLATE("Antialiasing"));
diff --git a/src/preferences/appearance/DecorSettingsView.cpp 
b/src/preferences/appearance/DecorSettingsView.cpp
index 711c534..0ba1008 100644
--- a/src/preferences/appearance/DecorSettingsView.cpp
+++ b/src/preferences/appearance/DecorSettingsView.cpp
@@ -17,8 +17,10 @@
 #include <Box.h>
 #include <Button.h>
 #include <Catalog.h>
+#include <CheckBox.h>
 #include <GridLayoutBuilder.h>
 #include <GroupLayoutBuilder.h>
+#include <InterfaceDefs.h>
 #include <Locale.h>
 #include <MenuField.h>
 #include <MenuItem.h>
@@ -36,6 +38,9 @@
 
 static const int32 kMsgSetDecor = 'deco';
 static const int32 kMsgDecorInfo = 'idec';
+static const int32 kMsgDoubleScrollbarArrows = 'dsba';
+
+static const bool kDefaultDoubleScrollbarArrowsSetting = false;
 
 
 //     #pragma mark -
@@ -43,7 +48,11 @@ static const int32 kMsgDecorInfo = 'idec';
 
 DecorSettingsView::DecorSettingsView(const char* name)
        :
-       BView(name, 0)
+       BView(name, 0),
+       fDecorInfoButton(NULL),
+       fDecorMenuField(NULL),
+       fDecorMenu(NULL),
+       fDoubleScrollbarArrowsCheckBox(NULL)
 {
        // Decorator menu
        _BuildDecorMenu();
@@ -53,6 +62,13 @@ DecorSettingsView::DecorSettingsView(const char* name)
        fDecorInfoButton = new BButton(B_TRANSLATE("About"),
                new BMessage(kMsgDecorInfo));
 
+       fDoubleScrollbarArrowsCheckBox = new BCheckBox("doubleScrollbarArrows",
+               B_TRANSLATE("Use double scrollbar arrows"),
+               new BMessage(kMsgDoubleScrollbarArrows));
+
+       fSavedDoubleArrowsValue = _GetDoubleScrollbarArrowsSetting();
+       fDoubleScrollbarArrowsCheckBox->SetValue(fSavedDoubleArrowsValue);
+
        SetLayout(new BGroupLayout(B_VERTICAL));
 
        // control layout
@@ -61,9 +77,10 @@ DecorSettingsView::DecorSettingsView(const char* name)
         .Add(fDecorMenuField->CreateMenuBarLayoutItem(), 1, 0)
                .Add(fDecorInfoButton, 2, 0)
 
-        .Add(BSpaceLayoutItem::CreateGlue(), 0, 3, 2)
-        .SetInsets(10, 10, 10, 10)
-    );
+               .Add(fDoubleScrollbarArrowsCheckBox, 0, 3, 2)
+               .Add(BSpaceLayoutItem::CreateGlue(), 0, 4, 2)
+               .SetInsets(10, 10, 10, 10)
+       );
        // TODO : Decorator Preview Image?
 }
 
@@ -83,6 +100,7 @@ DecorSettingsView::AttachedToWindow()
 
        fDecorMenu->SetTargetForItems(this);
        fDecorInfoButton->SetTarget(this);
+       fDoubleScrollbarArrowsCheckBox->SetTarget(this);
 }
 
 
@@ -125,6 +143,9 @@ DecorSettingsView::MessageReceived(BMessage *msg)
 
                        break;
                }
+               case kMsgDoubleScrollbarArrows:
+                       
_SetDoubleScrollbarArrowsSetting(fDoubleScrollbarArrowsCheckBox->Value());
+                       break;
 
                default:
                        BView::MessageReceived(msg);
@@ -197,24 +218,53 @@ DecorSettingsView::_AdoptInterfaceToCurrentDecor()
 }
 
 
+bool
+DecorSettingsView::_GetDoubleScrollbarArrowsSetting()
+{
+       scroll_bar_info info;
+       get_scroll_bar_info(&info);
+
+       return info.double_arrows;
+}
+
+
+void
+DecorSettingsView::_SetDoubleScrollbarArrowsSetting(bool value)
+{
+       scroll_bar_info info;
+       get_scroll_bar_info(&info);
+
+       info.double_arrows = value;
+       set_scroll_bar_info(&info);
+
+       Window()->PostMessage(kMsgUpdate);
+}
+
+
 void
 DecorSettingsView::SetDefaults()
 {
        _SetDecor(fDecorUtility.DefaultDecorator());
+       _SetDoubleScrollbarArrowsSetting(kDefaultDoubleScrollbarArrowsSetting);
+       fDoubleScrollbarArrowsCheckBox->SetValue(
+               kDefaultDoubleScrollbarArrowsSetting);
 }
 
 
 bool
 DecorSettingsView::IsDefaultable()
 {
-       return fCurrentDecor != fDecorUtility.DefaultDecorator()->Name();
+       return fCurrentDecor != fDecorUtility.DefaultDecorator()->Name() ||
+               fDoubleScrollbarArrowsCheckBox->Value() !=
+                       kDefaultDoubleScrollbarArrowsSetting;
 }
 
 
 bool
 DecorSettingsView::IsRevertable()
 {
-       return fCurrentDecor != fSavedDecor;
+       return fCurrentDecor != fSavedDecor ||
+               fDoubleScrollbarArrowsCheckBox->Value() != 
fSavedDoubleArrowsValue;
 }
 
 
@@ -222,4 +272,6 @@ void
 DecorSettingsView::Revert()
 {
        _SetDecor(fSavedDecor);
+       _SetDoubleScrollbarArrowsSetting(fSavedDoubleArrowsValue);
+       fDoubleScrollbarArrowsCheckBox->SetValue(fSavedDoubleArrowsValue);
 }
diff --git a/src/preferences/appearance/DecorSettingsView.h 
b/src/preferences/appearance/DecorSettingsView.h
index 520bde2..8110cb5 100644
--- a/src/preferences/appearance/DecorSettingsView.h
+++ b/src/preferences/appearance/DecorSettingsView.h
@@ -16,6 +16,7 @@
 
 
 class BButton;
+class BCheckBox;
 class BMenuField;
 class BPopUpMenu;
 
@@ -40,6 +41,8 @@ private:
                        void                            _BuildDecorMenu();
                        void                            _AdoptToCurrentDecor();
                        void                            
_AdoptInterfaceToCurrentDecor();
+                       bool                            
_GetDoubleScrollbarArrowsSetting();
+                       void                            
_SetDoubleScrollbarArrowsSetting(bool value);
 
 private:
                        DecorInfoUtility        fDecorUtility;
@@ -47,9 +50,11 @@ private:
                        BButton*                        fDecorInfoButton;
                        BMenuField*                     fDecorMenuField;
                        BPopUpMenu*                     fDecorMenu;
+                       BCheckBox*                      
fDoubleScrollbarArrowsCheckBox;
 
                        BString                         fSavedDecor;
                        BString                         fCurrentDecor;
+                       bool                            fSavedDoubleArrowsValue;
 };
 
 #endif // DECOR_SETTINGS_VIEW_H

############################################################################

Revision:    hrev44600
Commit:      6446fc35823ea31c3bd412a50ead1c4fb0c6d95b
URL:         http://cgit.haiku-os.org/haiku/commit/?id=6446fc3
Author:      Ryan Leavengood <leavengood@xxxxxxxxx>
Date:        Sun Sep  2 19:30:02 2012 UTC

Rename DecorSettingsView to LookAndFeelSettingsView.

----------------------------------------------------------------------------

diff --git a/src/preferences/appearance/APRWindow.cpp 
b/src/preferences/appearance/APRWindow.cpp
index 1244cab..41cedcc 100644
--- a/src/preferences/appearance/APRWindow.cpp
+++ b/src/preferences/appearance/APRWindow.cpp
@@ -21,7 +21,7 @@
 
 #include "AntialiasingSettingsView.h"
 #include "APRView.h"
-#include "DecorSettingsView.h"
+#include "LookAndFeelSettingsView.h"
 #include "defs.h"
 #include "FontView.h"
 
@@ -54,7 +54,7 @@ APRWindow::APRWindow(BRect frame)
 
        fColorsView = new APRView(B_TRANSLATE("Colors"));
 
-       fDecorSettings = new DecorSettingsView(
+       fLookAndFeelSettings = new LookAndFeelSettingsView(
                B_TRANSLATE("Look and feel"));
 
        fAntialiasingSettings = new AntialiasingSettingsView(
@@ -62,7 +62,7 @@ APRWindow::APRWindow(BRect frame)
 
        tabView->AddTab(fFontSettings);
        tabView->AddTab(fColorsView);
-       tabView->AddTab(fDecorSettings);
+       tabView->AddTab(fLookAndFeelSettings);
        tabView->AddTab(fAntialiasingSettings);
 
        _UpdateButtons();
@@ -92,7 +92,7 @@ APRWindow::MessageReceived(BMessage *message)
                        fFontSettings->SetDefaults();
                        fColorsView->SetDefaults();
                        fAntialiasingSettings->SetDefaults();
-                       fDecorSettings->SetDefaults();
+                       fLookAndFeelSettings->SetDefaults();
 
                        _UpdateButtons();
                        break;
@@ -101,7 +101,7 @@ APRWindow::MessageReceived(BMessage *message)
                        fColorsView->Revert();
                        fAntialiasingSettings->Revert();
                        fFontSettings->Revert();
-                       fDecorSettings->Revert();
+                       fLookAndFeelSettings->Revert();
 
                        _UpdateButtons();
                        break;
@@ -127,11 +127,11 @@ APRWindow::_IsDefaultable() const
 //     printf("fonts defaultable: %d\n", fFontSettings->IsDefaultable());
 //     printf("colors defaultable: %d\n", fColorsView->IsDefaultable());
 //     printf("AA defaultable: %d\n", fAntialiasingSettings->IsDefaultable());
-//     printf("decor defaultable: %d\n", fDecorSettings->IsDefaultable());
+//     printf("decor defaultable: %d\n", 
fLookAndFeelSettings->IsDefaultable());
        return fColorsView->IsDefaultable()
                || fFontSettings->IsDefaultable()
                || fAntialiasingSettings->IsDefaultable()
-               || fDecorSettings->IsDefaultable();
+               || fLookAndFeelSettings->IsDefaultable();
 }
 
 
@@ -141,9 +141,9 @@ APRWindow::_IsRevertable() const
 //     printf("fonts revertable: %d\n", fFontSettings->IsRevertable());
 //     printf("colors revertable: %d\n", fColorsView->IsRevertable());
 //     printf("AA revertable: %d\n", fAntialiasingSettings->IsRevertable());
-//     printf("decor revertable: %d\n", fDecorSettings->IsRevertable());
+//     printf("decor revertable: %d\n", fLookAndFeelSettings->IsRevertable());
        return fColorsView->IsRevertable()
                || fFontSettings->IsRevertable()
                || fAntialiasingSettings->IsRevertable()
-               || fDecorSettings->IsRevertable();
+               || fLookAndFeelSettings->IsRevertable();
 }
diff --git a/src/preferences/appearance/APRWindow.h 
b/src/preferences/appearance/APRWindow.h
index ab6f582..1907fc4 100644
--- a/src/preferences/appearance/APRWindow.h
+++ b/src/preferences/appearance/APRWindow.h
@@ -20,7 +20,7 @@
 class APRView;
 class AntialiasingSettingsView;
 class FontView;
-class DecorSettingsView;
+class LookAndFeelSettingsView;
 
 
 class APRWindow : public BWindow {
@@ -39,7 +39,7 @@ private:
 
                AntialiasingSettingsView* fAntialiasingSettings;
                FontView*                       fFontSettings;
-               DecorSettingsView*      fDecorSettings;
+               LookAndFeelSettingsView*        fLookAndFeelSettings;
 };
 
 
diff --git a/src/preferences/appearance/Jamfile 
b/src/preferences/appearance/Jamfile
index 12ade0a..45904f7 100644
--- a/src/preferences/appearance/Jamfile
+++ b/src/preferences/appearance/Jamfile
@@ -9,7 +9,7 @@ Includes [ FGristFiles AntialiasingSettingsView.cpp ]
 Preference Appearance :
        APRMain.cpp
        AntialiasingSettingsView.cpp
-       DecorSettingsView.cpp
+       LookAndFeelSettingsView.cpp
        FontSelectionView.cpp
        FontView.cpp
        APRView.cpp
@@ -40,7 +40,7 @@ DoCatalogs Appearance :
        ColorSet.cpp
        ColorWell.cpp
        ColorWhichItem.cpp
-       DecorSettingsView.cpp
+       LookAndFeelSettingsView.cpp
        FontView.cpp
        FontSelectionView.cpp
 ;
diff --git a/src/preferences/appearance/DecorSettingsView.cpp 
b/src/preferences/appearance/LookAndFeelSettingsView.cpp
similarity index 85%
rename from src/preferences/appearance/DecorSettingsView.cpp
rename to src/preferences/appearance/LookAndFeelSettingsView.cpp
index 0ba1008..5720764 100644
--- a/src/preferences/appearance/DecorSettingsView.cpp
+++ b/src/preferences/appearance/LookAndFeelSettingsView.cpp
@@ -5,10 +5,11 @@
  *     Authors:
  *             Alexander von Gluck, kallisti5@xxxxxxxxxxx
  *             Stephan Aßmus <superstippi@xxxxxx>
+ *             Ryan Leavengood <leavengood@xxxxxxxxx>
  */
 
 
-#include "DecorSettingsView.h"
+#include "LookAndFeelSettingsView.h"
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -34,6 +35,7 @@
 
 #undef B_TRANSLATION_CONTEXT
 #define B_TRANSLATION_CONTEXT "DecorSettingsView"
+       // This was not renamed to keep from breaking translations
 
 
 static const int32 kMsgSetDecor = 'deco';
@@ -46,7 +48,7 @@ static const bool kDefaultDoubleScrollbarArrowsSetting = 
false;
 //     #pragma mark -
 
 
-DecorSettingsView::DecorSettingsView(const char* name)
+LookAndFeelSettingsView::LookAndFeelSettingsView(const char* name)
        :
        BView(name, 0),
        fDecorInfoButton(NULL),
@@ -85,13 +87,13 @@ DecorSettingsView::DecorSettingsView(const char* name)
 }
 
 
-DecorSettingsView::~DecorSettingsView()
+LookAndFeelSettingsView::~LookAndFeelSettingsView()
 {
 }
 
 
 void
-DecorSettingsView::AttachedToWindow()
+LookAndFeelSettingsView::AttachedToWindow()
 {
        if (Parent() != NULL)
                SetViewColor(Parent()->ViewColor());
@@ -105,7 +107,7 @@ DecorSettingsView::AttachedToWindow()
 
 
 void
-DecorSettingsView::MessageReceived(BMessage *msg)
+LookAndFeelSettingsView::MessageReceived(BMessage *msg)
 {
        switch (msg->what) {
                case kMsgSetDecor:
@@ -139,7 +141,7 @@ DecorSettingsView::MessageReceived(BMessage *msg)
                        BAlert *infoAlert = new BAlert(B_TRANSLATE("About 
Decorator"),
                                infoText.String(), B_TRANSLATE("OK"));
                        infoAlert->SetFlags(infoAlert->Flags() | 
B_CLOSE_ON_ESCAPE);
-                       infoAlert->Go(); 
+                       infoAlert->Go();
 
                        break;
                }
@@ -155,7 +157,7 @@ DecorSettingsView::MessageReceived(BMessage *msg)
 
 
 void
-DecorSettingsView::_BuildDecorMenu()
+LookAndFeelSettingsView::_BuildDecorMenu()
 {
        fDecorMenu = new BPopUpMenu(B_TRANSLATE("Choose Decorator"));
 
@@ -184,24 +186,24 @@ DecorSettingsView::_BuildDecorMenu()
 
 
 void
-DecorSettingsView::_SetDecor(const BString& name)
+LookAndFeelSettingsView::_SetDecor(const BString& name)
 {
        _SetDecor(fDecorUtility.FindDecorator(name));
-}      
+}
 
 
 void
-DecorSettingsView::_SetDecor(DecorInfo* decorInfo)
+LookAndFeelSettingsView::_SetDecor(DecorInfo* decorInfo)
 {
        if (fDecorUtility.SetDecorator(decorInfo) == B_OK) {
                _AdoptToCurrentDecor();
                Window()->PostMessage(kMsgUpdate);
        }
-}      
+}
 
 
 void
-DecorSettingsView::_AdoptToCurrentDecor()
+LookAndFeelSettingsView::_AdoptToCurrentDecor()
 {
        fCurrentDecor = fDecorUtility.CurrentDecorator()->Name();
        if (fSavedDecor.Length() == 0)
@@ -210,7 +212,7 @@ DecorSettingsView::_AdoptToCurrentDecor()
 }
 
 void
-DecorSettingsView::_AdoptInterfaceToCurrentDecor()
+LookAndFeelSettingsView::_AdoptInterfaceToCurrentDecor()
 {
        BMenuItem* item = fDecorMenu->FindItem(fCurrentDecor);
        if (item != NULL)
@@ -219,7 +221,7 @@ DecorSettingsView::_AdoptInterfaceToCurrentDecor()
 
 
 bool
-DecorSettingsView::_GetDoubleScrollbarArrowsSetting()
+LookAndFeelSettingsView::_GetDoubleScrollbarArrowsSetting()
 {
        scroll_bar_info info;
        get_scroll_bar_info(&info);
@@ -229,7 +231,7 @@ DecorSettingsView::_GetDoubleScrollbarArrowsSetting()
 
 
 void
-DecorSettingsView::_SetDoubleScrollbarArrowsSetting(bool value)
+LookAndFeelSettingsView::_SetDoubleScrollbarArrowsSetting(bool value)
 {
        scroll_bar_info info;
        get_scroll_bar_info(&info);
@@ -242,7 +244,7 @@ DecorSettingsView::_SetDoubleScrollbarArrowsSetting(bool 
value)
 
 
 void
-DecorSettingsView::SetDefaults()
+LookAndFeelSettingsView::SetDefaults()
 {
        _SetDecor(fDecorUtility.DefaultDecorator());
        _SetDoubleScrollbarArrowsSetting(kDefaultDoubleScrollbarArrowsSetting);
@@ -252,7 +254,7 @@ DecorSettingsView::SetDefaults()
 
 
 bool
-DecorSettingsView::IsDefaultable()
+LookAndFeelSettingsView::IsDefaultable()
 {
        return fCurrentDecor != fDecorUtility.DefaultDecorator()->Name() ||
                fDoubleScrollbarArrowsCheckBox->Value() !=
@@ -261,7 +263,7 @@ DecorSettingsView::IsDefaultable()
 
 
 bool
-DecorSettingsView::IsRevertable()
+LookAndFeelSettingsView::IsRevertable()
 {
        return fCurrentDecor != fSavedDecor ||
                fDoubleScrollbarArrowsCheckBox->Value() != 
fSavedDoubleArrowsValue;
@@ -269,7 +271,7 @@ DecorSettingsView::IsRevertable()
 
 
 void
-DecorSettingsView::Revert()
+LookAndFeelSettingsView::Revert()
 {
        _SetDecor(fSavedDecor);
        _SetDoubleScrollbarArrowsSetting(fSavedDoubleArrowsValue);
diff --git a/src/preferences/appearance/DecorSettingsView.h 
b/src/preferences/appearance/LookAndFeelSettingsView.h
similarity index 79%
rename from src/preferences/appearance/DecorSettingsView.h
rename to src/preferences/appearance/LookAndFeelSettingsView.h
index 8110cb5..3214be3 100644
--- a/src/preferences/appearance/DecorSettingsView.h
+++ b/src/preferences/appearance/LookAndFeelSettingsView.h
@@ -5,9 +5,10 @@
  *  Authors:
  *      Alexander von Gluck, kallisti5@xxxxxxxxxxx
  *             Stephan Aßmus <superstippi@xxxxxx>
+ *             Ryan Leavengood <leavengood@xxxxxxxxx>
  */
-#ifndef DECOR_SETTINGS_VIEW_H
-#define DECOR_SETTINGS_VIEW_H
+#ifndef LOOK_AND_FEEL_SETTINGS_VIEW_H
+#define LOOK_AND_FEEL_SETTINGS_VIEW_H
 
 
 #include <DecorInfo.h>
@@ -21,10 +22,10 @@ class BMenuField;
 class BPopUpMenu;
 
 
-class DecorSettingsView : public BView {
+class LookAndFeelSettingsView : public BView {
 public:
-                                                               
DecorSettingsView(const char* name);
-       virtual                                         ~DecorSettingsView();
+                                                               
LookAndFeelSettingsView(const char* name);
+       virtual                                         
~LookAndFeelSettingsView();
 
        virtual void                            AttachedToWindow();
        virtual void                            MessageReceived(BMessage* 
message);
@@ -57,4 +58,4 @@ private:
                        bool                            fSavedDoubleArrowsValue;
 };
 
-#endif // DECOR_SETTINGS_VIEW_H
+#endif // LOOK_AND_FEEL_SETTINGS_VIEW_H


Other related posts:

  • » [haiku-commits] haiku: hrev44600 - src/preferences/appearance - leavengood