Files
fastfetch/src/modules/icons.c
T

47 lines
1.7 KiB
C
Raw Normal View History

2021-02-18 22:25:36 +01:00
#include "fastfetch.h"
2021-04-15 18:59:26 +02:00
#define FF_ICONS_MODULE_NAME "Icons"
#define FF_ICONS_NUM_FORMAT_ARGS 5
2021-02-27 18:30:05 +01:00
void ffPrintIcons(FFinstance* instance)
2021-02-18 22:25:36 +01:00
{
2021-04-16 20:22:38 +02:00
ffCalculatePlasmaAndGtk(instance);
2021-03-27 18:14:19 +01:00
2021-04-16 20:22:38 +02:00
if(instance->state.plasma.icons.length == 0 && instance->state.gtk2.icons.length == 0 && instance->state.gtk3.icons.length == 0 && instance->state.gtk4.icons.length == 0)
2021-04-05 19:25:34 +02:00
{
2021-04-15 18:59:26 +02:00
ffPrintError(instance, FF_ICONS_MODULE_NAME, 0, &instance->config.iconsKey, &instance->config.iconsFormat, FF_ICONS_NUM_FORMAT_ARGS, "No icons could be found");
2021-04-05 19:25:34 +02:00
return;
}
2021-03-19 20:57:07 +01:00
FF_STRBUF_CREATE(gtkPretty);
2021-04-16 20:22:38 +02:00
ffGetGtkPretty(&gtkPretty, &instance->state.gtk2.icons, &instance->state.gtk3.icons, &instance->state.gtk4.icons);
2021-03-19 20:57:07 +01:00
2021-03-23 19:48:52 +01:00
if(instance->config.iconsFormat.length == 0)
2021-03-19 20:57:07 +01:00
{
2021-04-15 18:59:26 +02:00
ffPrintLogoAndKey(instance, FF_ICONS_MODULE_NAME, 0, &instance->config.iconsKey);
2021-03-27 18:14:19 +01:00
2021-04-16 20:22:38 +02:00
if(instance->state.plasma.icons.length > 0)
2021-04-07 12:55:11 +02:00
{
2021-04-16 20:22:38 +02:00
ffStrbufWriteTo(&instance->state.plasma.icons, stdout);
2021-04-07 12:55:11 +02:00
fputs(" [Plasma]", stdout);
if(gtkPretty.length > 0)
fputs(", ", stdout);
}
2021-03-19 20:57:07 +01:00
2021-03-22 20:02:32 +01:00
ffStrbufPutTo(&gtkPretty, stdout);
2021-03-19 20:57:07 +01:00
}
2021-02-19 16:23:41 +01:00
else
2021-03-19 20:57:07 +01:00
{
2021-04-15 18:59:26 +02:00
ffPrintFormatString(instance, FF_ICONS_MODULE_NAME, 0, &instance->config.iconsKey, &instance->config.iconsFormat, NULL, FF_ICONS_NUM_FORMAT_ARGS, (FFformatarg[]){
2021-04-16 20:22:38 +02:00
{FF_FORMAT_ARG_TYPE_STRBUF, &instance->state.plasma.icons},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance->state.gtk2.icons},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance->state.gtk3.icons},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance->state.gtk4.icons},
2021-04-15 18:59:26 +02:00
{FF_FORMAT_ARG_TYPE_STRBUF, &gtkPretty}
});
2021-03-19 20:57:07 +01:00
}
2021-02-18 22:25:36 +01:00
2021-03-19 20:57:07 +01:00
ffStrbufDestroy(&gtkPretty);
2021-03-27 18:14:19 +01:00
}