1*ec103c3cSStephan Aßmus /* 2*ec103c3cSStephan Aßmus * Copyright 2007-2008 Haiku Inc. All rights reserved. 3*ec103c3cSStephan Aßmus * Distributed under the terms of the MIT license. 4*ec103c3cSStephan Aßmus */ 5*ec103c3cSStephan Aßmus #ifndef DISK_VIEW_H 6*ec103c3cSStephan Aßmus #define DISK_VIEW_H 7*ec103c3cSStephan Aßmus 8*ec103c3cSStephan Aßmus 9*ec103c3cSStephan Aßmus #include <DiskDevice.h> 10*ec103c3cSStephan Aßmus #include <View.h> 11*ec103c3cSStephan Aßmus 12*ec103c3cSStephan Aßmus 13*ec103c3cSStephan Aßmus class DiskView : public BView { 14*ec103c3cSStephan Aßmus typedef BView Inherited; 15*ec103c3cSStephan Aßmus public: 16*ec103c3cSStephan Aßmus DiskView(const BRect& frame, 17*ec103c3cSStephan Aßmus uint32 resizeMode); 18*ec103c3cSStephan Aßmus virtual ~DiskView(); 19*ec103c3cSStephan Aßmus 20*ec103c3cSStephan Aßmus // BView interface 21*ec103c3cSStephan Aßmus virtual void Draw(BRect updateRect); 22*ec103c3cSStephan Aßmus virtual void FrameResized(float width, float height); 23*ec103c3cSStephan Aßmus 24*ec103c3cSStephan Aßmus void SetDiskCount(int32 count); 25*ec103c3cSStephan Aßmus void SetDisk(BDiskDevice* disk, 26*ec103c3cSStephan Aßmus partition_id selectedPartition); 27*ec103c3cSStephan Aßmus private: 28*ec103c3cSStephan Aßmus void _UpdateLayout(); 29*ec103c3cSStephan Aßmus 30*ec103c3cSStephan Aßmus int32 fDiskCount; 31*ec103c3cSStephan Aßmus BDiskDevice* fDisk; 32*ec103c3cSStephan Aßmus 33*ec103c3cSStephan Aßmus class PartitionLayout; 34*ec103c3cSStephan Aßmus PartitionLayout* fPartitionLayout; 35*ec103c3cSStephan Aßmus }; 36*ec103c3cSStephan Aßmus 37*ec103c3cSStephan Aßmus 38*ec103c3cSStephan Aßmus #endif // DISK_VIEW_H 39