Revert "auesnthaeou"
[monky] / src / fonts.c
index 41e2b87..a31e563 100644 (file)
  *
  */
 #include "conky.h"
-#include "ctx->fonts.h"
+#include "fonts.h"
 #include "logging.h"
 
-void set_font(conky_context *ctx)
+int selected_font = 0;
+int font_count = -1;
+struct font_list *fonts = NULL;
+char fontloaded = 0;
+
+void set_font(void)
 {
 #ifdef XFT
-       if (use_xft->ctx) return;
+       if (use_xft) return;
 #endif /* XFT */
-       if (ctx->font_count > -1 && ctx->fonts[selected_font].font) {
-               XSetFont(display, window.gc, ctx->fonts[selected_font].font->fid);
+       if (font_count > -1 && fonts[selected_font].font) {
+               XSetFont(display, window.gc, fonts[selected_font].font->fid);
        }
 }
 
-void setup_fonts(conky_context *ctx)
+void setup_fonts(void)
 {
        if ((output_methods & TO_X) == 0) {
                return;
        }
 #ifdef XFT
-       if (use_xft->ctx) {
+       if (use_xft) {
                if (window.xftdraw) {
                        XftDrawDestroy(window.xftdraw);
                        window.xftdraw = 0;
@@ -60,89 +65,89 @@ void setup_fonts(conky_context *ctx)
        set_font();
 }
 
-int add_font(conky_context *ctx, const char *data_in)
+int add_font(const char *data_in)
 {
        if ((output_methods & TO_X) == 0) {
                return 0;
        }
-       if (ctx->font_count > MAX_FONTS) {
-               CRIT_ERR(NULL, NULL, "you don't need that many ctx->fonts, sorry.");
+       if (font_count > MAX_FONTS) {
+               CRIT_ERR(NULL, NULL, "you don't need that many fonts, sorry.");
        }
-       ctx->font_count++;
-       if (ctx->font_count == 0) {
-               if (ctx->fonts != NULL) {
-                       free(ctx->fonts);
+       font_count++;
+       if (font_count == 0) {
+               if (fonts != NULL) {
+                       free(fonts);
                }
-               if ((ctx->fonts = (struct font_list *) malloc(sizeof(struct font_list)))
+               if ((fonts = (struct font_list *) malloc(sizeof(struct font_list)))
                                == NULL) {
                        CRIT_ERR(NULL, NULL, "malloc");
                }
-               memset(ctx->fonts, 0, sizeof(struct font_list));
+               memset(fonts, 0, sizeof(struct font_list));
        }
-       ctx->fonts = realloc(ctx->fonts, (sizeof(struct font_list) * (ctx->font_count + 1)));
-       memset(&ctx->fonts[ctx->font_count], 0, sizeof(struct font_list));
-       if (ctx->fonts == NULL) {
+       fonts = realloc(fonts, (sizeof(struct font_list) * (font_count + 1)));
+       memset(&fonts[font_count], 0, sizeof(struct font_list));
+       if (fonts == NULL) {
                CRIT_ERR(NULL, NULL, "realloc in add_font");
        }
        // must account for null terminator
        if (strlen(data_in) < DEFAULT_TEXT_BUFFER_SIZE) {
-               strncpy(ctx->fonts[ctx->font_count].name, data_in, DEFAULT_TEXT_BUFFER_SIZE);
+               strncpy(fonts[font_count].name, data_in, DEFAULT_TEXT_BUFFER_SIZE);
 #ifdef XFT
-               ctx->fonts[ctx->font_count].font_alpha = 0xffff;
+               fonts[font_count].font_alpha = 0xffff;
 #endif
        } else {
                CRIT_ERR(NULL, NULL, "Oops...looks like something overflowed in add_font().");
        }
-       return ctx->font_count;
+       return font_count;
 }
 
-void set_first_font(conky_context *ctx, const char *data_in)
+void set_first_font(const char *data_in)
 {
        if ((output_methods & TO_X) == 0) {
                return;
        }
-       if (ctx->font_count < 0) {
-               if ((ctx->fonts = (struct font_list *) malloc(sizeof(struct font_list)))
+       if (font_count < 0) {
+               if ((fonts = (struct font_list *) malloc(sizeof(struct font_list)))
                                == NULL) {
                        CRIT_ERR(NULL, NULL, "malloc");
                }
-               memset(ctx->fonts, 0, sizeof(struct font_list));
-               ctx->font_count++;
+               memset(fonts, 0, sizeof(struct font_list));
+               font_count++;
        }
        if (strlen(data_in) > 1) {
-               strncpy(ctx->fonts[0].name, data_in, DEFAULT_TEXT_BUFFER_SIZE);
+               strncpy(fonts[0].name, data_in, DEFAULT_TEXT_BUFFER_SIZE);
 #ifdef XFT
-               ctx->fonts[0].font_alpha = 0xffff;
+               fonts[0].font_alpha = 0xffff;
 #endif
        }
 }
 
-void free_fonts(conky_context *ctx)
+void free_fonts(void)
 {
        int i;
 
        if ((output_methods & TO_X) == 0) {
                return;
        }
-       if(ctx->fontloaded == 0) {
-               free(ctx->fonts);
+       if(fontloaded == 0) {
+               free(fonts);
                return;
        }
-       for (i = 0; i <= ctx->font_count; i++) {
+       for (i = 0; i <= font_count; i++) {
 #ifdef XFT
-               if (use_xft->ctx) {
-                       XftFontClose(display, ctx->fonts[i].xftfont);
-                       ctx->fonts[i].xftfont = 0;
+               if (use_xft) {
+                       XftFontClose(display, fonts[i].xftfont);
+                       fonts[i].xftfont = 0;
                } else
 #endif /* XFT */
                {
-                       XFreeFont(display, ctx->fonts[i].font);
-                       ctx->fonts[i].font = 0;
+                       XFreeFont(display, fonts[i].font);
+                       fonts[i].font = 0;
                }
        }
-       free(ctx->fonts);
-       ctx->fonts = 0;
-       ctx->font_count = -1;
+       free(fonts);
+       fonts = 0;
+       font_count = -1;
        selected_font = 0;
 #ifdef XFT
        if (window.xftdraw) {
@@ -152,47 +157,47 @@ void free_fonts(conky_context *ctx)
 #endif /* XFT */
 }
 
-void load_fonts(conky_context *ctx)
+void load_fonts(void)
 {
        int i;
 
        if ((output_methods & TO_X) == 0)
                return;
-       for (i = 0; i <= ctx->font_count; i++) {
+       for (i = 0; i <= font_count; i++) {
 #ifdef XFT
                /* load Xft font */
-               if (use_xft->ctx && ctx->fonts[i].xftfont) {
+               if (use_xft && fonts[i].xftfont) {
                        continue;
-               } else if (use_xft->ctx) {
-                       ctx->fonts[i].xftfont = XftFontOpenName(display, screen,
-                                       ctx->fonts[i].name);
-                       if (ctx->fonts[i].xftfont) {
+               } else if (use_xft) {
+                       fonts[i].xftfont = XftFontOpenName(display, screen,
+                                       fonts[i].name);
+                       if (fonts[i].xftfont) {
                                continue;
                        }
 
-                       NORM_ERR("can't load Xft font '%s'", ctx->fonts[i].name);
-                       if ((ctx->fonts[i].xftfont = XftFontOpenName(display, screen,
+                       NORM_ERR("can't load Xft font '%s'", fonts[i].name);
+                       if ((fonts[i].xftfont = XftFontOpenName(display, screen,
                                        "courier-12")) != NULL) {
                                continue;
                        }
 
                        NORM_ERR("can't load Xft font '%s'", "courier-12");
 
-                       if ((ctx->fonts[i].font = XLoadQueryFont(display, "fixed")) == NULL) {
+                       if ((fonts[i].font = XLoadQueryFont(display, "fixed")) == NULL) {
                                CRIT_ERR(NULL, NULL, "can't load font '%s'", "fixed");
                        }
-                       use_xft->ctx = 0;
+                       use_xft = 0;
 
                        continue;
                }
 #endif
                /* load normal font */
-               if (!ctx->fonts[i].font && (ctx->fonts[i].font = XLoadQueryFont(display, ctx->fonts[i].name)) == NULL) {
-                       NORM_ERR("can't load font '%s'", ctx->fonts[i].name);
-                       if ((ctx->fonts[i].font = XLoadQueryFont(display, "fixed")) == NULL) {
+               if (!fonts[i].font && (fonts[i].font = XLoadQueryFont(display, fonts[i].name)) == NULL) {
+                       NORM_ERR("can't load font '%s'", fonts[i].name);
+                       if ((fonts[i].font = XLoadQueryFont(display, "fixed")) == NULL) {
                                CRIT_ERR(NULL, NULL, "can't load font '%s'", "fixed");
                        }
                }
        }
-       ctx->fontloaded = 1;
+       fontloaded = 1;
 }