1*133ebab6SAndrew Lindesay /* 2*133ebab6SAndrew Lindesay * Copyright 2021, Andrew Lindesay <apl@lindesay.co.nz>. 3*133ebab6SAndrew Lindesay * All rights reserved. Distributed under the terms of the MIT License. 4*133ebab6SAndrew Lindesay */ 5*133ebab6SAndrew Lindesay #ifndef SETTINGS_WINDOW_H 6*133ebab6SAndrew Lindesay #define SETTINGS_WINDOW_H 7*133ebab6SAndrew Lindesay 8*133ebab6SAndrew Lindesay #include <Locker.h> 9*133ebab6SAndrew Lindesay #include <Messenger.h> 10*133ebab6SAndrew Lindesay #include <Window.h> 11*133ebab6SAndrew Lindesay 12*133ebab6SAndrew Lindesay #include "BarberPole.h" 13*133ebab6SAndrew Lindesay #include "HaikuDepotConstants.h" 14*133ebab6SAndrew Lindesay #include "UserDetail.h" 15*133ebab6SAndrew Lindesay #include "UserUsageConditions.h" 16*133ebab6SAndrew Lindesay 17*133ebab6SAndrew Lindesay 18*133ebab6SAndrew Lindesay class BButton; 19*133ebab6SAndrew Lindesay class BCheckBox; 20*133ebab6SAndrew Lindesay class Model; 21*133ebab6SAndrew Lindesay 22*133ebab6SAndrew Lindesay 23*133ebab6SAndrew Lindesay class SettingsWindow : public BWindow { 24*133ebab6SAndrew Lindesay public: 25*133ebab6SAndrew Lindesay SettingsWindow(BWindow* parent, Model* model); 26*133ebab6SAndrew Lindesay virtual ~SettingsWindow(); 27*133ebab6SAndrew Lindesay 28*133ebab6SAndrew Lindesay virtual void MessageReceived(BMessage* message); 29*133ebab6SAndrew Lindesay 30*133ebab6SAndrew Lindesay private: 31*133ebab6SAndrew Lindesay void _InitUiControls(); 32*133ebab6SAndrew Lindesay void _UpdateUiFromModel(); 33*133ebab6SAndrew Lindesay void _UpdateModelFromUi(); 34*133ebab6SAndrew Lindesay 35*133ebab6SAndrew Lindesay private: 36*133ebab6SAndrew Lindesay Model* fModel; 37*133ebab6SAndrew Lindesay 38*133ebab6SAndrew Lindesay BCheckBox* fCanShareAnonymousUsageDataCheckBox; 39*133ebab6SAndrew Lindesay 40*133ebab6SAndrew Lindesay BButton* fApplyButton; 41*133ebab6SAndrew Lindesay BButton* fCancelButton; 42*133ebab6SAndrew Lindesay }; 43*133ebab6SAndrew Lindesay 44*133ebab6SAndrew Lindesay 45*133ebab6SAndrew Lindesay #endif // SETTINGS_WINDOW_H 46