summaryrefslogtreecommitdiff
path: root/apps/plugins/pdbox/PDa/src/g_graph.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/pdbox/PDa/src/g_graph.c')
-rw-r--r--apps/plugins/pdbox/PDa/src/g_graph.c83
1 files changed, 78 insertions, 5 deletions
diff --git a/apps/plugins/pdbox/PDa/src/g_graph.c b/apps/plugins/pdbox/PDa/src/g_graph.c
index c81bac10b8..a3d1798733 100644
--- a/apps/plugins/pdbox/PDa/src/g_graph.c
+++ b/apps/plugins/pdbox/PDa/src/g_graph.c
@@ -6,12 +6,21 @@
6"graphs" inside another glist. LATER move the inlet/outlet code of g_canvas.c 6"graphs" inside another glist. LATER move the inlet/outlet code of g_canvas.c
7to this file... */ 7to this file... */
8 8
9#ifdef ROCKBOX
10#include "plugin.h"
11#include "pdbox.h"
12#include "m_pd.h"
13#include "g_canvas.h"
14#define snprintf rb->snprintf
15#define atof rb_atof
16#else /* ROCKBOX */
9#include <stdlib.h> 17#include <stdlib.h>
10#include "m_pd.h" 18#include "m_pd.h"
11#include "t_tk.h" 19#include "t_tk.h"
12#include "g_canvas.h" 20#include "g_canvas.h"
13#include <stdio.h> 21#include <stdio.h>
14#include <string.h> 22#include <string.h>
23#endif /* ROCKBOX */
15 24
16/* ---------------------- forward definitions ----------------- */ 25/* ---------------------- forward definitions ----------------- */
17 26
@@ -80,7 +89,11 @@ void glist_delete(t_glist *x, t_gobj *y)
80 if (gl->gl_isgraph) 89 if (gl->gl_isgraph)
81 { 90 {
82 char tag[80]; 91 char tag[80];
92#ifdef ROCKBOX
93 snprintf(tag, sizeof(tag)-1, "graph%x", (int)gl);
94#else /* ROCKBOX */
83 sprintf(tag, "graph%x", (int)gl); 95 sprintf(tag, "graph%x", (int)gl);
96#endif /* ROCKBOX */
84 glist_eraseiofor(x, &gl->gl_obj, tag); 97 glist_eraseiofor(x, &gl->gl_obj, tag);
85 } 98 }
86 else 99 else
@@ -112,16 +125,22 @@ void glist_delete(t_glist *x, t_gobj *y)
112 /* remove every object from a glist. Experimental. */ 125 /* remove every object from a glist. Experimental. */
113void glist_clear(t_glist *x) 126void glist_clear(t_glist *x)
114{ 127{
128#ifdef ROCKBOX
129 t_gobj *y;
130#else
115 t_gobj *y, *y2; 131 t_gobj *y, *y2;
132#endif
116 int dspstate = canvas_suspend_dsp(); 133 int dspstate = canvas_suspend_dsp();
117 while (y = x->gl_list) 134 while((y = x->gl_list))
118 glist_delete(x, y); 135 glist_delete(x, y);
119 canvas_resume_dsp(dspstate); 136 canvas_resume_dsp(dspstate);
120} 137}
121 138
122void glist_retext(t_glist *glist, t_text *y) 139void glist_retext(t_glist *glist, t_text *y)
123{ 140{
141#ifndef ROCKBOX
124 t_canvas *c = glist_getcanvas(glist); 142 t_canvas *c = glist_getcanvas(glist);
143#endif
125 /* check that we have built rtexts yet. LATER need a better test. */ 144 /* check that we have built rtexts yet. LATER need a better test. */
126 if (glist->gl_editor && glist->gl_editor->e_rtext) 145 if (glist->gl_editor && glist->gl_editor->e_rtext)
127 { 146 {
@@ -167,6 +186,9 @@ static t_gobj *glist_merge(t_glist *x, t_gobj *g1, t_gobj *g2)
167{ 186{
168 t_gobj *g = 0, *g9 = 0; 187 t_gobj *g = 0, *g9 = 0;
169 float f1 = 0, f2 = 0; 188 float f1 = 0, f2 = 0;
189#ifdef ROCKBOX
190 (void) x;
191#endif
170 if (g1) 192 if (g1)
171 f1 = gobj_getxforsort(g1); 193 f1 = gobj_getxforsort(g1);
172 if (g2) 194 if (g2)
@@ -190,7 +212,7 @@ static t_gobj *glist_merge(t_glist *x, t_gobj *g1, t_gobj *g2)
190 if (g9) 212 if (g9)
191 g9->g_next = g1, g9 = g1; 213 g9->g_next = g1, g9 = g1;
192 else g9 = g = g1; 214 else g9 = g = g1;
193 if (g1 = g1->g_next) 215 if((g1 = g1->g_next))
194 f1 = gobj_getxforsort(g1); 216 f1 = gobj_getxforsort(g1);
195 g9->g_next = 0; 217 g9->g_next = 0;
196 continue; 218 continue;
@@ -198,7 +220,7 @@ static t_gobj *glist_merge(t_glist *x, t_gobj *g1, t_gobj *g2)
198 if (g9) 220 if (g9)
199 g9->g_next = g2, g9 = g2; 221 g9->g_next = g2, g9 = g2;
200 else g9 = g = g2; 222 else g9 = g = g2;
201 if (g2 = g2->g_next) 223 if((g2 = g2->g_next))
202 f2 = gobj_getxforsort(g2); 224 f2 = gobj_getxforsort(g2);
203 g9->g_next = 0; 225 g9->g_next = 0;
204 continue; 226 continue;
@@ -333,6 +355,9 @@ void canvas_resortinlets(t_canvas *x)
333t_outlet *canvas_addoutlet(t_canvas *x, t_pd *who, t_symbol *s) 355t_outlet *canvas_addoutlet(t_canvas *x, t_pd *who, t_symbol *s)
334{ 356{
335 t_outlet *op = outlet_new(&x->gl_obj, s); 357 t_outlet *op = outlet_new(&x->gl_obj, s);
358#ifdef ROCKBOX
359 (void) who;
360#endif
336 if (!x->gl_loading && x->gl_owner && glist_isvisible(x->gl_owner)) 361 if (!x->gl_loading && x->gl_owner && glist_isvisible(x->gl_owner))
337 { 362 {
338 gobj_vis(&x->gl_gobj, x->gl_owner, 0); 363 gobj_vis(&x->gl_gobj, x->gl_owner, 0);
@@ -444,6 +469,9 @@ static void graph_yticks(t_glist *x,
444static void graph_xlabel(t_glist *x, t_symbol *s, int argc, t_atom *argv) 469static void graph_xlabel(t_glist *x, t_symbol *s, int argc, t_atom *argv)
445{ 470{
446 int i; 471 int i;
472#ifdef ROCKBOX
473 (void) s;
474#endif
447 if (argc < 1) error("graph_xlabel: no y value given"); 475 if (argc < 1) error("graph_xlabel: no y value given");
448 else 476 else
449 { 477 {
@@ -460,6 +488,9 @@ static void graph_xlabel(t_glist *x, t_symbol *s, int argc, t_atom *argv)
460static void graph_ylabel(t_glist *x, t_symbol *s, int argc, t_atom *argv) 488static void graph_ylabel(t_glist *x, t_symbol *s, int argc, t_atom *argv)
461{ 489{
462 int i; 490 int i;
491#ifdef ROCKBOX
492 (void) s;
493#endif
463 if (argc < 1) error("graph_ylabel: no x value given"); 494 if (argc < 1) error("graph_ylabel: no x value given");
464 else 495 else
465 { 496 {
@@ -613,10 +644,14 @@ void glist_redraw(t_glist *x)
613 } 644 }
614 /* redraw all the lines */ 645 /* redraw all the lines */
615 linetraverser_start(&t, x); 646 linetraverser_start(&t, x);
616 while (oc = linetraverser_next(&t)) 647 while((oc = linetraverser_next(&t)))
648#ifdef ROCKBOX
649 ;
650#else /* ROCKBOX */
617 sys_vgui(".x%x.c coords l%x %d %d %d %d\n", 651 sys_vgui(".x%x.c coords l%x %d %d %d %d\n",
618 glist_getcanvas(x), oc, 652 glist_getcanvas(x), oc,
619 t.tr_lx1, t.tr_ly1, t.tr_lx2, t.tr_ly2); 653 t.tr_lx1, t.tr_ly1, t.tr_lx2, t.tr_ly2);
654#endif /* ROCKBOX */
620 } 655 }
621 if (x->gl_owner) 656 if (x->gl_owner)
622 { 657 {
@@ -651,7 +686,11 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
651 if (!vis) 686 if (!vis)
652 rtext_erase(glist_findrtext(parent_glist, &x->gl_obj)); 687 rtext_erase(glist_findrtext(parent_glist, &x->gl_obj));
653 688
689#ifdef ROCKBOX
690 snprintf(tag, sizeof(tag)-1, "graph%x", (int) x);
691#else
654 sprintf(tag, "graph%x", (int)x); 692 sprintf(tag, "graph%x", (int)x);
693#endif
655 if (vis) 694 if (vis)
656 glist_drawiofor(parent_glist, &x->gl_obj, 1, 695 glist_drawiofor(parent_glist, &x->gl_obj, 1,
657 tag, x1, y1, x2, y2); 696 tag, x1, y1, x2, y2);
@@ -660,6 +699,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
660 just show the bounding rectangle */ 699 just show the bounding rectangle */
661 if (x->gl_havewindow) 700 if (x->gl_havewindow)
662 { 701 {
702#ifndef ROCKBOX
663 if (vis) 703 if (vis)
664 { 704 {
665 sys_vgui(".x%x.c create polygon\ 705 sys_vgui(".x%x.c create polygon\
@@ -672,6 +712,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
672 sys_vgui(".x%x.c delete %s\n", 712 sys_vgui(".x%x.c delete %s\n",
673 glist_getcanvas(x->gl_owner), tag); 713 glist_getcanvas(x->gl_owner), tag);
674 } 714 }
715#endif
675 return; 716 return;
676 } 717 }
677 /* otherwise draw (or erase) us as a graph inside another glist. */ 718 /* otherwise draw (or erase) us as a graph inside another glist. */
@@ -681,10 +722,12 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
681 float f; 722 float f;
682 723
683 /* draw a rectangle around the graph */ 724 /* draw a rectangle around the graph */
725#ifndef ROCKBOX
684 sys_vgui(".x%x.c create line\ 726 sys_vgui(".x%x.c create line\
685 %d %d %d %d %d %d %d %d %d %d -tags %s\n", 727 %d %d %d %d %d %d %d %d %d %d -tags %s\n",
686 glist_getcanvas(x->gl_owner), 728 glist_getcanvas(x->gl_owner),
687 x1, y1, x1, y2, x2, y2, x2, y1, x1, y1, tag); 729 x1, y1, x1, y2, x2, y2, x2, y1, x1, y1, tag);
730#endif
688 731
689 /* draw ticks on horizontal borders. If lperb field is 732 /* draw ticks on horizontal borders. If lperb field is
690 zero, this is disabled. */ 733 zero, this is disabled. */
@@ -698,6 +741,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
698 f < 0.99 * x->gl_x2 + 0.01*x->gl_x1; i++, 741 f < 0.99 * x->gl_x2 + 0.01*x->gl_x1; i++,
699 f += x->gl_xtick.k_inc) 742 f += x->gl_xtick.k_inc)
700 { 743 {
744#ifndef ROCKBOX
701 int tickpix = (i % x->gl_xtick.k_lperb ? 2 : 4); 745 int tickpix = (i % x->gl_xtick.k_lperb ? 2 : 4);
702 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n", 746 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n",
703 glist_getcanvas(x->gl_owner), 747 glist_getcanvas(x->gl_owner),
@@ -707,11 +751,13 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
707 glist_getcanvas(x->gl_owner), 751 glist_getcanvas(x->gl_owner),
708 (int)glist_xtopixels(x, f), (int)lpix, 752 (int)glist_xtopixels(x, f), (int)lpix,
709 (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag); 753 (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag);
754#endif
710 } 755 }
711 for (i = 1, f = x->gl_xtick.k_point - x->gl_xtick.k_inc; 756 for (i = 1, f = x->gl_xtick.k_point - x->gl_xtick.k_inc;
712 f > 0.99 * x->gl_x1 + 0.01*x->gl_x2; 757 f > 0.99 * x->gl_x1 + 0.01*x->gl_x2;
713 i++, f -= x->gl_xtick.k_inc) 758 i++, f -= x->gl_xtick.k_inc)
714 { 759 {
760#ifndef ROCKBOX
715 int tickpix = (i % x->gl_xtick.k_lperb ? 2 : 4); 761 int tickpix = (i % x->gl_xtick.k_lperb ? 2 : 4);
716 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n", 762 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n",
717 glist_getcanvas(x->gl_owner), 763 glist_getcanvas(x->gl_owner),
@@ -721,6 +767,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
721 glist_getcanvas(x->gl_owner), 767 glist_getcanvas(x->gl_owner),
722 (int)glist_xtopixels(x, f), (int)lpix, 768 (int)glist_xtopixels(x, f), (int)lpix,
723 (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag); 769 (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag);
770#endif
724 } 771 }
725 } 772 }
726 773
@@ -735,6 +782,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
735 f < 0.99 * ubound + 0.01 * lbound; 782 f < 0.99 * ubound + 0.01 * lbound;
736 i++, f += x->gl_ytick.k_inc) 783 i++, f += x->gl_ytick.k_inc)
737 { 784 {
785#ifndef ROCKBOX
738 int tickpix = (i % x->gl_ytick.k_lperb ? 2 : 4); 786 int tickpix = (i % x->gl_ytick.k_lperb ? 2 : 4);
739 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n", 787 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n",
740 glist_getcanvas(x->gl_owner), 788 glist_getcanvas(x->gl_owner),
@@ -744,11 +792,13 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
744 glist_getcanvas(x->gl_owner), 792 glist_getcanvas(x->gl_owner),
745 x2, (int)glist_ytopixels(x, f), 793 x2, (int)glist_ytopixels(x, f),
746 x2 - tickpix, (int)glist_ytopixels(x, f), tag); 794 x2 - tickpix, (int)glist_ytopixels(x, f), tag);
795#endif
747 } 796 }
748 for (i = 1, f = x->gl_ytick.k_point - x->gl_ytick.k_inc; 797 for (i = 1, f = x->gl_ytick.k_point - x->gl_ytick.k_inc;
749 f > 0.99 * lbound + 0.01 * ubound; 798 f > 0.99 * lbound + 0.01 * ubound;
750 i++, f -= x->gl_ytick.k_inc) 799 i++, f -= x->gl_ytick.k_inc)
751 { 800 {
801#ifndef ROCKBOX
752 int tickpix = (i % x->gl_ytick.k_lperb ? 2 : 4); 802 int tickpix = (i % x->gl_ytick.k_lperb ? 2 : 4);
753 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n", 803 sys_vgui(".x%x.c create line %d %d %d %d -tags %s\n",
754 glist_getcanvas(x->gl_owner), 804 glist_getcanvas(x->gl_owner),
@@ -758,19 +808,27 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
758 glist_getcanvas(x->gl_owner), 808 glist_getcanvas(x->gl_owner),
759 x2, (int)glist_ytopixels(x, f), 809 x2, (int)glist_ytopixels(x, f),
760 x2 - tickpix, (int)glist_ytopixels(x, f), tag); 810 x2 - tickpix, (int)glist_ytopixels(x, f), tag);
811#endif
761 } 812 }
762 } 813 }
763 /* draw x labels */ 814 /* draw x labels */
764 for (i = 0; i < x->gl_nxlabels; i++) 815 for (i = 0; i < x->gl_nxlabels; i++)
816#ifdef ROCKBOX
817 ;
818#else /* ROCKBOX */
765 sys_vgui(".x%x.c create text\ 819 sys_vgui(".x%x.c create text\
766 %d %d -text {%s} -font -*-courier-bold--normal--%d-* -tags %s\n", 820 %d %d -text {%s} -font -*-courier-bold--normal--%d-* -tags %s\n",
767 glist_getcanvas(x), 821 glist_getcanvas(x),
768 (int)glist_xtopixels(x, atof(x->gl_xlabel[i]->s_name)), 822 (int)glist_xtopixels(x, atof(x->gl_xlabel[i]->s_name)),
769 (int)glist_ytopixels(x, x->gl_xlabely), x->gl_xlabel[i]->s_name, 823 (int)glist_ytopixels(x, x->gl_xlabely), x->gl_xlabel[i]->s_name,
770 glist_getfont(x), tag); 824 glist_getfont(x), tag);
825#endif /* ROCKBOX */
771 826
772 /* draw y labels */ 827 /* draw y labels */
773 for (i = 0; i < x->gl_nylabels; i++) 828 for (i = 0; i < x->gl_nylabels; i++)
829#ifdef ROCKBOX
830 ;
831#else /* ROCKBOX */
774 sys_vgui(".x%x.c create text\ 832 sys_vgui(".x%x.c create text\
775 %d %d -text {%s} -font -*-courier-bold--normal--%d-* -tags %s\n", 833 %d %d -text {%s} -font -*-courier-bold--normal--%d-* -tags %s\n",
776 glist_getcanvas(x), 834 glist_getcanvas(x),
@@ -778,6 +836,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
778 (int)glist_ytopixels(x, atof(x->gl_ylabel[i]->s_name)), 836 (int)glist_ytopixels(x, atof(x->gl_ylabel[i]->s_name)),
779 x->gl_ylabel[i]->s_name, 837 x->gl_ylabel[i]->s_name,
780 glist_getfont(x), tag); 838 glist_getfont(x), tag);
839#endif /* ROCKBOX */
781 840
782 /* draw contents of graph as glist */ 841 /* draw contents of graph as glist */
783 for (g = x->gl_list; g; g = g->g_next) 842 for (g = x->gl_list; g; g = g->g_next)
@@ -785,8 +844,10 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
785 } 844 }
786 else 845 else
787 { 846 {
847#ifndef ROCKBOX
788 sys_vgui(".x%x.c delete %s\n", 848 sys_vgui(".x%x.c delete %s\n",
789 glist_getcanvas(x->gl_owner), tag); 849 glist_getcanvas(x->gl_owner), tag);
850#endif
790 for (g = x->gl_list; g; g = g->g_next) 851 for (g = x->gl_list; g; g = g->g_next)
791 gobj_vis(g, x, 0); 852 gobj_vis(g, x, 0);
792 } 853 }
@@ -904,10 +965,12 @@ static void graph_select(t_gobj *z, t_glist *glist, int state)
904 t_rtext *y = glist_findrtext(glist, &x->gl_obj); 965 t_rtext *y = glist_findrtext(glist, &x->gl_obj);
905 if (canvas_showtext(x)) 966 if (canvas_showtext(x))
906 rtext_select(y, state); 967 rtext_select(y, state);
968#ifndef ROCKBOX
907 sys_vgui(".x%x.c itemconfigure %sR -fill %s\n", glist, 969 sys_vgui(".x%x.c itemconfigure %sR -fill %s\n", glist,
908 rtext_gettag(y), (state? "blue" : "black")); 970 rtext_gettag(y), (state? "blue" : "black"));
909 sys_vgui(".x%x.c itemconfigure graph%x -fill %s\n", 971 sys_vgui(".x%x.c itemconfigure graph%x -fill %s\n",
910 glist_getcanvas(glist), z, (state? "blue" : "black")); 972 glist_getcanvas(glist), z, (state? "blue" : "black"));
973#endif
911 } 974 }
912} 975}
913 976
@@ -941,10 +1004,11 @@ static void graph_delete(t_gobj *z, t_glist *glist)
941 t_glist *x = (t_glist *)z; 1004 t_glist *x = (t_glist *)z;
942 t_gobj *y; 1005 t_gobj *y;
943 text_widgetbehavior.w_deletefn(z, glist); 1006 text_widgetbehavior.w_deletefn(z, glist);
944 while (y = x->gl_list) 1007 while((y = x->gl_list))
945 glist_delete(x, y); 1008 glist_delete(x, y);
946} 1009}
947 1010
1011#ifndef ROCKBOX
948static float graph_lastxpix, graph_lastypix; 1012static float graph_lastxpix, graph_lastypix;
949 1013
950static void graph_motion(void *z, t_floatarg dx, t_floatarg dy) 1014static void graph_motion(void *z, t_floatarg dx, t_floatarg dy)
@@ -986,6 +1050,7 @@ static void graph_motion(void *z, t_floatarg dx, t_floatarg dy)
986 else vec[newx] = newy; 1050 else vec[newx] = newy;
987 garray_redraw(a); 1051 garray_redraw(a);
988} 1052}
1053#endif
989 1054
990static int graph_click(t_gobj *z, struct _glist *glist, 1055static int graph_click(t_gobj *z, struct _glist *glist,
991 int xpix, int ypix, int shift, int alt, int dbl, int doit) 1056 int xpix, int ypix, int shift, int alt, int dbl, int doit)
@@ -1037,11 +1102,16 @@ void graph_properties(t_gobj *z, t_glist *owner)
1037 t_glist *x = (t_glist *)z; 1102 t_glist *x = (t_glist *)z;
1038 { 1103 {
1039 t_gobj *y; 1104 t_gobj *y;
1105#ifdef ROCKBOX
1106 (void) owner;
1107#else /* ROCKBOX */
1040 char graphbuf[200]; 1108 char graphbuf[200];
1109
1041 sprintf(graphbuf, "pdtk_graph_dialog %%s %g %g %g %g %d %d\n", 1110 sprintf(graphbuf, "pdtk_graph_dialog %%s %g %g %g %g %d %d\n",
1042 x->gl_x1, x->gl_y1, x->gl_x2, x->gl_y2, 1111 x->gl_x1, x->gl_y1, x->gl_x2, x->gl_y2,
1043 x->gl_pixwidth, x->gl_pixheight); 1112 x->gl_pixwidth, x->gl_pixheight);
1044 gfxstub_new(&x->gl_pd, x, graphbuf); 1113 gfxstub_new(&x->gl_pd, x, graphbuf);
1114#endif /* ROCKBOX */
1045 1115
1046 for (y = x->gl_list; y; y = y->g_next) 1116 for (y = x->gl_list; y; y = y->g_next)
1047 if (pd_class(&y->g_pd) == garray_class) 1117 if (pd_class(&y->g_pd) == garray_class)
@@ -1071,6 +1141,9 @@ static void graph_dialog(t_glist *x, t_symbol *s, int argc, t_atom *argv)
1071 t_float y2 = atom_getfloatarg(3, argc, argv); 1141 t_float y2 = atom_getfloatarg(3, argc, argv);
1072 t_float xpix = atom_getfloatarg(4, argc, argv); 1142 t_float xpix = atom_getfloatarg(4, argc, argv);
1073 t_float ypix = atom_getfloatarg(5, argc, argv); 1143 t_float ypix = atom_getfloatarg(5, argc, argv);
1144#ifdef ROCKBOX
1145 (void) s;
1146#endif
1074 if (x1 != x->gl_x1 || x2 != x->gl_x2 || 1147 if (x1 != x->gl_x1 || x2 != x->gl_x2 ||
1075 y1 != x->gl_y1 || y2 != x->gl_y2) 1148 y1 != x->gl_y1 || y2 != x->gl_y2)
1076 graph_bounds(x, x1, y1, x2, y2); 1149 graph_bounds(x, x1, y1, x2, y2);