2008-04-06 21:30:50 +00:00
|
|
|
/*
|
2009-03-13 20:19:10 +00:00
|
|
|
* Copyright 2008-2009, Axel Dörfler, axeld@pinc-software.de.
|
2008-04-06 21:30:50 +00:00
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
|
|
|
#ifndef ACTIVITY_WINDOW_H
|
|
|
|
#define ACTIVITY_WINDOW_H
|
|
|
|
|
|
|
|
|
2009-03-13 20:19:10 +00:00
|
|
|
#include <Messenger.h>
|
2008-04-06 21:30:50 +00:00
|
|
|
#include <Window.h>
|
|
|
|
|
|
|
|
class BFile;
|
2008-04-13 06:02:45 +00:00
|
|
|
class BGroupLayout;
|
|
|
|
class BMenuItem;
|
2008-04-06 21:30:50 +00:00
|
|
|
class ActivityView;
|
|
|
|
|
|
|
|
|
|
|
|
class ActivityWindow : public BWindow {
|
|
|
|
public:
|
2008-04-18 14:51:27 +00:00
|
|
|
ActivityWindow();
|
|
|
|
virtual ~ActivityWindow();
|
2008-04-06 21:30:50 +00:00
|
|
|
|
2008-04-18 14:51:27 +00:00
|
|
|
virtual void MessageReceived(BMessage* message);
|
|
|
|
virtual bool QuitRequested();
|
|
|
|
|
2009-03-13 20:19:10 +00:00
|
|
|
int32 ActivityViewCount() const;
|
|
|
|
ActivityView* ActivityViewAt(int32 index) const;
|
|
|
|
void BroadcastToActivityViews(BMessage* message,
|
|
|
|
BView* exceptToView = NULL);
|
|
|
|
|
|
|
|
bigtime_t RefreshInterval() const;
|
2013-12-01 22:10:07 +00:00
|
|
|
bool IsAlwaysOnTop() const;
|
2008-04-06 21:30:50 +00:00
|
|
|
|
|
|
|
private:
|
2008-04-18 14:51:27 +00:00
|
|
|
status_t _OpenSettings(BFile& file, uint32 mode);
|
|
|
|
status_t _LoadSettings(BMessage& settings);
|
|
|
|
status_t _SaveSettings();
|
2008-04-06 21:30:50 +00:00
|
|
|
|
2008-07-14 17:29:02 +00:00
|
|
|
void _AddDefaultView();
|
2008-04-18 14:51:27 +00:00
|
|
|
void _MessageDropped(BMessage *message);
|
2013-03-07 13:39:27 +00:00
|
|
|
void _SetAlwaysOnTop(bool alwaysOnTop);
|
2008-04-06 21:30:50 +00:00
|
|
|
|
2013-03-07 13:39:27 +00:00
|
|
|
BMenuItem* fAlwaysOnTop;
|
2008-04-17 19:46:52 +00:00
|
|
|
#ifdef __HAIKU__
|
2013-03-07 13:39:27 +00:00
|
|
|
BGroupLayout* fLayout;
|
2008-04-17 19:46:52 +00:00
|
|
|
#endif
|
2013-03-07 13:39:27 +00:00
|
|
|
BMessenger fSettingsWindow;
|
|
|
|
|
2008-04-06 21:30:50 +00:00
|
|
|
};
|
|
|
|
|
2008-04-18 14:51:27 +00:00
|
|
|
static const uint32 kMsgRemoveView = 'rmvw';
|
|
|
|
|
2008-04-06 21:30:50 +00:00
|
|
|
#endif // ACTIVITY_WINDOW_H
|