Move zoom functions into x.c

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>
This commit is contained in:
Devin J. Pohly 2017-10-10 11:30:36 -05:00
parent 3518dba2a5
commit d5275012b4
4 changed files with 39 additions and 40 deletions

36
st.c
View file

@ -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)
{

1
st.h
View file

@ -100,6 +100,7 @@ typedef struct {
} Glyph;
typedef Glyph *Line;
typedef XftGlyphFontSpec GlyphFontSpec;
typedef struct {
Glyph attr; /* current char attributes */

7
win.h
View file

@ -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 *);

35
x.c
View file

@ -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)
{