Mapper
change_maxmin_legend.c
Go to the documentation of this file.
1 
2 #include "prototypes_new.h"
3 
4 void change_maxmin_legend(int win_x,int win_y)
5 
6 {
7 
8 extern int add_max_flag;
9 extern int add_min_flag;
10 extern int contour_maxmin_flag;
11 extern int mnlegend_save;
12 extern int change_map_flag;
13 extern Window window;
14 extern Widget drawing_area;
15 extern unsigned long mnmap[16];
16 extern unsigned long qmap[16];
17 extern int tscale;
18 extern int maxtscale;
19 extern int rs;
20 extern int legendysize;
21 extern int change_maxmin_flag;
22 int k,i;
23 Dimension width,height;
24 Arg args[10];
25 int legendystart;
26 
27 XtSetArg(args[0],XtNwidth,&width);
28 XtSetArg(args[1],XtNheight,&height);
29 XtGetValues(drawing_area,args,2);
30 
31 if(win_x < width - rs - 5)
32  return;
33 
34 /* restore filter*/
35 
37 
38 if(win_y >= (legendystart + (22+maxtscale)*rs) &&
39  win_y < (legendystart + (23+maxtscale)*rs)) {
40 
41  change_maxmin_flag=-1;
43 
44  return;
45 
46  }
47 
48 if(win_y >= (legendystart + (21+maxtscale)*rs) &&
49  win_y < (legendystart + (22+maxtscale)*rs)) {
50 
51  contour_maxmin_flag=1;
52  if(add_max_flag==1 || add_min_flag==1)
55 
56  write_screen();
57 
58  return;
59 
60  }
61 if(win_y >= (legendystart + (20+maxtscale)*rs) &&
62  win_y < (legendystart + (21+maxtscale)*rs)) {
63 
64  contour_maxmin_flag=-1;
65  if(add_max_flag==1 || add_min_flag==1)
68 
69  write_screen();
70 
71  return;
72 
73  }
74 
75 
76 /*change pallette */
77 
78 if(win_y >= (legendystart + (20)*rs) &&
79  win_y < (legendystart + (20+maxtscale)*rs)) {
80 
81  tscale=(win_y-(legendystart+20*rs))/rs;
82  if(add_max_flag==1 || add_min_flag==1)
84 
86 
87  write_screen();
88 
89  return;
90 
91  }
92 
93 
94 /* filter off */
95 
96 if(win_y >= (legendystart + 19*rs) &&
97  win_y < (legendystart + 20*rs)) {
98 
99  for(i=0; i < 15;i++)
100  mnmap[i]=qmap[i];
101  mnlegend_save=-1;
102 
103  if(add_max_flag==1 || add_min_flag==1)
104  change_map_flag=1;
105 
107 
108  write_screen();
109 
110  return;
111 
112  }
113 
114 /*filter up*/
115 
116 if(win_y >= (legendystart + 18*rs) &&
117  win_y < (legendystart + 19*rs)) {
118 
119  if(mnlegend_save >= 0) {
120 
121  for(i=0; i < 15;i++)
122  mnmap[i]=qmap[i];
123 
124  for(i=mnlegend_save; i < 15;i++)
125  mnmap[i]=mnmap[mnlegend_save];
126 
127  if(add_max_flag==1 || add_min_flag==1)
128  change_map_flag=1;
130 
131  write_screen();
132 
133  }
134 
135  return;
136 
137  }
138 
139 /*filter down */
140 
141 if(win_y >= (legendystart + 17*rs) &&
142  win_y < (legendystart + 18*rs)) {
143 
144  if(mnlegend_save >= 0) {
145 
146  for(i=0; i < 15;i++)
147  mnmap[i]=qmap[i];
148 
149  for(i=0;i<=mnlegend_save;i++)
150  mnmap[i]=0;
151 
152  if(add_max_flag==1 || add_min_flag==1)
153  change_map_flag=1;
155 
156 
157  write_screen();
158 
159  }
160 
161  return;
162 
163  }
164 
165 /*filter levels */
166 
167 for(k=0;k<16;k++) {
168 
169  if(win_y >= (legendystart + (k+1) * rs) &&
170  win_y < (legendystart + (k+2) * rs)) {
171 
172  mnlegend_save=k;
173 
175  return;
176 
177  }
178 
179 
180  }
181 
182 
183 
184 }
static int i
void change_maxmin_legend(int win_x, int win_y)
void write_screen(void)
Definition: mapper.c:1082
void clear_drawable(Drawable)
Definition: mapper.c:1067
void redraw_legend_display(Drawable)
int k
Definition: mapp2h.h:48
int rs
Definition: mapper.c:103
int legendysize
Definition: mapper.c:103
unsigned long qmap[16]
Definition: mapper.c:116
Window window
Definition: mapper.c:190
int change_map_flag
Definition: mapper.c:86
int legendystart
Definition: mapper.c:103
Dimension height
Dimension width
Arg args[10]
Widget drawing_area
Definition: mapper.c:185
void redraw_maxmin_legend(Drawable pixm)