summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHisham Muhammad <hisham@gobolinux.org>2015-03-23 19:24:34 -0300
committerHisham Muhammad <hisham@gobolinux.org>2015-03-23 19:24:34 -0300
commit7cb8cb05fbf005564c6eefe4fd6007ced9336a5f (patch)
tree92c24cc07f1dd3f95f7adc77014740575b24c5eb
parent8a11281c675b25111b2463d1c75d6f6790aec379 (diff)
Simplify constructors.
-rw-r--r--Action.c12
-rw-r--r--AffinityPanel.c6
-rw-r--r--AvailableMetersPanel.c6
-rw-r--r--FunctionBar.c8
-rw-r--r--FunctionBar.h3
-rw-r--r--SignalsPanel.c6
-rw-r--r--linux/IOPriorityPanel.c7
7 files changed, 17 insertions, 31 deletions
diff --git a/Action.c b/Action.c
index 3f52e46b..6e01a295 100644
--- a/Action.c
+++ b/Action.c
@@ -161,13 +161,9 @@ static inline Htop_Reaction setSortKey(Settings* settings, ProcessField sortKey)
return HTOP_REFRESH | HTOP_SAVE_SETTINGS | HTOP_UPDATE_PANELHDR;
}
-static const char* SortFunctions[] = {"Sort ", "Cancel ", NULL};
-static const char* SortKeys[] = {"Enter", "Esc", NULL};
-static int SortEvents[] = {13, 27};
-
static Htop_Reaction sortBy(State* st) {
Htop_Reaction reaction = HTOP_OK;
- Panel* sortPanel = Panel_new(0, 0, 0, 0, true, Class(ListItem), FunctionBar_new(SortFunctions, SortKeys, SortEvents));
+ Panel* sortPanel = Panel_new(0, 0, 0, 0, true, Class(ListItem), FunctionBar_newEnterEsc("Sort ", "Cancel "));
Panel_setHeader(sortPanel, "Sort by");
ProcessField* fields = st->settings->fields;
for (int i = 0; fields[i]; i++) {
@@ -307,12 +303,8 @@ static Htop_Reaction actionKill(State* st) {
return HTOP_REFRESH | HTOP_REDRAW_BAR | HTOP_UPDATE_PANELHDR;
}
-static const char* UsersFunctions[] = {"Show ", "Cancel ", NULL};
-static const char* UsersKeys[] = {"Enter", "Esc", NULL};
-static int UsersEvents[] = {13, 27};
-
static Htop_Reaction actionFilterByUser(State* st) {
- Panel* usersPanel = Panel_new(0, 0, 0, 0, true, Class(ListItem), FunctionBar_new(UsersFunctions, UsersKeys, UsersEvents));
+ Panel* usersPanel = Panel_new(0, 0, 0, 0, true, Class(ListItem), FunctionBar_newEnterEsc("Show ", "Cancel "));
Panel_setHeader(usersPanel, "Show processes of:");
UsersTable_foreach(st->ut, addUserToVector, usersPanel);
Vector_insertionSort(usersPanel->items);
diff --git a/AffinityPanel.c b/AffinityPanel.c
index 644c6338..8612855c 100644
--- a/AffinityPanel.c
+++ b/AffinityPanel.c
@@ -42,12 +42,8 @@ PanelClass AffinityPanel_class = {
.eventHandler = AffinityPanel_eventHandler
};
-static const char* AffinityFunctions[] = {"Set ", "Cancel ", NULL};
-static const char* AffinityKeys[] = {"Enter", "Esc", NULL};
-static int AffinityEvents[] = {13, 27};
-
Panel* AffinityPanel_new(ProcessList* pl, Affinity* affinity) {
- Panel* this = Panel_new(1, 1, 1, 1, true, Class(CheckItem), FunctionBar_new(AffinityFunctions, AffinityKeys, AffinityEvents));
+ Panel* this = Panel_new(1, 1, 1, 1, true, Class(CheckItem), FunctionBar_newEnterEsc("Set ", "Cancel "));
Object_setClass(this, Class(AffinityPanel));
Panel_setHeader(this, "Use CPUs:");
diff --git a/AvailableMetersPanel.c b/AvailableMetersPanel.c
index 67451388..5df9db5d 100644
--- a/AvailableMetersPanel.c
+++ b/AvailableMetersPanel.c
@@ -34,10 +34,6 @@ typedef struct AvailableMetersPanel_ {
}*/
-static const char* AvailableMetersFunctions[] = {"Add ", "Done ", NULL};
-static const char* AvailableMetersKeys[] = {"Enter", "Esc"};
-static int AvailableMetersEvents[] = {13, 27};
-
static void AvailableMetersPanel_delete(Object* object) {
Panel* super = (Panel*) object;
AvailableMetersPanel* this = (AvailableMetersPanel*) object;
@@ -106,7 +102,7 @@ PanelClass AvailableMetersPanel_class = {
AvailableMetersPanel* AvailableMetersPanel_new(Settings* settings, Header* header, Panel* leftMeters, Panel* rightMeters, ScreenManager* scr, ProcessList* pl) {
AvailableMetersPanel* this = AllocThis(AvailableMetersPanel);
Panel* super = (Panel*) this;
- FunctionBar* fuBar = FunctionBar_new(AvailableMetersFunctions, AvailableMetersKeys, AvailableMetersEvents);
+ FunctionBar* fuBar = FunctionBar_newEnterEsc("Add ", "Done ");
Panel_init(super, 1, 1, 1, 1, Class(ListItem), true, fuBar);
this->settings = settings;
diff --git a/FunctionBar.c b/FunctionBar.c
index ffae0106..55e1f9a2 100644
--- a/FunctionBar.c
+++ b/FunctionBar.c
@@ -33,6 +33,14 @@ static const char* FunctionBar_FLabels[] = {" ", " ", " ", "
static int FunctionBar_FEvents[] = {KEY_F(1), KEY_F(2), KEY_F(3), KEY_F(4), KEY_F(5), KEY_F(6), KEY_F(7), KEY_F(8), KEY_F(9), KEY_F(10)};
+static const char* FunctionBar_EnterEscKeys[] = {"Enter", "Esc", NULL};
+static int FunctionBar_EnterEscEvents[] = {13, 27};
+
+FunctionBar* FunctionBar_newEnterEsc(const char* enter, const char* esc) {
+ const char* functions[] = {enter, esc, NULL};
+ return FunctionBar_new(functions, FunctionBar_EnterEscKeys, FunctionBar_EnterEscEvents);
+}
+
FunctionBar* FunctionBar_new(const char** functions, const char** keys, int* events) {
FunctionBar* this = calloc(1, sizeof(FunctionBar));
this->functions = calloc(16, sizeof(char*));
diff --git a/FunctionBar.h b/FunctionBar.h
index 75f432e7..1975fa38 100644
--- a/FunctionBar.h
+++ b/FunctionBar.h
@@ -21,6 +21,9 @@ typedef struct FunctionBar_ {
} FunctionBar;
+
+FunctionBar* FunctionBar_newEnterEsc(const char* enter, const char* esc);
+
FunctionBar* FunctionBar_new(const char** functions, const char** keys, int* events);
void FunctionBar_delete(FunctionBar* this);
diff --git a/SignalsPanel.c b/SignalsPanel.c
index 9e37252e..5ff7fde2 100644
--- a/SignalsPanel.c
+++ b/SignalsPanel.c
@@ -62,12 +62,8 @@ static SignalItem signals[] = {
{ .name = "31 SIGSYS", .number = 31 },
};
-static const char* SignalsFunctions[] = {"Send ", "Cancel ", NULL};
-static const char* SignalsKeys[] = {"Enter", "Esc", NULL};
-static int SignalsEvents[] = {13, 27};
-
Panel* SignalsPanel_new() {
- Panel* this = Panel_new(1, 1, 1, 1, true, Class(ListItem), FunctionBar_new(SignalsFunctions, SignalsKeys, SignalsEvents));
+ Panel* this = Panel_new(1, 1, 1, 1, true, Class(ListItem), FunctionBar_newEnterEsc("Send ", "Cancel "));
for(unsigned int i = 0; i < sizeof(signals)/sizeof(SignalItem); i++)
Panel_set(this, i, (Object*) ListItem_new(signals[i].name, signals[i].number));
Panel_setHeader(this, "Send signal:");
diff --git a/linux/IOPriorityPanel.c b/linux/IOPriorityPanel.c
index c9391893..9e12c755 100644
--- a/linux/IOPriorityPanel.c
+++ b/linux/IOPriorityPanel.c
@@ -13,13 +13,8 @@ in the source distribution for its full text.
#include "ListItem.h"
}*/
-static const char* IOPriorityFunctions[] = {"Set ", "Cancel ", NULL};
-static const char* IOPriorityKeys[] = {"Enter", "Esc", NULL};
-static int IOPriorityEvents[] = {13, 27};
-
Panel* IOPriorityPanel_new(IOPriority currPrio) {
- FunctionBar* fuBar = FunctionBar_new(IOPriorityFunctions, IOPriorityKeys, IOPriorityEvents);
- Panel* this = Panel_new(1, 1, 1, 1, true, Class(ListItem), fuBar);
+ Panel* this = Panel_new(1, 1, 1, 1, true, Class(ListItem), FunctionBar_newEnterEsc("Set ", "Cancel "));
Panel_setHeader(this, "IO Priority:");
Panel_add(this, (Object*) ListItem_new("None (based on nice)", IOPriority_None));

© 2014-2024 Faster IT GmbH | imprint | privacy policy