Pass Settings to CRT_init

Resolve todo
This commit is contained in:
Christian Göttsche 2021-01-27 17:14:15 +01:00
parent 211121f060
commit 6dba60f6bd
3 changed files with 7 additions and 8 deletions

10
CRT.c
View File

@ -687,14 +687,12 @@ void CRT_restorePrivileges() {
static struct sigaction old_sig_handler[32];
// TODO: pass an instance of Settings instead.
void CRT_init(const int* delay, int colorScheme, bool allowUnicode) {
void CRT_init(const Settings* settings, bool allowUnicode) {
initscr();
noecho();
CRT_delay = delay;
CRT_colors = CRT_colorSchemes[colorScheme];
CRT_colorScheme = colorScheme;
CRT_delay = &(settings->delay);
CRT_colors = CRT_colorSchemes[settings->colorScheme];
CRT_colorScheme = settings->colorScheme;
for (int i = 0; i < LAST_COLORELEMENT; i++) {
unsigned int color = CRT_colorSchemes[COLORSCHEME_DEFAULT][i];

3
CRT.h
View File

@ -13,6 +13,7 @@ in the source distribution for its full text.
#include "Macros.h"
#include "ProvideCurses.h"
#include "Settings.h"
typedef enum TreeStr_ {
@ -173,7 +174,7 @@ static inline void CRT_restorePrivileges(void) { }
#endif /* HAVE_SETUID_ENABLED */
void CRT_init(const int* delay, int colorScheme, bool allowUnicode);
void CRT_init(const Settings* settings, bool allowUnicode);
void CRT_done(void);

2
htop.c
View File

@ -441,7 +441,7 @@ int main(int argc, char** argv) {
Settings_setSortKey(settings, flags.sortKey);
}
CRT_init(&(settings->delay), settings->colorScheme, flags.allowUnicode);
CRT_init(settings, flags.allowUnicode);
MainPanel* panel = MainPanel_new();
ProcessList_setPanel(pl, (Panel*) panel);