• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdegames API Reference
  • KDE Home
  • Contact Us
 

libkdegames/libkdegamesprivate/kgame

  • sources
  • kde-4.14
  • kdegames
  • libkdegames
  • libkdegamesprivate
  • kgame
kgameerror.cpp
Go to the documentation of this file.
1 /*
2  This file is part of the KDE games library
3  Copyright (C) 2001 Andreas Beckermann (b_mann@gmx.de)
4  Copyright (C) 2001 Martin Heni (kde at heni-online.de)
5 
6  This library is free software; you can redistribute it and/or
7  modify it under the terms of the GNU Library General Public
8  License version 2 as published by the Free Software Foundation.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Library General Public License for more details.
14 
15  You should have received a copy of the GNU Library General Public License
16  along with this library; see the file COPYING.LIB. If not, write to
17  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  Boston, MA 02110-1301, USA.
19 */
20 
21 #include "kgameerror.h"
22 #include "kgamemessage.h"
23 
24 #include <klocale.h>
25 
26 QByteArray KGameError::errVersion(int remoteVersion)
27 {
28  QByteArray b;
29  QDataStream s(&b, QIODevice::WriteOnly);
30  s << (qint32)KGameMessage::version();
31  s << (qint32)remoteVersion;
32  return b;
33 }
34 
35 QByteArray KGameError::errCookie(int localCookie, int remoteCookie)
36 {
37  QByteArray b;
38  QDataStream s(&b, QIODevice::WriteOnly);
39  s << (qint32)localCookie;
40  s << (qint32)remoteCookie;
41  return b;
42 }
43 
44 QString KGameError::errorText(int errorCode, const QByteArray& message)
45 {
46  QDataStream s(message);
47  return errorText(errorCode, s);
48 }
49 
50 QString KGameError::errorText(int errorCode, QDataStream& s)
51 {
52  QString text;
53  switch (errorCode) {
54  case Cookie:
55  {
56  qint32 cookie1;
57  qint32 cookie2;
58  s >> cookie1;
59  s >> cookie2;
60  text = i18n("Cookie mismatch!\nExpected Cookie: %1\nReceived Cookie: %2", cookie1, cookie2);
61  break;
62  }
63  case Version:
64  {
65  qint32 version1;
66  qint32 version2;
67  s >> version1;
68  s >> version2;
69  text = i18n("KGame Version mismatch!\nExpected Version: %1\nReceived Version: %2\n", version1, version2);
70  break;
71  }
72  default:
73  text = i18n("Unknown error code %1", errorCode);
74  }
75  return text;
76 }
77 
KGameError::Cookie
Definition: kgameerror.h:36
KGameError::errCookie
static QByteArray errCookie(int localCookie, int remoteCookie)
Generate an error message with Erorr Code = ErrCookie.
Definition: kgameerror.cpp:35
QByteArray
QDataStream
KGameError::Version
Definition: kgameerror.h:37
KGameError::errorText
static QString errorText(int errorCode, QDataStream &message)
Create an erorr text using a QDataStream (QByteArray) which was created using KGameError.
Definition: kgameerror.cpp:50
KGameError::errVersion
static QByteArray errVersion(int remoteVersion)
Definition: kgameerror.cpp:26
QString
kgamemessage.h
kgameerror.h
KGameMessage::version
static int version()
Definition: kgamemessage.cpp:100
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:18:54 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

libkdegames/libkdegamesprivate/kgame

Skip menu "libkdegames/libkdegamesprivate/kgame"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdegames API Reference

Skip menu "kdegames API Reference"
  • granatier
  • kapman
  • kblackbox
  • kgoldrunner
  • kigo
  • kmahjongg
  • KShisen
  • ksquares
  • libkdegames
  •   highscore
  •   libkdegamesprivate
  •     kgame
  • libkmahjongg
  • palapeli
  •   libpala

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal