This commit is contained in:
Atlante45 2017-12-07 11:49:05 -08:00
parent 06e2f394f9
commit aec5ab5921
4 changed files with 96 additions and 72 deletions

View file

@ -154,7 +154,10 @@ Rectangle {
color: OctreeStats.getColor()
}
Column {
Repeater {
model: OctreeStats.serversNum
delegate: Column {
id: serverColumn
width: scrollView.width - 10
x: 5
@ -165,7 +168,7 @@ Rectangle {
TabletEntityStatisticsItem {
id: serverStats
width: parent.width
titleText: qsTr("Entity Server") + ":"
titleText: qsTr("Entity Server ") + (index+1) + ":"
colorScheme: root.colorScheme
color: OctreeStats.getColor()
}
@ -215,25 +218,26 @@ Rectangle {
name: "less"
PropertyChanges { target: moreButton; text: qsTr("more..."); }
PropertyChanges { target: mostButton; text: qsTr("most..."); }
PropertyChanges { target: serverStats; text: OctreeStats.servers[0]; }
PropertyChanges { target: serverStats; text: OctreeStats.servers[index*3]; }
},
State {
name: "more"
PropertyChanges { target: moreButton; text: qsTr("most..."); }
PropertyChanges { target: mostButton; text: qsTr("less..."); }
PropertyChanges { target: serverStats; text: OctreeStats.servers[0] +
OctreeStats.servers[1]; }
PropertyChanges { target: serverStats; text: OctreeStats.servers[index*3] +
OctreeStats.servers[index*3 + 1]; }
},
State {
name: "most"
PropertyChanges { target: moreButton; text: qsTr("less..."); }
PropertyChanges { target: mostButton; text: qsTr("least..."); }
PropertyChanges { target: serverStats; text: OctreeStats.servers[0] +
OctreeStats.servers[1] +
OctreeStats.servers[2]; }
PropertyChanges { target: serverStats; text: OctreeStats.servers[index*3] +
OctreeStats.servers[index*3 + 1] +
OctreeStats.servers[index*3 + 2]; }
}
]
} //servers column
} //repeater
} //column
} //flickable
}

View file

@ -57,6 +57,10 @@ OctreeStatsProvider::~OctreeStatsProvider() {
_updateTimer.stop();
}
int OctreeStatsProvider::serversNum() const {
return m_serversNum;
}
void OctreeStatsProvider::updateOctreeStatsData() {
// Processed Entities Related stats
@ -238,9 +242,12 @@ void OctreeStatsProvider::updateOctreeServers() {
void OctreeStatsProvider::showOctreeServersOfType(NodeType_t serverType) {
m_servers.clear();
int serverCount = 0;
auto node = DependencyManager::get<NodeList>()->soloNodeOfType(serverType);
if (node) {
++serverCount;
QString lesserDetails;
QString moreDetails;
QString mostDetails;
@ -324,6 +331,11 @@ void OctreeStatsProvider::showOctreeServersOfType(NodeType_t serverType) {
m_servers.append(moreDetails);
m_servers.append(mostDetails);
}
if (serverCount != m_serversNum) {
m_serversNum = serverCount;
emit serversNumChanged(m_serversNum);
}
emit serversChanged(m_servers);
}

View file

@ -22,6 +22,7 @@ class OctreeStatsProvider : public QObject, public Dependency {
Q_OBJECT
SINGLETON_DEPENDENCY
Q_PROPERTY(int serversNum READ serversNum NOTIFY serversNumChanged)
Q_PROPERTY(QString serverElements READ serverElements NOTIFY serverElementsChanged)
Q_PROPERTY(QString localElements READ localElements NOTIFY localElementsChanged)
Q_PROPERTY(QString localElementsMemory READ localElementsMemory NOTIFY localElementsMemoryChanged)
@ -40,6 +41,8 @@ public:
OctreeStatsProvider(QObject* parent, NodeToOctreeSceneStats* model);
~OctreeStatsProvider();
int serversNum() const;
QString serverElements() const {
return m_serverElements;
}
@ -89,6 +92,8 @@ public:
}
signals:
void serversNumChanged(int serversNum);
void serverElementsChanged(const QString &serverElements);
void localElementsChanged(const QString &localElements);
void sendingModeChanged(const QString &sendingMode);
@ -126,7 +131,7 @@ private:
quint64 _lastRefresh = 0;
QTimer _updateTimer;
int m_serversNum { 0 };
QString m_serverElements;
QString m_localElements;
QString m_localElementsMemory;

View file

@ -42,7 +42,10 @@ static Setting::Handle<quint16> LIMITED_NODELIST_LOCAL_PORT("LimitedNodeList.Loc
const std::set<NodeType_t> SOLO_NODE_TYPES = {
NodeType::AvatarMixer,
NodeType::AudioMixer,
NodeType::AssetServer
NodeType::AssetServer,
NodeType::EntityServer,
NodeType::MessagesMixer,
NodeType::EntityScriptServer
};
LimitedNodeList::LimitedNodeList(int socketListenPort, int dtlsListenPort) :