Commit f6f4107149097fb2e8d294f80e34a9bee482cf84
1 parent
e2a66e58
Exists in
master
and in
5 other branches
Atualizando interface libreoffice
Showing
8 changed files
with
60 additions
and
18 deletions
Show diff stats
pw3270.cbp
| ... | ... | @@ -251,19 +251,27 @@ |
| 251 | 251 | <Unit filename="src/lib3270/winversc.h" /> |
| 252 | 252 | <Unit filename="src/lib3270/xioc.h" /> |
| 253 | 253 | <Unit filename="src/lib3270/xl.h" /> |
| 254 | + <Unit filename="src/loffice/Makefile.in" /> | |
| 255 | + <Unit filename="src/loffice/connect.cc" /> | |
| 256 | + <Unit filename="src/loffice/description.txt" /> | |
| 257 | + <Unit filename="src/loffice/description.xml" /> | |
| 258 | + <Unit filename="src/loffice/description.xml.in" /> | |
| 259 | + <Unit filename="src/loffice/get.cc" /> | |
| 260 | + <Unit filename="src/loffice/globals.hpp" /> | |
| 261 | + <Unit filename="src/loffice/info.cc" /> | |
| 262 | + <Unit filename="src/loffice/init.cc" /> | |
| 263 | + <Unit filename="src/loffice/manifest.xml" /> | |
| 264 | + <Unit filename="src/loffice/manifest.xml.in" /> | |
| 265 | + <Unit filename="src/loffice/pw3270.idl" /> | |
| 266 | + <Unit filename="src/loffice/service.cc" /> | |
| 267 | + <Unit filename="src/loffice/set.cc" /> | |
| 268 | + <Unit filename="src/loffice/testprogram.cc" /> | |
| 254 | 269 | <Unit filename="src/oxt/Makefile.in" /> |
| 255 | - <Unit filename="src/oxt/actions.cxx" /> | |
| 256 | - <Unit filename="src/oxt/connection.cxx" /> | |
| 257 | 270 | <Unit filename="src/oxt/description.txt" /> |
| 258 | 271 | <Unit filename="src/oxt/description.xml.in" /> |
| 259 | - <Unit filename="src/oxt/get.cxx" /> | |
| 260 | 272 | <Unit filename="src/oxt/globals.hpp" /> |
| 261 | - <Unit filename="src/oxt/local.cxx" /> | |
| 262 | - <Unit filename="src/oxt/main.cxx" /> | |
| 263 | 273 | <Unit filename="src/oxt/manifest.xml.in" /> |
| 264 | 274 | <Unit filename="src/oxt/pw3270.idl" /> |
| 265 | - <Unit filename="src/oxt/set.cxx" /> | |
| 266 | - <Unit filename="src/oxt/testprogram.cxx" /> | |
| 267 | 275 | <Unit filename="src/php/Makefile.in" /> |
| 268 | 276 | <Unit filename="src/php/get.cc" /> |
| 269 | 277 | <Unit filename="src/php/init.cc" /> | ... | ... |
src/include/pw3270/class.h
| ... | ... | @@ -134,8 +134,8 @@ |
| 134 | 134 | virtual string get_display_charset(void); |
| 135 | 135 | |
| 136 | 136 | // Connection & Network |
| 137 | - int connect(const char *host, time_t wait = 0); | |
| 138 | - int set_host(const char *host); | |
| 137 | + int connect(const char *host, time_t wait = 0); | |
| 138 | + int set_host(const char *host); | |
| 139 | 139 | virtual int connect(void) = 0; |
| 140 | 140 | virtual int set_url(const char *hostname) = 0; |
| 141 | 141 | virtual int disconnect(void) = 0; | ... | ... |
src/lib3270/connect.c
| ... | ... | @@ -82,9 +82,11 @@ static void net_connected(H3270 *hSession, int fd, LIB3270_IO_FLAG flag, void *d |
| 82 | 82 | int err; |
| 83 | 83 | socklen_t len = sizeof(err); |
| 84 | 84 | |
| 85 | - trace("%s write=%p",__FUNCTION__,hSession->ns_write_id); | |
| 86 | - lib3270_remove_poll(hSession->ns_write_id); | |
| 87 | - hSession->ns_write_id = NULL; | |
| 85 | + if(hSession->ns_write_id) { | |
| 86 | + trace("%s write=%p",__FUNCTION__,hSession->ns_write_id); | |
| 87 | + lib3270_remove_poll(hSession->ns_write_id); | |
| 88 | + hSession->ns_write_id = NULL; | |
| 89 | + } | |
| 88 | 90 | |
| 89 | 91 | if(getsockopt(hSession->sock, SOL_SOCKET, SO_ERROR, (char *) &err, &len) < 0) |
| 90 | 92 | { | ... | ... |
src/lib3270/iocalls.c
| ... | ... | @@ -628,6 +628,7 @@ void x_except_on(H3270 *h) |
| 628 | 628 | { |
| 629 | 629 | int reading = (h->ns_read_id != NULL); |
| 630 | 630 | |
| 631 | + debug("%s",__FUNCTION__); | |
| 631 | 632 | if(h->ns_exception_id) |
| 632 | 633 | return; |
| 633 | 634 | |
| ... | ... | @@ -638,6 +639,7 @@ void x_except_on(H3270 *h) |
| 638 | 639 | |
| 639 | 640 | if(reading) |
| 640 | 641 | h->ns_read_id = lib3270_add_poll_fd(h,h->sock,LIB3270_IO_FLAG_READ,net_input,0); |
| 642 | + debug("%s",__FUNCTION__); | |
| 641 | 643 | |
| 642 | 644 | } |
| 643 | 645 | ... | ... |
src/loffice/connect.cc
| ... | ... | @@ -37,16 +37,46 @@ |
| 37 | 37 | |
| 38 | 38 | using namespace pw3270_impl; |
| 39 | 39 | |
| 40 | - ::sal_Int16 SAL_CALL session_impl::Connect() throw (::com::sun::star::uno::RuntimeException) | |
| 40 | +/* | |
| 41 | +::sal_Int16 SAL_CALL session_impl::Reconnect() throw (::com::sun::star::uno::RuntimeException) | |
| 42 | + { | |
| 43 | + trace("%s: hSession=%p",__FUNCTION__,hSession); | |
| 44 | + | |
| 45 | + try | |
| 46 | + { | |
| 47 | + if(!hSession) | |
| 48 | + hSession = h3270::session::get_default(); | |
| 49 | + | |
| 50 | + return hSession->connect(); | |
| 51 | + | |
| 52 | + } catch(std::exception &e) | |
| 53 | + { | |
| 54 | + trace("%s failed: %s",__FUNCTION__,e.what()); | |
| 55 | + | |
| 56 | + OUString msg = OUString(e.what(),strlen(e.what()),RTL_TEXTENCODING_UTF8,RTL_TEXTTOUNICODE_FLAGS_UNDEFINED_IGNORE); | |
| 57 | + | |
| 58 | + throw css::uno::RuntimeException(msg,static_cast< cppu::OWeakObject * >(this)); | |
| 59 | + | |
| 60 | + } | |
| 61 | + | |
| 62 | + return -1; | |
| 63 | + | |
| 64 | + | |
| 65 | + } | |
| 66 | +*/ | |
| 67 | + | |
| 68 | + ::sal_Int16 SAL_CALL session_impl::Connect(const ::rtl::OUString& url, ::sal_Bool wait) throw (::com::sun::star::uno::RuntimeException) | |
| 41 | 69 | { |
| 42 | 70 | trace("%s: hSession=%p",__FUNCTION__,hSession); |
| 43 | 71 | |
| 72 | + OString vlr = rtl::OUStringToOString( url , RTL_TEXTENCODING_UNICODE ); | |
| 73 | + | |
| 44 | 74 | try |
| 45 | 75 | { |
| 46 | 76 | if(!hSession) |
| 47 | 77 | hSession = h3270::session::get_default(); |
| 48 | 78 | |
| 49 | - return hSession->connect(false); | |
| 79 | + return hSession->connect(vlr.getStr(),wait); | |
| 50 | 80 | |
| 51 | 81 | } catch(std::exception &e) |
| 52 | 82 | { | ... | ... |
src/loffice/globals.hpp
| ... | ... | @@ -105,8 +105,7 @@ |
| 105 | 105 | |
| 106 | 106 | virtual ::sal_Int16 SAL_CALL setSessionName( const ::rtl::OUString& name ) throw (::com::sun::star::uno::RuntimeException); |
| 107 | 107 | |
| 108 | - virtual ::sal_Int16 SAL_CALL setHost( const ::rtl::OUString& url ) throw (::com::sun::star::uno::RuntimeException); | |
| 109 | - virtual ::sal_Int16 SAL_CALL Connect() throw (::com::sun::star::uno::RuntimeException); | |
| 108 | + virtual ::sal_Int16 SAL_CALL Connect( const ::rtl::OUString& url, ::sal_Bool wait) throw (::com::sun::star::uno::RuntimeException); | |
| 110 | 109 | virtual ::sal_Int16 SAL_CALL Disconnect() throw (::com::sun::star::uno::RuntimeException); |
| 111 | 110 | |
| 112 | 111 | // State | ... | ... |
src/loffice/pw3270.idl
src/loffice/set.cc
| ... | ... | @@ -100,6 +100,7 @@ |
| 100 | 100 | |
| 101 | 101 | } |
| 102 | 102 | |
| 103 | +/* | |
| 103 | 104 | ::sal_Int16 SAL_CALL session_impl::setHost( const ::rtl::OUString& url ) throw (::com::sun::star::uno::RuntimeException) |
| 104 | 105 | { |
| 105 | 106 | if(!hSession) |
| ... | ... | @@ -122,6 +123,7 @@ |
| 122 | 123 | |
| 123 | 124 | return -1; |
| 124 | 125 | } |
| 126 | +*/ | |
| 125 | 127 | |
| 126 | 128 | ::sal_Int16 SAL_CALL session_impl::setTextAt( ::sal_Int16 row, ::sal_Int16 col, const ::rtl::OUString& str ) throw (::com::sun::star::uno::RuntimeException) |
| 127 | 129 | { | ... | ... |