/* * Copyright 2005-2008, Mikael Eiman. * Copyright 2005-2008, Michael Davidson. * Distributed under the terms of the MIT License. * * Authors: * Mikael Eiman * Michael Davidson */ #ifndef APPGROUPVIEW_H #define APPGROUPVIEW_H #include #include #include class NotificationWindow; class NotificationView; typedef std::vector infoview_t; class AppGroupView : public BView { public: AppGroupView(NotificationWindow *win, const char *label); ~AppGroupView(void); // Hooks void AttachedToWindow(void); void Draw(BRect bounds); void MouseDown(BPoint point); void GetPreferredSize(float *width, float *height); void MessageReceived(BMessage *msg); // Public void AddInfo(NotificationView *view); void ResizeViews(void); bool HasChildren(void); private: BString fLabel; NotificationWindow *fParent; infoview_t fInfo; bool fCollapsed; BRect fCloseRect; BRect fCollapseRect; }; #endif