File indexing completed on 2024-04-14 04:01:11

0001 /* This file is part of KsirK.
0002  *   Copyright (C) 2005-2007 Gael de Chalendar (aka Kleag) <kleag@free.fr>
0003  *
0004  *   KsirK is free software; you can redistribute it and/or
0005  *   modify it under the terms of the GNU General Public
0006  *   License as published by the Free Software Foundation, either version 2
0007    of the License, or (at your option) any later version.
0008  *
0009  *   This program is distributed in the hope that it will be useful,
0010  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
0011  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012  *   General Public License for more details.
0013  *
0014  *   You should have received a copy of the GNU General Public License
0015  *   along with this program; if not, write to the Free Software
0016  *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
0017  *   02110-1301, USA
0018  */
0019 #include "eventslistproperty.h"
0020 
0021 namespace Ksirk {
0022 
0023 namespace GameLogic {
0024 
0025 // EventsListProperty::EventsListProperty() : KGamePropertyList< QPair< QString, QPoint > >()
0026 EventsListProperty::EventsListProperty() : QList< QPair< QString, QPointF > >()
0027 {
0028 }
0029 
0030 
0031 EventsListProperty::~EventsListProperty()
0032 {
0033 }
0034 
0035 // void EventsListProperty::load(QDataStream& s)
0036 // {
0037 //   QValueList< QPair< QString, QPoint> > list;
0038 //   while (!s.atEnd())
0039 //   {
0040 //     QString str; QPoint p;
0041 //     s >> str >> p;
0042 //     list.push_back(qMakePair(str,p));
0043 //   }
0044 // //   setValue(list);
0045 // }
0046 
0047   /**
0048     * Write the value into a stream. MUST be overwritten
0049     **/
0050 // void EventsListProperty::save(QDataStream& s)
0051 // {
0052 //   QValueList< QPair< QString, QPoint> >::const_iterator it, it_end;
0053 //   it = value().begin(); it_end = value().end();
0054 //   for (; it != it_end; it++)
0055 //   {
0056 //     s << (*it).first << (*it).second;
0057 //   }
0058 // }
0059 
0060   /**
0061     * send a command to advanced properties like arrays
0062     * @param stream The stream containing the data of the comand
0063     * @param msgid The ID of the command - see PropertyCommandIds
0064     * @param isSender whether this client is also the sender of the command
0065     **/
0066 // void EventsListProperty::command(QDataStream &stream, int msgid, bool isSender)
0067 // {
0068 //   qCDebug(KSIRK_LOG) << "EventsListProperty::command ";
0069 //   
0070 //   QString commandName;
0071 //   stream >> commandName;
0072 //   
0073 //   qCDebug(KSIRK_LOG) << "    command name is " << commandName ;
0074 //   if (commandName == "pop_front")
0075 //   {
0076 //     QValueList< QPair< QString, QPoint> > list = value();
0077 //     list.pop_front();
0078 //     setValue(list);
0079 //   }
0080 //   else if (commandName == "push_back")
0081 //   {
0082 //     QString str; QPoint point;
0083 //     stream >> str >> point;
0084 //     QValueList< QPair< QString, QPoint> > list = value();
0085 //     list.push_back(qMakePair(str,point));
0086 //     setValue(list);
0087 //   }
0088 // }
0089 
0090 void EventsListProperty::pop_front()
0091 {
0092 //   qCDebug(KSIRK_LOG) << "EventsListProperty::pop_front ";
0093 QList< QPair< QString, QPointF > >::pop_front();
0094 /*  if (!isEmpty())
0095   {
0096     EventsListProperty::iterator it = begin();
0097     remove(it);
0098   }*/
0099 //   QByteArray buffer;
0100 /*  QDataStream stream(buffer, QIODevice::ReadWrite);
0101   stream << QString("pop_front");
0102   command(stream, 1,true);*/
0103 }
0104 
0105 void EventsListProperty::push_back(const QPair<QString, QPointF>& pair)
0106 {
0107 //   qCDebug(KSIRK_LOG) << "EventsListProperty::push_back " << pair.first << " / " << pair.second ;
0108 QList< QPair< QString, QPointF > >::push_back(pair);
0109 //   append(pair);
0110 //   QByteArray buffer;
0111 /*  QDataStream stream(buffer, QIODevice::ReadWrite);
0112   qCDebug(KSIRK_LOG) << "1";
0113   stream << QString("push_back");
0114   qCDebug(KSIRK_LOG) << "2";
0115   stream << pair.first;
0116   qCDebug(KSIRK_LOG) << "3";
0117   stream << pair.second;
0118   qCDebug(KSIRK_LOG) << "4";
0119   command(stream, 2, true);*/
0120 }
0121 
0122 }
0123 
0124 }