|
From: <cn...@us...> - 2020-10-25 00:19:44
|
Revision: 1059
http://sourceforge.net/p/seq/svn/1059
Author: cn187
Date: 2020-10-25 00:19:36 +0000 (Sun, 25 Oct 2020)
Log Message:
-----------
Replace Q3AsciiDict with QHash
Modified Paths:
--------------
showeq/branches/pre_6_0_beta/src/map.cpp
showeq/branches/pre_6_0_beta/src/packetinfo.cpp
showeq/branches/pre_6_0_beta/src/packetinfo.h
showeq/branches/pre_6_0_beta/src/spawnmonitor.cpp
showeq/branches/pre_6_0_beta/src/spawnmonitor.h
showeq/branches/pre_6_0_beta/src/spawnpointlist.cpp
Modified: showeq/branches/pre_6_0_beta/src/map.cpp
===================================================================
--- showeq/branches/pre_6_0_beta/src/map.cpp 2020-10-24 21:10:38 UTC (rev 1058)
+++ showeq/branches/pre_6_0_beta/src/map.cpp 2020-10-25 00:19:36 UTC (rev 1059)
@@ -4057,15 +4057,16 @@
return;
// get an iterator over the list of spawn points
- Q3AsciiDictIterator<SpawnPoint> it( m_spawnMonitor->spawnPoints() );
+ QHashIterator<QString, SpawnPoint*> it(m_spawnMonitor->spawnPoints());
const SpawnPoint* sp;
const MapIcon& mapIcon = m_mapIcons->icon(tIconTypeSpawnPoint);
// iterate over the list of spawn points
- while ((sp = it.current()))
+ while (it.hasNext())
{
- ++it;
+ it.next();
+ sp = it.value();
// make sure spawn point is within bounds
if (!inRect(screenBounds, sp->x(), sp->y()) ||
@@ -4470,12 +4471,13 @@
uint32_t distance;
EQPoint testPoint;
- Q3AsciiDictIterator<SpawnPoint> it(m_spawnMonitor->spawnPoints());
+ QHashIterator<QString, SpawnPoint*> it(m_spawnMonitor->spawnPoints());
SpawnPoint* sp;
- while ((sp = it.current()))
+ while (it.hasNext())
{
- ++it;
+ it.next();
+ sp = it.value();
if (m_spawnDepthFilter &&
((sp->z() > m_param.playerHeadRoom()) ||
Modified: showeq/branches/pre_6_0_beta/src/packetinfo.cpp
===================================================================
--- showeq/branches/pre_6_0_beta/src/packetinfo.cpp 2020-10-24 21:10:38 UTC (rev 1058)
+++ showeq/branches/pre_6_0_beta/src/packetinfo.cpp 2020-10-25 00:19:36 UTC (rev 1059)
@@ -78,10 +78,8 @@
//----------------------------------------------------------------------
// EQPacketTypeDB
EQPacketTypeDB::EQPacketTypeDB()
- : m_typeSizeDict(127) // increase this number if we ever get >= 97 types
+ : m_typeSizeDict()
{
- m_typeSizeDict.setAutoDelete(true);
-
// define the convenience macro used in the generated file
#define AddStruct(typeName) addStruct(#typeName, sizeof(typeName))
@@ -105,11 +103,11 @@
size_t EQPacketTypeDB::size(const char* typeName) const
{
// attempt to find the item in the type size dictionary
- size_t *size = m_typeSizeDict.find(typeName);
+ size_t size = m_typeSizeDict.value(typeName);
// if it was found, return its size
if (size)
- return *size;
+ return size;
// return 0
return 0;
@@ -118,7 +116,7 @@
bool EQPacketTypeDB::valid(const char* typeName) const
{
// attempt to find the item in the type size dictionary
- size_t *size = m_typeSizeDict.find(typeName);
+ size_t size = m_typeSizeDict.value(typeName);
return (size != 0);
}
@@ -128,18 +126,18 @@
seqInfo("EQPacketTypeDB contains %d types (in %d buckets)",
m_typeSizeDict.count(), m_typeSizeDict.size());
- Q3AsciiDictIterator<size_t> it(m_typeSizeDict);
+ QHashIterator<QByteArray, size_t> it(m_typeSizeDict);
- while (it.current())
+ while (it.hasNext())
{
- seqInfo("\t%s = %d", it.currentKey(), *(it.current()));
- ++it;
+ it.next();
+ seqInfo("\t%s = %d", it.key(), it.value());
}
}
void EQPacketTypeDB::addStruct(const char* typeName, size_t size)
{
- m_typeSizeDict.insert(typeName, new size_t(size));
+ m_typeSizeDict.insert(typeName, size);
}
//----------------------------------------------------------------------
Modified: showeq/branches/pre_6_0_beta/src/packetinfo.h
===================================================================
--- showeq/branches/pre_6_0_beta/src/packetinfo.h 2020-10-24 21:10:38 UTC (rev 1058)
+++ showeq/branches/pre_6_0_beta/src/packetinfo.h 2020-10-25 00:19:36 UTC (rev 1059)
@@ -30,7 +30,8 @@
#include <QObject>
#include <Q3PtrDict>
#include <Q3PtrList>
-#include <Q3AsciiDict>
+#include <QHash>
+#include <QByteArray>
#include <Q3IntDict>
#include <Q3CString>
#include <Q3StrList>
@@ -71,7 +72,7 @@
protected:
void addStruct(const char* typeName, size_t);
- Q3AsciiDict<size_t> m_typeSizeDict;
+ QHash<QByteArray, size_t> m_typeSizeDict;
};
//----------------------------------------------------------------------
Modified: showeq/branches/pre_6_0_beta/src/spawnmonitor.cpp
===================================================================
--- showeq/branches/pre_6_0_beta/src/spawnmonitor.cpp 2020-10-24 21:10:38 UTC (rev 1058)
+++ showeq/branches/pre_6_0_beta/src/spawnmonitor.cpp 2020-10-25 00:19:36 UTC (rev 1059)
@@ -112,13 +112,11 @@
: QObject( parent, name ),
m_dataLocMgr(dataLocMgr),
m_spawnShell(spawnShell),
- m_spawns( 613 ),
- m_points( 211 ),
+ m_spawns(),
+ m_points(),
m_selected(NULL)
{
- m_spawns.setAutoDelete( true );
- m_points.setAutoDelete( true );
-
+
connect(spawnShell, SIGNAL(addItem(const Item*)),
this, SLOT( newSpawn(const Item*)));
connect(spawnShell, SIGNAL(killSpawn(const Item*, const Item*, uint16_t)),
@@ -164,7 +162,9 @@
void SpawnMonitor::clear(void)
{
emit clearSpawnPoints();
+ qDeleteAll(m_spawns);
m_spawns.clear();
+ qDeleteAll(m_points);
m_points.clear();
m_selected = NULL;
}
@@ -178,8 +178,8 @@
emit selectionChanged(m_selected);
}
- // remove the spawn point (will automatically delete it).
- m_spawns.remove(sp->key());
+ // remove the spawn point
+ delete m_spawns.take(sp->key());
m_modified = true;
}
@@ -191,17 +191,19 @@
void SpawnMonitor::killSpawn(const Item* killedSpawn)
{
- Q3AsciiDictIterator<SpawnPoint> it( m_points );
-
- SpawnPoint* sp;
- while ( ( sp = it.current() ) )
+ QHashIterator<QString, SpawnPoint*> it( m_points );
+
+ SpawnPoint* sp;
+ while (it.hasNext())
{
+ it.next();
+ sp = it.value();
+
if ( killedSpawn->id() == sp->lastID() )
{
- restartSpawnPoint( sp );
+ restartSpawnPoint(sp);
break;
}
- ++it;
}
}
@@ -245,7 +247,7 @@
QString key = SpawnPoint::key( *spawn );
SpawnPoint* sp;
- sp = m_points.find( key );
+ sp = m_points.value( key );
if ( sp )
{
m_modified = true;
@@ -253,7 +255,7 @@
}
else
{
- sp = m_spawns.find( key );
+ sp = m_spawns.value( key );
if ( sp )
{
sp->update(spawn);
@@ -302,13 +304,15 @@
}
Q3TextStream output(&spFile);
-
- Q3AsciiDictIterator<SpawnPoint> it( m_points );
+
+ QHashIterator<QString, SpawnPoint*> it( m_points );
SpawnPoint* sp;
-
- while ((sp = it.current()))
+
+ while (it.hasNext())
{
- ++it;
+ it.next();
+ sp = it.value();
+
output << sp->x()
<< " "
<< sp->y()
@@ -398,8 +402,8 @@
if (p)
{
QString key = p->key();
-
- if (!m_points.find(key))
+
+ if (!m_points.value(key))
{
m_points.insert(key, p);
emit newSpawnPoint(p);
Modified: showeq/branches/pre_6_0_beta/src/spawnmonitor.h
===================================================================
--- showeq/branches/pre_6_0_beta/src/spawnmonitor.h 2020-10-24 21:10:38 UTC (rev 1058)
+++ showeq/branches/pre_6_0_beta/src/spawnmonitor.h 2020-10-25 00:19:36 UTC (rev 1059)
@@ -51,7 +51,7 @@
#include <ctime>
#include <QObject>
-#include <Q3AsciiDict>
+#include <QHash>
#include "spawn.h"
#include "zonemgr.h"
#include "spawnshell.h"
@@ -113,9 +113,9 @@
QObject* parent = 0,
const char* name = "spawnmonitor" );
virtual ~SpawnMonitor();
-
- const Q3AsciiDict<SpawnPoint>& spawnPoints() { return m_points; }
- const Q3AsciiDict<SpawnPoint>& spawns() { return m_spawns; }
+
+ const QHash<QString, SpawnPoint*>& spawnPoints() { return m_points; }
+ const QHash<QString, SpawnPoint*>& spawns() { return m_spawns; }
const SpawnPoint* selected() { return m_selected; }
public slots:
@@ -143,8 +143,8 @@
const DataLocationMgr* m_dataLocMgr;
SpawnShell* m_spawnShell;
QString m_zoneName;
- Q3AsciiDict<SpawnPoint> m_spawns;
- Q3AsciiDict<SpawnPoint> m_points;
+ QHash<QString, SpawnPoint*> m_spawns;
+ QHash<QString, SpawnPoint*> m_points;
const SpawnPoint* m_selected;
bool m_modified;
};
Modified: showeq/branches/pre_6_0_beta/src/spawnpointlist.cpp
===================================================================
--- showeq/branches/pre_6_0_beta/src/spawnpointlist.cpp 2020-10-24 21:10:38 UTC (rev 1058)
+++ showeq/branches/pre_6_0_beta/src/spawnpointlist.cpp 2020-10-25 00:19:36 UTC (rev 1059)
@@ -167,12 +167,13 @@
// put in all the spawn points that might already be present in
// the spawn monitor
- Q3AsciiDictIterator<SpawnPoint> it( m_spawnMonitor->spawnPoints() );
- SpawnPoint* sp;
- while ((sp = it.current()))
+ QHashIterator<QString, SpawnPoint*> it( m_spawnMonitor->spawnPoints() );
+ SpawnPoint* sp;
+ while (it.hasNext())
{
+ it.next();
+ sp = it.value();
new SpawnPointListItem(this, sp);
- ++it;
}
// create the timer
@@ -365,12 +366,13 @@
sort();
// iterate over all the spawn points and check how long till they pop
- Q3AsciiDictIterator<SpawnPoint> it(m_spawnMonitor->spawnPoints());
+ QHashIterator<QString, SpawnPoint*> it(m_spawnMonitor->spawnPoints());
SpawnPoint* sp;
-
- while ((sp = it.current()))
+
+ while (it.hasNext())
{
- ++it;
+ it.next();
+ sp = it.value();
if (sp->secsLeft() < 20)
aboutToPop = true;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|