Move zoom functions into x.c
authorDevin J. Pohly <djpohly@gmail.com>
Tue, 10 Oct 2017 16:30:36 +0000 (11:30 -0500)
committerDevin J. Pohly <djpohly@gmail.com>
Mon, 26 Feb 2018 03:53:24 +0000 (21:53 -0600)
This makes x(un)loadfonts internal to x.c.  Needed to reorder includes
and move a typedef to keep the compiler happy.

Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
st.c
st.h
win.h
x.c

diff --git a/st.c b/st.c
index 6338510..f1f7bc1 100644 (file)
--- a/st.c
+++ b/st.c
@@ -31,8 +31,8 @@
 #define Glyph Glyph_
 #define Font Font_
 
-#include "win.h"
 #include "st.h"
+#include "win.h"
 
 #if   defined(__linux)
  #include <pty.h>
@@ -128,9 +128,6 @@ static void clipcopy(const Arg *);
 static void clippaste(const Arg *);
 static void numlock(const Arg *);
 static void selpaste(const Arg *);
-static void zoom(const Arg *);
-static void zoomabs(const Arg *);
-static void zoomreset(const Arg *);
 static void printsel(const Arg *);
 static void printscreen(const Arg *) ;
 static void iso14755(const Arg *);
@@ -2573,37 +2570,6 @@ tresize(int col, int row)
        term.c = c;
 }
 
-void
-zoom(const Arg *arg)
-{
-       Arg larg;
-
-       larg.f = usedfontsize + arg->f;
-       zoomabs(&larg);
-}
-
-void
-zoomabs(const Arg *arg)
-{
-       xunloadfonts();
-       xloadfonts(usedfont, arg->f);
-       cresize(0, 0);
-       ttyresize();
-       redraw();
-       xhints();
-}
-
-void
-zoomreset(const Arg *arg)
-{
-       Arg larg;
-
-       if (defaultfontsize > 0) {
-               larg.f = defaultfontsize;
-               zoomabs(&larg);
-       }
-}
-
 void
 resettitle(void)
 {
diff --git a/st.h b/st.h
index 28a751d..9ece72f 100644 (file)
--- a/st.h
+++ b/st.h
@@ -100,6 +100,7 @@ typedef struct {
 } Glyph;
 
 typedef Glyph *Line;
+typedef XftGlyphFontSpec GlyphFontSpec;
 
 typedef struct {
        Glyph attr; /* current char attributes */
diff --git a/win.h b/win.h
index 60cecb1..ea45e60 100644 (file)
--- a/win.h
+++ b/win.h
@@ -5,8 +5,6 @@
 #define XK_NO_MOD     0
 #define XK_SWITCH_MOD (1<<13)
 
-typedef XftGlyphFontSpec GlyphFontSpec;
-
 void draw(void);
 void drawregion(int, int, int, int);
 
@@ -16,11 +14,12 @@ void xclippaste(void);
 void xhints(void);
 void xloadcols(void);
 int xsetcolorname(int, const char *);
-void xloadfonts(char *, double);
 void xsettitle(char *);
 void xsetpointermotion(int);
 void xseturgency(int);
-void xunloadfonts(void);
 void xresize(int, int);
 void xselpaste(void);
 void xsetsel(char *, Time);
+void zoom(const Arg *);
+void zoomabs(const Arg *);
+void zoomreset(const Arg *);
diff --git a/x.c b/x.c
index f660ca3..426ca28 100644 (file)
--- a/x.c
+++ b/x.c
@@ -21,8 +21,8 @@ static char *argv0;
 #define Glyph Glyph_
 #define Font Font_
 
-#include "win.h"
 #include "st.h"
+#include "win.h"
 
 /* XEMBED messages */
 #define XEMBED_FOCUS_IN  4
@@ -90,7 +90,9 @@ static void xdrawcursor(void);
 static int xgeommasktogravity(int);
 static void xinit(void);
 static int xloadfont(Font *, FcPattern *);
+static void xloadfonts(char *, double);
 static void xunloadfont(Font *);
+static void xunloadfonts(void);
 static void xsetenv(void);
 
 static void expose(XEvent *);
@@ -164,6 +166,37 @@ typedef struct {
 static Fontcache frc[16];
 static int frclen = 0;
 
+void
+zoom(const Arg *arg)
+{
+       Arg larg;
+
+       larg.f = usedfontsize + arg->f;
+       zoomabs(&larg);
+}
+
+void
+zoomabs(const Arg *arg)
+{
+       xunloadfonts();
+       xloadfonts(usedfont, arg->f);
+       cresize(0, 0);
+       ttyresize();
+       redraw();
+       xhints();
+}
+
+void
+zoomreset(const Arg *arg)
+{
+       Arg larg;
+
+       if (defaultfontsize > 0) {
+               larg.f = defaultfontsize;
+               zoomabs(&larg);
+       }
+}
+
 void
 getbuttoninfo(XEvent *e)
 {