Commit dbf68604d34db028bb8cf4915fbf0a64a004a324
1 parent
b8dbd42c
Exists in
master
Incluindo novos métodos na API .NET
Showing
6 changed files
with
89 additions
and
3 deletions
Show diff stats
Makefile.in
src/native/get.cc
... | ... | @@ -61,3 +61,15 @@ |
61 | 61 | int tn3270_get_secure(h3270::session *ses) { |
62 | 62 | return (int) ses->get_secure(); |
63 | 63 | } |
64 | + | |
65 | + int tn3270_get_width(h3270::session *ses) { | |
66 | + return (int) ses->get_width(); | |
67 | + } | |
68 | + | |
69 | + int tn3270_get_height(h3270::session *ses) { | |
70 | + return (int) ses->get_height(); | |
71 | + } | |
72 | + | |
73 | + int tn3270_get_length(h3270::session *ses) { | |
74 | + return (int) ses->get_length(); | |
75 | +} | ... | ... |
src/native/private.h
... | ... | @@ -112,6 +112,9 @@ |
112 | 112 | DLL_PUBLIC int tn3270_pfkey(h3270::session *ses, int key); |
113 | 113 | DLL_PUBLIC int tn3270_pakey(h3270::session *ses, int key); |
114 | 114 | |
115 | + DLL_PUBLIC int tn3270_get_width(h3270::session *ses); | |
116 | + DLL_PUBLIC int tn3270_get_height(h3270::session *ses); | |
117 | + DLL_PUBLIC int tn3270_get_length(h3270::session *ses); | |
115 | 118 | } |
116 | 119 | |
117 | 120 | ... | ... |
src/pw3270-sharp/pw3270-sharp.cs
... | ... | @@ -66,6 +66,9 @@ namespace pw3270 { |
66 | 66 | extern static int tn3270_is_connected(IntPtr Session); |
67 | 67 | |
68 | 68 | [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] |
69 | + extern static int tn3270_is_ready(IntPtr Session); | |
70 | + | |
71 | + [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] | |
69 | 72 | extern static int tn3270_disconnect(IntPtr Session); |
70 | 73 | |
71 | 74 | [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] |
... | ... | @@ -116,6 +119,15 @@ namespace pw3270 { |
116 | 119 | [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] |
117 | 120 | extern static int tn3270_pakey(IntPtr Session, int key); |
118 | 121 | |
122 | + [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] | |
123 | + extern static int tn3270_get_width(IntPtr Session); | |
124 | + | |
125 | + [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] | |
126 | + extern static int tn3270_get_height(IntPtr Session); | |
127 | + | |
128 | + [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] | |
129 | + extern static int tn3270_get_length(IntPtr Session); | |
130 | + | |
119 | 131 | /// <summary> |
120 | 132 | /// Create a new session with lib3270/pw3270 |
121 | 133 | /// </summary> |
... | ... | @@ -148,6 +160,12 @@ namespace pw3270 { |
148 | 160 | return str.ToString(); |
149 | 161 | } |
150 | 162 | |
163 | + public string Version { | |
164 | + get { | |
165 | + return GetVersion(); | |
166 | + } | |
167 | + } | |
168 | + | |
151 | 169 | /// <summary> |
152 | 170 | /// Get lib3270/pw3270 Revision number |
153 | 171 | /// </summary> |
... | ... | @@ -162,6 +180,12 @@ namespace pw3270 { |
162 | 180 | return str.ToString(); |
163 | 181 | } |
164 | 182 | |
183 | + public string Revision { | |
184 | + get { | |
185 | + return GetRevision(); | |
186 | + } | |
187 | + } | |
188 | + | |
165 | 189 | /// <summary> |
166 | 190 | /// Connect to 3270 host. |
167 | 191 | /// </summary> |
... | ... | @@ -188,6 +212,22 @@ namespace pw3270 { |
188 | 212 | return tn3270_is_connected(hSession) != 0; |
189 | 213 | } |
190 | 214 | |
215 | + public bool Connected { | |
216 | + get { | |
217 | + return tn3270_is_connected(hSession) != 0; | |
218 | + } | |
219 | + } | |
220 | + | |
221 | + public bool IsReady() { | |
222 | + return tn3270_is_ready(hSession) != 0; | |
223 | + } | |
224 | + | |
225 | + public bool Ready { | |
226 | + get { | |
227 | + return tn3270_is_ready(hSession) != 0; | |
228 | + } | |
229 | + } | |
230 | + | |
191 | 231 | /// <summary> |
192 | 232 | /// Disconnect from 3270 host. |
193 | 233 | /// </summary> |
... | ... | @@ -365,7 +405,36 @@ namespace pw3270 { |
365 | 405 | return tn3270_pakey(hSession, key); |
366 | 406 | } |
367 | 407 | |
408 | + public int GetWidth() { | |
409 | + return tn3270_get_width(hSession); | |
410 | + } | |
411 | + | |
412 | + public int Width { | |
413 | + get { | |
414 | + return tn3270_get_width(hSession); | |
415 | + } | |
416 | + } | |
417 | + | |
418 | + public int GetHeight() { | |
419 | + return tn3270_get_height(hSession); | |
420 | + } | |
421 | + | |
422 | + public int Height { | |
423 | + get { | |
424 | + return tn3270_get_height(hSession); | |
425 | + } | |
426 | + } | |
368 | 427 | |
428 | + public int GetLength() { | |
429 | + return tn3270_get_length(hSession); | |
430 | + } | |
431 | + | |
432 | + public int Length { | |
433 | + get { | |
434 | + return tn3270_get_length(hSession); | |
435 | + } | |
436 | + } | |
437 | + | |
369 | 438 | } |
370 | 439 | |
371 | 440 | } | ... | ... |
testprograms/sample.cs
... | ... | @@ -35,11 +35,12 @@ class sample { |
35 | 35 | |
36 | 36 | pw3270.Session host = new pw3270.Session(""); |
37 | 37 | |
38 | - System.Console.WriteLine("Using pw3270 version " + host.GetVersion() + " revision " + host.GetRevision()); | |
38 | + System.Console.WriteLine("Using pw3270 version " + host.Version + " revision " + host.Revision); | |
39 | + System.Console.WriteLine("Screen size is " + host.Width + "x" + host.Height + " (" + host.Length + ")"); | |
39 | 40 | |
40 | 41 | host.Connect("tn3270://zos.efglobe.com:telnet",10); |
41 | 42 | |
42 | - if(host.IsConnected()) { | |
43 | + if(host.Connected) { | |
43 | 44 | |
44 | 45 | System.Console.WriteLine("Connected to host"); |
45 | 46 | ... | ... |
testprograms/vbsample.vb
... | ... | @@ -37,6 +37,7 @@ Public Module modmain |
37 | 37 | dim host as new pw3270.Session("") |
38 | 38 | |
39 | 39 | Console.WriteLine("Using pw3270 version " + host.getVersion() + " revision " + host.GetRevision()) |
40 | + Console.WriteLine("Screen size is " + host.GetWidth() + "x" + host.GetHeigth()) | |
40 | 41 | |
41 | 42 | host.Connect("tn3270://zos.efglobe.com:telnet",10) |
42 | 43 | ... | ... |