mirror of
https://github.com/0intro/wmii
synced 2024-11-22 13:52:17 +03:00
Cleanup build on KenCC.
This commit is contained in:
parent
9732c0cce2
commit
56d4c9af9f
@ -6,8 +6,8 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <fmt.h>
|
||||
#include <util.h>
|
||||
#include <fmt.h>
|
||||
|
||||
static int
|
||||
Vfmt(Fmt *f) {
|
||||
@ -28,6 +28,7 @@ fatal(const char *fmt, ...) {
|
||||
va_list ap;
|
||||
|
||||
fmtinstall('V', Vfmt);
|
||||
fmtinstall('\001', Vfmt);
|
||||
|
||||
va_start(ap, fmt);
|
||||
fprint(2, "%s: fatal: %V\n", argv0, fmt, ap);
|
||||
|
@ -7,7 +7,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -109,7 +108,7 @@ create_area(View *v, Area *pos, uint w) {
|
||||
focus_area(a);
|
||||
|
||||
if(!a->floating)
|
||||
write_event("CreateColumn %d\n", i);
|
||||
write_event("CreateColumn %ud\n", i);
|
||||
return a;
|
||||
}
|
||||
|
||||
@ -152,7 +151,7 @@ destroy_area(Area *a) {
|
||||
ta = ta->next;
|
||||
focus_area(ta);
|
||||
}
|
||||
write_event("DestroyColumn %d\n", i);
|
||||
write_event("DestroyColumn %ud\n", i);
|
||||
|
||||
free(a);
|
||||
}
|
||||
@ -173,19 +172,16 @@ send_to_area(Area *to, Frame *f) {
|
||||
f->client->revert = from;
|
||||
|
||||
detach_from_area(f);
|
||||
attach_to_area(to, f, True);
|
||||
attach_to_area(to, f);
|
||||
}
|
||||
|
||||
void
|
||||
attach_to_area(Area *a, Frame *f, Bool send) {
|
||||
uint h, n_frame;
|
||||
attach_to_area(Area *a, Frame *f) {
|
||||
uint n_frame;
|
||||
Frame *ft;
|
||||
Client *c;
|
||||
View *v;
|
||||
|
||||
v = a->view;
|
||||
c = f->client;
|
||||
h = 0;
|
||||
|
||||
f->area = a;
|
||||
|
||||
@ -331,6 +327,8 @@ place_frame(Frame *f) {
|
||||
field = emallocz(sizeof(uint) * mwidth * my);
|
||||
}
|
||||
|
||||
SET(cx);
|
||||
SET(cy);
|
||||
memset(field, ~0, (sizeof(uint) * mwidth * my));
|
||||
for(fr=a->frame; fr; fr=fr->anext) {
|
||||
if(fr == f) {
|
||||
|
@ -4,7 +4,6 @@
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -98,11 +97,11 @@ draw_bar(WMScreen *s) {
|
||||
Bar *b, *tb, *largest, **pb;
|
||||
Rectangle r;
|
||||
Align align;
|
||||
uint width, tw, nb, size;
|
||||
uint width, tw, nb;
|
||||
float shrink;
|
||||
|
||||
largest = b = tb = nil;
|
||||
tw = width = nb = size = 0;
|
||||
largest = nil;
|
||||
tw = width = 0;
|
||||
for(nb = 0; nb < nelem(s->bar); nb++)
|
||||
for(b = s->bar[nb]; b; b=b->next) {
|
||||
b->r.min = ZP;
|
||||
@ -136,16 +135,13 @@ draw_bar(WMScreen *s) {
|
||||
for(b = largest; b != tb->smaller; b = b->smaller)
|
||||
b->r.max.x *= shrink;
|
||||
width += tw * shrink;
|
||||
tb = nil;
|
||||
}
|
||||
|
||||
SET(tb);
|
||||
for(nb = 0; nb < nelem(s->bar); nb++)
|
||||
for(b = s->bar[nb]; b; tb=b, b=b->next) {
|
||||
if(b == s->bar[BarRight]) {
|
||||
align = EAST;
|
||||
if(b == s->bar[BarRight])
|
||||
b->r.max.x += Dx(s->brect) - width;
|
||||
}else
|
||||
align = CENTER;
|
||||
|
||||
if(tb)
|
||||
b->r = rectaddpt(b->r, Pt( tb->r.max.x, 0));
|
||||
@ -154,7 +150,10 @@ draw_bar(WMScreen *s) {
|
||||
r = rectsubpt(s->brect, s->brect.min);
|
||||
fill(screen->ibuf, r, def.normcolor.bg);
|
||||
for(nb = 0; nb < nelem(s->bar); nb++)
|
||||
for(b = s->bar[nb]; b; tb=b, b=b->next) {
|
||||
for(b = s->bar[nb]; b; b=b->next) {
|
||||
align = CENTER;
|
||||
if(b == s->bar[BarRight])
|
||||
align = EAST;
|
||||
fill(screen->ibuf, b->r, b->col.bg);
|
||||
drawstring(screen->ibuf, def.font, b->r, align, b->text, b->col.fg);
|
||||
border(screen->ibuf, b->r, 1, b->col.border);
|
||||
@ -176,6 +175,8 @@ bar_of_name(Bar *bp, const char *name) {
|
||||
static void
|
||||
bdown_event(Window *w, XButtonPressedEvent *e) {
|
||||
Bar *b;
|
||||
|
||||
USED(w);
|
||||
|
||||
/* Ungrab so a menu can receive events before the button is released */
|
||||
XUngrabPointer(display, e->time);
|
||||
@ -196,6 +197,9 @@ bdown_event(Window *w, XButtonPressedEvent *e) {
|
||||
static void
|
||||
bup_event(Window *w, XButtonPressedEvent *e) {
|
||||
Bar *b;
|
||||
|
||||
USED(w);
|
||||
USED(e);
|
||||
|
||||
for(b=screen->bar[BarLeft]; b; b=b->next)
|
||||
if(ptinrect(Pt(e->x, e->y), b->r)) {
|
||||
@ -211,6 +215,8 @@ bup_event(Window *w, XButtonPressedEvent *e) {
|
||||
|
||||
static void
|
||||
expose_event(Window *w, XExposeEvent *e) {
|
||||
USED(w);
|
||||
USED(e);
|
||||
draw_bar(screen);
|
||||
}
|
||||
|
||||
|
@ -7,7 +7,6 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <X11/Xatom.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -123,6 +122,8 @@ manage_client(Client *c) {
|
||||
|
||||
static int /* Temporary Xlib error handler */
|
||||
ignoreerrors(Display *d, XErrorEvent *e) {
|
||||
USED(d);
|
||||
USED(e);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -481,6 +482,7 @@ set_urgent(Client *c, int urgent, Bool write) {
|
||||
if(c->sel->view == screen->sel)
|
||||
draw_frame(c->sel);
|
||||
for(f=c->frame; f; f=f->cnext) {
|
||||
SET(ff);
|
||||
if(!urgent)
|
||||
for(a=f->view->area; a; a=a->next)
|
||||
for(ff=a->frame; ff; ff=ff->anext)
|
||||
@ -626,11 +628,9 @@ wmname:
|
||||
static void
|
||||
configreq_event(Window *w, XConfigureRequestEvent *e) {
|
||||
Rectangle r, cr;
|
||||
Frame *f;
|
||||
Client *c;
|
||||
|
||||
c = w->aux;
|
||||
f = c->sel;
|
||||
|
||||
r = gravclient(c, ZR);
|
||||
r.max = subpt(r.max, r.min);
|
||||
@ -664,6 +664,9 @@ configreq_event(Window *w, XConfigureRequestEvent *e) {
|
||||
|
||||
static void
|
||||
destroy_event(Window *w, XDestroyWindowEvent *e) {
|
||||
USED(w);
|
||||
USED(e);
|
||||
|
||||
Dprint("client.c:destroy_event(%W)\n", w);
|
||||
destroy_client(w->aux);
|
||||
}
|
||||
@ -730,6 +733,8 @@ unmap_event(Window *w, XUnmapEvent *e) {
|
||||
static void
|
||||
map_event(Window *w, XMapEvent *e) {
|
||||
Client *c;
|
||||
|
||||
USED(e);
|
||||
|
||||
c = w->aux;
|
||||
if(c == selclient())
|
||||
@ -798,6 +803,7 @@ update_client_views(Client *c, char **tags) {
|
||||
|
||||
fp = &c->frame;
|
||||
while(*fp || *tags) {
|
||||
SET(cmp);
|
||||
while(*fp) {
|
||||
if(*tags) {
|
||||
cmp = strcmp((*fp)->view->name, *tags);
|
||||
|
@ -6,7 +6,6 @@
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -168,6 +167,8 @@ update_divs(void) {
|
||||
static void
|
||||
bdown_event(Window *w, XButtonEvent *e) {
|
||||
Divide *d;
|
||||
|
||||
USED(e);
|
||||
|
||||
d = w->aux;
|
||||
mouse_resizecol(d);
|
||||
@ -177,6 +178,8 @@ static void
|
||||
expose_event(Window *w, XExposeEvent *e) {
|
||||
Divide *d;
|
||||
|
||||
USED(e);
|
||||
|
||||
d = w->aux;
|
||||
drawdiv(d);
|
||||
}
|
||||
@ -243,7 +246,7 @@ scale_column(Area *a) {
|
||||
if(i > ncol)
|
||||
i = ncol;
|
||||
ncol -= i;
|
||||
surplus += i * colh;
|
||||
/* surplus += i * colh; */
|
||||
}
|
||||
|
||||
j = nuncol - 1;
|
||||
|
@ -5,7 +5,9 @@
|
||||
#include <regexp9.h>
|
||||
#define IXP_P9_STRUCTS
|
||||
#define IXP_NO_P9_
|
||||
#include <stdint.h>
|
||||
#include <ixp.h>
|
||||
#include <util.h>
|
||||
#include <utf.h>
|
||||
#include <fmt.h>
|
||||
#include "x11.h"
|
||||
@ -14,14 +16,6 @@
|
||||
#define FOCUSCOLORS "#ffffff #335577 #447799"
|
||||
#define NORMCOLORS "#222222 #eeeeee #666666"
|
||||
|
||||
#ifdef VARARGCK
|
||||
# pragma varargck type "C" Client*
|
||||
# pragma varargck type "W" Window*
|
||||
# pragma varargck type "P" Point
|
||||
# pragma varargck type "R" Rectangle
|
||||
# pragma varargck type "r" void
|
||||
#endif
|
||||
|
||||
enum Align {
|
||||
NORTH = 0x01,
|
||||
EAST = 0x02,
|
||||
|
@ -3,7 +3,6 @@
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <X11/keysym.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
#include "printevent.h"
|
||||
@ -15,7 +14,7 @@ dispatch_event(XEvent *e) {
|
||||
handler[e->type](e);
|
||||
}
|
||||
|
||||
#define handle(w, fn, ev) ((w)->handler->fn ? (w)->handler->fn((w), ev) : (void)0)
|
||||
#define handle(w, fn, ev) if(!(w)->handler->fn) {}else (w)->handler->fn((w), ev)
|
||||
|
||||
uint
|
||||
flushevents(long event_mask, Bool dispatch) {
|
||||
@ -110,10 +109,8 @@ enternotify(XEvent *e) {
|
||||
static void
|
||||
leavenotify(XEvent *e) {
|
||||
XCrossingEvent *ev;
|
||||
Window *w;
|
||||
|
||||
ev = &e->xcrossing;
|
||||
w = findwin(ev->window);
|
||||
if((ev->window == scr.root.w) && !ev->same_screen) {
|
||||
sel_screen = True;
|
||||
draw_frames();
|
||||
@ -208,10 +205,8 @@ expose(XEvent *e) {
|
||||
static void
|
||||
keypress(XEvent *e) {
|
||||
XKeyEvent *ev;
|
||||
Window *w;
|
||||
|
||||
ev = &e->xkey;
|
||||
w = findwin(ev->window);
|
||||
ev->state &= valid_mask;
|
||||
if(ev->window == scr.root.w)
|
||||
kpress(scr.root.w, ev->state, (KeyCode) ev->keycode);
|
||||
@ -230,11 +225,9 @@ mappingnotify(XEvent *e) {
|
||||
static void
|
||||
maprequest(XEvent *e) {
|
||||
XMapRequestEvent *ev;
|
||||
Window *w;
|
||||
XWindowAttributes wa;
|
||||
|
||||
ev = &e->xmaprequest;
|
||||
w = findwin(ev->window);
|
||||
|
||||
if(!XGetWindowAttributes(display, ev->window, &wa))
|
||||
return;
|
||||
@ -312,6 +305,9 @@ void (*handler[LASTEvent]) (XEvent *) = {
|
||||
void
|
||||
check_x_event(IxpConn *c) {
|
||||
XEvent ev;
|
||||
|
||||
USED(c);
|
||||
|
||||
while(XPending(display)) {
|
||||
XNextEvent(display, &ev);
|
||||
dispatch_event(&ev);
|
||||
|
@ -4,6 +4,12 @@
|
||||
|
||||
#ifdef VARARGCK
|
||||
# pragma varargck argpos write_event 1
|
||||
|
||||
# pragma varargck type "C" Client*
|
||||
# pragma varargck type "W" Window*
|
||||
# pragma varargck type "P" Point
|
||||
# pragma varargck type "R" Rectangle
|
||||
# pragma varargck type "r" void
|
||||
#endif
|
||||
|
||||
/* area.c */
|
||||
@ -14,7 +20,7 @@ void destroy_area(Area*);
|
||||
Area *area_of_id(View*, ushort id);
|
||||
void focus_area(Area*);
|
||||
void send_to_area(Area*, Frame*);
|
||||
void attach_to_area(Area*, Frame*, Bool send);
|
||||
void attach_to_area(Area*, Frame*);
|
||||
void detach_from_area(Frame*);
|
||||
Client *area_selclient(Area*);
|
||||
|
||||
|
@ -3,7 +3,6 @@
|
||||
*/
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -190,6 +189,8 @@ static void
|
||||
expose_event(Window *w, XExposeEvent *e) {
|
||||
Client *c;
|
||||
|
||||
USED(e);
|
||||
|
||||
c = w->aux;
|
||||
if(c->sel)
|
||||
draw_frame(c->sel);
|
||||
@ -360,15 +361,12 @@ swap_frames(Frame *fa, Frame *fb) {
|
||||
|
||||
void
|
||||
focus_frame(Frame *f, Bool restack) {
|
||||
Frame *old, *old_in_a;
|
||||
View *v;
|
||||
Area *a, *old_a;
|
||||
|
||||
a = f->area;
|
||||
v = f->view;
|
||||
old = v->sel->sel;
|
||||
old_a = v->sel;
|
||||
old_in_a = a->sel;
|
||||
|
||||
a->sel = f;
|
||||
|
||||
|
@ -9,7 +9,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -252,7 +251,7 @@ message(Ixp9Req *r, MsgFunc fn) {
|
||||
c = *p;
|
||||
*p = '\0';
|
||||
|
||||
m = ixp_message(s, p-s, 0);
|
||||
m = ixp_message((uchar*)s, p-s, 0);
|
||||
s = fn(f->p.ref, &m);
|
||||
if(s)
|
||||
err = s;
|
||||
@ -361,6 +360,7 @@ lookup_file(FileId *parent, char *name)
|
||||
file->tab.name = estrdup("sel");
|
||||
}if(name) goto LastItem;
|
||||
}
|
||||
SET(id);
|
||||
if(name) {
|
||||
id = (uint)strtol(name, &name, 16);
|
||||
if(*name) goto NextItem;
|
||||
@ -595,7 +595,6 @@ fs_read(Ixp9Req *r) {
|
||||
int n, offset;
|
||||
int size;
|
||||
|
||||
offset = 0;
|
||||
f = r->fid->aux;
|
||||
|
||||
if(!verify_file(f)) {
|
||||
@ -610,7 +609,7 @@ fs_read(Ixp9Req *r) {
|
||||
offset = 0;
|
||||
size = r->ifcall.count;
|
||||
buf = emallocz(size);
|
||||
m = ixp_message(buf, size, MsgPack);
|
||||
m = ixp_message((uchar*)buf, size, MsgPack);
|
||||
|
||||
tf = f = lookup_file(f, nil);
|
||||
/* Note: f->tab.name == "." so we skip it */
|
||||
@ -630,7 +629,7 @@ fs_read(Ixp9Req *r) {
|
||||
free_file(f);
|
||||
}
|
||||
r->ofcall.count = r->ifcall.count - size;
|
||||
r->ofcall.data = m.data;
|
||||
r->ofcall.data = (char*)m.data;
|
||||
respond(r, nil);
|
||||
return;
|
||||
}
|
||||
@ -702,7 +701,7 @@ fs_read(Ixp9Req *r) {
|
||||
void
|
||||
fs_write(Ixp9Req *r) {
|
||||
FileId *f;
|
||||
char *errstr = nil;
|
||||
char *errstr;
|
||||
uint i;
|
||||
|
||||
if(r->ifcall.count == 0) {
|
||||
@ -742,7 +741,7 @@ fs_write(Ixp9Req *r) {
|
||||
return;
|
||||
case FsFBar:
|
||||
i = strlen(f->p.bar->buf);
|
||||
write_to_buf(r, &f->p.bar->buf, &i, 279);
|
||||
write_to_buf(r, f->p.bar->buf, &i, 279);
|
||||
r->ofcall.count = i - r->ifcall.offset;
|
||||
respond(r, nil);
|
||||
return;
|
||||
@ -894,15 +893,15 @@ fs_clunk(Ixp9Req *r) {
|
||||
case FsFBar:
|
||||
p = toutf8(f->p.bar->buf);
|
||||
|
||||
m = ixp_message(p, strlen(p), 0);
|
||||
m = ixp_message((uchar*)p, strlen(p), 0);
|
||||
parse_colors(&m, &f->p.bar->col);
|
||||
|
||||
q = m.end-1;
|
||||
q = (char*)m.end-1;
|
||||
while(q >= (char*)m.pos && *q == '\n')
|
||||
*q-- = '\0';
|
||||
|
||||
q = f->p.bar->text;
|
||||
utfecpy(q, q+sizeof((Bar){}.text), m.pos);
|
||||
utfecpy(q, q+sizeof(((Bar*)0)->text), (char*)m.pos);
|
||||
|
||||
free(p);
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
* See LICENSE file for license details.
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
|
@ -4,7 +4,6 @@
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <X11/keysym.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -90,7 +89,9 @@ get_key(const char *name) {
|
||||
char *kstr;
|
||||
uint i, toks;
|
||||
static ushort id = 1;
|
||||
Key *k = 0, *r = 0;
|
||||
Key *k, *r;
|
||||
|
||||
r = nil;
|
||||
|
||||
if((k = name2key(name))) {
|
||||
ungrab_key(k);
|
||||
|
@ -14,7 +14,6 @@
|
||||
#include <sys/stat.h>
|
||||
#include <sys/wait.h>
|
||||
#include <unistd.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -115,7 +114,7 @@ init_ns(void) {
|
||||
ns_path = estrdup(&address[5]);
|
||||
s = strrchr(ns_path, '/');
|
||||
if(s != nil)
|
||||
s = '\0';
|
||||
*s = '\0';
|
||||
}
|
||||
else if((s = getenv("NAMESPACE")))
|
||||
ns_path = s;
|
||||
@ -152,7 +151,7 @@ static void
|
||||
init_atoms(void) {
|
||||
Atom net[] = { xatom("_NET_SUPPORTED"), xatom("_NET_WM_NAME") };
|
||||
|
||||
changeprop_long(&scr.root, "_NET_SUPPORTED", "ATOM", net, nelem(net));
|
||||
changeprop_long(&scr.root, "_NET_SUPPORTED", "ATOM", (long*)net, nelem(net));
|
||||
}
|
||||
|
||||
static void
|
||||
@ -162,6 +161,7 @@ create_cursor(int ident, uint shape) {
|
||||
|
||||
static void
|
||||
init_cursors(void) {
|
||||
static char zchar[1];
|
||||
Pixmap pix;
|
||||
XColor black, dummy;
|
||||
|
||||
@ -180,7 +180,7 @@ init_cursors(void) {
|
||||
"black", &black, &dummy);
|
||||
pix = XCreateBitmapFromData(
|
||||
display, scr.root.w,
|
||||
(char[]){0}, 1, 1);
|
||||
zchar, 1, 1);
|
||||
|
||||
cursor[CurNone] = XCreatePixmapCursor(display,
|
||||
pix, pix,
|
||||
@ -252,6 +252,8 @@ static int
|
||||
errorhandler(Display *dpy, XErrorEvent *error) {
|
||||
static Bool dead;
|
||||
int i;
|
||||
|
||||
USED(dpy);
|
||||
|
||||
if(check_other_wm)
|
||||
fatal("another window manager is already running");
|
||||
@ -385,11 +387,15 @@ spawn_command(const char *cmd) {
|
||||
|
||||
static void
|
||||
check_preselect(IxpServer *s) {
|
||||
USED(s);
|
||||
|
||||
check_x_event(nil);
|
||||
}
|
||||
|
||||
static void
|
||||
closedisplay(IxpConn *c) {
|
||||
USED(c);
|
||||
|
||||
XCloseDisplay(display);
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
/* Public domain */
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -61,6 +60,7 @@ hashgetp(Map *map, char *str, int create) {
|
||||
if(*e && (*e)->key == nil)
|
||||
(*e)->key = str;
|
||||
else {
|
||||
SET(cmp);
|
||||
for(; *e; e = &(*e)->next)
|
||||
if((*e)->hash > h || (cmp = strcmp((*e)->key, str)) >= 0)
|
||||
break;
|
||||
|
@ -6,7 +6,6 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -120,7 +119,7 @@ eatrunes(IxpMsg *m, int (*p)(Rune), int val) {
|
||||
int n;
|
||||
|
||||
while(m->pos < m->end) {
|
||||
n = chartorune(&r, m->pos);
|
||||
n = chartorune(&r, (char*)m->pos);
|
||||
if(p(r) != val)
|
||||
break;
|
||||
m->pos += n;
|
||||
@ -136,9 +135,9 @@ getword(IxpMsg *m) {
|
||||
int n;
|
||||
|
||||
eatrunes(m, isspacerune, 1);
|
||||
ret = m->pos;
|
||||
ret = (char*)m->pos;
|
||||
eatrunes(m, isspacerune, 0);
|
||||
n = chartorune(&r, m->pos);
|
||||
n = chartorune(&r, (char*)m->pos);
|
||||
*m->pos = '\0';
|
||||
m->pos += n;
|
||||
eatrunes(m, isspacerune, 1);
|
||||
@ -271,7 +270,7 @@ message_view(View *v, IxpMsg *m) {
|
||||
default:
|
||||
return Ebadcmd;
|
||||
}
|
||||
assert(!"can't get here");
|
||||
/* not reached */
|
||||
}
|
||||
|
||||
char *
|
||||
@ -282,7 +281,7 @@ parse_colors(IxpMsg *m, CTuple *col) {
|
||||
int i, j;
|
||||
|
||||
/* '#%6x #%6x #%6x' */
|
||||
p = m->pos;
|
||||
p = (char*)m->pos;
|
||||
for(i = 0; i < 3 && p < (char*)m->end; i++) {
|
||||
if(*p++ != '#')
|
||||
return Ebad;
|
||||
@ -298,10 +297,10 @@ parse_colors(IxpMsg *m, CTuple *col) {
|
||||
|
||||
c = *p;
|
||||
*p = '\0';
|
||||
loadcolor(col, m->pos);
|
||||
loadcolor(col, (char*)m->pos);
|
||||
*p = c;
|
||||
|
||||
m->pos = p;
|
||||
m->pos = (uchar*)p;
|
||||
eatrunes(m, isspacerune, 1);
|
||||
return nil;
|
||||
}
|
||||
@ -312,6 +311,7 @@ message_root(void *p, IxpMsg *m) {
|
||||
char *s, *ret;
|
||||
ulong n;
|
||||
|
||||
USED(p);
|
||||
ret = nil;
|
||||
s = getword(m);
|
||||
|
||||
@ -320,11 +320,11 @@ message_root(void *p, IxpMsg *m) {
|
||||
srv.running = 0;
|
||||
break;
|
||||
case LEXEC:
|
||||
execstr = smprint("exec %s", m->pos);
|
||||
execstr = smprint("exec %s", (char*)m->pos);
|
||||
srv.running = 0;
|
||||
break;
|
||||
case LVIEW:
|
||||
select_view(m->pos);
|
||||
select_view((char*)m->pos);
|
||||
break;
|
||||
case LSELCOLORS:
|
||||
fprint(2, "%s: warning: selcolors have been removed\n", argv0);
|
||||
@ -338,7 +338,7 @@ message_root(void *p, IxpMsg *m) {
|
||||
focus_view(screen, screen->sel);
|
||||
break;
|
||||
case LFONT:
|
||||
fn = loadfont(m->pos);
|
||||
fn = loadfont((char*)m->pos);
|
||||
if(fn) {
|
||||
freefont(def.font);
|
||||
def.font = fn;
|
||||
@ -380,6 +380,7 @@ read_root_ctl(void) {
|
||||
b = seprint(b, e, "font %s\n", def.font->name);
|
||||
b = seprint(b, e, "grabmod %s\n", def.grabmod);
|
||||
b = seprint(b, e, "border %d\n", def.border);
|
||||
USED(b);
|
||||
return buffer;
|
||||
}
|
||||
|
||||
@ -415,10 +416,8 @@ message_client(Client *c, IxpMsg *m) {
|
||||
static char*
|
||||
send_frame(Frame *f, int sym, Bool swap) {
|
||||
Frame *fp;
|
||||
Area *a;
|
||||
|
||||
a = f->area;
|
||||
|
||||
SET(fp);
|
||||
switch(sym) {
|
||||
case LUP:
|
||||
fp = f->aprev;
|
||||
@ -544,6 +543,7 @@ select_frame(Frame *f, IxpMsg *m, int sym) {
|
||||
return Ebadvalue;
|
||||
a = f->area;
|
||||
|
||||
SET(fp);
|
||||
switch(sym) {
|
||||
case LUP:
|
||||
for(fp = a->frame; fp->anext; fp = fp->anext)
|
||||
|
@ -5,7 +5,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -99,6 +98,8 @@ expose_event(Window *w, XExposeEvent *e) {
|
||||
Framewin *f;
|
||||
Image *buf;
|
||||
CTuple *c;
|
||||
|
||||
USED(e);
|
||||
|
||||
f = w->aux;
|
||||
c = &def.focuscolor;
|
||||
@ -681,7 +682,8 @@ do_mouse_resize(Client *c, Bool opaque, Align align) {
|
||||
return;
|
||||
}
|
||||
|
||||
origin = frect = f->r;
|
||||
origin = f->r;
|
||||
frect = f->r;
|
||||
rects = rects_of_view(f->area->view, &num, c->frame);
|
||||
|
||||
cur = cursor_of_quad(align);
|
||||
|
@ -42,7 +42,6 @@
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <util.h>
|
||||
#include <bio.h>
|
||||
#include "dat.h"
|
||||
//#include "fns.h"
|
||||
@ -91,7 +90,7 @@ unmask(Pair * list, uint val)
|
||||
s += strlcat(s, p->val, end - s);
|
||||
}
|
||||
|
||||
s += strlcat(s, ")", end - s);
|
||||
strlcat(s, ")", end - s);
|
||||
|
||||
return buffer;
|
||||
}
|
||||
@ -110,6 +109,8 @@ strdec(int key) {
|
||||
|
||||
static char *
|
||||
strign(int key) {
|
||||
USED(key);
|
||||
|
||||
return "?";
|
||||
}
|
||||
|
||||
@ -300,6 +301,7 @@ TColMap(Biobuf *b, va_list *ap) {
|
||||
};
|
||||
int key;
|
||||
|
||||
key = va_arg(ap, int);
|
||||
Bprint(b, "%s", search(list, key, strign));
|
||||
}
|
||||
|
||||
@ -505,6 +507,7 @@ pevent(void *ev, ...) {
|
||||
if(b == nil)
|
||||
b = Bfdopen(2, O_WRONLY);
|
||||
|
||||
n = 0;
|
||||
va_start(ap, ev);
|
||||
for(;;) {
|
||||
fn = va_arg(ap, Tfn);
|
||||
|
@ -6,7 +6,6 @@
|
||||
#include <assert.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -39,6 +38,9 @@ update_rules(Rule **rule, const char *data) {
|
||||
char regex[256], value[256];
|
||||
char *r, *v;
|
||||
const char *p;
|
||||
|
||||
SET(r);
|
||||
SET(v);
|
||||
|
||||
if(!data || !strlen(data))
|
||||
return;
|
||||
|
@ -2,7 +2,6 @@
|
||||
#include <errno.h>
|
||||
#include <iconv.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
|
@ -5,7 +5,6 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <util.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
|
||||
@ -48,6 +47,7 @@ get_view(const char *name) {
|
||||
View *v;
|
||||
int cmp;
|
||||
|
||||
SET(cmp);
|
||||
for(v = view; v; v=v->next)
|
||||
if((cmp=strcmp(name, v->name)) >= 0)
|
||||
break;
|
||||
@ -121,11 +121,10 @@ update_frame_selectors(View *v) {
|
||||
|
||||
void
|
||||
focus_view(WMScreen *s, View *v) {
|
||||
View *old;
|
||||
Frame *f;
|
||||
Client *c;
|
||||
|
||||
old = screen->sel;
|
||||
|
||||
USED(s);
|
||||
|
||||
XGrabServer(display);
|
||||
|
||||
@ -177,7 +176,7 @@ attach_to_view(View *v, Frame *f) {
|
||||
focus_area(v->area);
|
||||
else if(starting && v->sel->floating)
|
||||
focus_area(v->area->next);
|
||||
attach_to_area(v->sel, f, False);
|
||||
attach_to_area(v->sel, f);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -7,7 +7,6 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <util.h>
|
||||
#include <bio.h>
|
||||
#include "dat.h"
|
||||
#include "fns.h"
|
||||
@ -117,7 +116,7 @@ Wfmt(Fmt *f) {
|
||||
Window *w;
|
||||
|
||||
w = va_arg(f->args, Window*);
|
||||
return fmtprint(f, "0x%ux", w->w);
|
||||
return fmtprint(f, "0x%ulx", w->w);
|
||||
}
|
||||
|
||||
/* Init */
|
||||
@ -415,6 +414,7 @@ drawstring(Image *dst, Font *font,
|
||||
y = r.min.y + Dy(r) / 2 - h / 2 + font->ascent;
|
||||
|
||||
/* shorten text if necessary */
|
||||
SET(w);
|
||||
while(len > 0) {
|
||||
w = textwidth_l(font, buf, len + min(shortened, 3));
|
||||
if(w <= Dx(r) - (font->height & ~1))
|
||||
|
@ -145,6 +145,7 @@ main(int argc, char **argv)
|
||||
exit(0);
|
||||
}
|
||||
|
||||
SET(n);
|
||||
for(ap = argtab; ap->name; ap++) {
|
||||
n = strlen(ap->name);
|
||||
if(strncmp(ap->name, argv[i]+1, n) == 0)
|
||||
@ -232,7 +233,7 @@ main(int argc, char **argv)
|
||||
run_menu();
|
||||
|
||||
XCloseDisplay(dpy);
|
||||
exit(0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* usage --- print a usage message and die */
|
||||
@ -248,23 +249,6 @@ usage(void)
|
||||
|
||||
/* run_menu --- put up the window, execute selected commands */
|
||||
|
||||
void
|
||||
run_menu(void)
|
||||
{
|
||||
XEvent ev;
|
||||
int i, old, wide, high, dx, dy;
|
||||
|
||||
dx = 0;
|
||||
for(i = 0; i < numitems; i++) {
|
||||
wide = XTextWidth(font, labels[i], strlen(labels[i])) + 4;
|
||||
if(wide > dx)
|
||||
dx = wide;
|
||||
}
|
||||
wide = dx;
|
||||
|
||||
high = font->ascent + font->descent + 1;
|
||||
dy = numitems * high;
|
||||
|
||||
enum {
|
||||
MouseMask =
|
||||
ButtonPressMask
|
||||
@ -277,6 +261,22 @@ run_menu(void)
|
||||
| ExposureMask
|
||||
};
|
||||
|
||||
void
|
||||
run_menu(void)
|
||||
{
|
||||
XEvent ev;
|
||||
int i, old, wide, high, dx;
|
||||
|
||||
dx = 0;
|
||||
for(i = 0; i < numitems; i++) {
|
||||
wide = XTextWidth(font, labels[i], strlen(labels[i])) + 4;
|
||||
if(wide > dx)
|
||||
dx = wide;
|
||||
}
|
||||
wide = dx;
|
||||
|
||||
high = font->ascent + font->descent + 1;
|
||||
|
||||
create_window(wide, high);
|
||||
warpmouse(wide, high);
|
||||
|
||||
@ -284,8 +284,6 @@ run_menu(void)
|
||||
|
||||
XMapWindow(dpy, menuwin);
|
||||
|
||||
i = 0; /* save menu Item position */
|
||||
|
||||
for(;;) {
|
||||
XNextEvent(dpy, &ev);
|
||||
switch (ev.type) {
|
||||
|
14
config.mk
14
config.mk
@ -9,20 +9,20 @@ LIBDIR = ${PREFIX}/lib
|
||||
INCLUDE = ${PREFIX}/include
|
||||
|
||||
# Includes and libs
|
||||
INCPATH = .:${ROOT}/include:${INCLUDE}:/usr/include
|
||||
LIBS = -L/usr/lib -lc -L${ROOT}/lib
|
||||
INCPATH = .:${HOME}/libixp/include:${ROOT}/include:${INCLUDE}:/usr/include
|
||||
LIBS = -L/usr/lib -lc -L${ROOT}/lib -L${HOME}/libixp/lib
|
||||
|
||||
# Flags
|
||||
include ${ROOT}/mk/gcc.mk
|
||||
CFLAGS += -g -O0
|
||||
LDFLAGS += -g ${LIBS}
|
||||
#include ${ROOT}/mk/gcc.mk
|
||||
CFLAGS = -wF -DVARARGCK
|
||||
LDFLAGS += ${LIBS}
|
||||
STATIC = -static
|
||||
MKDEP = cpp -M
|
||||
|
||||
# Compiler
|
||||
CC = cc -c
|
||||
CC = 8cc
|
||||
# Linker (Under normal circumstances, this should *not* be 'ld')
|
||||
LD = cc
|
||||
LD = : 8l
|
||||
# Archiver
|
||||
AR = ar crs
|
||||
|
||||
|
@ -54,6 +54,59 @@ enum{
|
||||
|
||||
extern int (*fmtdoquote)(int);
|
||||
|
||||
#ifdef VARARGCK
|
||||
# pragma varargck argpos fmtprint 2
|
||||
# pragma varargck argpos fprint 2
|
||||
# pragma varargck argpos print 1
|
||||
# pragma varargck argpos runeseprint 3
|
||||
# pragma varargck argpos runesmprint 1
|
||||
# pragma varargck argpos runesnprint 3
|
||||
# pragma varargck argpos runesprint 2
|
||||
# pragma varargck argpos seprint 3
|
||||
# pragma varargck argpos smprint 1
|
||||
# pragma varargck argpos snprint 3
|
||||
# pragma varargck argpos sprint 2
|
||||
|
||||
# pragma varargck type "lld" vlong
|
||||
# pragma varargck type "llx" vlong
|
||||
# pragma varargck type "lld" uvlong
|
||||
# pragma varargck type "llx" uvlong
|
||||
# pragma varargck type "ld" long
|
||||
# pragma varargck type "lx" long
|
||||
# pragma varargck type "lb" long
|
||||
# pragma varargck type "ld" ulong
|
||||
# pragma varargck type "lx" ulong
|
||||
# pragma varargck type "lb" ulong
|
||||
# pragma varargck type "d" int
|
||||
# pragma varargck type "x" int
|
||||
# pragma varargck type "c" int
|
||||
# pragma varargck type "C" int
|
||||
# pragma varargck type "b" int
|
||||
# pragma varargck type "d" uint
|
||||
# pragma varargck type "x" uint
|
||||
# pragma varargck type "c" uint
|
||||
# pragma varargck type "C" uint
|
||||
# pragma varargck type "b" uint
|
||||
# pragma varargck type "f" double
|
||||
# pragma varargck type "e" double
|
||||
# pragma varargck type "g" double
|
||||
# pragma varargck type "s" char*
|
||||
# pragma varargck type "q" char*
|
||||
# pragma varargck type "S" Rune*
|
||||
# pragma varargck type "Q" Rune*
|
||||
# pragma varargck type "r" void
|
||||
# pragma varargck type "%" void
|
||||
# pragma varargck type "n" int*
|
||||
# pragma varargck type "p" uintptr_t
|
||||
# pragma varargck type "p" void*
|
||||
# pragma varargck flag ','
|
||||
# pragma varargck flag 'h'
|
||||
# pragma varargck type "<" void*
|
||||
# pragma varargck type "[" void*
|
||||
# pragma varargck type "H" void*
|
||||
# pragma varargck type "lH" void*
|
||||
#endif
|
||||
|
||||
/* Edit .+1,/^$/ | cfn $PLAN9/src/lib9/fmt/?*.c | grep -v static |grep -v __ */
|
||||
int dofmt(Fmt *f, char *fmt);
|
||||
int dorfmt(Fmt *f, const Rune *fmt);
|
||||
|
@ -1,22 +1,19 @@
|
||||
/*
|
||||
* compiler directive on Plan 9
|
||||
*/
|
||||
#ifndef USED
|
||||
#define USED(x) if(x);else
|
||||
#endif
|
||||
|
||||
#include <utf.h>
|
||||
#include <fmt.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
/*
|
||||
* easiest way to make sure these are defined
|
||||
*/
|
||||
#define uchar _p9uchar
|
||||
#define ushort _p9ushort
|
||||
#define uint _p9uint
|
||||
#define ulong _p9ulong
|
||||
#ifndef KENC
|
||||
# ifndef USED
|
||||
# define USED(x) if(x);else
|
||||
# endif
|
||||
# define uchar _p9uchar
|
||||
# define ushort _p9ushort
|
||||
# define uint _p9uint
|
||||
# define ulong _p9ulong
|
||||
#endif
|
||||
typedef unsigned char uchar;
|
||||
typedef unsigned short ushort;
|
||||
typedef unsigned int uint;
|
||||
@ -24,6 +21,12 @@ typedef unsigned long ulong;
|
||||
typedef long long vlong;
|
||||
typedef unsigned long long uvlong;
|
||||
|
||||
#include <utf.h>
|
||||
#include <stdint.h>
|
||||
#include <fmt.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#define OREAD O_RDONLY
|
||||
#define OWRITE O_WRONLY
|
||||
|
||||
|
@ -8,12 +8,14 @@
|
||||
#undef ulong
|
||||
#undef uvlong
|
||||
#undef vlong
|
||||
#define uchar _wmiiuchar
|
||||
#define ushort _wmiiushort
|
||||
#define uint _wmiiuint
|
||||
#define ulong _wmiiulong
|
||||
#define vlong _wmiivlong
|
||||
#define uvlong _wmiiuvlong
|
||||
#ifndef KENC
|
||||
# define uchar _wmiiuchar
|
||||
# define ushort _wmiiushort
|
||||
# define uint _wmiiuint
|
||||
# define ulong _wmiiulong
|
||||
# define vlong _wmiivlong
|
||||
# define uvlong _wmiiuvlong
|
||||
#endif
|
||||
typedef unsigned char uchar;
|
||||
typedef unsigned short ushort;
|
||||
typedef unsigned int uint;
|
||||
@ -35,25 +37,33 @@ char *str_nil(char *s);
|
||||
uint strlcat(char *dst, const char *src, unsigned int siz);
|
||||
|
||||
char *argv0;
|
||||
static void *__p;
|
||||
static int __i;
|
||||
#undef ARGBEGIN
|
||||
#undef ARGEND
|
||||
#undef ARGF
|
||||
#undef EARGF
|
||||
#define ARGBEGIN int _argi, _argtmp, _inargv=0; char *_argv; \
|
||||
if(!argv0)argv0=ARGF(); _inargv=1; \
|
||||
#define ARGBEGIN \
|
||||
int _argi=0, _argtmp=0, _inargv=0; char *_argv=nil; \
|
||||
if(!argv0) argv0=ARGF(); \
|
||||
_inargv=1; USED(_inargv); \
|
||||
while(argc && argv[0][0] == '-') { \
|
||||
_argi=1; _argv=*argv++; argc--; \
|
||||
while(_argv[_argi]) switch(_argv[_argi++])
|
||||
#define ARGEND }_inargv=0;USED(_argtmp);USED(_argv);USED(_argi)
|
||||
#define ARGEND }_inargv=0;USED(_argtmp);USED(_argv);USED(_argi);USED(_inargv)
|
||||
|
||||
#define ARGF() ((_inargv && _argv[_argi]) ? \
|
||||
(_argtmp=_argi, _argi=strlen(_argv), _argv+_argtmp) \
|
||||
: ((argc > 0) ? (argc--, *argv++) : ((char*)0)))
|
||||
(_argtmp=_argi, _argi=strlen(_argv), __i=_argi,_argv+_argtmp) \
|
||||
: ((argc > 0) ? (--argc, ++argv, __i=argc, __p=argv, (*argv-1)) : ((char*)0)))
|
||||
|
||||
#define EARGF(f) ((_inargv && _argv[_argi]) ? \
|
||||
(_argtmp=_argi, _argi=strlen(_argv), _argv+_argtmp) \
|
||||
: ((argc > 0) ? (argc--, *argv++) : ((f), (char*)0)))
|
||||
(_argtmp=_argi, _argi=strlen(_argv), __i=_argi, _argv+_argtmp) \
|
||||
: ((argc > 0) ? (--argc, ++argv, __i=argc, __p=argv, (*argv-1)) : ((f), (char*)0)))
|
||||
|
||||
#undef USED
|
||||
#undef SET
|
||||
#define USED(x) if(x){}else
|
||||
#define SET(x) ((x)=0)
|
||||
#ifndef KENC
|
||||
# undef USED
|
||||
# undef SET
|
||||
# define USED(x) if(x){}else
|
||||
# define SET(x) ((x)=0)
|
||||
#endif
|
||||
|
||||
|
@ -57,5 +57,4 @@ dorfmt(Fmt *f, const Rune *fmt)
|
||||
if(fmt == nil)
|
||||
return -1;
|
||||
}
|
||||
return 0; /* not reached */
|
||||
}
|
||||
|
@ -19,9 +19,7 @@
|
||||
#include <errno.h>
|
||||
#include <stdarg.h>
|
||||
#include <ctype.h>
|
||||
#include <fmt.h>
|
||||
#include "plan9.h"
|
||||
#include "fmt.h"
|
||||
#include "fmtdef.h"
|
||||
|
||||
enum
|
||||
|
@ -12,9 +12,7 @@
|
||||
* OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include <stdarg.h>
|
||||
#include <fmt.h>
|
||||
#include "plan9.h"
|
||||
#include "fmt.h"
|
||||
#include "fmtdef.h"
|
||||
|
||||
int
|
||||
|
Loading…
Reference in New Issue
Block a user