From 6a18ddc5863b0954bc815611e2f7ccae8796f24f Mon Sep 17 00:00:00 2001 From: John Levon Date: Sun, 14 Jul 2002 02:04:19 +0000 Subject: [PATCH] make lyxserver work git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4633 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/frontends/qt2/ChangeLog | 5 ++++ src/frontends/qt2/Makefile.am | 1 + src/frontends/qt2/TODO | 1 - src/frontends/qt2/io_callback.h | 38 +++++++++++++++++++++++++++++++ src/frontends/qt2/lyx_gui.C | 4 +++- src/frontends/qt2/moc/Makefile.am | 3 ++- 6 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 src/frontends/qt2/io_callback.h diff --git a/src/frontends/qt2/ChangeLog b/src/frontends/qt2/ChangeLog index fe22899292..7df69e2473 100644 --- a/src/frontends/qt2/ChangeLog +++ b/src/frontends/qt2/ChangeLog @@ -1,3 +1,8 @@ +2002-07-14 John Levon + + * io_callback.h: + * lyx_gui.C: make set_read_callback() work + 2002-07-14 John Levon * lyx_gui.C: add set_read_callback() diff --git a/src/frontends/qt2/Makefile.am b/src/frontends/qt2/Makefile.am index 724446240f..cf9ad768f5 100644 --- a/src/frontends/qt2/Makefile.am +++ b/src/frontends/qt2/Makefile.am @@ -52,6 +52,7 @@ libqt2_la_SOURCES = \ emptytable.C \ emptytable.h \ guiapi.C \ + io_callback.h \ lengthcombo.C \ lengthcombo.h \ lyx_gui.C \ diff --git a/src/frontends/qt2/TODO b/src/frontends/qt2/TODO index 2a392ea9b1..c47ae8bae4 100644 --- a/src/frontends/qt2/TODO +++ b/src/frontends/qt2/TODO @@ -16,7 +16,6 @@ lyx_gui (qt) - move out lyxserver - do dpi - - implement set_read_callback Menubar_pimpl diff --git a/src/frontends/qt2/io_callback.h b/src/frontends/qt2/io_callback.h new file mode 100644 index 0000000000..097af0c1c9 --- /dev/null +++ b/src/frontends/qt2/io_callback.h @@ -0,0 +1,38 @@ +/** + * \file io_callback.h + * Copyright 2002 the LyX Team + * Read the file COPYING + * + * \author unknown + * \author John Levon + */ + +#ifndef IO_CALLBACK_H +#define IO_CALLBACK_H + +#include + +#include "lyxserver.h" + +#include + +class io_callback : public QObject { + Q_OBJECT +public: + io_callback(int fd, LyXComm * comm) + : comm_(comm) { + QSocketNotifier * sn = new QSocketNotifier(fd, + QSocketNotifier::Read, this); + connect(sn, SIGNAL(activated(int)), this, SLOT(data_received())); + } + +public slots: + void data_received() { + comm_->read_ready(); + } + +private: + LyXComm * comm_; +}; + +#endif // IO_CALLBACK_H diff --git a/src/frontends/qt2/lyx_gui.C b/src/frontends/qt2/lyx_gui.C index 385eff39ba..9a0eec71f2 100644 --- a/src/frontends/qt2/lyx_gui.C +++ b/src/frontends/qt2/lyx_gui.C @@ -38,6 +38,7 @@ #include "QtView.h" #include "QLImage.h" #include "qfont_loader.h" +#include "io_callback.h" #include @@ -146,5 +147,6 @@ bool lyx_gui::font_available(LyXFont const & font) void lyx_gui::set_read_callback(int fd, LyXComm * comm) { - // FIXME + // FIXME: "leak" + new io_callback(fd, comm); } diff --git a/src/frontends/qt2/moc/Makefile.am b/src/frontends/qt2/moc/Makefile.am index 4e06ce7689..954c6eafa8 100644 --- a/src/frontends/qt2/moc/Makefile.am +++ b/src/frontends/qt2/moc/Makefile.am @@ -25,9 +25,10 @@ nodist_libqt2moc_la_SOURCES = \ QContentPane_moc.C \ Qt2Base_moc.C \ QtView_moc.C \ + io_callback_moc.C \ $(MOCDIALOGS) libqt2moc.la: $(libqt2moc_la_OBJECTS) $(libqt2moc_la_DEPENDENCIES) - + %_moc.C: ../%.h $(MOC) -o $@ $< -- 2.39.2