Chat-O-Matic/application/views/ReplicantStatusView.h

77 lines
1.5 KiB
C
Raw Permalink Normal View History

/*
* Copyright 2011-2012, Dario Casalinuovo. All rights reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Dario Casalinuovo
*/
#ifndef _REPLICANT_STATUS_VIEW_H
#define _REPLICANT_STATUS_VIEW_H
#include <Handler.h>
#include <Messenger.h>
#include <Resources.h>
#include <View.h>
2021-06-20 12:44:20 -05:00
#include "AppResources.h"
2021-08-19 17:04:33 -05:00
#include "UserStatus.h"
class BPopUpMenu;
class BMenuField;
class BitmapView;
class NicknameTextControl;
class ReplicantHandler;
class ReplicantStatusView : public BView {
public:
ReplicantStatusView();
ReplicantStatusView(BMessage* archive);
~ReplicantStatusView();
virtual void MessageReceived(BMessage* msg);
virtual void AttachedToWindow();
virtual void DetachedFromWindow();
virtual void Draw(BRect rect);
2021-06-20 12:44:20 -05:00
void SetStatus(UserStatus status);
virtual status_t Archive(BMessage* archive, bool deep) const;
static ReplicantStatusView* Instantiate(BMessage* archive);
void MouseDown(BPoint point);
static status_t InstallReplicant();
static status_t RemoveReplicant();
private:
void _Init();
void _BuildMenu();
void _ShowMenu(BPoint point);
BBitmap* _GetIcon(const uint32 id);
2021-06-20 12:44:20 -05:00
BBitmap* fAppIcon;
BBitmap* fConnectingIcon;
2021-06-20 12:44:20 -05:00
BBitmap* fIcon;
BBitmap* fOfflineIcon;
BBitmap* fBusyIcon;
BBitmap* fAwayIcon;
BBitmap* fExitMenuIcon;
2012-03-11 20:41:46 -05:00
BBitmap* fPreferencesIcon;
2021-08-01 06:37:25 -05:00
BResources fResources;
BPopUpMenu* fReplicantMenu;
bool fIsInstalled;
BMessenger* fCayaMsg;
ReplicantHandler* fReplicantHandler;
};
#endif