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