diff options
author | Aurélien Aptel <aurelien.aptel@gmail.com> | 2010-08-31 16:53:34 +0200 |
---|---|---|
committer | Aurélien Aptel <aurelien.aptel@gmail.com> | 2010-08-31 16:53:34 +0200 |
commit | c4225bdcc9da2eb87e49608cc1821757cbd69dee (patch) | |
tree | 9659d25849248cba5b760d6a9a81f49edce1e840 /st.c | |
parent | f211bc2eedaa8ea86dc66ad04ccd08938c73a93c (diff) | |
download | st-c4225bdcc9da2eb87e49608cc1821757cbd69dee.tar.gz st-c4225bdcc9da2eb87e49608cc1821757cbd69dee.zip |
add selinit() and renamed clipboard_* to sel*.
Diffstat (limited to 'st.c')
-rw-r--r-- | st.c | 18 |
1 files changed, 13 insertions, 5 deletions
@@ -185,9 +185,9 @@ static char* kmap(KeySym); | |||
185 | static void kpress(XEvent *); | 185 | static void kpress(XEvent *); |
186 | static void resize(XEvent *); | 186 | static void resize(XEvent *); |
187 | static void focus(XEvent *); | 187 | static void focus(XEvent *); |
188 | static void brelease(XEvent *e); | 188 | static void brelease(XEvent *); |
189 | static void bpress(XEvent *e); | 189 | static void bpress(XEvent *); |
190 | static void bmotion(XEvent *e); | 190 | static void bmotion(XEvent *); |
191 | 191 | ||
192 | 192 | ||
193 | static void (*handler[LASTEvent])(XEvent *) = { | 193 | static void (*handler[LASTEvent])(XEvent *) = { |
@@ -210,6 +210,13 @@ static int cmdfd; | |||
210 | static pid_t pid; | 210 | static pid_t pid; |
211 | static Selection sel; | 211 | static Selection sel; |
212 | 212 | ||
213 | void | ||
214 | selinit(void) { | ||
215 | sel.mode = 0; | ||
216 | sel.bx = -1; | ||
217 | sel.clip = NULL; | ||
218 | } | ||
219 | |||
213 | static inline int selected(int x, int y) { | 220 | static inline int selected(int x, int y) { |
214 | if ((sel.ey==y && sel.by==y)) { | 221 | if ((sel.ey==y && sel.by==y)) { |
215 | int bx = MIN(sel.bx, sel.ex); | 222 | int bx = MIN(sel.bx, sel.ex); |
@@ -261,12 +268,12 @@ static char *getseltext() { | |||
261 | } | 268 | } |
262 | 269 | ||
263 | /* TODO: use X11 clipboard */ | 270 | /* TODO: use X11 clipboard */ |
264 | static void clipboard_copy(char *str) { | 271 | static void selcopy(char *str) { |
265 | free(sel.clip); | 272 | free(sel.clip); |
266 | sel.clip = str; | 273 | sel.clip = str; |
267 | } | 274 | } |
268 | 275 | ||
269 | static void clipboard_paste() { | 276 | static void selpaste() { |
270 | if(sel.clip) | 277 | if(sel.clip) |
271 | ttywrite(sel.clip, strlen(sel.clip)); | 278 | ttywrite(sel.clip, strlen(sel.clip)); |
272 | } | 279 | } |
@@ -1471,6 +1478,7 @@ main(int argc, char *argv[]) { | |||
1471 | tnew(80, 24); | 1478 | tnew(80, 24); |
1472 | ttynew(); | 1479 | ttynew(); |
1473 | xinit(); | 1480 | xinit(); |
1481 | selinit(); | ||
1474 | run(); | 1482 | run(); |
1475 | return 0; | 1483 | return 0; |
1476 | } | 1484 | } |