1 /* 2 * Copyright 2006-2007, Haiku Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Stephan Aßmus <superstippi@gmx.de> 7 */ 8 9 #ifndef ICON_OBJECT_LIST_VIEW_H 10 #define ICON_OBJECT_LIST_VIEW_H 11 12 #include "Observer.h" 13 #include "PropertyListView.h" 14 15 class CommandStack; 16 class IconObject; 17 class Selection; 18 19 class IconObjectListView : public PropertyListView, 20 public Observer { 21 public: 22 IconObjectListView(); 23 virtual ~IconObjectListView(); 24 25 // BView interface 26 virtual void Draw(BRect updateRect); 27 28 // PropertyListView interface 29 virtual void PropertyChanged(const Property* previous, 30 const Property* current); 31 virtual void PasteProperties(const PropertyObject* object); 32 virtual bool IsEditingMultipleObjects(); 33 34 // Observer interface 35 virtual void ObjectChanged(const Observable* object); 36 37 // IconObjectListView 38 void SetSelection(Selection* selection); 39 void SetCommandStack(CommandStack* stack); 40 41 private: 42 void _SetObject(IconObject* object); 43 44 Selection* fSelection; 45 CommandStack* fCommandStack; 46 47 IconObject* fObject; 48 bool fIgnoreObjectChange; 49 }; 50 51 #endif // ICON_OBJECT_LIST_VIEW_H 52