databrowser.h
上传用户:chn_coc
上传日期:2007-12-20
资源大小:563k
文件大小:2k
源码类别:

P2P编程

开发平台:

Windows_Unix

  1. /*
  2.  *  databrowser.h
  3.  *  PeerCast
  4.  *
  5.  *  Created by mode7 on Fri Apr 09 2004.
  6.  *  Copyright (c) 2002-2004 peercast.org. All rights reserved.
  7.  *
  8.  */
  9. #ifndef _DATABROWSER_H
  10. #define _DATABROWSER_H
  11. #include <Carbon/Carbon.h>
  12. class DataBrowser
  13. {
  14. public:
  15. explicit DataBrowser( WindowRef window, const ControlID& controlId, 
  16.   DataBrowserItemDataProcPtr itemDataProcPtr,
  17.   DataBrowserItemNotificationProcPtr notificationProcPtr );
  18. ControlRef controlRef() { return mControl; }
  19. OSStatus addItems ( DataBrowserItemID container,
  20.     UInt32 numItems,
  21. const DataBrowserItemID *items,
  22. DataBrowserPropertyID preSortProperty )
  23. {
  24. return AddDataBrowserItems ( mControl, container, numItems, items, preSortProperty );
  25. }
  26. bool isVisible() const { return (IsControlVisible( mControl ) != false); }
  27. OSStatus removeItems( DataBrowserItemID container,
  28.   UInt32 numItems,
  29.   const DataBrowserItemID *items,
  30.   DataBrowserPropertyID preSortProperty )
  31. {
  32. return RemoveDataBrowserItems( mControl, container, numItems, items, preSortProperty );
  33. }
  34. OSStatus updateItems( DataBrowserItemID container,
  35.   UInt32 numItems,
  36.   const DataBrowserItemID *items,
  37.   DataBrowserPropertyID preSortProperty,
  38.   DataBrowserPropertyID propertyID )
  39. {
  40. return UpdateDataBrowserItems ( mControl, container, numItems, items, preSortProperty, propertyID );
  41. }
  42. OSStatus getItems( DataBrowserItemID container,
  43.    Boolean recurse,
  44.    DataBrowserItemState state,
  45.    Handle items)
  46. {
  47. return GetDataBrowserItems( mControl, container, recurse, state, items );
  48. }
  49. OSStatus setPropertyFlags( DataBrowserPropertyID property, DataBrowserPropertyFlags flags )
  50. {
  51. return SetDataBrowserPropertyFlags( mControl, property, flags );
  52. }
  53. OSStatus getPropertyFlags( DataBrowserPropertyID property, DataBrowserPropertyFlags *flags )
  54. {
  55. return GetDataBrowserPropertyFlags( mControl, property, flags );
  56. }
  57. private:
  58. ControlID  mControlId;
  59. ControlRef mControl;
  60. };
  61. #endif // _DATABROWSER_H