1 //----------------------------------------------------------------------
2 // This software is part of the OpenBeOS distribution and is covered
4 //---------------------------------------------------------------------
7 BNodeInfo interface declaration.
16 #include <SupportDefs.h>
22 #ifdef USE_OPENBEOS_NAMESPACE
24 #endif // USE_OPENBEOS_NAMESPACE
30 //! BNodeInfo provides file type information
31 /*! BNodeInfo provides a nice wrapper to all sorts of usefull meta data.
32 Like it's mime type, the files icon and the application which will load
35 \see <a href="http://www.opensource.org/licenses/mit-license.html">MIT</a>
36 \author <a href='mailto:bonefish@users.sf.net'>Ingo Weinhold</a>
37 \author <a href="mailto:mrmlk@users.sf.net"> Michael Lloyd Lee </a>
46 BNodeInfo(BNode
*node
);
49 status_t
SetTo(BNode
*node
);
51 status_t
InitCheck() const;
53 virtual status_t
GetType(char *type
) const;
54 virtual status_t
SetType(const char *type
);
55 virtual status_t
GetIcon(BBitmap
*icon
, icon_size k
= B_LARGE_ICON
) const;
56 virtual status_t
SetIcon(const BBitmap
*icon
, icon_size k
= B_LARGE_ICON
);
58 status_t
GetPreferredApp(char *signature
,
59 app_verb verb
= B_OPEN
) const;
60 status_t
SetPreferredApp(const char *signature
,
61 app_verb verb
= B_OPEN
);
62 status_t
GetAppHint(entry_ref
*ref
) const;
63 status_t
SetAppHint(const entry_ref
*ref
);
65 status_t
GetTrackerIcon(BBitmap
*icon
,
66 icon_size k
= B_LARGE_ICON
) const;
67 static status_t
GetTrackerIcon(const entry_ref
*ref
,
69 icon_size k
= B_LARGE_ICON
);
71 friend class BAppFileInfo
;
73 virtual void _ReservedNodeInfo1(); //< FBC
74 virtual void _ReservedNodeInfo2(); //< FBC
75 virtual void _ReservedNodeInfo3(); //< FBC
77 BNodeInfo
&operator=(const BNodeInfo
&);
78 BNodeInfo(const BNodeInfo
&);
80 BNode
*fNode
; //< The Node in question
81 uint32 _reserved
[2]; //< FBC
82 status_t fCStatus
; //< The status to return from InitCheck
85 #ifdef USE_OPENBEOS_NAMESPACE
87 #endif // USE_OPENBEOS_NAMESPACE
89 #endif // _NODE_INFO_H