Files
qt5-legatus-legacy/Lts/Viewer/SituationMap/Portal/portal.h
T
2026-08-13 18:33:10 +02:00

81 lines
1.5 KiB
C++
Executable File

/**
* @RDE_HEADER@
* SideBar
* $Id$
* $HeadURL$
* $Author$
* Created by Norbert Thoden, NLSE, 2018-10-08
*/
#pragma once
// Own
#include "portal_export.h"
#include <Common/situation_map_logging.h>
// Qt
#include <QObject>
namespace Esri {
namespace ArcGISRuntime {
class Error;
class PortalQueryResultSetForItems;
class PortalQueryResultSetForGroups;
}
}
class QModelIndex;
class QStandardItem;
//----------------------------------------------------------------------------
namespace SituationMap
{
class SITUATIONMAPPORTAL_EXPORT Portal : public QObject
{
using BaseClass = QObject;
Q_OBJECT
public:
explicit Portal(QObject *parent = nullptr);
virtual ~Portal();
bool init();
bool fetchData();
signals:
protected Q_SLOTS:
void onPortalErrorOccurred(const Esri::ArcGISRuntime::Error &error);
void onPortalDoneLoading(const Esri::ArcGISRuntime::Error &loadError);
void onBasemapsChanged();
void onFeaturedGroupsChanged();
void onFeaturedItemsChanged();
void onHomepageFeatureContentChanged();
void onFindItemsCompleted(Esri::ArcGISRuntime::PortalQueryResultSetForItems* result);
void onFindGroupsCompleted(Esri::ArcGISRuntime::PortalQueryResultSetForGroups* result);
private:
private:
class Private;
/**
* The private d-pointer to not break BC when changing internals of this class
*/
Private *d = nullptr;
LOGGER_T m_logger; ///< Interface of the Logging-Facility
};
} // namespace SituationMap