Make UEFI boot-platform build again
[haiku.git] / headers / os / interface / Deskbar.h
blob0781139ef5e2a7f0c0c7ee65b6de27b877129ba9
1 /*
2 * Copyright 2006-2009, Haiku, Inc. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 */
5 #ifndef _DESKBAR_H
6 #define _DESKBAR_H
9 #include <Rect.h>
12 class BMessenger;
13 class BView;
14 struct entry_ref;
17 enum deskbar_location {
18 B_DESKBAR_TOP,
19 B_DESKBAR_BOTTOM,
20 B_DESKBAR_LEFT_TOP,
21 B_DESKBAR_RIGHT_TOP,
22 B_DESKBAR_LEFT_BOTTOM,
23 B_DESKBAR_RIGHT_BOTTOM
27 class BDeskbar {
28 public:
29 BDeskbar();
30 ~BDeskbar();
32 bool IsRunning() const;
34 // Location methods
35 BRect Frame() const;
36 deskbar_location Location(bool* _isExpanded = NULL) const;
37 status_t SetLocation(deskbar_location location,
38 bool expanded = false);
40 // Other state methods
41 bool IsExpanded() const;
42 status_t Expand(bool expand);
44 bool IsAlwaysOnTop() const;
45 status_t SetAlwaysOnTop(bool alwaysOnTop);
47 bool IsAutoRaise() const;
48 status_t SetAutoRaise(bool autoRaise);
50 bool IsAutoHide() const;
51 status_t SetAutoHide(bool autoHide);
53 // Item querying methods
54 status_t GetItemInfo(int32 id, const char** _name) const;
55 status_t GetItemInfo(const char* name, int32* _id) const;
56 bool HasItem(int32 id) const;
57 bool HasItem(const char* name) const;
58 uint32 CountItems() const;
60 // Item modification methods
61 status_t AddItem(BView* archivableView,
62 int32* _id = NULL);
63 status_t AddItem(entry_ref* addOn, int32* _id = NULL);
64 status_t RemoveItem(int32 id);
65 status_t RemoveItem(const char* name);
67 private:
68 BMessenger* fMessenger;
69 uint32 _reserved[12];
73 #endif // _DESKBAR_H