b93f9f1371
so that we can draw the window borders using parallel access too. Seems to improve things even further, using the app_server environment with direct accelerant access on R5 looks pretty decent now, but of cause still far from perfect. The global font lock could actually be the problem now. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19528 a95241bf-73f2-0310-859d-f6bbb57e9c96
57 lines
1.2 KiB
C++
57 lines
1.2 KiB
C++
/*
|
|
* Copyright (c) 2001-2005, Haiku, Inc.
|
|
* Distributed under the terms of the MIT license.
|
|
*
|
|
* Author: DarkWyrm <bpmagic@columbus.rr.com>
|
|
*/
|
|
#ifndef DECOR_MANAGER_H
|
|
#define DECOR_MANAGER_H
|
|
|
|
|
|
#include <image.h>
|
|
#include <String.h>
|
|
#include <Locker.h>
|
|
#include <ObjectList.h>
|
|
|
|
#include "Decorator.h"
|
|
|
|
class DecorInfo;
|
|
class Desktop;
|
|
class DrawingEngine;
|
|
|
|
class DecorManager : public BLocker {
|
|
public:
|
|
DecorManager();
|
|
~DecorManager();
|
|
|
|
void RescanDecorators();
|
|
|
|
Decorator* AllocateDecorator(Desktop* desktop,
|
|
DrawingEngine* engine,
|
|
BRect rect,
|
|
const char* title, window_look look,
|
|
uint32 flags);
|
|
|
|
int32 CountDecorators() const;
|
|
|
|
int32 GetDecorator() const;
|
|
bool SetDecorator(int32 index);
|
|
bool SetR5Decorator(int32 value);
|
|
const char* GetDecoratorName(int32 index);
|
|
|
|
// TODO: Implement this method once the rest of the necessary infrastructure
|
|
// is in place
|
|
//status_t GetPreview(int32 index, ServerBitmap *bitmap);
|
|
|
|
private:
|
|
void _EmptyList();
|
|
DecorInfo* _FindDecor(const char *name);
|
|
|
|
BObjectList<DecorInfo> fDecorList;
|
|
DecorInfo* fCurrentDecor;
|
|
};
|
|
|
|
extern DecorManager gDecorManager;
|
|
|
|
#endif /* DECOR_MANAGER_H */
|