The MouseView now get a pointer to the window's MouseSettings object.
Reverting to the original (on load time) settings is now done in the MouseSettings class, not MouseWindow anymore (updating the MouseView is temporarily disabled). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5949 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -29,11 +29,13 @@
|
||||
#include "MouseView.h"
|
||||
#include "MouseMessages.h"
|
||||
#include "MouseBitmap.h"
|
||||
#include "MouseSettings.h"
|
||||
|
||||
|
||||
MouseView::MouseView(BRect rect)
|
||||
MouseView::MouseView(BRect rect, MouseSettings &settings)
|
||||
: BBox(rect, "main_view"),
|
||||
fCurrentButton(-1),
|
||||
fSettings(settings),
|
||||
fButtons(0),
|
||||
fOldButtons(0)
|
||||
{
|
||||
@@ -71,14 +73,6 @@ MouseView::MouseView(BRect rect)
|
||||
fMouseDownBitmap = new BBitmap(mouseDownRect, B_CMAP8);
|
||||
fMouseDownBitmap->SetBits(kMouseDownBits, kMouseDownWidth*kMouseDownHeight + 30, 0, kMouseDownColorSpace);
|
||||
|
||||
/* // Create the main box for the controls...
|
||||
frame = Bounds();
|
||||
frame.left = frame.left+11;
|
||||
frame.top = frame.top+11;
|
||||
frame.right = frame.right-11;
|
||||
frame.bottom = frame.bottom-44;
|
||||
fBox = new BoxView(frame, this);
|
||||
*/
|
||||
// Add the "Mouse Type" pop up menu
|
||||
mouseTypeMenu = new BPopUpMenu("Mouse Type Menu");
|
||||
mouseTypeMenu->AddItem(new BMenuItem("1-Button", new BMessage(POPUP_MOUSE_TYPE)));
|
||||
|
||||
@@ -23,9 +23,11 @@
|
||||
#include <PopUpMenu.h>
|
||||
|
||||
|
||||
class MouseSettings;
|
||||
|
||||
class MouseView : public BBox {
|
||||
public:
|
||||
MouseView(BRect frame);
|
||||
MouseView(BRect frame, MouseSettings &settings);
|
||||
|
||||
virtual void AttachedToWindow();
|
||||
virtual void MouseDown(BPoint where);
|
||||
@@ -44,14 +46,17 @@ class MouseView : public BBox {
|
||||
mode_mouse fMouseMode;
|
||||
mouse_map fMouseMap, fCurrentMouseMap;
|
||||
int32 fCurrentButton;
|
||||
uint32 fButtons;
|
||||
uint32 fOldButtons;
|
||||
|
||||
|
||||
private:
|
||||
typedef BBox inherited;
|
||||
|
||||
BBitmap *fDoubleClickBitmap, *fSpeedBitmap, *fAccelerationBitmap;
|
||||
BBitmap *fMouseBitmap, *fMouseDownBitmap;
|
||||
|
||||
MouseSettings &fSettings;
|
||||
|
||||
uint32 fButtons;
|
||||
uint32 fOldButtons;
|
||||
|
||||
BBitmap *fDoubleClickBitmap, *fSpeedBitmap, *fAccelerationBitmap;
|
||||
BBitmap *fMouseBitmap, *fMouseDownBitmap;
|
||||
};
|
||||
|
||||
#endif /* MOUSE_VIEW_H */
|
||||
|
||||
@@ -39,7 +39,7 @@ MouseWindow::MouseWindow(BRect rect)
|
||||
AddChild(view);
|
||||
|
||||
// Add the main settings view
|
||||
fView = new MouseView(Bounds().InsetBySelf(kBorderSpace + 1, kBorderSpace + 1));
|
||||
fView = new MouseView(Bounds().InsetBySelf(kBorderSpace + 1, kBorderSpace + 1), fSettings);
|
||||
view->AddChild(fView);
|
||||
|
||||
// Add the "Default" button
|
||||
@@ -102,13 +102,8 @@ MouseWindow::MessageReceived(BMessage *message)
|
||||
case BUTTON_REVERT: {
|
||||
// revert to last settings
|
||||
fView->Init();
|
||||
set_mouse_type(fView->fMouseType);
|
||||
set_mouse_mode(fView->fMouseMode);
|
||||
set_click_speed(fView->fClickSpeed);
|
||||
set_mouse_speed(fView->fMouseSpeed);
|
||||
set_mouse_acceleration(fView->fMouseAcc);
|
||||
set_mouse_map(&fView->fMouseMap);
|
||||
get_mouse_map(&fView->fCurrentMouseMap);
|
||||
fSettings.Revert();
|
||||
//fView->Update();
|
||||
|
||||
SetRevertable(false);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user