Commit e7742e02196ea3dd0598d17012b04389b302768e

Authored by perry.werneck@gmail.com
1 parent 3df72efb

Iniciando implementacao da caixa para configuracao do hostname

pw3270.cbp
... ... @@ -8,8 +8,8 @@
8 8 <Option compiler="gcc" />
9 9 <Build>
10 10 <Target title="Debug">
11   - <Option output=".bin/Debug/pw3270" prefix_auto="1" extension_auto="1" />
12   - <Option object_output=".obj/Debug/" />
  11 + <Option output=".bin\Debug\pw3270" prefix_auto="1" extension_auto="1" />
  12 + <Option object_output=".obj\Debug\" />
13 13 <Option type="0" />
14 14 <Option compiler="gcc" />
15 15 <Compiler>
... ... @@ -18,8 +18,8 @@
18 18 </Compiler>
19 19 </Target>
20 20 <Target title="Release">
21   - <Option output=".bin/Release/pw3270" prefix_auto="1" extension_auto="1" />
22   - <Option object_output=".obj/Release/" />
  21 + <Option output=".bin\Release\pw3270" prefix_auto="1" extension_auto="1" />
  22 + <Option object_output=".obj\Release\" />
23 23 <Option type="0" />
24 24 <Option compiler="gcc" />
25 25 <Compiler>
... ... @@ -33,7 +33,7 @@
33 33 <Compiler>
34 34 <Add option="-Wall" />
35 35 <Add option="`pkg-config gtk+-3.0 lib3270 --cflags`" />
36   - <Add directory="src/include" />
  36 + <Add directory="src\include" />
37 37 </Compiler>
38 38 <Linker>
39 39 <Add option="`pkg-config gtk+-3.0 lib3270 --libs`" />
... ... @@ -41,274 +41,276 @@
41 41 <Unit filename="Makefile.in" />
42 42 <Unit filename="configure.ac" />
43 43 <Unit filename="pw3270.spec.in" />
44   - <Unit filename="src/gtk/Makefile.in" />
45   - <Unit filename="src/gtk/actions.c">
  44 + <Unit filename="src\gtk\Makefile.in" />
  45 + <Unit filename="src\gtk\actions.c">
46 46 <Option compilerVar="CC" />
47 47 </Unit>
48   - <Unit filename="src/gtk/common/common.h" />
49   - <Unit filename="src/gtk/common/config.c">
  48 + <Unit filename="src\gtk\common\common.h" />
  49 + <Unit filename="src\gtk\common\config.c">
50 50 <Option compilerVar="CC" />
51 51 </Unit>
52   - <Unit filename="src/gtk/fonts.c">
  52 + <Unit filename="src\gtk\dialog.c">
53 53 <Option compilerVar="CC" />
54 54 </Unit>
55   - <Unit filename="src/gtk/globals.h" />
56   - <Unit filename="src/gtk/main.c">
  55 + <Unit filename="src\gtk\fonts.c">
57 56 <Option compilerVar="CC" />
58 57 </Unit>
59   - <Unit filename="src/gtk/mainwindow.c">
  58 + <Unit filename="src\gtk\globals.h" />
  59 + <Unit filename="src\gtk\main.c">
60 60 <Option compilerVar="CC" />
61 61 </Unit>
62   - <Unit filename="src/gtk/uiparser/Makefile.in" />
63   - <Unit filename="src/gtk/uiparser/accelerator.c">
  62 + <Unit filename="src\gtk\mainwindow.c">
64 63 <Option compilerVar="CC" />
65 64 </Unit>
66   - <Unit filename="src/gtk/uiparser/action.c">
  65 + <Unit filename="src\gtk\uiparser\Makefile.in" />
  66 + <Unit filename="src\gtk\uiparser\accelerator.c">
67 67 <Option compilerVar="CC" />
68 68 </Unit>
69   - <Unit filename="src/gtk/uiparser/menu.c">
  69 + <Unit filename="src\gtk\uiparser\action.c">
70 70 <Option compilerVar="CC" />
71 71 </Unit>
72   - <Unit filename="src/gtk/uiparser/menubar.c">
  72 + <Unit filename="src\gtk\uiparser\menu.c">
73 73 <Option compilerVar="CC" />
74 74 </Unit>
75   - <Unit filename="src/gtk/uiparser/menuitem.c">
  75 + <Unit filename="src\gtk\uiparser\menubar.c">
76 76 <Option compilerVar="CC" />
77 77 </Unit>
78   - <Unit filename="src/gtk/uiparser/parsefile.c">
  78 + <Unit filename="src\gtk\uiparser\menuitem.c">
79 79 <Option compilerVar="CC" />
80 80 </Unit>
81   - <Unit filename="src/gtk/uiparser/parser.c">
  81 + <Unit filename="src\gtk\uiparser\parsefile.c">
82 82 <Option compilerVar="CC" />
83 83 </Unit>
84   - <Unit filename="src/gtk/uiparser/parser.h" />
85   - <Unit filename="src/gtk/uiparser/popup.c">
  84 + <Unit filename="src\gtk\uiparser\parser.c">
86 85 <Option compilerVar="CC" />
87 86 </Unit>
88   - <Unit filename="src/gtk/uiparser/private.h" />
89   - <Unit filename="src/gtk/uiparser/script.c">
  87 + <Unit filename="src\gtk\uiparser\parser.h" />
  88 + <Unit filename="src\gtk\uiparser\popup.c">
90 89 <Option compilerVar="CC" />
91 90 </Unit>
92   - <Unit filename="src/gtk/uiparser/separator.c">
  91 + <Unit filename="src\gtk\uiparser\private.h" />
  92 + <Unit filename="src\gtk\uiparser\script.c">
93 93 <Option compilerVar="CC" />
94 94 </Unit>
95   - <Unit filename="src/gtk/uiparser/sources.mak" />
96   - <Unit filename="src/gtk/uiparser/toolbar.c">
  95 + <Unit filename="src\gtk\uiparser\separator.c">
97 96 <Option compilerVar="CC" />
98 97 </Unit>
99   - <Unit filename="src/gtk/uiparser/toolitem.c">
  98 + <Unit filename="src\gtk\uiparser\sources.mak" />
  99 + <Unit filename="src\gtk\uiparser\toolbar.c">
100 100 <Option compilerVar="CC" />
101 101 </Unit>
102   - <Unit filename="src/gtk/v3270/clipboard.c">
  102 + <Unit filename="src\gtk\uiparser\toolitem.c">
103 103 <Option compilerVar="CC" />
104 104 </Unit>
105   - <Unit filename="src/gtk/v3270/draw.c">
  105 + <Unit filename="src\gtk\v3270\clipboard.c">
106 106 <Option compilerVar="CC" />
107 107 </Unit>
108   - <Unit filename="src/gtk/v3270/genmarshal" />
109   - <Unit filename="src/gtk/v3270/iocallback.c">
  108 + <Unit filename="src\gtk\v3270\draw.c">
110 109 <Option compilerVar="CC" />
111 110 </Unit>
112   - <Unit filename="src/gtk/v3270/keyboard.c">
  111 + <Unit filename="src\gtk\v3270\genmarshal" />
  112 + <Unit filename="src\gtk\v3270\iocallback.c">
113 113 <Option compilerVar="CC" />
114 114 </Unit>
115   - <Unit filename="src/gtk/v3270/mouse.c">
  115 + <Unit filename="src\gtk\v3270\keyboard.c">
116 116 <Option compilerVar="CC" />
117 117 </Unit>
118   - <Unit filename="src/gtk/v3270/oia.c">
  118 + <Unit filename="src\gtk\v3270\mouse.c">
119 119 <Option compilerVar="CC" />
120 120 </Unit>
121   - <Unit filename="src/gtk/v3270/private.h" />
122   - <Unit filename="src/gtk/v3270/sources.mak" />
123   - <Unit filename="src/gtk/v3270/v3270.h" />
124   - <Unit filename="src/gtk/v3270/widget.c">
  121 + <Unit filename="src\gtk\v3270\oia.c">
125 122 <Option compilerVar="CC" />
126 123 </Unit>
127   - <Unit filename="src/include/lib3270.h" />
128   - <Unit filename="src/include/lib3270/action_table.h" />
129   - <Unit filename="src/include/lib3270/actions.h" />
130   - <Unit filename="src/include/lib3270/config.h.in" />
131   - <Unit filename="src/include/lib3270/log.h" />
132   - <Unit filename="src/include/lib3270/popup.h" />
133   - <Unit filename="src/include/lib3270/selection.h" />
134   - <Unit filename="src/include/lib3270/session.h" />
135   - <Unit filename="src/include/pw3270.h" />
136   - <Unit filename="src/include/rules.mak.in" />
137   - <Unit filename="src/lib3270/3270ds.h" />
138   - <Unit filename="src/lib3270/Makefile.in" />
139   - <Unit filename="src/lib3270/X11keysym.h" />
140   - <Unit filename="src/lib3270/XtGlue.c">
  124 + <Unit filename="src\gtk\v3270\private.h" />
  125 + <Unit filename="src\gtk\v3270\sources.mak" />
  126 + <Unit filename="src\gtk\v3270\v3270.h" />
  127 + <Unit filename="src\gtk\v3270\widget.c">
141 128 <Option compilerVar="CC" />
142 129 </Unit>
143   - <Unit filename="src/lib3270/actions.c">
  130 + <Unit filename="src\include\lib3270.h" />
  131 + <Unit filename="src\include\lib3270\action_table.h" />
  132 + <Unit filename="src\include\lib3270\actions.h" />
  133 + <Unit filename="src\include\lib3270\config.h.in" />
  134 + <Unit filename="src\include\lib3270\log.h" />
  135 + <Unit filename="src\include\lib3270\popup.h" />
  136 + <Unit filename="src\include\lib3270\selection.h" />
  137 + <Unit filename="src\include\lib3270\session.h" />
  138 + <Unit filename="src\include\pw3270.h" />
  139 + <Unit filename="src\include\rules.mak.in" />
  140 + <Unit filename="src\lib3270\3270ds.h" />
  141 + <Unit filename="src\lib3270\Makefile.in" />
  142 + <Unit filename="src\lib3270\X11keysym.h" />
  143 + <Unit filename="src\lib3270\XtGlue.c">
144 144 <Option compilerVar="CC" />
145 145 </Unit>
146   - <Unit filename="src/lib3270/actionsc.h" />
147   - <Unit filename="src/lib3270/ansi.c">
  146 + <Unit filename="src\lib3270\actions.c">
148 147 <Option compilerVar="CC" />
149 148 </Unit>
150   - <Unit filename="src/lib3270/ansic.h" />
151   - <Unit filename="src/lib3270/api.h" />
152   - <Unit filename="src/lib3270/apl.c">
  149 + <Unit filename="src\lib3270\actionsc.h" />
  150 + <Unit filename="src\lib3270\ansi.c">
153 151 <Option compilerVar="CC" />
154 152 </Unit>
155   - <Unit filename="src/lib3270/aplc.h" />
156   - <Unit filename="src/lib3270/appres.h" />
157   - <Unit filename="src/lib3270/arpa_telnet.h" />
158   - <Unit filename="src/lib3270/cg.h" />
159   - <Unit filename="src/lib3270/charset.c">
  153 + <Unit filename="src\lib3270\ansic.h" />
  154 + <Unit filename="src\lib3270\api.h" />
  155 + <Unit filename="src\lib3270\apl.c">
160 156 <Option compilerVar="CC" />
161 157 </Unit>
162   - <Unit filename="src/lib3270/charsetc.h" />
163   - <Unit filename="src/lib3270/childc.h" />
164   - <Unit filename="src/lib3270/ctlr.c">
  158 + <Unit filename="src\lib3270\aplc.h" />
  159 + <Unit filename="src\lib3270\appres.h" />
  160 + <Unit filename="src\lib3270\arpa_telnet.h" />
  161 + <Unit filename="src\lib3270\cg.h" />
  162 + <Unit filename="src\lib3270\charset.c">
165 163 <Option compilerVar="CC" />
166 164 </Unit>
167   - <Unit filename="src/lib3270/ctlr.h" />
168   - <Unit filename="src/lib3270/ctlrc.h" />
169   - <Unit filename="src/lib3270/dialogc.h" />
170   - <Unit filename="src/lib3270/fallbacks.c">
  165 + <Unit filename="src\lib3270\charsetc.h" />
  166 + <Unit filename="src\lib3270\childc.h" />
  167 + <Unit filename="src\lib3270\ctlr.c">
171 168 <Option compilerVar="CC" />
172 169 </Unit>
173   - <Unit filename="src/lib3270/ft.c">
  170 + <Unit filename="src\lib3270\ctlr.h" />
  171 + <Unit filename="src\lib3270\ctlrc.h" />
  172 + <Unit filename="src\lib3270\dialogc.h" />
  173 + <Unit filename="src\lib3270\fallbacks.c">
174 174 <Option compilerVar="CC" />
175 175 </Unit>
176   - <Unit filename="src/lib3270/ft_cut.c">
  176 + <Unit filename="src\lib3270\ft.c">
177 177 <Option compilerVar="CC" />
178 178 </Unit>
179   - <Unit filename="src/lib3270/ft_cut_ds.h" />
180   - <Unit filename="src/lib3270/ft_cutc.h" />
181   - <Unit filename="src/lib3270/ft_dft.c">
  179 + <Unit filename="src\lib3270\ft_cut.c">
182 180 <Option compilerVar="CC" />
183 181 </Unit>
184   - <Unit filename="src/lib3270/ft_dft_ds.h" />
185   - <Unit filename="src/lib3270/ft_dftc.h" />
186   - <Unit filename="src/lib3270/ftc.h" />
187   - <Unit filename="src/lib3270/globals.h" />
188   - <Unit filename="src/lib3270/glue.c">
  182 + <Unit filename="src\lib3270\ft_cut_ds.h" />
  183 + <Unit filename="src\lib3270\ft_cutc.h" />
  184 + <Unit filename="src\lib3270\ft_dft.c">
189 185 <Option compilerVar="CC" />
190 186 </Unit>
191   - <Unit filename="src/lib3270/gluec.h" />
192   - <Unit filename="src/lib3270/host.c">
  187 + <Unit filename="src\lib3270\ft_dft_ds.h" />
  188 + <Unit filename="src\lib3270\ft_dftc.h" />
  189 + <Unit filename="src\lib3270\ftc.h" />
  190 + <Unit filename="src\lib3270\globals.h" />
  191 + <Unit filename="src\lib3270\glue.c">
193 192 <Option compilerVar="CC" />
194 193 </Unit>
195   - <Unit filename="src/lib3270/hostc.h" />
196   - <Unit filename="src/lib3270/icmdc.h" />
197   - <Unit filename="src/lib3270/init.c">
  194 + <Unit filename="src\lib3270\gluec.h" />
  195 + <Unit filename="src\lib3270\host.c">
198 196 <Option compilerVar="CC" />
199 197 </Unit>
200   - <Unit filename="src/lib3270/keypadc.h" />
201   - <Unit filename="src/lib3270/kybd.c">
  198 + <Unit filename="src\lib3270\hostc.h" />
  199 + <Unit filename="src\lib3270\icmdc.h" />
  200 + <Unit filename="src\lib3270\init.c">
202 201 <Option compilerVar="CC" />
203 202 </Unit>
204   - <Unit filename="src/lib3270/kybdc.h" />
205   - <Unit filename="src/lib3270/localdefs.h" />
206   - <Unit filename="src/lib3270/log.c">
  203 + <Unit filename="src\lib3270\keypadc.h" />
  204 + <Unit filename="src\lib3270\kybd.c">
207 205 <Option compilerVar="CC" />
208 206 </Unit>
209   - <Unit filename="src/lib3270/macros.c">
  207 + <Unit filename="src\lib3270\kybdc.h" />
  208 + <Unit filename="src\lib3270\localdefs.h" />
  209 + <Unit filename="src\lib3270\log.c">
210 210 <Option compilerVar="CC" />
211 211 </Unit>
212   - <Unit filename="src/lib3270/mkfb.c">
  212 + <Unit filename="src\lib3270\macros.c">
213 213 <Option compilerVar="CC" />
214 214 </Unit>
215   - <Unit filename="src/lib3270/objects.h" />
216   - <Unit filename="src/lib3270/paste.c">
  215 + <Unit filename="src\lib3270\mkfb.c">
217 216 <Option compilerVar="CC" />
218 217 </Unit>
219   - <Unit filename="src/lib3270/popupsc.h" />
220   - <Unit filename="src/lib3270/print.c">
  218 + <Unit filename="src\lib3270\objects.h" />
  219 + <Unit filename="src\lib3270\paste.c">
221 220 <Option compilerVar="CC" />
222 221 </Unit>
223   - <Unit filename="src/lib3270/printc.h" />
224   - <Unit filename="src/lib3270/printer.c">
  222 + <Unit filename="src\lib3270\popupsc.h" />
  223 + <Unit filename="src\lib3270\print.c">
225 224 <Option compilerVar="CC" />
226 225 </Unit>
227   - <Unit filename="src/lib3270/printerc.h" />
228   - <Unit filename="src/lib3270/proxy.c">
  226 + <Unit filename="src\lib3270\printc.h" />
  227 + <Unit filename="src\lib3270\printer.c">
229 228 <Option compilerVar="CC" />
230 229 </Unit>
231   - <Unit filename="src/lib3270/proxyc.h" />
232   - <Unit filename="src/lib3270/resolver.c">
  230 + <Unit filename="src\lib3270\printerc.h" />
  231 + <Unit filename="src\lib3270\proxy.c">
233 232 <Option compilerVar="CC" />
234 233 </Unit>
235   - <Unit filename="src/lib3270/resolverc.h" />
236   - <Unit filename="src/lib3270/resources.c">
  234 + <Unit filename="src\lib3270\proxyc.h" />
  235 + <Unit filename="src\lib3270\resolver.c">
237 236 <Option compilerVar="CC" />
238 237 </Unit>
239   - <Unit filename="src/lib3270/resources.h" />
240   - <Unit filename="src/lib3270/rpq.c">
  238 + <Unit filename="src\lib3270\resolverc.h" />
  239 + <Unit filename="src\lib3270\resources.c">
241 240 <Option compilerVar="CC" />
242 241 </Unit>
243   - <Unit filename="src/lib3270/savec.h" />
244   - <Unit filename="src/lib3270/screen.c">
  242 + <Unit filename="src\lib3270\resources.h" />
  243 + <Unit filename="src\lib3270\rpq.c">
245 244 <Option compilerVar="CC" />
246 245 </Unit>
247   - <Unit filename="src/lib3270/screen.h" />
248   - <Unit filename="src/lib3270/screenc.h" />
249   - <Unit filename="src/lib3270/scrollc.h" />
250   - <Unit filename="src/lib3270/see.c">
  246 + <Unit filename="src\lib3270\savec.h" />
  247 + <Unit filename="src\lib3270\screen.c">
251 248 <Option compilerVar="CC" />
252 249 </Unit>
253   - <Unit filename="src/lib3270/seec.h" />
254   - <Unit filename="src/lib3270/selection.c">
  250 + <Unit filename="src\lib3270\screen.h" />
  251 + <Unit filename="src\lib3270\screenc.h" />
  252 + <Unit filename="src\lib3270\scrollc.h" />
  253 + <Unit filename="src\lib3270\see.c">
255 254 <Option compilerVar="CC" />
256 255 </Unit>
257   - <Unit filename="src/lib3270/sf.c">
  256 + <Unit filename="src\lib3270\seec.h" />
  257 + <Unit filename="src\lib3270\selection.c">
258 258 <Option compilerVar="CC" />
259 259 </Unit>
260   - <Unit filename="src/lib3270/sfc.h" />
261   - <Unit filename="src/lib3270/shlobj_missing.h" />
262   - <Unit filename="src/lib3270/statusc.h" />
263   - <Unit filename="src/lib3270/tables.c">
  260 + <Unit filename="src\lib3270\sf.c">
264 261 <Option compilerVar="CC" />
265 262 </Unit>
266   - <Unit filename="src/lib3270/tablesc.h" />
267   - <Unit filename="src/lib3270/telnet.c">
  263 + <Unit filename="src\lib3270\sfc.h" />
  264 + <Unit filename="src\lib3270\shlobj_missing.h" />
  265 + <Unit filename="src\lib3270\statusc.h" />
  266 + <Unit filename="src\lib3270\tables.c">
268 267 <Option compilerVar="CC" />
269 268 </Unit>
270   - <Unit filename="src/lib3270/telnetc.h" />
271   - <Unit filename="src/lib3270/testprogram.c">
  269 + <Unit filename="src\lib3270\tablesc.h" />
  270 + <Unit filename="src\lib3270\telnet.c">
272 271 <Option compilerVar="CC" />
273 272 </Unit>
274   - <Unit filename="src/lib3270/tn3270e.h" />
275   - <Unit filename="src/lib3270/toggle.h" />
276   - <Unit filename="src/lib3270/toggles.c">
  273 + <Unit filename="src\lib3270\telnetc.h" />
  274 + <Unit filename="src\lib3270\testprogram.c">
277 275 <Option compilerVar="CC" />
278 276 </Unit>
279   - <Unit filename="src/lib3270/togglesc.h" />
280   - <Unit filename="src/lib3270/trace_ds.c">
  277 + <Unit filename="src\lib3270\tn3270e.h" />
  278 + <Unit filename="src\lib3270\toggle.h" />
  279 + <Unit filename="src\lib3270\toggles.c">
281 280 <Option compilerVar="CC" />
282 281 </Unit>
283   - <Unit filename="src/lib3270/trace_dsc.h" />
284   - <Unit filename="src/lib3270/utf8.c">
  282 + <Unit filename="src\lib3270\togglesc.h" />
  283 + <Unit filename="src\lib3270\trace_ds.c">
285 284 <Option compilerVar="CC" />
286 285 </Unit>
287   - <Unit filename="src/lib3270/utf8c.h" />
288   - <Unit filename="src/lib3270/util.c">
  286 + <Unit filename="src\lib3270\trace_dsc.h" />
  287 + <Unit filename="src\lib3270\utf8.c">
289 288 <Option compilerVar="CC" />
290 289 </Unit>
291   - <Unit filename="src/lib3270/utilc.h" />
292   - <Unit filename="src/lib3270/version.c">
  290 + <Unit filename="src\lib3270\utf8c.h" />
  291 + <Unit filename="src\lib3270\util.c">
293 292 <Option compilerVar="CC" />
294 293 </Unit>
295   - <Unit filename="src/lib3270/w3misc.c">
  294 + <Unit filename="src\lib3270\utilc.h" />
  295 + <Unit filename="src\lib3270\version.c">
296 296 <Option compilerVar="CC" />
297 297 </Unit>
298   - <Unit filename="src/lib3270/w3miscc.h" />
299   - <Unit filename="src/lib3270/widec.h" />
300   - <Unit filename="src/lib3270/winvers.c">
  298 + <Unit filename="src\lib3270\w3misc.c">
301 299 <Option compilerVar="CC" />
302 300 </Unit>
303   - <Unit filename="src/lib3270/winversc.h" />
304   - <Unit filename="src/lib3270/xio.c">
  301 + <Unit filename="src\lib3270\w3miscc.h" />
  302 + <Unit filename="src\lib3270\widec.h" />
  303 + <Unit filename="src\lib3270\winvers.c">
305 304 <Option compilerVar="CC" />
306 305 </Unit>
307   - <Unit filename="src/lib3270/xioc.h" />
308   - <Unit filename="src/lib3270/xl.h" />
309   - <Unit filename="ui/00default.xml" />
310   - <Unit filename="ui/99debug.xml" />
311   - <Unit filename="valgrind.suppression" />
  306 + <Unit filename="src\lib3270\winversc.h" />
  307 + <Unit filename="src\lib3270\xio.c">
  308 + <Option compilerVar="CC" />
  309 + </Unit>
  310 + <Unit filename="src\lib3270\xioc.h" />
  311 + <Unit filename="src\lib3270\xl.h" />
  312 + <Unit filename="ui\00default.xml" />
  313 + <Unit filename="ui\99debug.xml" />
312 314 <Extensions>
313 315 <code_completion />
314 316 <debugger />
... ...
src/gtk/Makefile.in
... ... @@ -50,7 +50,7 @@ include uiparser/sources.mak
50 50  
51 51 #---[ Targets ]----------------------------------------------------------------
52 52  
53   -SOURCES=main.c mainwindow.c actions.c fonts.c \
  53 +SOURCES=main.c mainwindow.c actions.c fonts.c dialog.c \
54 54 $(foreach SRC, $(V3270_SRC), v3270/$(SRC)) \
55 55 $(foreach SRC, $(COMMON_SRC), common/$(SRC)) \
56 56 $(foreach SRC, $(UI_PARSER_SRC), uiparser/$(SRC))
... ...
src/gtk/actions.c
... ... @@ -48,8 +48,27 @@ static void lib3270_action(GtkAction *action, GtkWidget *widget)
48 48  
49 49 static void connect_action(GtkAction *action, GtkWidget *widget)
50 50 {
  51 + gchar *host = (gchar *) g_object_get_data(G_OBJECT(action),"host");
  52 + int f;
  53 +
51 54 trace("Action %s activated on widget %p",gtk_action_get_name(action),widget);
52   - v3270_connect(widget,g_object_get_data(G_OBJECT(action),"host"));
  55 +
  56 + if(host)
  57 + {
  58 + v3270_connect(widget,host);
  59 + return;
  60 + }
  61 +
  62 + host = get_string_from_config("host","uri","");
  63 + if(*host)
  64 + {
  65 + v3270_connect(widget,host);
  66 + g_free(host);
  67 + return;
  68 + }
  69 + g_free(host);
  70 +
  71 + hostname_action(action,widget);
53 72 }
54 73  
55 74 static void disconnect_action(GtkAction *action, GtkWidget *widget)
... ... @@ -88,11 +107,6 @@ static void paste_next_action(GtkAction *action, GtkWidget *widget)
88 107 lib3270_pastenext(GTK_V3270(widget)->host);
89 108 }
90 109  
91   -static void paste_file_action(GtkAction *action, GtkWidget *widget)
92   -{
93   - trace("Action %s activated on widget %p",gtk_action_get_name(action),widget);
94   -}
95   -
96 110 static void connect_standard_action(GtkAction *action, GtkWidget *widget, const gchar *name)
97 111 {
98 112 #undef DECLARE_LIB3270_ACTION
... ... @@ -128,6 +142,7 @@ static void connect_standard_action(GtkAction *action, GtkWidget *widget, const
128 142 { "connect", connect_action },
129 143 { "copy", copy_action },
130 144 { "disconnect", disconnect_action },
  145 + { "hostname", hostname_action }
131 146 };
132 147  
133 148 int f;
... ... @@ -307,10 +322,13 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
307 322 {
308 323 action_type = ACTION_TYPE_TOGGLE;
309 324 attr = ui_get_attribute("id",names,values);
310   - id = lib3270_get_toggle_id(attr);
  325 + if(!attr)
  326 + attr = ui_get_attribute("toggle",names,values);
  327 +
  328 + id = lib3270_get_toggle_id(attr);
311 329 if(id < 0)
312 330 {
313   - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("Toggle action needs a valid toggle id" ));
  331 + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs a valid toggle name" ), name);
314 332 return NULL;
315 333 }
316 334 nm = g_strconcat(name,attr,NULL);
... ... @@ -336,7 +354,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
336 354  
337 355 if(!attr)
338 356 {
339   - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("Paste action needs src attribute" ));
  357 + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs src attribute" ), name);
340 358 return NULL;
341 359 }
342 360 else
... ... @@ -367,7 +385,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
367 385 id = lib3270_get_toggle_id(attr);
368 386 if(id < 0)
369 387 {
370   - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("Set action needs a valid toggle name" ));
  388 + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs a valid toggle name" ), name);
371 389 return NULL;
372 390 }
373 391 nm = g_strconcat("set",attr,NULL);
... ... @@ -379,7 +397,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
379 397 id = lib3270_get_toggle_id(attr);
380 398 if(id < 0)
381 399 {
382   - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("Reset action needs a valid toggle name" ));
  400 + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs a valid toggle name" ), name);
383 401 return NULL;
384 402 }
385 403 nm = g_strconcat("reset",attr,NULL);
... ... @@ -390,7 +408,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
390 408 attr = ui_get_attribute("id",names,values);
391 409 if(!attr)
392 410 {
393   - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("pf action needs a valid id attribute" ));
  411 + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs a valid id attribute" ),name);
394 412 return NULL;
395 413 }
396 414 id = atoi(attr);
... ... @@ -402,7 +420,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
402 420 attr = ui_get_attribute("id",names,values);
403 421 if(!attr)
404 422 {
405   - *error = g_error_new(ERROR_DOMAIN,EINVAL,"%s",_("pf action needs a valid id attribute" ));
  423 + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs a valid id attribute" ),name);
406 424 return NULL;
407 425 }
408 426 id = atoi(attr);
... ... @@ -410,7 +428,8 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
410 428 }
411 429 else
412 430 {
413   - nm = g_strdup(name);
  431 + attr = ui_get_attribute("name",names,values);
  432 + nm = g_strdup(attr ? attr : name);
414 433 }
415 434  
416 435 // Check if action is available
... ... @@ -426,7 +445,7 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash
426 445 {
427 446 case ACTION_TYPE_DEFAULT:
428 447 action = gtk_action_new(nm,NULL,NULL,NULL);
429   - connect_standard_action(action,widget,nm);
  448 + connect_standard_action(action,widget,name);
430 449 break;
431 450  
432 451 case ACTION_TYPE_TOGGLE:
... ...
src/gtk/dialog.c 0 → 100644
... ... @@ -0,0 +1,150 @@
  1 +/*
  2 + * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
  3 + * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
  4 + * aplicativos mainframe. Registro no INPI sob o nome G3270.
  5 + *
  6 + * Copyright (C) <2008> <Banco do Brasil S.A.>
  7 + *
  8 + * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
  9 + * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
  10 + * Free Software Foundation.
  11 + *
  12 + * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
  13 + * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
  14 + * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
  15 + * obter mais detalhes.
  16 + *
  17 + * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
  18 + * programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple
  19 + * Place, Suite 330, Boston, MA, 02111-1307, USA
  20 + *
  21 + * Este programa está nomeado como dialog.c e possui - linhas de código.
  22 + *
  23 + * Contatos:
  24 + *
  25 + * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
  26 + * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
  27 + * licinio@bb.com.br (Licínio Luis Branco)
  28 + * kraucer@bb.com.br (Kraucer Fernandes Mazuco)
  29 + *
  30 + */
  31 +
  32 + #include "globals.h"
  33 + #include "v3270/v3270.h"
  34 +
  35 +/*--[ Implement ]------------------------------------------------------------------------------------*/
  36 +
  37 + void paste_file_action(GtkAction *action, GtkWidget *widget)
  38 + {
  39 + trace("Action %s activated on widget %p",gtk_action_get_name(action),widget);
  40 +
  41 + }
  42 +
  43 + void hostname_action(GtkAction *action, GtkWidget *widget)
  44 + {
  45 + const gchar * title = g_object_get_data(G_OBJECT(action),"title");
  46 + gchar * cfghost = get_string_from_config("host","uri","");
  47 + gchar * hostname;
  48 + gchar * ptr;
  49 + gboolean again = TRUE;
  50 + GtkTable * table = GTK_TABLE(gtk_table_new(2,4,FALSE));
  51 + GtkEntry * host = GTK_ENTRY(gtk_entry_new());
  52 + GtkEntry * port = GTK_ENTRY(gtk_entry_new());
  53 + GtkToggleButton * checkbox = GTK_TOGGLE_BUTTON(gtk_check_button_new_with_label( _( "Secure connection" ) ));
  54 + GtkWidget * dialog = gtk_dialog_new_with_buttons( gettext(title ? title : "Select hostname"),
  55 + GTK_WINDOW(gtk_widget_get_toplevel(widget)),
  56 + GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT,
  57 + GTK_STOCK_CONNECT, GTK_RESPONSE_ACCEPT,
  58 + GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT,
  59 + NULL );
  60 +
  61 + gtk_window_set_icon_name(GTK_WINDOW(dialog),GTK_STOCK_HOME);
  62 + gtk_entry_set_max_length(host,0xFF);
  63 + gtk_entry_set_width_chars(host,60);
  64 +
  65 + gtk_entry_set_max_length(port,6);
  66 + gtk_entry_set_width_chars(port,7);
  67 +
  68 + gtk_table_attach(table,gtk_label_new( _( "Hostname:" ) ), 0,1,0,1,0,0,5,0);
  69 + gtk_table_attach(table,GTK_WIDGET(host), 1,2,0,1,GTK_EXPAND|GTK_FILL,0,0,0);
  70 +
  71 + gtk_table_attach(table,gtk_label_new( _( "Port:" ) ), 2,3,0,1,0,0,5,0);
  72 + gtk_table_attach(table,GTK_WIDGET(port), 3,4,0,1,GTK_FILL,0,0,0);
  73 +
  74 + gtk_table_attach(table,GTK_WIDGET(checkbox), 1,2,1,2,GTK_EXPAND|GTK_FILL,0,0,0);
  75 +
  76 + gtk_container_set_border_width(GTK_CONTAINER(table),5);
  77 +
  78 + gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),GTK_WIDGET(table),FALSE,FALSE,2);
  79 +
  80 + hostname = cfghost;
  81 +
  82 +#ifdef HAVE_LIBSSL
  83 + if(!strncmp(hostname,"L:",2))
  84 + {
  85 + gtk_toggle_button_set_active(checkbox,TRUE);
  86 + hostname += 2;
  87 + }
  88 +#else
  89 + gtk_toggle_button_set_active(checkbox,FALSE);
  90 + gtk_widget_set_sensitive(GTK_WIDGET(checkbox),FALSE);
  91 + if(!strncmp(hostname,"L:",2))
  92 + hostname += 2;
  93 +#endif
  94 +
  95 + ptr = strchr(hostname,':');
  96 + if(ptr)
  97 + {
  98 + *(ptr++) = 0;
  99 + gtk_entry_set_text(port,ptr);
  100 + }
  101 + else
  102 + {
  103 + gtk_entry_set_text(port,"23");
  104 + }
  105 +
  106 + gtk_entry_set_text(host,hostname);
  107 +
  108 + gtk_widget_show_all(GTK_WIDGET(table));
  109 +
  110 + while(again)
  111 + {
  112 + gtk_widget_set_sensitive(dialog,TRUE);
  113 + switch(gtk_dialog_run(GTK_DIALOG(dialog)))
  114 + {
  115 + case GTK_RESPONSE_ACCEPT:
  116 +
  117 +/*
  118 + gtk_widget_set_sensitive(dialog,FALSE);
  119 +
  120 + if(gtk_toggle_button_get_active(checkbox))
  121 + strcpy(buffer,"L:");
  122 + else
  123 + *buffer = 0;
  124 +
  125 + strncat(buffer,gtk_entry_get_text(host),1023);
  126 + strncat(buffer,":",1023);
  127 + strncat(buffer,gtk_entry_get_text(port),1023);
  128 +
  129 + #warning Need more work
  130 + if(!host_connect(buffer,1))
  131 + {
  132 + // Connection OK
  133 + again = FALSE;
  134 + set_string_to_config("host","uri","%s",buffer);
  135 + SetString("Network","Hostname",buffer);
  136 + }
  137 +*/
  138 + break;
  139 +
  140 + case GTK_RESPONSE_REJECT:
  141 + again = FALSE;
  142 + break;
  143 + }
  144 + }
  145 +
  146 + gtk_widget_destroy(dialog);
  147 +
  148 + g_free(cfghost);
  149 + }
  150 +
... ...
src/gtk/globals.h
... ... @@ -56,6 +56,7 @@
56 56 GtkWidget * create_main_window(void);
57 57 void setup_font_list(GtkWidget *widget, GtkWidget *obj);
58 58  
59   -
60   -
  59 + // actions
  60 + void paste_file_action(GtkAction *action, GtkWidget *widget);
  61 + void hostname_action(GtkAction *action, GtkWidget *widget);
61 62  
... ...
src/gtk/v3270/widget.c
... ... @@ -874,8 +874,13 @@ int v3270_connect(GtkWidget *widget, const gchar *host)
874 874  
875 875 g_return_val_if_fail(GTK_IS_V3270(widget),EINVAL);
876 876  
  877 +
  878 +
877 879 terminal = GTK_V3270(widget);
878 880  
  881 + rc = lib3270_connect(terminal->host,host,0);
  882 +
  883 +/*
879 884 if(host)
880 885 {
881 886 set_string_to_config("host","uri","%s",host);
... ... @@ -892,7 +897,7 @@ int v3270_connect(GtkWidget *widget, const gchar *host)
892 897  
893 898 g_free(hs);
894 899 }
895   -
  900 +*/
896 901 trace("%s exits with rc=%d (%s)",__FUNCTION__,rc,strerror(rc));
897 902  
898 903 return rc;
... ...
ui/00default.xml
... ... @@ -78,9 +78,18 @@
78 78 <menu name='ScriptsMenu' label='Scripts' />
79 79  
80 80 <menu name='NetworkMenu' label='_Network' >
81   - <menuitem action='SetHostname' icon='home' group='offline' label='Set hostname' />
82   - <menuitem action='Connect' icon='connect' group='offline' label='_Connect' />
83   - <menuitem action='Disconnect' icon='disconnect' group='online' label='_Disconnect' />
  81 + <menuitem action='hostname' icon='home' group='offline' label='Set hostname' />
  82 +
  83 + <!--
  84 + If you want to connect to specific host use host='uri' to set it
  85 +
  86 + Examples:
  87 +
  88 + <menuitem name='IBMlink' action='connect' icon='connect' group='offline' label='IBMlink' host='ibmlink.advantis.com' />
  89 + <menuitem name='fandezhi' action='connect' icon='connect' group='offline' label='Fan DeZhi Mainframe System' host='fandezhi.efglobe.com:23' />
  90 + -->
  91 + <menuitem action='connect' icon='connect' group='offline' label='_Connect' />
  92 + <menuitem action='disconnect' icon='disconnect' group='online' label='_Disconnect' />
84 93 </menu>
85 94  
86 95 <menu name='SettingsMenu' label='Settings' sysmenu='yes' >
... ... @@ -89,7 +98,7 @@
89 98 <!--- Special action - The fontselect menu will be populated with all available monospaced fonts --->
90 99 <menuitem name='fontselect' icon='select-font' label='Select font' />
91 100  
92   - <!--- Special action - The Scrensize menu will be populate with the available screen sizes --->
  101 + <!--- Special action - The Scrensizes menu will be populate with the available screen sizes --->
93 102 <menuitem name='ScreenSizes' group='offline' label='Screen size' />
94 103  
95 104 <menu name='OptionsMenu' label='_Options' >
... ... @@ -129,8 +138,8 @@
129 138 <toolitem action='EraseInput' />
130 139  
131 140 <separator/>
132   - <toolitem action='Connect' />
133   - <toolitem action='Disconnect' />
  141 + <toolitem action='connect' />
  142 + <toolitem action='disconnect' />
134 143  
135 144 <separator/>
136 145 <toolitem action='set' toggle='fullscreen' icon='fullscreen' label='Full Screen' />
... ...