diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-09-23 20:14:47 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-09-23 20:14:47 +0200 |
commit | 948d0a1180a57f61285abd4a59c7351b6197d3d5 (patch) | |
tree | 338b8581ca00c49a58f3c31dc1522fc9f538692a /sys/src/cmd/mothra/libpanel/textview.c | |
parent | f68d096fb77889f8cf74ecc383632b105c3da21d (diff) |
mothra: snarf and paste
Diffstat (limited to 'sys/src/cmd/mothra/libpanel/textview.c')
-rw-r--r-- | sys/src/cmd/mothra/libpanel/textview.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/sys/src/cmd/mothra/libpanel/textview.c b/sys/src/cmd/mothra/libpanel/textview.c index da38003f9..d50d1a330 100644 --- a/sys/src/cmd/mothra/libpanel/textview.c +++ b/sys/src/cmd/mothra/libpanel/textview.c @@ -52,7 +52,8 @@ void pl_drawtextview(Panel *p){ * If t is a panel word, pass the mouse event on to it */ void pl_passon(Rtext *t, Mouse *m){ - if(t && t->b==0 && t->p!=0) plmouse(t->p, m); + if(t && t->b==0 && t->p!=0) + plmouse(t->p, m); } int pl_hittextview(Panel *p, Mouse *m){ Rtext *oldhitword, *oldhitfirst; @@ -166,6 +167,11 @@ int pl_pritextview(Panel *p, Point xy){ } return PRI_NORMAL; } + +char* pl_snarftextview(Panel *p){ + return plrtsnarftext(((Textview *)p->data)->text); +} + void plinittextview(Panel *v, int flags, Point minsize, Rtext *t, void (*hit)(Panel *, int, Rtext *)){ Textview *tp; tp=v->data; @@ -185,6 +191,7 @@ void plinittextview(Panel *v, int flags, Point minsize, Rtext *t, void (*hit)(Pa tp->hitfirst=0; tp->hitword=0; v->scroll=pl_scrolltextview; + v->snarf=pl_snarftextview; tp->twid=-1; v->scr.pos=Pt(0,0); v->scr.size=Pt(0,1); @@ -202,9 +209,3 @@ void plsetpostextview(Panel *p, int yoffs){ ((Textview *)p->data)->yoffs=yoffs; pldraw(p, p->b); } -char* plsnarftext(Panel *p){ - static char *b = nil; - free(b); - b = plrtsnarftext(((Textview *)p->data)->text); - return b; -} |