1 /* 2 * Copyright 2010, Haiku, Inc. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Clemens Zeidler <haiku@clemens-zeidler.de> 7 */ 8 #ifndef SAT_DECORATOR_H 9 #define SAT_DECORATOR_H 10 11 12 #include "DecorManager.h" 13 #include "DefaultDecorator.h" 14 #include "DefaultWindowBehaviour.h" 15 #include "StackAndTile.h" 16 17 18 class SATDecorator : public DefaultDecorator { 19 public: 20 enum { 21 HIGHLIGHT_STACK_AND_TILE = HIGHLIGHT_USER_DEFINED 22 }; 23 24 public: 25 SATDecorator(DesktopSettings& settings, 26 BRect frame); 27 28 protected: 29 virtual void GetComponentColors(Component component, 30 uint8 highlight, ComponentColors _colors, 31 Decorator::Tab* tab = NULL); 32 33 private: 34 const rgb_color kHighlightTabColor; 35 const rgb_color kHighlightTabColorLight; 36 const rgb_color kHighlightTabColorBevel; 37 const rgb_color kHighlightTabColorShadow; 38 }; 39 40 41 class SATWindowBehaviour : public DefaultWindowBehaviour { 42 public: 43 SATWindowBehaviour(Window* window, 44 StackAndTile* sat); 45 46 protected: 47 virtual bool AlterDeltaForSnap(Window* window, BPoint& delta, 48 bigtime_t now); 49 50 private: 51 StackAndTile* fStackAndTile; 52 }; 53 54 55 #endif 56