DBus-1-TQt
1.0
Loading...
Searching...
No Matches
tqdbusdataconverter.cpp
Go to the documentation of this file.
1
/* qdbusdataconverter.cpp TQT_DBusDataConverter template
2
*
3
* Copyright (C) 2007 Kevin Krammer <kevin.krammer@gmx.at>
4
*
5
* Licensed under the Academic Free License version 2.1
6
*
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; either version 2 of the License, or
10
* (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
20
* USA.
21
*
22
*/
23
24
#include "
tqdbusdataconverter.h
"
25
#include "
tqdbusdata.h
"
26
27
#include <tqpoint.h>
28
#include <tqrect.h>
29
#include <tqsize.h>
30
#include <tqvaluelist.h>
31
32
template
<>
33
TQT_DBusDataConverter::Result
TQT_DBusDataConverter::convertFromTQT_DBusData<TQRect>(
const
TQT_DBusData
& dbusData, TQRect& typeData)
34
{
35
if
(dbusData.
type
() !=
TQT_DBusData::Struct
)
return
InvalidSignature
;
36
37
TQValueList<TQT_DBusData>
members = dbusData.
toStruct
();
38
if
(members.count() != 4)
return
InvalidSignature
;
39
40
TQ_INT32 values[4];
41
42
TQValueList<TQT_DBusData>::const_iterator
it = members.begin();
43
TQValueList<TQT_DBusData>::const_iterator
endIt = members.end();
44
for
(uint i = 0; it != endIt; ++it, ++i)
45
{
46
bool
ok =
false
;
47
values[i] = (*it).toInt32(&ok);
48
if
(!ok)
return
InvalidSignature
;
49
}
50
51
typeData = TQRect(values[0], values[1], values[2], values[3]);
52
53
return
Success
;
54
}
55
56
template
<>
57
TQT_DBusDataConverter::Result
TQT_DBusDataConverter::convertToTQT_DBusData<TQRect>(
const
TQRect& typeData,
TQT_DBusData
& dbusData)
58
{
59
TQValueList<TQT_DBusData>
members;
60
61
members <<
TQT_DBusData::fromInt32
(typeData.x());
62
members <<
TQT_DBusData::fromInt32
(typeData.y());
63
members <<
TQT_DBusData::fromInt32
(typeData.width());
64
members <<
TQT_DBusData::fromInt32
(typeData.height());
65
66
dbusData =
TQT_DBusData::fromStruct
(members);
67
68
return
Success
;
69
}
70
71
template
<>
72
TQT_DBusDataConverter::Result
TQT_DBusDataConverter::convertFromTQT_DBusData<TQPoint>(
const
TQT_DBusData
& dbusData, TQPoint& typeData)
73
{
74
if
(dbusData.
type
() !=
TQT_DBusData::Struct
)
return
InvalidSignature
;
75
76
TQValueList<TQT_DBusData>
members = dbusData.
toStruct
();
77
if
(members.count() != 2)
return
InvalidSignature
;
78
79
TQ_INT32 values[2];
80
81
TQValueList<TQT_DBusData>::const_iterator
it = members.begin();
82
TQValueList<TQT_DBusData>::const_iterator
endIt = members.end();
83
for
(uint i = 0; it != endIt; ++it, ++i)
84
{
85
bool
ok =
false
;
86
values[i] = (*it).toInt32(&ok);
87
if
(!ok)
return
InvalidSignature
;
88
}
89
90
typeData = TQPoint(values[0], values[1]);
91
92
return
Success
;
93
}
94
95
template
<>
96
TQT_DBusDataConverter::Result
TQT_DBusDataConverter::convertToTQT_DBusData<TQPoint>(
const
TQPoint& typeData,
TQT_DBusData
& dbusData)
97
{
98
TQValueList<TQT_DBusData>
members;
99
100
members <<
TQT_DBusData::fromInt32
(typeData.x());
101
members <<
TQT_DBusData::fromInt32
(typeData.y());
102
103
dbusData =
TQT_DBusData::fromStruct
(members);
104
105
return
Success
;
106
}
107
108
template
<>
109
TQT_DBusDataConverter::Result
TQT_DBusDataConverter::convertFromTQT_DBusData<TQSize>(
const
TQT_DBusData
& dbusData, TQSize& typeData)
110
{
111
if
(dbusData.
type
() !=
TQT_DBusData::Struct
)
return
InvalidSignature
;
112
113
TQValueList<TQT_DBusData>
members = dbusData.
toStruct
();
114
if
(members.count() != 2)
return
InvalidSignature
;
115
116
TQ_INT32 values[2];
117
118
TQValueList<TQT_DBusData>::const_iterator
it = members.begin();
119
TQValueList<TQT_DBusData>::const_iterator
endIt = members.end();
120
for
(uint i = 0; it != endIt; ++it, ++i)
121
{
122
bool
ok =
false
;
123
values[i] = (*it).toInt32(&ok);
124
if
(!ok)
return
InvalidSignature
;
125
}
126
127
typeData = TQSize(values[0], values[1]);
128
129
return
Success
;
130
}
131
132
template
<>
133
TQT_DBusDataConverter::Result
TQT_DBusDataConverter::convertToTQT_DBusData<TQSize>(
const
TQSize& typeData,
TQT_DBusData
& dbusData)
134
{
135
TQValueList<TQT_DBusData>
members;
136
137
members <<
TQT_DBusData::fromInt32
(typeData.width());
138
members <<
TQT_DBusData::fromInt32
(typeData.height());
139
140
dbusData =
TQT_DBusData::fromStruct
(members);
141
142
return
Success
;
143
}
TQT_DBusDataConverter::Result
Result
Conversion result values.
Definition
tqdbusdataconverter.h:94
TQT_DBusDataConverter::Success
@ Success
Definition
tqdbusdataconverter.h:98
TQT_DBusDataConverter::InvalidSignature
@ InvalidSignature
Definition
tqdbusdataconverter.h:106
TQT_DBusData
Class for accurately representing D-Bus data types.
Definition
tqdbusdata.h:59
TQT_DBusData::type
Type type() const
Returns the Type of the data object.
Definition
tqdbusdata.cpp:317
TQT_DBusData::toStruct
TQValueList< TQT_DBusData > toStruct(bool *ok=0) const
Tries to get the encapsulated struct memberList.
Definition
tqdbusdata.cpp:698
TQT_DBusData::fromStruct
static TQT_DBusData fromStruct(const TQValueList< TQT_DBusData > &memberList)
Creates a data object for the given struct's memberList.
Definition
tqdbusdata.cpp:681
TQT_DBusData::fromInt32
static TQT_DBusData fromInt32(TQ_INT32 value)
Creates a data object for the given signed 32-bit integer value.
Definition
tqdbusdata.cpp:447
TQT_DBusData::Struct
@ Struct
Definition
tqdbusdata.h:236
TQValueList
Definition
tqdbusdata.h:37
tqdbusdata.h
tqdbusdataconverter.h
build
dbus-1-tqt-f5vmdh
dbus-1-tqt-14.1.5~pre1
src
tqdbusdataconverter.cpp
Generated by
1.9.8