1 /* 2 * Copyright 2006, Haiku. 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 // PropertyListView interface 26 virtual void Draw(BRect updateRect); 27 28 virtual void PropertyChanged(const Property* previous, 29 const Property* current); 30 virtual void PasteProperties(const PropertyObject* object); 31 virtual bool IsEditingMultipleObjects(); 32 33 // Observer interface 34 virtual void ObjectChanged(const Observable* object); 35 36 // IconObjectListView 37 void SetSelection(Selection* selection); 38 void SetCommandStack(CommandStack* stack); 39 40 private: 41 void _SetObject(IconObject* object); 42 43 Selection* fSelection; 44 CommandStack* fCommandStack; 45 46 IconObject* fObject; 47 bool fIgnoreObjectChange; 48 }; 49 50 #endif // ICON_OBJECT_LIST_VIEW_H 51