diff --git a/src/add-ons/decorators/MacDecorator/MacDecorator.cpp b/src/add-ons/decorators/MacDecorator/MacDecorator.cpp index 1b3a6b437a..49b898a6bb 100644 --- a/src/add-ons/decorators/MacDecorator/MacDecorator.cpp +++ b/src/add-ons/decorators/MacDecorator/MacDecorator.cpp @@ -9,6 +9,7 @@ #include "MacDecorator.h" +#include #include #include @@ -29,6 +30,29 @@ #endif +MacDecorAddOn::MacDecorAddOn(image_id id, const char* name) + : + DecorAddOn(id, name) +{ + +} + + +float +MacDecorAddOn::Version() +{ + return 1.00; +} + + +Decorator* +MacDecorAddOn::_AllocateDecorator(DesktopSettings& settings, BRect rect, + window_look look, uint32 flags) +{ + return new (std::nothrow)MacDecorator(settings, rect, look, flags); +} + + MacDecorator::MacDecorator(DesktopSettings& settings, BRect rect, window_look look, uint32 flags) : @@ -810,16 +834,8 @@ MacDecorator::_DrawBlendedRect(DrawingEngine* engine, BRect rect, // #pragma mark - -extern "C" float -get_decorator_version(void) +extern "C" DecorAddOn* +instantiate_decor_addon(image_id id, const char* name) { - return 1.00; -} - - -extern "C" Decorator* -instantiate_decorator(DesktopSettings& desktopSetting, BRect rect, - window_look look, uint32 flag) -{ - return new MacDecorator(desktopSetting, rect, look, flag); + return new (std::nothrow)MacDecorAddOn(id, name); } diff --git a/src/add-ons/decorators/MacDecorator/MacDecorator.h b/src/add-ons/decorators/MacDecorator/MacDecorator.h index 7f9642ada8..c0d0c233d7 100644 --- a/src/add-ons/decorators/MacDecorator/MacDecorator.h +++ b/src/add-ons/decorators/MacDecorator/MacDecorator.h @@ -8,10 +8,22 @@ #define _MAC_DECORATOR_H_ -#include "Decorator.h" +#include "DecorManager.h" #include "RGBColor.h" +class MacDecorAddOn : public DecorAddOn +{ +public: + MacDecorAddOn(image_id id, const char* name); + + float Version(); +protected: + virtual Decorator* _AllocateDecorator(DesktopSettings& settings, + BRect rect, window_look look, uint32 flags); +}; + + class MacDecorator: public Decorator { public: MacDecorator(DesktopSettings& settings,