feature: display status with a different shape depending on the status (#17728)

This commit is contained in:
Jiehong
2021-01-22 20:45:43 +01:00
committed by Lennart Poettering
parent 95457dc13c
commit 9ae5fed64e
8 changed files with 46 additions and 7 deletions
+6
View File
@@ -356,6 +356,9 @@ const char *special_glyph(SpecialGlyph code) {
[SPECIAL_GLYPH_TREE_SPACE] = " ",
[SPECIAL_GLYPH_TRIANGULAR_BULLET] = ">",
[SPECIAL_GLYPH_BLACK_CIRCLE] = "*",
[SPECIAL_GLYPH_WHITE_CIRCLE] = "*",
[SPECIAL_GLYPH_MULTIPLICATION_SIGN] = "x",
[SPECIAL_GLYPH_CIRCLE_ARROW] = "*",
[SPECIAL_GLYPH_BULLET] = "*",
[SPECIAL_GLYPH_MU] = "u",
[SPECIAL_GLYPH_CHECK_MARK] = "+",
@@ -388,6 +391,9 @@ const char *special_glyph(SpecialGlyph code) {
/* Single glyphs in both cases */
[SPECIAL_GLYPH_TRIANGULAR_BULLET] = "\342\200\243", /* ‣ */
[SPECIAL_GLYPH_BLACK_CIRCLE] = "\342\227\217", /* ● */
[SPECIAL_GLYPH_WHITE_CIRCLE] = "\u25CB", /* ○ */
[SPECIAL_GLYPH_MULTIPLICATION_SIGN] = "\u00D7", /* × */
[SPECIAL_GLYPH_CIRCLE_ARROW] = "\u21BB", /* ↻ */
[SPECIAL_GLYPH_BULLET] = "\342\200\242", /* • */
[SPECIAL_GLYPH_MU] = "\316\274", /* μ (actually called: GREEK SMALL LETTER MU) */
[SPECIAL_GLYPH_CHECK_MARK] = "\342\234\223", /* ✓ */
+3
View File
@@ -46,6 +46,9 @@ typedef enum {
SPECIAL_GLYPH_TREE_SPACE,
SPECIAL_GLYPH_TRIANGULAR_BULLET,
SPECIAL_GLYPH_BLACK_CIRCLE,
SPECIAL_GLYPH_WHITE_CIRCLE,
SPECIAL_GLYPH_MULTIPLICATION_SIGN,
SPECIAL_GLYPH_CIRCLE_ARROW,
SPECIAL_GLYPH_BULLET,
SPECIAL_GLYPH_MU,
SPECIAL_GLYPH_CHECK_MARK,
+21
View File
@@ -287,3 +287,24 @@ static const char* const notify_access_table[_NOTIFY_ACCESS_MAX] = {
};
DEFINE_STRING_TABLE_LOOKUP(notify_access, NotifyAccess);
SpecialGlyph unit_active_state_to_glyph(UnitActiveState state) {
switch (state) {
case UNIT_ACTIVE:
return SPECIAL_GLYPH_BLACK_CIRCLE;
case UNIT_RELOADING:
return SPECIAL_GLYPH_CIRCLE_ARROW;
case UNIT_INACTIVE:
return SPECIAL_GLYPH_WHITE_CIRCLE;
case UNIT_FAILED:
return SPECIAL_GLYPH_MULTIPLICATION_SIGN;
case UNIT_ACTIVATING:
case UNIT_DEACTIVATING:
return SPECIAL_GLYPH_BLACK_CIRCLE;
case UNIT_MAINTENANCE:
return SPECIAL_GLYPH_WHITE_CIRCLE;
default:
return SPECIAL_GLYPH_BLACK_CIRCLE;
}
}
+3
View File
@@ -3,6 +3,7 @@
#include <stdbool.h>
#include "locale-util.h"
#include "macro.h"
/* The enum order is used to order unit jobs in the job queue
@@ -304,3 +305,5 @@ UnitDependency unit_dependency_from_string(const char *s) _pure_;
const char* notify_access_to_string(NotifyAccess i) _const_;
NotifyAccess notify_access_from_string(const char *s) _pure_;
SpecialGlyph unit_active_state_to_glyph(UnitActiveState state);