2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Copyright 2014-2016, Rene Gollent, rene@gollent.com.
4 * Distributed under the terms of the MIT License.
6 #ifndef GRAPHICAL_USER_INTERFACE_H
7 #define GRAPHICAL_USER_INTERFACE_H
10 #include "UserInterface.h"
19 class GraphicalUserInterface
: public UserInterface
{
21 GraphicalUserInterface();
22 virtual ~GraphicalUserInterface();
24 virtual const char* ID() const;
26 virtual status_t
Init(Team
* team
,
27 UserInterfaceListener
* listener
);
29 virtual void Terminate();
30 // shut down the UI *now* -- no more user
33 virtual UserInterface
* Clone() const;
35 virtual bool IsInteractive() const;
37 virtual status_t
LoadSettings(const TeamUiSettings
* settings
);
38 virtual status_t
SaveSettings(TeamUiSettings
*& settings
) const;
40 virtual void NotifyUser(const char* title
,
42 user_notification_type type
);
43 virtual void NotifyBackgroundWorkStatus(
45 virtual int32
SynchronouslyAskUser(const char* title
,
46 const char* message
, const char* choice1
,
47 const char* choice2
, const char* choice3
);
48 virtual status_t
SynchronouslyAskUserForFile(entry_ref
* _ref
);
50 class FilePanelHandler
;
53 TeamWindow
* fTeamWindow
;
54 BMessenger
* fTeamWindowMessenger
;
55 FilePanelHandler
* fFilePanelHandler
;
56 BFilePanel
* fFilePanel
;
60 #endif // GRAPHICAL_USER_INTERFACE_H