Line data Source code
1 : /* This Source Code Form is subject to the terms of the Mozilla Public
2 : * License, v. 2.0. If a copy of the MPL was not distributed with this
3 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4 :
5 : #ifndef mozilla_WidgetMessageUtils_h
6 : #define mozilla_WidgetMessageUtils_h
7 :
8 : #include "ipc/IPCMessageUtils.h"
9 : #include "mozilla/LookAndFeel.h"
10 :
11 : namespace IPC {
12 :
13 : template<>
14 : struct ParamTraits<LookAndFeelInt>
15 : {
16 : typedef LookAndFeelInt paramType;
17 :
18 0 : static void Write(Message* aMsg, const paramType& aParam)
19 : {
20 0 : WriteParam(aMsg, aParam.id);
21 0 : WriteParam(aMsg, aParam.value);
22 0 : }
23 :
24 0 : static bool Read(const Message* aMsg, PickleIterator* aIter, paramType* aResult)
25 : {
26 : int32_t id, value;
27 0 : if (ReadParam(aMsg, aIter, &id) &&
28 0 : ReadParam(aMsg, aIter, &value)) {
29 0 : aResult->id = id;
30 0 : aResult->value = value;
31 0 : return true;
32 : }
33 0 : return false;
34 : }
35 : };
36 :
37 : } // namespace IPC
38 :
39 : #endif // WidgetMessageUtils_h
|