-rw-r--r-- | noncore/graphics/opie-eye/slave/slavereciever.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/noncore/graphics/opie-eye/slave/slavereciever.cpp b/noncore/graphics/opie-eye/slave/slavereciever.cpp index fb88873..941a5df 100644 --- a/noncore/graphics/opie-eye/slave/slavereciever.cpp +++ b/noncore/graphics/opie-eye/slave/slavereciever.cpp | |||
@@ -28,33 +28,33 @@ QDataStream & operator >> (QDataStream & str, bool & b) | |||
28 | str >> l; | 28 | str >> l; |
29 | b = bool(l); | 29 | b = bool(l); |
30 | return str; | 30 | return str; |
31 | } | 31 | } |
32 | 32 | ||
33 | 33 | ||
34 | 34 | ||
35 | QDataStream &operator<<( QDataStream& s, const PixmapInfo& inf) { | 35 | QDataStream &operator<<( QDataStream& s, const PixmapInfo& inf) { |
36 | return s << inf.file << inf.pixmap << inf.width << inf.height; | 36 | return s << inf.file << inf.pixmap << inf.width << inf.height; |
37 | } | 37 | } |
38 | 38 | ||
39 | /* | 39 | /* |
40 | * GUI sends no QPIxmap!!! | 40 | * GUI sends no QPIxmap!!! |
41 | */ | 41 | */ |
42 | QDataStream &operator>>( QDataStream& s, PixmapInfo& inf ) { | 42 | QDataStream &operator>>( QDataStream& s, PixmapInfo& inf ) { |
43 | s >> inf.file >> inf.width >> inf.height; | 43 | s >> inf.file >> inf.width >> inf.height; |
44 | owarn << "Recieved " << inf.file.latin1() << " " << inf.width << " " << inf.height << "" << oendl; | 44 | owarn << "Recieved " << inf.file.latin1() << " " << inf.width << " " << inf.height << "" << oendl; |
45 | return s; | 45 | return s; |
46 | } | 46 | } |
47 | QDataStream &operator<<( QDataStream& s, const ImageInfo& i) { | 47 | QDataStream &operator<<( QDataStream& s, const ImageInfo& i) { |
48 | return s << i.kind << i.file << i.info; | 48 | return s << i.kind << i.file << i.info; |
49 | } | 49 | } |
50 | QDataStream &operator>>( QDataStream& s, ImageInfo& i ) { | 50 | QDataStream &operator>>( QDataStream& s, ImageInfo& i ) { |
51 | s >> i.kind >> i.file >> i.info; | 51 | s >> i.kind >> i.file >> i.info; |
52 | return s; | 52 | return s; |
53 | } | 53 | } |
54 | 54 | ||
55 | 55 | ||
56 | 56 | ||
57 | SlaveObjects* slaveObjects() { | 57 | SlaveObjects* slaveObjects() { |
58 | if ( !_slaveObj ) | 58 | if ( !_slaveObj ) |
59 | _slaveObj = new SlaveObjects; | 59 | _slaveObj = new SlaveObjects; |
60 | return _slaveObj; | 60 | return _slaveObj; |
@@ -73,68 +73,70 @@ SlaveReciever::SlaveReciever( QObject* par) | |||
73 | m_out = new QTimer(this); | 73 | m_out = new QTimer(this); |
74 | connect(m_out,SIGNAL(timeout()), | 74 | connect(m_out,SIGNAL(timeout()), |
75 | this, SLOT(slotSend())); | 75 | this, SLOT(slotSend())); |
76 | 76 | ||
77 | SlaveObjects *obj = slaveObjects(); // won't be changed | 77 | SlaveObjects *obj = slaveObjects(); // won't be changed |
78 | SlaveMap::Iterator it; | 78 | SlaveMap::Iterator it; |
79 | SlaveMap* map = slaveMap(); // SlaveMap won't be changed during execution!!! | 79 | SlaveMap* map = slaveMap(); // SlaveMap won't be changed during execution!!! |
80 | for(it = map->begin(); it != map->end(); ++it ) { | 80 | for(it = map->begin(); it != map->end(); ++it ) { |
81 | obj->insert( it.key(), (*it.data())() ); | 81 | obj->insert( it.key(), (*it.data())() ); |
82 | } | 82 | } |
83 | } | 83 | } |
84 | 84 | ||
85 | SlaveReciever::~SlaveReciever() { | 85 | SlaveReciever::~SlaveReciever() { |
86 | } | 86 | } |
87 | 87 | ||
88 | void SlaveReciever::recieveAnswer( const QCString& string, const QByteArray& ar) { | 88 | void SlaveReciever::recieveAnswer( const QCString& string, const QByteArray& ar) { |
89 | owarn << "String is " << string.data() << "" << oendl; | 89 | owarn << "String is " << string.data() << "" << oendl; |
90 | QDataStream stream(ar, IO_ReadOnly ); | 90 | QDataStream stream(ar, IO_ReadOnly ); |
91 | QStringList lst; | 91 | QStringList lst; |
92 | static ImageInfo inf; | 92 | static ImageInfo inf; |
93 | static PixmapInfo pix; | 93 | static PixmapInfo pix; |
94 | 94 | ||
95 | if ( string == "thumbInfo(QString)" ) { | 95 | if ( string == "thumbInfo(QString)" ) { |
96 | stream >> inf.file; | 96 | stream >> inf.file; |
97 | inf.kind = false; | ||
97 | m_inList.append(inf); | 98 | m_inList.append(inf); |
98 | }else if ( string == "thumbInfos(QStringList)" ) { | 99 | }else if ( string == "thumbInfos(QStringList)" ) { |
99 | stream >> lst; | 100 | stream >> lst; |
100 | for(QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) { | 101 | for(QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) { |
101 | owarn << "Adding thumbinfo for file "+ *it << oendl; | 102 | owarn << "Adding thumbinfo for file "+ *it << oendl; |
102 | inf.file = (*it); | 103 | inf.file = (*it); |
104 | inf.kind = false; | ||
103 | m_inList.append(inf); | 105 | m_inList.append(inf); |
104 | } | 106 | } |
105 | }else if ( string == "fullInfo(QString)" ) { | 107 | }else if ( string == "fullInfo(QString)" ) { |
106 | inf.kind = true; | 108 | inf.kind = true; |
107 | stream >> inf.file; | 109 | stream >> inf.file; |
108 | m_inList.append(inf); | 110 | m_inList.append(inf); |
109 | }else if ( string == "fullInfos(QStringList)" ) { | 111 | }else if ( string == "fullInfos(QStringList)" ) { |
110 | stream >> lst; | 112 | stream >> lst; |
111 | for(QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) { | 113 | for(QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) { |
112 | owarn << "Adding fullInfo for"+ *it << oendl; | 114 | owarn << "Adding fullInfo for"+ *it << oendl; |
113 | inf.file = (*it); | 115 | inf.file = (*it); |
114 | inf.kind = true; | 116 | inf.kind = true; |
115 | m_inList.append(inf); | 117 | m_inList.append(inf); |
116 | } | 118 | } |
117 | }else if ( string == "pixmapInfo(QString,int,int)" ) { | 119 | }else if ( string == "pixmapInfo(QString,int,int)" ) { |
118 | stream >> pix.file >> pix.width >> pix.height; | 120 | stream >> pix.file >> pix.width >> pix.height; |
119 | m_inPix.append(pix); | 121 | m_inPix.append(pix); |
120 | }else if ( string == "pixmapInfos(PixmapInfos)" ) { | 122 | }else if ( string == "pixmapInfos(PixmapInfos)" ) { |
121 | PixmapList list; | 123 | PixmapList list; |
122 | stream >> list; | 124 | stream >> list; |
123 | for(PixmapList::Iterator it = list.begin(); it != list.end(); ++it ) { | 125 | for(PixmapList::Iterator it = list.begin(); it != list.end(); ++it ) { |
124 | owarn << "Got " << (*it).width << " " << (*it).height << " " + (*it).file << oendl; | 126 | owarn << "Got " << (*it).width << " " << (*it).height << " " + (*it).file << oendl; |
125 | m_inPix.append(*it); | 127 | m_inPix.append(*it); |
126 | } | 128 | } |
127 | }else if ( string == "refUp()" ) { | 129 | }else if ( string == "refUp()" ) { |
128 | m_refs++; | 130 | m_refs++; |
129 | }else if ( string == "refDown()" ) { | 131 | }else if ( string == "refDown()" ) { |
130 | m_refs--; | 132 | m_refs--; |
131 | } | 133 | } |
132 | 134 | ||
133 | if (!m_inf->isActive() && !m_inList.isEmpty() ) | 135 | if (!m_inf->isActive() && !m_inList.isEmpty() ) |
134 | m_inf->start(5); | 136 | m_inf->start(5); |
135 | 137 | ||
136 | if (!m_pix->isActive() && !m_inPix.isEmpty() ) | 138 | if (!m_pix->isActive() && !m_inPix.isEmpty() ) |
137 | m_pix->start(5); | 139 | m_pix->start(5); |
138 | 140 | ||
139 | if ( m_refs ) | 141 | if ( m_refs ) |
140 | QPEApplication::setKeepRunning(); | 142 | QPEApplication::setKeepRunning(); |
@@ -197,40 +199,40 @@ void SlaveReciever::slotThumbNail() { | |||
197 | break; | 199 | break; |
198 | } | 200 | } |
199 | } | 201 | } |
200 | 202 | ||
201 | 203 | ||
202 | 204 | ||
203 | if(m_inPix.isEmpty() ) | 205 | if(m_inPix.isEmpty() ) |
204 | m_pix->stop(); | 206 | m_pix->stop(); |
205 | if(!m_out->isActive() && !m_outPix.isEmpty() ) | 207 | if(!m_out->isActive() && !m_outPix.isEmpty() ) |
206 | m_out->start(100); | 208 | m_out->start(100); |
207 | } | 209 | } |
208 | 210 | ||
209 | void SlaveReciever::slotSend() { | 211 | void SlaveReciever::slotSend() { |
210 | 212 | ||
211 | m_out->stop(); | 213 | m_out->stop(); |
212 | 214 | ||
213 | owarn << "Sending " << outPix().count() << " " << outInf().count() << "" << oendl; | 215 | owarn << "Sending " << outPix().count() << " " << outInf().count() << "" << oendl; |
214 | /* queue it and send */ | 216 | /* queue it and send */ |
215 | /* if this ever gets a service introduce request queues | 217 | /* if this ever gets a service introduce request queues |
216 | * so we can differinatate between different clients | 218 | * so we can differinatate between different clients |
217 | */ | 219 | */ |
218 | if (! m_outPix.isEmpty() ) { | 220 | if (! m_outPix.isEmpty() ) { |
219 | QCopEnvelope answer("QPE/opie-eye", "pixmapsHandled(PixmapList)" ); | 221 | QCopEnvelope answer("QPE/opie-eye", "pixmapsHandled(PixmapList)" ); |
220 | answer << outPix(); | 222 | answer << outPix(); |
221 | for ( PixmapList::Iterator it = m_outPix.begin();it!=m_outPix.end();++it ) { | 223 | for ( PixmapList::Iterator it = m_outPix.begin();it!=m_outPix.end();++it ) { |
222 | owarn << "Sending out " << (*it).file.latin1() << " " << (*it).width << " " << (*it).height << "" << oendl; | 224 | owarn << "Sending out " << (*it).file.latin1() << " " << (*it).width << " " << (*it).height << "" << oendl; |
223 | } | 225 | } |
224 | } | 226 | } |
225 | if ( !m_outList.isEmpty() ) { | 227 | if ( !m_outList.isEmpty() ) { |
226 | QCopEnvelope answer("QPE/opie-eye", "pixmapsHandled(StringList)" ); | 228 | QCopEnvelope answer("QPE/opie-eye", "pixmapsHandled(StringList)" ); |
227 | answer << outInf(); | 229 | answer << outInf(); |
228 | for ( StringList::Iterator it = m_outList.begin();it!=m_outList.end();++it ) { | 230 | for ( StringList::Iterator it = m_outList.begin();it!=m_outList.end();++it ) { |
229 | owarn << "Sending out2 " + (*it).file << oendl; | 231 | owarn << "Sending out2 " + (*it).file << oendl; |
230 | } | 232 | } |
231 | } | 233 | } |
232 | 234 | ||
233 | m_outList.clear(); | 235 | m_outList.clear(); |
234 | m_outPix.clear(); | 236 | m_outPix.clear(); |
235 | } | 237 | } |
236 | 238 | ||