--- a/dirbrowser/cdbrowser.h
+++ b/dirbrowser/cdbrowser.h
@@ -25,6 +25,7 @@
#include <vector>
#include <iostream>
#include <unordered_set>
+#include <unordered_map>
#ifdef USING_WEBENGINE
#include <QWebEngineView>
@@ -46,6 +47,7 @@
#include "libupnpp/control/description.hxx"
#include "libupnpp/control/mediaserver.hxx"
#include "libupnpp/control/cdirectory.hxx"
+#include "libupnpp/control/cdircontent.hxx"
#include "HelperStructs/MetaData.h"
#include "HelperStructs/globals.h"
@@ -129,6 +131,17 @@
void waitForPage();
void mySetHtml(const QString&);
void doCreatePopupMenu();
+
+ static const std::string CTTitleStartMarker;
+ void init_HTML();
+ static QString CTToHtml(unsigned int idx,
+ const UPnPClient::UPnPDirObject& e);
+ static QString ItemToHtml(unsigned int idx,
+ const UPnPClient::UPnPDirObject&, int maxartlen);
+ static QString DSToHtml(unsigned int idx,
+ const UPnPClient::UPnPDeviceDesc& dev);
+ static QString initialServersPage();
+ static QString emptyServersPage();
// When displaying the servers list, we periodically check the
// server pool state. The last seen Media Server descriptions are
@@ -147,6 +160,9 @@
std::vector<CtPathElt> m_curpath;
+ std::unordered_map<std::string, std::string> m_alphamap;
+ char m_curinitial{0};
+
// Threaded objects to perform directory reads and recursive walks
CDBrowseQO *m_reader;
RecursiveReaper *m_reaper;