Browse Source

main.c: add zooming on mousewheel events

Signed-off-by: Dave Reisner <d@falconindy.com>
master
Dave Reisner 14 years ago
parent
commit
9a35f40224
1 changed files with 27 additions and 0 deletions
  1. +27
    -0
      main.c

+ 27
- 0
main.c View File

@@ -31,10 +31,12 @@


void on_keypress(XEvent*); void on_keypress(XEvent*);
void on_configurenotify(XEvent*); void on_configurenotify(XEvent*);
void on_buttonpress(XEvent*);


void update_title(); void update_title();


static void (*handler[LASTEvent])(XEvent*) = { static void (*handler[LASTEvent])(XEvent*) = {
[ButtonPress] = on_buttonpress,
[KeyPress] = on_keypress, [KeyPress] = on_keypress,
[ConfigureNotify] = on_configurenotify [ConfigureNotify] = on_configurenotify
}; };
@@ -126,6 +128,31 @@ void cleanup() {
} }
} }


void on_buttonpress(XEvent *ev) {
int changed;
XButtonEvent *buttonevent;

changed = 0;
buttonevent = &ev->xbutton;

switch (buttonevent->button) {
case Button4:
changed = img_zoom_in(&img);
break;
case Button5:
changed = img_zoom_out(&img);
break;
default:
return;
}

if (changed) {
img_render(&img, &win);
update_title();
timeout = 0;
}
}

void on_keypress(XEvent *ev) { void on_keypress(XEvent *ev) {
char key; char key;
KeySym keysym; KeySym keysym;


||||||
x
 
000:0
Loading…
Cancel
Save