1 /* 2 * Copyright 2006, Haiku, Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _LAYOUT_CONTEXT_H 6 #define _LAYOUT_CONTEXT_H 7 8 #include <List.h> 9 10 class BLayoutContext; 11 12 13 class BLayoutContextListener { 14 public: 15 BLayoutContextListener(); 16 virtual ~BLayoutContextListener(); 17 18 virtual void LayoutContextLeft(BLayoutContext* context) = 0; 19 20 private: 21 virtual void _ReservedLayoutContextListener1(); 22 virtual void _ReservedLayoutContextListener2(); 23 virtual void _ReservedLayoutContextListener3(); 24 virtual void _ReservedLayoutContextListener4(); 25 virtual void _ReservedLayoutContextListener5(); 26 27 uint32 _reserved[3]; 28 }; 29 30 31 class BLayoutContext { 32 public: 33 BLayoutContext(); 34 ~BLayoutContext(); 35 36 void AddListener(BLayoutContextListener* listener); 37 void RemoveListener( 38 BLayoutContextListener* listener); 39 40 private: 41 BList fListeners; 42 uint32 _reserved[5]; 43 }; 44 45 #endif // _LAYOUT_CONTEXT_H 46