btrfs: Attempt to fix GCC2 build.
[haiku.git] / src / apps / processcontroller / MemoryBarMenuItem.h
blob586a18b9af8632e8ce1ea69f265e5c2c0e737b47
1 /*
2 ProcessController © 2000, Georges-Edouard Berenger, All Rights Reserved.
3 Copyright (C) 2004 beunited.org
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
15 You should have received a copy of the GNU Lesser General Public
16 License along with this library; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 #ifndef _MEMORY_BAR_MENU_ITEM_H_
20 #define _MEMORY_BAR_MENU_ITEM_H_
23 #include <MenuItem.h>
25 class BBitmap;
28 class MemoryBarMenuItem : public BMenuItem {
29 public:
30 MemoryBarMenuItem(const char *label, team_id team,
31 BBitmap* icon, bool deleteIcon, BMessage* message);
32 virtual ~MemoryBarMenuItem();
34 virtual void DrawContent();
35 virtual void GetContentSize(float* _width, float* _height);
37 void DrawIcon();
38 void DrawBar(bool force);
39 int UpdateSituation(int64 committedMemory);
40 void BarUpdate();
41 void Init();
42 void Reset(char* name, team_id team, BBitmap* icon, bool deleteIcon);
44 private:
45 int64 fPhysicalMemory;
46 int64 fCommittedMemory;
47 int64 fWriteMemory;
48 int64 fAllMemory;
49 int64 fLastCommitted;
50 int64 fLastWrite;
51 int64 fLastAll;
52 team_id fTeamID;
53 BBitmap* fIcon;
54 double fGrenze1;
55 double fGrenze2;
56 bool fDeleteIcon;
59 #endif // _MEMORY_BAR_MENU_ITEM_H_