summaryrefslogtreecommitdiff
path: root/sys/src/cmd/mothra/libpanel/textview.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-09-23 20:14:47 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2012-09-23 20:14:47 +0200
commit948d0a1180a57f61285abd4a59c7351b6197d3d5 (patch)
tree338b8581ca00c49a58f3c31dc1522fc9f538692a /sys/src/cmd/mothra/libpanel/textview.c
parentf68d096fb77889f8cf74ecc383632b105c3da21d (diff)
mothra: snarf and paste
Diffstat (limited to 'sys/src/cmd/mothra/libpanel/textview.c')
-rw-r--r--sys/src/cmd/mothra/libpanel/textview.c15
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;
-}