1/* 2 * Copyright 2007, Ingo Weinhold <bonefish@cs.tu-berlin.de>. 3 * All rights reserved. Distributed under the terms of the MIT License. 4 */ 5#ifndef WIDGET_LAYOUT_TEST_VIEW_CONTAINER_H 6#define WIDGET_LAYOUT_TEST_VIEW_CONTAINER_H 7 8 9#include <View.h> 10 11#include "View.h" 12 13 14class ViewContainer : public BView, public View { 15public: 16 ViewContainer(BRect frame); 17 18 // BView hooks 19 20 virtual void MessageReceived(BMessage* message); 21 22 virtual void AllAttached(); 23 24 virtual void Draw(BRect updateRect); 25 26 virtual void MouseDown(BPoint where); 27 virtual void MouseUp(BPoint where); 28 virtual void MouseMoved(BPoint where, uint32 code, 29 const BMessage* message); 30 31 virtual void InvalidateLayout(bool descendants); 32 33 // View hooks 34 35 virtual void InvalidateLayout(); 36 37 virtual void Draw(BView* container, BRect updateRect); 38 39 virtual void MouseDown(BPoint where, uint32 buttons, 40 int32 modifiers); 41 virtual void MouseUp(BPoint where, uint32 buttons, 42 int32 modifiers); 43 virtual void MouseMoved(BPoint where, uint32 buttons, 44 int32 modifiers); 45 46private: 47 void _GetButtonsAndModifiers(uint32& buttons, 48 int32& modifiers); 49 50private: 51 View* fMouseFocus; 52}; 53 54#endif // WIDGET_LAYOUT_TEST_VIEW_CONTAINER_H 55