mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-06-15 20:48:45 +02:00
69 lines
2.4 KiB
C++
69 lines
2.4 KiB
C++
//
|
|
// AddressBarDialog.cpp
|
|
//
|
|
// Created by Bradley Austin Davis on 2015/04/14
|
|
// Copyright 2015 High Fidelity, Inc.
|
|
//
|
|
// Distributed under the Apache License, Version 2.0.
|
|
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
|
|
//
|
|
|
|
#include "AddressBarDialog.h"
|
|
|
|
#include <QMessageBox>
|
|
|
|
#include "DependencyManager.h"
|
|
#include "AddressManager.h"
|
|
|
|
HIFI_QML_DEF(AddressBarDialog)
|
|
|
|
AddressBarDialog::AddressBarDialog(QQuickItem* parent) : OffscreenQmlDialog(parent) {
|
|
auto addressManager = DependencyManager::get<AddressManager>();
|
|
connect(addressManager.data(), &AddressManager::lookupResultIsOffline, this, &AddressBarDialog::displayAddressOfflineMessage);
|
|
connect(addressManager.data(), &AddressManager::lookupResultIsNotFound, this, &AddressBarDialog::displayAddressNotFoundMessage);
|
|
connect(addressManager.data(), &AddressManager::lookupResultsFinished, this, &AddressBarDialog::hide);
|
|
connect(addressManager.data(), &AddressManager::goBackPossible, this, [this] (bool isPossible) {
|
|
if (isPossible != _backEnabled) {
|
|
_backEnabled = isPossible;
|
|
emit backEnabledChanged();
|
|
}
|
|
});
|
|
connect(addressManager.data(), &AddressManager::goForwardPossible, this, [this] (bool isPossible) {
|
|
if (isPossible != _forwardEnabled) {
|
|
_forwardEnabled = isPossible;
|
|
emit forwardEnabledChanged();
|
|
}
|
|
});
|
|
_backEnabled = DependencyManager::get<AddressManager>()->getBackState();
|
|
_forwardEnabled = DependencyManager::get<AddressManager>()->getForwardState();
|
|
}
|
|
|
|
void AddressBarDialog::hide() {
|
|
((QQuickItem*)parent())->setEnabled(false);
|
|
}
|
|
|
|
void AddressBarDialog::loadAddress(const QString& address) {
|
|
qDebug() << "Called LoadAddress with address " << address;
|
|
if (!address.isEmpty()) {
|
|
DependencyManager::get<AddressManager>()->handleLookupString(address);
|
|
}
|
|
}
|
|
|
|
void AddressBarDialog::loadBack() {
|
|
qDebug() << "Called LoadBack";
|
|
DependencyManager::get<AddressManager>()->goBack();
|
|
}
|
|
|
|
void AddressBarDialog::loadForward() {
|
|
qDebug() << "Called LoadForward";
|
|
DependencyManager::get<AddressManager>()->goForward();
|
|
}
|
|
|
|
void AddressBarDialog::displayAddressOfflineMessage() {
|
|
OffscreenUi::error("That user or place is currently offline");
|
|
}
|
|
|
|
void AddressBarDialog::displayAddressNotFoundMessage() {
|
|
OffscreenUi::error("There is no address information for that user or place");
|
|
}
|
|
|