haiku/src/servers/app/DecorManager.h
DarkWyrm 550d6a5375 Cleanup for decorator management code
Updated a couple headers
Moved all decorator code to ServerApp where it belongs
Modified AppServer::Broadcast to allow ServerApps send messages to all apps without having to have a global AppServer instance


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 19:10:15 +00:00

54 lines
1.1 KiB
C++

/*
* Copyright (c) 2001-2005, Haiku, Inc.
* Distributed under the terms of the MIT license.
*
* Author: DarkWyrm <bpmagic@columbus.rr.com>
*/
#ifndef DECORMANAGER_H
#define DECORMANAGER_H
#include <image.h>
#include <String.h>
#include <Locker.h>
#include <List.h>
#include "Decorator.h"
#include "DisplayDriver.h"
class DecorInfo;
class DecorManager : public BLocker
{
public:
DecorManager(void);
~DecorManager(void);
void RescanDecorators(void);
Decorator * AllocateDecorator(BRect rect, const char *title,
int32 wlook, int32 wfeel,
int32 wflags, DisplayDriver *ddriver);
int32 CountDecorators(void) const;
int32 GetDecorator(void) const;
bool SetDecorator(const int32 &index);
bool SetR5Decorator(const int32 &value);
const char * GetDecoratorName(const int32 &index);
// TODO: Implement this method once the rest of the necessary infrastructure
// is in place
// status_t GetPreview(const int32 &index, ServerBitmap *bitmap);
private:
void EmptyList(void);
DecorInfo* FindDecor(const char *name);
BList fDecorList;
DecorInfo* fCurrentDecor;
};
extern DecorManager gDecorManager;
#endif