2006-05-30 13:47:28 +00:00
|
|
|
#ifndef HEADER_MetersPanel
|
|
|
|
#define HEADER_MetersPanel
|
2011-12-26 21:35:57 +00:00
|
|
|
/*
|
|
|
|
htop - MetersPanel.h
|
|
|
|
(C) 2004-2011 Hisham H. Muhammad
|
|
|
|
Released under the GNU GPL, see the COPYING file
|
|
|
|
in the source distribution for its full text.
|
|
|
|
*/
|
2006-03-04 18:16:49 +00:00
|
|
|
|
2006-05-30 13:47:28 +00:00
|
|
|
#include "Panel.h"
|
2006-03-04 18:16:49 +00:00
|
|
|
#include "Settings.h"
|
|
|
|
#include "ScreenManager.h"
|
|
|
|
|
2015-02-03 21:32:07 +00:00
|
|
|
typedef struct MetersPanel_ MetersPanel;
|
|
|
|
|
|
|
|
struct MetersPanel_ {
|
2006-05-30 13:47:28 +00:00
|
|
|
Panel super;
|
2006-03-04 18:16:49 +00:00
|
|
|
|
|
|
|
Settings* settings;
|
2006-05-30 13:45:40 +00:00
|
|
|
Vector* meters;
|
2006-03-04 18:16:49 +00:00
|
|
|
ScreenManager* scr;
|
2015-02-03 21:32:07 +00:00
|
|
|
MetersPanel* leftNeighbor;
|
|
|
|
MetersPanel* rightNeighbor;
|
2015-01-22 01:27:31 +00:00
|
|
|
bool moving;
|
2015-02-03 21:32:07 +00:00
|
|
|
};
|
2006-03-04 18:16:49 +00:00
|
|
|
|
|
|
|
|
2016-03-21 06:30:37 +00:00
|
|
|
// Note: In code the meters are known to have bar/text/graph "Modes", but in UI
|
|
|
|
// we call them "Styles".
|
2016-03-21 07:18:44 +00:00
|
|
|
// We avoid UTF-8 arrows ← → here as they might display full-width on Chinese
|
|
|
|
// terminals, breaking our aligning.
|
|
|
|
// In <http://unicode.org/reports/tr11/>, arrows (U+2019..U+2199) are
|
|
|
|
// considered "Ambiguous characters".
|
2015-08-27 22:14:13 +00:00
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
void MetersPanel_setMoving(MetersPanel* this, bool moving);
|
2015-08-27 22:14:13 +00:00
|
|
|
|
2012-12-05 15:12:20 +00:00
|
|
|
extern PanelClass MetersPanel_class;
|
|
|
|
|
2020-09-02 07:38:44 +00:00
|
|
|
MetersPanel* MetersPanel_new(Settings* settings, const char* header, Vector* meters, ScreenManager* scr);
|
2006-03-04 18:16:49 +00:00
|
|
|
|
|
|
|
#endif
|