From de24e81bdaf81d419aa4ddefb284bff4a575424a Mon Sep 17 00:00:00 2001 From: Alexander Bock Date: Wed, 12 Feb 2020 22:36:11 +0100 Subject: [PATCH] Fix copyright header information Remove TimelineView application --- apps/OpenSpace-MinVR/main.cpp | 2 +- apps/Sync/main.cpp | 2 +- apps/TaskRunner/main.cpp | 2 +- apps/TimelineView/CMakeLists.txt | 63 --- apps/TimelineView/common.h | 37 -- apps/TimelineView/configurationwidget.cpp | 86 ---- apps/TimelineView/configurationwidget.h | 53 --- apps/TimelineView/controlwidget.cpp | 319 -------------- apps/TimelineView/controlwidget.h | 69 --- apps/TimelineView/informationwidget.cpp | 50 --- apps/TimelineView/informationwidget.h | 41 -- apps/TimelineView/main.cpp | 160 ------- apps/TimelineView/mainwindow.cpp | 398 ------------------ apps/TimelineView/mainwindow.h | 74 ---- apps/TimelineView/timelinewidget.cpp | 304 ------------- apps/TimelineView/timelinewidget.h | 72 ---- ext/ghoul | 2 +- include/openspace/interaction/touchbar.h | 2 +- .../space/rendering/renderablesmallbody.cpp | 46 +- .../space/tasks/generatedebrisvolumetask.cpp | 2 +- .../space/tasks/generatedebrisvolumetask.h | 10 +- modules/webbrowser/src/processhelpermac.cpp | 2 +- support/coding/check_style_guide.py | 4 +- support/coding/convert_tabs.py | 2 +- support/coding/count_includes.py | 2 +- support/coding/new_files.py | 2 +- support/coding/remove_byte_order_mark.py | 2 +- 27 files changed, 40 insertions(+), 1768 deletions(-) delete mode 100644 apps/TimelineView/CMakeLists.txt delete mode 100644 apps/TimelineView/common.h delete mode 100644 apps/TimelineView/configurationwidget.cpp delete mode 100644 apps/TimelineView/configurationwidget.h delete mode 100644 apps/TimelineView/controlwidget.cpp delete mode 100644 apps/TimelineView/controlwidget.h delete mode 100644 apps/TimelineView/informationwidget.cpp delete mode 100644 apps/TimelineView/informationwidget.h delete mode 100644 apps/TimelineView/main.cpp delete mode 100644 apps/TimelineView/mainwindow.cpp delete mode 100644 apps/TimelineView/mainwindow.h delete mode 100644 apps/TimelineView/timelinewidget.cpp delete mode 100644 apps/TimelineView/timelinewidget.h diff --git a/apps/OpenSpace-MinVR/main.cpp b/apps/OpenSpace-MinVR/main.cpp index c2d857cc7c..cd1191434b 100644 --- a/apps/OpenSpace-MinVR/main.cpp +++ b/apps/OpenSpace-MinVR/main.cpp @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * diff --git a/apps/Sync/main.cpp b/apps/Sync/main.cpp index 8661f900af..7ea54a745a 100644 --- a/apps/Sync/main.cpp +++ b/apps/Sync/main.cpp @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * diff --git a/apps/TaskRunner/main.cpp b/apps/TaskRunner/main.cpp index c7b89253c5..f41d8105ab 100644 --- a/apps/TaskRunner/main.cpp +++ b/apps/TaskRunner/main.cpp @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * diff --git a/apps/TimelineView/CMakeLists.txt b/apps/TimelineView/CMakeLists.txt deleted file mode 100644 index 38edbf98f5..0000000000 --- a/apps/TimelineView/CMakeLists.txt +++ /dev/null @@ -1,63 +0,0 @@ -########################################################################################## -# # -# OpenSpace # -# # -# Copyright (c) 2014-2020 # -# # -# Permission is hereby granted, free of charge, to any person obtaining a copy of this # -# software and associated documentation files (the "Software"), to deal in the Software # -# without restriction, including without limitation the rights to use, copy, modify, # -# merge, publish, distribute, sublicense, and/or sell copies of the Software, and to # -# permit persons to whom the Software is furnished to do so, subject to the following # -# conditions: # -# # -# The above copyright notice and this permission notice shall be included in all copies # -# or substantial portions of the Software. # -# # -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, # -# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A # -# PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT # -# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF # -# CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE # -# OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # -########################################################################################## - -include(${OPENSPACE_CMAKE_EXT_DIR}/application_definition.cmake) - -set(APPLICATION_NAME TimelineView) -set(APPLICATION_LINK_TO_OPENSPACE OFF) - -set(SOURCE_FILES - ${OPENSPACE_APPS_DIR}/TimelineView/main.cpp - ${OPENSPACE_APPS_DIR}/TimelineView/mainwindow.cpp - ${OPENSPACE_APPS_DIR}/TimelineView/configurationwidget.cpp - ${OPENSPACE_APPS_DIR}/TimelineView/informationwidget.cpp - ${OPENSPACE_APPS_DIR}/TimelineView/controlwidget.cpp - ${OPENSPACE_APPS_DIR}/TimelineView/timelinewidget.cpp -) - -set(HEADER_FILES - ${OPENSPACE_APPS_DIR}/TimelineView/mainwindow.h - ${OPENSPACE_APPS_DIR}/TimelineView/configurationwidget.h - ${OPENSPACE_APPS_DIR}/TimelineView/controlwidget.h - ${OPENSPACE_APPS_DIR}/TimelineView/informationwidget.h - ${OPENSPACE_APPS_DIR}/TimelineView/mainwindow.h - ${OPENSPACE_APPS_DIR}/TimelineView/timelinewidget.h -) - -find_package(Qt5Widgets) -find_package(Qt5Network) - -set(MOC_FILES "") -qt5_wrap_cpp(MOC_FILES ${HEADER_FILES}) - -create_new_application(${APPLICATION_NAME} MACOSX_BUNDLE ${SOURCE_FILES} ${HEADER_FILES} ${MOC_FILES}) - -target_link_libraries(${APPLICATION_NAME} Qt5::Widgets Qt5::Network) - -#if (APPLE) -# INSTALL(CODE " -# include(BundleUtilities) -# fixup_bundle(\"${application_path}/bin/openspace/Debug/Launcher.app/Contents/MacOS/Launcher\" \"${application_path}/bin/openspace/Debug/TimelineView.app/Contents/plugins/platforms/libqcocoa.dylib\" \"\") -# " COMPONENT Runtime) -#endif () diff --git a/apps/TimelineView/common.h b/apps/TimelineView/common.h deleted file mode 100644 index e10eb25822..0000000000 --- a/apps/TimelineView/common.h +++ /dev/null @@ -1,37 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#ifndef __OPENSPACE_APP_TIMELINEVIEW___COMMON___H__ -#define __OPENSPACE_APP_TIMELINEVIEW___COMMON___H__ - -struct Image { - double beginning; - double ending; - std::string beginningString; - std::string endingString; - std::string target; - std::vector instruments; -}; - -#endif // __OPENSPACE_APP_TIMELINEVIEW___COMMON___H__ diff --git a/apps/TimelineView/configurationwidget.cpp b/apps/TimelineView/configurationwidget.cpp deleted file mode 100644 index d7833c6125..0000000000 --- a/apps/TimelineView/configurationwidget.cpp +++ /dev/null @@ -1,86 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#include "configurationwidget.h" - -#include -#include -#include -#include - -ConfigurationWidget::ConfigurationWidget(QWidget* parent) - : QWidget(parent) - , _ipAddress(new QLineEdit("localhost")) - , _port(new QLineEdit("20500")) - , _connect(new QPushButton("Connect")) -{ - _connect->setObjectName("connection"); - QGroupBox* box = new QGroupBox("Connection", this); - - QGridLayout* layout = new QGridLayout; - layout->setVerticalSpacing(0); - { - QLabel* t = new QLabel("IP Address"); - t->setObjectName("label"); - layout->addWidget(t, 0, 0); - } - layout->addWidget(_ipAddress, 1, 0); - - { - QLabel* t = new QLabel("Port"); - t->setObjectName("label"); - layout->addWidget(t, 0, 1); - } - layout->addWidget(_port, 1, 1); - layout->addWidget(_connect, 1, 2, 1, 1); - - box->setLayout(layout); - - QHBoxLayout* l = new QHBoxLayout; - l->addWidget(box); - setLayout(l); - QObject::connect(_connect, SIGNAL(clicked()), this, SLOT(onConnectButton())); - - QTimer::singleShot(100, this, SLOT(onConnectButton())); -} - -void ConfigurationWidget::onConnectButton() { - emit connect(_ipAddress->text(), _port->text()); -} - -void ConfigurationWidget::socketConnected() { - _ipAddress->setEnabled(false); - _port->setEnabled(false); - _connect->setText("Disconnect"); - QObject::disconnect(_connect, SIGNAL(clicked()), this, SLOT(onConnectButton())); - QObject::connect(_connect, SIGNAL(clicked()), this, SIGNAL(disconnect())); -} - -void ConfigurationWidget::socketDisconnected() { - _ipAddress->setEnabled(true); - _port->setEnabled(true); - _connect->setText("Connect"); - QObject::disconnect(_connect, SIGNAL(clicked()), this, SIGNAL(disconnect())); - QObject::connect(_connect, SIGNAL(clicked()), this, SLOT(onConnectButton())); -} diff --git a/apps/TimelineView/configurationwidget.h b/apps/TimelineView/configurationwidget.h deleted file mode 100644 index 23e3600daa..0000000000 --- a/apps/TimelineView/configurationwidget.h +++ /dev/null @@ -1,53 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#ifndef __OPENSPACE_APP_TIMELINEVIEW___CONFIGURATIONWIDGET___H__ -#define __OPENSPACE_APP_TIMELINEVIEW___CONFIGURATIONWIDGET___H__ - -#include -#include -#include - -class ConfigurationWidget : public QWidget { -Q_OBJECT -public: - ConfigurationWidget(QWidget* parent); - - void socketConnected(); - void socketDisconnected(); - -signals: - void connect(QString host, QString port); - void disconnect(); - -private slots: - void onConnectButton(); - -private: - QLineEdit* _ipAddress; - QLineEdit* _port; - QPushButton* _connect; -}; - -#endif // __OPENSPACE_APP_TIMELINEVIEW___CONFIGURATIONWIDGET___H__ diff --git a/apps/TimelineView/controlwidget.cpp b/apps/TimelineView/controlwidget.cpp deleted file mode 100644 index 29125e8752..0000000000 --- a/apps/TimelineView/controlwidget.cpp +++ /dev/null @@ -1,319 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#include "controlwidget.h" - -#include "mainwindow.h" - -#include -#include -#include -#include -#include -#include -#include - -#include - -namespace { - struct ImportantDate { - QString date; - QString focus; - QString coordinateSystem; - }; - - const ImportantDate ImportantDates[] = { - { "", "", "" }, - { "2007-02-27T16:40:00.00", "JupiterProjection", "Jupiter" }, - { "2015-07-14T10:10:00.00", "PlutoProjection", "Pluto" }, - { "2015-07-14T10:50:00.00", "PlutoProjection", "Pluto" }, - { "2015-07-14T11:22:00.00", "PlutoProjection", "Pluto" }, - { "2015-07-14T11:36:40.00", "PlutoProjection", "Pluto" }, - { "2015-07-14T11:48:43.00", "PlutoProjection", "Pluto" }, - { "2015-07-14T12:04:35.00", "PlutoProjection", "Pluto" }, - { "2015-07-14T15:02:46.00", "PlutoProjection", "Pluto" } - }; - - struct FocusNode { - QString guiName; - QString name; - QString coordinateSystem; - }; - const FocusNode FocusNodes[] = { - { "Earth", "Earth", "Sun" }, - { "Sun", "Sun", "Sun" }, - { "Pluto", "PlutoProjection", "Pluto" }, - { "Charon", "Charon", "Pluto" }, - { "Jupiter", "JupiterProjection", "Jupiter" }, - { "Nix", "Nix", "Pluto" }, - { "Kerberos", "Kerberos", "Pluto" }, - { "Hydra", "Hydra", "Pluto" }, - }; -} - -ControlWidget::ControlWidget(QWidget* parent) - : QWidget(parent) - , _currentTime(new QLabel("")) - , _setTime(new QComboBox) - , _currentDelta(new QLabel("")) - , _setDelta(new QSlider(Qt::Horizontal)) - , _pause(new QPushButton("Pause")) - , _play(new QPushButton("Play")) - , _focusNode(new QComboBox) - , _setFocusToNextTarget(new QPushButton("Set Focus to the next Target")) - , _setFocusToNewHorizons(new QPushButton("Set Focus to New Horizons")) -{ - _pause->setObjectName("pause"); - _play->setObjectName("play"); - - _currentTime->setObjectName("value"); - _currentDelta->setObjectName("value"); - - for (const ImportantDate& d : ImportantDates) - _setTime->addItem(d.date); - QObject::connect( - _setTime, - SIGNAL(currentIndexChanged(int)), - this, - SLOT(onDateChange()) - ); - - for (const FocusNode& f : FocusNodes) - _focusNode->addItem(f.guiName); - QObject::connect( - _focusNode, - SIGNAL(currentIndexChanged(int)), - this, - SLOT(onFocusChange()) - ); - - _setDelta->setMinimum(-100); - _setDelta->setMaximum(100); - _setDelta->setValue(0); - QObject::connect( - _setDelta, - SIGNAL(valueChanged(int)), - this, - SLOT(onValueChange()) - ); - - QObject::connect( - _pause, - SIGNAL(clicked()), - this, - SLOT(onPauseButton()) - ); - - QObject::connect( - _play, - SIGNAL(clicked()), - this, - SLOT(onPlayButton()) - ); - - QObject::connect( - _setFocusToNextTarget, - SIGNAL(clicked()), - this, - SLOT(onFocusToTargetButton()) - ); - - QObject::connect( - _setFocusToNewHorizons, - SIGNAL(clicked()), - this, - SLOT(onFocusToNewHorizonsButton()) -); - - QVBoxLayout* mainLayout = new QVBoxLayout; - - { - QGroupBox* box = new QGroupBox("Time", this); - QGridLayout* layout = new QGridLayout; - - //layout->setRowStretch(1, 5); - box->setLayout(layout); - - { - QLabel* l = new QLabel("Current Time (UTC):"); - l->setObjectName("label"); - layout->addWidget(l, 0, 0, Qt::AlignLeft); - layout->addWidget(_currentTime, 0, 1, Qt::AlignRight); - } - { - QLabel* l = new QLabel("Bookmarked Times:"); - l->setObjectName("label"); - layout->addWidget(l, 1, 0, Qt::AlignLeft); - layout->addWidget(_setTime, 1, 1, Qt::AlignRight); - } - layout->addItem(new QSpacerItem(0, 7), 2, 0, 1, 2); - { - QLabel* l = new QLabel("Current Time Increment\n(seconds per second):"); - l->setObjectName("label"); - layout->addWidget(l, 3, 0, Qt::AlignLeft); - layout->addWidget(_currentDelta, 3, 1, Qt::AlignRight); - } - - _setDelta->setObjectName("background"); - layout->addWidget(_setDelta, 4, 0, 1, 2); - - QWidget* controlContainer = new QWidget; - controlContainer->setObjectName("background"); - QHBoxLayout* controlContainerLayout = new QHBoxLayout; - controlContainerLayout->addWidget(_pause); - controlContainerLayout->addWidget(_play); - controlContainer->setLayout(controlContainerLayout); - layout->addWidget(controlContainer, 5, 0, 1, 2); - - mainLayout->addWidget(box); - } - - { - QGroupBox* box = new QGroupBox("Focus"); - QGridLayout* layout = new QGridLayout; - box->setLayout(layout); - - { - QLabel* l = new QLabel("Set Focus:"); - l->setObjectName("label"); - layout->addWidget(l, 0, 0, Qt::AlignLeft); - _focusNode->setMinimumWidth(200); - layout->addWidget(_focusNode, 0, 1, Qt::AlignRight); - } - layout->addWidget(_setFocusToNextTarget, 1, 0, 1, 2); - layout->addWidget(_setFocusToNewHorizons, 2, 0, 1, 2); - - mainLayout->addWidget(box); - } - - setLayout(mainLayout); -} - -void ControlWidget::update(QString currentTime, QString currentDelta) { - currentTime.replace("T", " "); - _currentTime->setText(currentTime); - _currentDelta->setText(currentDelta); -} - -void ControlWidget::onValueChange() { - float value = static_cast(_setDelta->value()); - - float delta; - if (value < 0.f) { - value = -value; - float d = pow(3, value / 10) - 1.f; - delta = -d; - } - else { - float d = pow(3, value / 10) - 1.f; - delta = d; - } - - QString script = "openspace.time.setDeltaTime(" + QString::number(delta) + ");"; - emit scriptActivity(script); -} - -void ControlWidget::onPauseButton() { - QString script = "openspace.time.setPause(true);"; - emit scriptActivity(script); -} - -void ControlWidget::onPlayButton() { - QString script = "openspace.time.setPause(false);"; - emit scriptActivity(script); -} - -void ControlWidget::onDateChange() { - int index = _setTime->currentIndex(); - if (index != 0) { - QString date = ImportantDates[index].date; - QString focus = ImportantDates[index].focus; - QString coordinateSystem = ImportantDates[index].coordinateSystem; - QString script = - "openspace.time.setTime('" + date + "');\ - openspace.setPropertyValue('Interaction.origin', '" + focus + "');\ - openspace.setPropertyValue('Interaction.coordinateSystem', '" + - coordinateSystem + "')"; - emit scriptActivity(script); - } - _setTime->blockSignals(true); - _setTime->setCurrentIndex(0); - _setTime->blockSignals(false); -} - -void ControlWidget::onFocusChange() { - int index = _focusNode->currentIndex(); - QString name = FocusNodes[index].name; - QString coordinateSystem = FocusNodes[index].coordinateSystem; - QString script = "openspace.setPropertyValue('Interaction.origin', '" + name + - "');openspace.setPropertyValue('Interaction.coordinateSystem', '" + - coordinateSystem + "');"; - emit scriptActivity(script); -} - -void ControlWidget::onFocusToTargetButton() { - std::string target = reinterpret_cast(parent())->nextTarget(); - if (!target.empty()) { - auto it = std::find_if( - std::begin(FocusNodes), - std::end(FocusNodes), - [target](const FocusNode& n) { - return n.guiName.toLower() == QString::fromStdString(target).toLower(); - }); - if (it != std::end(FocusNodes)) { - QString name = it->name; - QString coordinateSystem = it->coordinateSystem; - QString script = - "openspace.setPropertyValue('Interaction.origin', '" + name + - "');openspace.setPropertyValue('Interaction.coordinateSystem', '" + - coordinateSystem + "');"; - emit scriptActivity(script); - } - } -} - -void ControlWidget::onFocusToNewHorizonsButton() { - QString coordinateSystem; - int date = _currentTime->text().left(4).toInt(); - if (date < 2008) - coordinateSystem = "Jupiter"; - else if (date < 2014) - coordinateSystem = "Sun"; - else - coordinateSystem = "Pluto"; - - QString script = "openspace.setPropertyValue('Interaction.origin', 'NewHorizons');\ - openspace.setPropertyValue('Interaction.coordinateSystem', '" + coordinateSystem + - "');"; - emit scriptActivity(script); -} - -void ControlWidget::socketConnected() { - setDisabled(false); -} - -void ControlWidget::socketDisconnected() { - setDisabled(true); -} - diff --git a/apps/TimelineView/controlwidget.h b/apps/TimelineView/controlwidget.h deleted file mode 100644 index 7d0017a28b..0000000000 --- a/apps/TimelineView/controlwidget.h +++ /dev/null @@ -1,69 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#ifndef __OPENSPACE_APP_TIMELINEVIEW___CONTROLWIDGET___H__ -#define __OPENSPACE_APP_TIMELINEVIEW___CONTROLWIDGET___H__ - -#include - -class QComboBox; -class QLabel; -class QPushButton; -class QSlider; - -class ControlWidget : public QWidget { -Q_OBJECT -public: - ControlWidget(QWidget* parent); - - void update(QString currentTime, QString currentDelta); - - void socketConnected(); - void socketDisconnected(); - -signals: - void scriptActivity(QString script); - -private slots: - void onValueChange(); - void onDateChange(); - void onFocusChange(); - void onPauseButton(); - void onPlayButton(); - void onFocusToTargetButton(); - void onFocusToNewHorizonsButton(); - -private: - QLabel* _currentTime; - QComboBox* _setTime; - QLabel* _currentDelta; - QSlider* _setDelta; - QPushButton* _pause; - QPushButton* _play; - QComboBox* _focusNode; - QPushButton* _setFocusToNextTarget; - QPushButton* _setFocusToNewHorizons; -}; - -#endif // __OPENSPACE_APP_TIMELINEVIEW___CONTROLWIDGET___H__ diff --git a/apps/TimelineView/informationwidget.cpp b/apps/TimelineView/informationwidget.cpp deleted file mode 100644 index f866ad1b28..0000000000 --- a/apps/TimelineView/informationwidget.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#include "informationwidget.h" - -#include -#include - -InformationWidget::InformationWidget(QWidget* parent) - : QTextEdit(parent) -{ - setReadOnly(true); -} - -void InformationWidget::socketConnected() { - setDisabled(false); -} - -void InformationWidget::socketDisconnected() { - setDisabled(true); -} - -void InformationWidget::logInformation(QString text) { - QString currentText = toPlainText(); - - currentText += text + "\n"; - - setPlainText(currentText); -} diff --git a/apps/TimelineView/informationwidget.h b/apps/TimelineView/informationwidget.h deleted file mode 100644 index a19ee41fb8..0000000000 --- a/apps/TimelineView/informationwidget.h +++ /dev/null @@ -1,41 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#ifndef __OPENSPACE_APP_TIMELINEVIEW___INFORMATIONWIDGET___H__ -#define __OPENSPACE_APP_TIMELINEVIEW___INFORMATIONWIDGET___H__ - -#include - -class InformationWidget : public QTextEdit { -Q_OBJECT -public: - InformationWidget(QWidget* parent); - void socketConnected(); - void socketDisconnected(); - -public slots: - void logInformation(QString text); -}; - -#endif // __OPENSPACE_APP_TIMELINEVIEW___INFORMATIONWIDGET___H__ diff --git a/apps/TimelineView/main.cpp b/apps/TimelineView/main.cpp deleted file mode 100644 index 79bd875cec..0000000000 --- a/apps/TimelineView/main.cpp +++ /dev/null @@ -1,160 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#include - -#include "mainwindow.h" - -static const QString style = R"style( -QWidget { - background-color: rgb(80, 80, 80); - font-family: Helvetica; -} - -QGroupBox { - background-color: qlineargradient( - x1: 0, y1: 0, x2: 0, y2: 1, - stop: 0 #858585, - stop: 1 #959595); - border: 2px solid gray; - border-radius: 5px; - margin-top: 4ex; - font-size: bold 12px; -} - -QGroupBox::title { - background-color: #E0E0E0; - border: 2px solid gray; - border-radius: 5px; - subcontrol-origin: margin; - subcontrol-position: top center; - padding: 0 10px; -} - -QLineEdit { - color: lightgray; -} - -QSlider::groove:horizontal { - border: 1px solid #999999; - /* the groove expands to the size of the slider by default. by giving it a height, - it has a fixed size */ - height: 8px; - background: qlineargradient( - x1:0, y1:0, x2:1, y2:0, - stop:0 #c4c4c4, - stop:0.5 #555555, - stop:1 #c4c4c4 - ); - margin: 2px 0; -} - -QSlider::handle:horizontal { - background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #b4b4b4, stop:1 #8f8f8f); - border: 1px solid #5c5c5c; - width: 18px; - /* handle is placed by default on the contents rect of the groove. - Expand outside the groove */ - margin: -2px 0; - border-radius: 3px; -} - -QPushButton { - background-color: lightgray; - border-style: outset; - border-width: 0.5px; - border-radius: 5px; - border-color: black; - font: bold 12px; - min-width: 10em; -} - -QPushButton#connection { - background-color: lightgreen; -} - -QPushButton#connection:pressed { - background-color: green; -} - - -QPushButton#pause, QPushButton#play { - padding: 5px; -} - -QPushButton#pause:pressed, QPushButton#play:pressed, QPushButton:pressed { - background-color: darkgray; - border-style: inset; -} - -QCombobox { - border: 1px solid gray; - border-radius: 3px; - padding: 1px 18px 1px 3px; - min-width: 6em; -} - -QComboBox:editable { - background: lightgrey; -} - -QComboBox QAbstractItemView { - border: 2px solid darkgray; - border-radius: 5px; - background-color: #a8a8a8; - selection-background-color: #a8a8a8; -} - -QLabel#label { - font-size: 13px; - background-color: transparent; - font-variant: small-caps; -} - -QLabel#value { - font-family: monospace; - font-weight: bold; - font-size: 14px; - background-color: transparent; -} - -QWidget#background { - background-color: transparent; -} - -QTextEdit { - font-family: monospace; -} -)style"; - -int main(int argc, char** argv) { - QApplication app(argc, argv); - - app.setStyleSheet(style); - - MainWindow window; - window.show(); - - return app.exec(); -} diff --git a/apps/TimelineView/mainwindow.cpp b/apps/TimelineView/mainwindow.cpp deleted file mode 100644 index e7241f80a2..0000000000 --- a/apps/TimelineView/mainwindow.cpp +++ /dev/null @@ -1,398 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#include "mainwindow.h" - -#include "configurationwidget.h" -#include "controlwidget.h" -#include "informationwidget.h" -#include "timelinewidget.h" - -#include -#include -#include -#include - -#include -#include - -namespace { - QByteArray continuousData; -} - -template -T readFromBuffer(char* buffer, size_t& currentReadLocation) { - union { - T value; - std::array data; - } b; - std::memmove(b.data.data(), buffer + currentReadLocation, sizeof(T)); - currentReadLocation += sizeof(T); - return b.value; -} - -template <> -std::string readFromBuffer(char* buffer, size_t& currentReadLocation) { - uint8_t size = readFromBuffer(buffer, currentReadLocation); - - std::string result(buffer + currentReadLocation, buffer + currentReadLocation + size); - currentReadLocation += size; - return result; -} - -MainWindow::MainWindow() - : QWidget(nullptr) - , _configurationWidget(nullptr) - , _timeControlWidget(nullptr) - , _informationWidget(nullptr) - , _timelineWidget(nullptr) - , _socket(nullptr) -{ - setWindowTitle("OpenSpace Timeline"); - - _configurationWidget = new ConfigurationWidget(this); - _configurationWidget->setMinimumWidth(350); - _timeControlWidget = new ControlWidget(this); - _timeControlWidget->setMinimumWidth(350); - _informationWidget = new InformationWidget(this); - _informationWidget->setMinimumWidth(350); - _timelineWidget = new TimelineWidget(this); - - QGridLayout* layout = new QGridLayout; - layout->addWidget(_configurationWidget, 0, 0); - layout->addWidget(_timeControlWidget, 1, 0); - layout->addWidget(_informationWidget, 2, 0); - layout->addWidget(_timelineWidget, 0, 1, 3, 1); - - layout->setColumnStretch(1, 5); - - - QObject::connect( - _configurationWidget, SIGNAL(connect(QString, QString)), - this, SLOT(onConnect(QString, QString)) - ); - QObject::connect( - _configurationWidget, SIGNAL(disconnect()), - this, SLOT(onDisconnect()) - ); - - QObject::connect( - _timeControlWidget, SIGNAL(scriptActivity(QString)), - this, SLOT(sendScript(QString)) - ); - - setLayout(layout); - - _configurationWidget->socketDisconnected(); - _timeControlWidget->socketDisconnected(); - _informationWidget->socketDisconnected(); - _timelineWidget->socketDisconnected(); -} - -MainWindow::~MainWindow() { - delete _socket; -} - -void MainWindow::onConnect(QString host, QString port) { - delete _socket; - - _socket = new QTcpSocket(this); - QObject::connect(_socket, SIGNAL(readyRead()), SLOT(readTcpData())); - QObject::connect(_socket, SIGNAL(connected()), SLOT(onSocketConnected())); - QObject::connect(_socket, SIGNAL(disconnected()), SLOT(onSocketDisconnected())); - - _socket->connectToHost(host, port.toUInt()); -} - -void MainWindow::onDisconnect() { - delete _socket; - _socket = nullptr; -} - -void MainWindow::readTcpData() { - static const uint16_t MessageTypeStatus = 0; - static const uint16_t MessageTypeMappingIdentifier = 1; - static const uint16_t MessageTypeInitialMessageFinished = 2; - static const uint16_t MessageTypePlayBookLabel = 3; - static const uint16_t MessageTypePlayBookHongKang = 4; - - QByteArray data = continuousData.append(_socket->readAll()); -// int d = data.size(); - - if (QString(data) == "Connected to SGCT!\r\n") { - continuousData.clear(); - return; - } - if (QString(data) == "OK\r\n") { - continuousData.clear(); - return; - } - - if (data.size() != 42) - qDebug() << QString(data); - - QByteArray messageTypeData = data.left(2); - union { - uint16_t value; - std::array data; - } messageType; - std::memcpy(messageType.data.data(), messageTypeData.data(), sizeof(uint16_t)); - - switch (messageType.value) { - case MessageTypeStatus: - break; - case MessageTypeMappingIdentifier: - qDebug() << "Mapping Identifier received"; - printMapping(data.mid(2)); - continuousData.clear(); - break; - case MessageTypeInitialMessageFinished: - qDebug() << "InitialMessageFinished received"; - break; - case MessageTypePlayBookHongKang: - qDebug() << "Hong Kang Playbook received"; - break; - case MessageTypePlayBookLabel: - qDebug() << "Label Playbook received"; - break; - default: - qDebug() << "Unknown message of type '" << messageType.value << "'"; - } - - switch (messageType.value) { - case MessageTypeStatus: - { - if (_isConnected) - handleStatusMessage(data.mid(2)); - continuousData.clear(); - break; - } - case MessageTypePlayBookHongKang: - case MessageTypePlayBookLabel: - { -// const char* payloadDebug = data.mid(2).data(); - - size_t beginning = 0; - uint32_t size = readFromBuffer(data.mid(2).data(), beginning); - - //qDebug() << "Begin reading data"; - while (_socket->waitForReadyRead() && data.size() < int(size)) { - //qDebug() << "."; - //_socket->read - //data = data.append(_socket->re) - data = data.append(_socket->readAll()); - //data = data.append(_socket->read(int(size) - data.size())); - //QThread::msleep(50); - } - //qDebug() << "Finished reading data. Handling playbook"; - - continuousData = handlePlaybook(data.mid(2)); - - - //qDebug() << "Finished handling playbook"; - - //if (messageType.value == MessageTypePlayBookHongKang) - // _hasHongKangTimeline = true; - //if (messageType.value == MessageTypePlayBookLabel) - // _hasLabelTimeline = true; - - //if (_hasHongKangTimeline && _hasLabelTimeline) { - // fullyConnected(); - //} - - break; - } - case MessageTypeInitialMessageFinished: - _isConnected = true; - fullyConnected(); - continuousData.clear(); - break; - - default: - qDebug() << QString(data); - } - -} - -void MainWindow::handleStatusMessage(QByteArray data) { - const char* buffer = data.data(); - - union { - double value; - std::array buffer; - } et; - std::memmove(et.buffer.data(), buffer, sizeof(double)); - - std::vector timeString(24); - std::memmove(timeString.data(), buffer + sizeof(double), 24); - - union { - double value; - std::array buffer; - } delta; - std::memmove(delta.buffer.data(), buffer + sizeof(double) + 24, sizeof(double)); - - _timeControlWidget->update( - QString::fromStdString(std::string(timeString.begin(), timeString.end())), - QString::number(delta.value) - ); - _timelineWidget->setCurrentTime( - std::string(timeString.begin(), timeString.end()), - et.value - ); -} - -std::vector instrumentsFromId(uint16_t instrumentId, - std::map instrumentMap) -{ - std::vector results; - for (int i = 0; i < 16; ++i) { - uint16_t testValue = 1 << i; - if ((testValue & instrumentId) != 0) { - std::string t = instrumentMap.at(testValue); - if (t.empty()) { - qDebug() << "Empty instrument"; - } - results.push_back(t); - } - } - return results; -} - -QByteArray MainWindow::handlePlaybook(QByteArray data) { - char* buffer = data.data(); - size_t currentReadLocation = 0; - - uint32_t totalData = readFromBuffer(buffer, currentReadLocation); - - uint8_t nTargets = readFromBuffer(buffer, currentReadLocation); - qDebug() << "Targets: " << nTargets; - std::map targetMap; - for (uint8_t i = 0; i < nTargets; ++i) { - uint8_t id = readFromBuffer(buffer, currentReadLocation); - std::string value = readFromBuffer(buffer, currentReadLocation); - qDebug() << QString::fromStdString(value); - targetMap[id] = value; - } - - uint8_t nInstruments = readFromBuffer(buffer, currentReadLocation); - qDebug() << "Instruments: " << nInstruments; - std::map instrumentMap; - for (uint8_t i = 0; i < nInstruments; ++i) { - uint16_t id = readFromBuffer(buffer, currentReadLocation); - std::string value = readFromBuffer(buffer, currentReadLocation); - qDebug() << QString::fromStdString(value); - instrumentMap[id] = value; - } - - uint32_t nImages = readFromBuffer(buffer, currentReadLocation); - std::vector images; - for (uint32_t i = 0; i < nImages; ++i) { - Image image; - image.beginning = readFromBuffer(buffer, currentReadLocation); - image.ending = readFromBuffer(buffer, currentReadLocation); - - image.beginningString = readFromBuffer(buffer, currentReadLocation); - image.endingString = readFromBuffer(buffer, currentReadLocation); - - uint8_t targetId = readFromBuffer(buffer, currentReadLocation); - uint16_t instrumentId = readFromBuffer(buffer, currentReadLocation); - image.target = targetMap[targetId]; - image.instruments = instrumentsFromId(instrumentId, instrumentMap); - if (image.instruments.empty()) - qDebug() << "Instruments were empty"; - images.push_back(image); - } - _timelineWidget->setData( - std::move(images), - std::move(targetMap), - std::move(instrumentMap) - ); - - auto dataSize = data.size(); - auto readSize = currentReadLocation; - auto extraBytes = dataSize - readSize; - if (extraBytes > 0) { - return data.mid(currentReadLocation); - } - else { - return QByteArray(); - } -} - -void MainWindow::sendScript(QString script) { - if (_socket) { - _socket->write(("0" + script + "\r\n").toLatin1()); - //QByteArray data = (QString("0") + script).toLocal8Bit(); - //qDebug() << data; - //_socket->write(data); - //QThread::msleep(25); - } - //_socket->write(("0" + script + "\r\n").toLatin1()); - //_socket->write(("0" + script + "\0").toLatin1()); -} - -void MainWindow::onSocketConnected() { - _socket->write(QString("1\r\n").toLatin1()); - //_socket->write(QString("1").toLatin1()); - -} - -void MainWindow::onSocketDisconnected() { - _configurationWidget->socketDisconnected(); - _timeControlWidget->socketDisconnected(); - _informationWidget->socketDisconnected(); - _timelineWidget->socketDisconnected(); - - _informationWidget->logInformation("Disconnected."); -} - -std::string MainWindow::nextTarget() const { - return _timelineWidget->nextTarget(); -} - -void MainWindow::fullyConnected() { - _informationWidget->logInformation( - "Connected to " + _socket->peerName() + " on port " + - QString::number(_socket->peerPort()) + "." - ); - - _configurationWidget->socketConnected(); - _timeControlWidget->socketConnected(); - _informationWidget->socketConnected(); - _timelineWidget->socketConnected(); -} - -void MainWindow::printMapping(QByteArray data) { - char* buffer = data.data(); - size_t currentReadPosition = 0; - - uint16_t size = readFromBuffer(buffer, currentReadPosition); - for (uint16_t i = 0; i < size; ++i) { - uint16_t identifier = readFromBuffer(buffer, currentReadPosition); - std::string mapping = readFromBuffer(buffer, currentReadPosition); - - qDebug() << identifier << ": " << QString::fromStdString(mapping); - } -} diff --git a/apps/TimelineView/mainwindow.h b/apps/TimelineView/mainwindow.h deleted file mode 100644 index 550c075bee..0000000000 --- a/apps/TimelineView/mainwindow.h +++ /dev/null @@ -1,74 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#ifndef __OPENSPACE_APP_TIMELINEVIEW___MAINWINDOW___H__ -#define __OPENSPACE_APP_TIMELINEVIEW___MAINWINDOW___H__ - -#include -#include - -#include "common.h" - -class ConfigurationWidget; -class ControlWidget; -class InformationWidget; -class TimelineWidget; - -class MainWindow : public QWidget { -Q_OBJECT -public: - MainWindow(); - ~MainWindow(); - - std::string nextTarget() const; - -public slots: - void sendScript(QString script); - -private slots: - void onConnect(QString host, QString port); - void onDisconnect(); - - void onSocketConnected(); - void onSocketDisconnected(); - - void readTcpData(); - void handleStatusMessage(QByteArray data); - QByteArray handlePlaybook(QByteArray data); - void printMapping(QByteArray data); - - void fullyConnected(); - -private: - ConfigurationWidget* _configurationWidget; - ControlWidget* _timeControlWidget; - InformationWidget* _informationWidget; - TimelineWidget* _timelineWidget; - - QTcpSocket* _socket; - - bool _isConnected = false; -}; - -#endif // __OPENSPACE_APP_TIMELINEVIEW___MAINWINDOW___H__ diff --git a/apps/TimelineView/timelinewidget.cpp b/apps/TimelineView/timelinewidget.cpp deleted file mode 100644 index f529663eb1..0000000000 --- a/apps/TimelineView/timelinewidget.cpp +++ /dev/null @@ -1,304 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#include "timelinewidget.h" - -#include -#include -#include -#include - -#include -#include - -namespace { - static const int LegendHeight = 105; - static const int TimeWidth = 200; - - static const int TextOffset = 5; - - QMap InstrumentColors = { - { "NH_ALICE_AIRGLOW", QColor(40, 130, 200) }, - { "NH_ALICE_SOC", QColor(49, 234, 219) }, - { "NH_RALPH_LEISA", QColor(139, 86, 152) }, - { "NH_RALPH_MVIC_NIR", QColor(100, 14, 14) }, - { "NH_RALPH_MVIC_METHANE", QColor(211, 154, 31) }, - { "NH_RALPH_MVIC_RED", QColor(175, 18, 18) }, - { "NH_RALPH_MVIC_BLUE", QColor(84, 79, 149) }, - { "NH_LORRI", QColor(149, 219, 32) }, - { "NH_REX", QColor(35, 185, 125) }, - - { "NH_RALPH_MVIC_PAN1", QColor(203, 153, 200) }, - { "NH_RALPH_MVIC_FT", QColor(242, 101, 74) }, - { "NH_RALPH_MVIC_PAN2", QColor(180, 180, 140) } - }; - - //{ "NH_ALICE_AIRGLOW", QColor(82, 145, 57) }, - //{ "NH_ALICE_SOC", QColor(241, 231, 48) }, - - - QMap InstrumentConversion = { - { "NH_ALICE_AIRGLOW", "ALICE Airglow" }, - { "NH_RALPH_LEISA", "RALPH LEISA" }, - { "NH_RALPH_MVIC_NIR", "RALPH MVIC NIR" }, - { "NH_ALICE_SOC", "ALICE SOC" }, - { "NH_RALPH_MVIC_BLUE", "RALPH MVIC Blue" }, - { "NH_RALPH_MVIC_PAN1" , "RALPH MVIC Pan1" }, - { "NH_LORRI", "LORRI" }, - { "NH_RALPH_MVIC_FT", "RALPH MVIC FT" }, - { "NH_RALPH_MVIC_PAN2", "RALPH MVIC Pan2" }, - { "NH_RALPH_MVIC_METHANE", "RALPH MVIC Methane" }, - { "NH_RALPH_MVIC_RED", "RALPH MVIC Red" }, - { "NH_REX", "REX" } - }; - - const double etSpread = 100.0; -} - -TimelineWidget::TimelineWidget(QWidget* parent) - : QWidget(parent) - , _currentTime{"", 0.0} -{ - setMinimumWidth(600); - setMinimumHeight(600); -} - -void TimelineWidget::paintEvent(QPaintEvent* event) { - QPainter painter(this); - - QRectF fullRect = contentsRect(); - QRectF contentRect(0, 0, fullRect.width() - 1, fullRect.height() - LegendHeight); - QRectF legendRect( - 0, - fullRect.bottom() - LegendHeight, - fullRect.right(), - fullRect.bottom() - ); - - painter.save(); - drawContent(painter, contentRect); - painter.restore(); - - painter.save(); - painter.translate(0, fullRect.height() - LegendHeight); - drawLegend(painter, QRectF(legendRect)); - painter.restore(); -} - -void TimelineWidget::setData(std::vector images, - std::map targetMap, - std::map instrumentMap) -{ - _images.insert(_images.end(), images.begin(), images.end()); - - std::sort( - _images.begin(), - _images.end(), - [](const Image& a, const Image& b) { return a.beginning < b.beginning; } - ); - - _targetMap.insert(targetMap.begin(), targetMap.end()); - _instrumentMap.insert(instrumentMap.begin(), instrumentMap.end()); - - _instruments.clear(); - std::set instruments; - for (auto p : _instrumentMap) - instruments.insert(p.second); - std::copy(instruments.begin(), instruments.end(), std::back_inserter(_instruments)); - - _targets.clear(); - std::set targets; - for (auto p : _targetMap) - targets.insert(p.second); - std::copy(targets.begin(), targets.end(), std::back_inserter(_targets)); - - repaint(); -} - -void TimelineWidget::drawContent(QPainter& painter, QRectF rect) { - QRectF timelineRect(0, 0, rect.width() - TimeWidth, rect.height()); - QRectF dateRect(rect.width() - TimeWidth, 0, TimeWidth, rect.height()); - - // Draw background - //painter.setBrush(QBrush(Qt::lightGray)); painter.drawRect(timelineRect); - painter.setBrush(QBrush(QColor(85, 85, 85))); painter.drawRect(timelineRect); - painter.setBrush(QBrush(QColor(165, 165, 165))); painter.drawRect(dateRect); - - const double lowerTime = _currentTime.et - etSpread; - const double upperTime = _currentTime.et + etSpread; - - std::vector images; - for (Image& i : _images) { - if (i.beginning <= upperTime && i.ending >= lowerTime) - images.push_back(&i); - } - - drawImages(painter, timelineRect, images, lowerTime, upperTime); - - - // Draw current time - painter.setBrush(QBrush(Qt::black)); - painter.setPen(QPen(Qt::black, 2)); - painter.drawLine( - QPointF(0, timelineRect.height() / 2), - QPointF(timelineRect.width(), timelineRect.height() / 2) - ); - painter.drawText( - timelineRect.width(), - timelineRect.height() / 2 + TextOffset, - QString::fromStdString(_currentTime.time) - ); -} - -void TimelineWidget::drawLegend(QPainter& painter, QRectF rect) { - static const int Padding = 5; - static const int BoxSize = 20; - - int currentHorizontalPosition = Padding; - int currentVerticalPosition = Padding + BoxSize + Padding; - - // Draw Targets - // Draw Instruments - for (int i = 0; i < _instruments.size(); ++i) { - if (i == _instruments.size() / 3 || i == _instruments.size() * 2 / 3) { - currentVerticalPosition += BoxSize + Padding; - currentHorizontalPosition = Padding; - } - - const std::string& instrument = _instruments[i]; - ; - painter.setBrush(QBrush(InstrumentColors[QString::fromStdString(instrument)])); - painter.setPen(QPen(InstrumentColors[QString::fromStdString(instrument)])); - painter.drawRect( - currentHorizontalPosition, - currentVerticalPosition, - BoxSize, - BoxSize - ); - currentHorizontalPosition += BoxSize + Padding; - - painter.setPen(QPen(QColor(200, 200, 200))); - //painter.setPen(QPen(Qt::black)); - painter.drawText( - currentHorizontalPosition, - currentVerticalPosition + BoxSize / 2 + TextOffset, - InstrumentConversion[QString::fromStdString(instrument)] - ); - currentHorizontalPosition += 125; - } -} - -void TimelineWidget::setCurrentTime(std::string currentTime, double et) { - _currentTime.time = std::move(currentTime); - _currentTime.et = std::move(et); - repaint(); - -} - -void TimelineWidget::drawImages( - QPainter& painter, - QRectF timelineRect, - std::vector images, - double minimumTime, double maximumTime) -{ - std::set instrumentSet; - for (Image* i : images) { - for (std::string instrument : i->instruments) { - instrumentSet.insert(instrument); - } - } - std::map instruments; - for (auto it = instrumentSet.begin(); it != instrumentSet.end(); ++it) - instruments[*it] = std::distance(instrumentSet.begin(), it); - - for (Image* i : images) { - double tBeg = (i->beginning - minimumTime) / (maximumTime - minimumTime); - tBeg = std::max(tBeg, 0.0); - double tEnd = (i->ending - minimumTime) / (maximumTime - minimumTime); - tEnd = std::min(tEnd, 1.0); - - int loc = timelineRect.top() + timelineRect.height() * tBeg; - int height = (timelineRect.top() + timelineRect.height() * tEnd) - loc; - height = std::max(height, 5); - - if (loc + height > timelineRect.height()) { - height = timelineRect.height() - loc; - } - - std::string target = i->target; - auto it = std::find(_targets.begin(), _targets.end(), target); -// int iTarget = std::distance(_targets.begin(), it); - - for (std::string instrument : i->instruments) { - auto it = std::find(_instruments.begin(), _instruments.end(), instrument); - if (it == _instruments.end()) { - qDebug() << "Instrument not found"; - } - - painter.setBrush( - QBrush(InstrumentColors[QString::fromStdString(instrument)]) - ); - - double width = timelineRect.width() / instruments.size(); - double pos = instruments[instrument] * width; - - painter.drawRect(pos, loc, width, height); - } - - if (height >= 5) { - painter.setBrush(QBrush(Qt::black)); - painter.setPen(QPen(Qt::black)); - QString line = QString::fromStdString(i->beginningString) + QString(" (") + - QString::fromStdString(i->target) + QString(")"); - - painter.drawText(timelineRect.width(), loc + height / 2 + TextOffset, line); - } - } -} - -void TimelineWidget::socketConnected() { - setDisabled(false); -} - -void TimelineWidget::socketDisconnected() { - setDisabled(true); - _images.clear(); - _instruments.clear(); - _targets.clear(); -} - -std::string TimelineWidget::nextTarget() const { - auto it = std::lower_bound( - _images.begin(), - _images.end(), - _currentTime.et, - [](const Image& i, double et) { return i.beginning < et; } - ); - if (it != _images.end()) { - return it->target; - } - else { - return ""; - } -} diff --git a/apps/TimelineView/timelinewidget.h b/apps/TimelineView/timelinewidget.h deleted file mode 100644 index e5fcc440c0..0000000000 --- a/apps/TimelineView/timelinewidget.h +++ /dev/null @@ -1,72 +0,0 @@ -/***************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2019 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ - -#ifndef __OPENSPACE_APP_TIMELINEVIEW___TIMELINEWIDGET___H__ -#define __OPENSPACE_APP_TIMELINEVIEW___TIMELINEWIDGET___H__ - -#include - -#include "common.h" - -#include -#include -#include - -class QPaintEvent; - -class TimelineWidget : public QWidget { -Q_OBJECT -public: - TimelineWidget(QWidget* parent); - - void setData(std::vector images, std::map targetMap, - std::map instrumentMap); - void setCurrentTime(std::string currentTime, double et); - void socketConnected(); - void socketDisconnected(); - - std::string nextTarget() const; - -protected: - void paintEvent(QPaintEvent* event); - void drawContent(QPainter& painter, QRectF rect); - void drawLegend(QPainter& painter, QRectF rect); - void drawImages(QPainter& painter, QRectF timelineRect, std::vector images, - double minimumTime, double maximumTime); - -private: - std::vector _images; - std::map _targetMap; - std::map _instrumentMap; - - std::vector _targets; - std::vector _instruments; - - struct { - std::string time; - double et; - } _currentTime; -}; - -#endif // __OPENSPACE_APP_TIMELINEVIEW___TIMELINEWIDGET___H__ diff --git a/ext/ghoul b/ext/ghoul index 611f96b403..ab9b4d1763 160000 --- a/ext/ghoul +++ b/ext/ghoul @@ -1 +1 @@ -Subproject commit 611f96b403ced4472f049885461260026b0554a3 +Subproject commit ab9b4d1763b472f59be7592856c756bfcbd2d0ee diff --git a/include/openspace/interaction/touchbar.h b/include/openspace/interaction/touchbar.h index beae46641d..3b769a03f9 100644 --- a/include/openspace/interaction/touchbar.h +++ b/include/openspace/interaction/touchbar.h @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * diff --git a/modules/space/rendering/renderablesmallbody.cpp b/modules/space/rendering/renderablesmallbody.cpp index 38a0a94c86..eb486a5035 100644 --- a/modules/space/rendering/renderablesmallbody.cpp +++ b/modules/space/rendering/renderablesmallbody.cpp @@ -1,26 +1,26 @@ - /**************************************************************************************** - * * - * OpenSpace * - * * - * Copyright (c) 2014-2020 * - * * - * Permission is hereby granted, free of charge, to any person obtaining a copy of this * - * software and associated documentation files (the "Software"), to deal in the Software * - * without restriction, including without limitation the rights to use, copy, modify, * - * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * - * permit persons to whom the Software is furnished to do so, subject to the following * - * conditions: * - * * - * The above copyright notice and this permission notice shall be included in all copies * - * or substantial portions of the Software. * - * * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * - * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * - * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * - * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * - ****************************************************************************************/ +/**************************************************************************************** + * * + * OpenSpace * + * * + * Copyright (c) 2014-2020 * + * * + * Permission is hereby granted, free of charge, to any person obtaining a copy of this * + * software and associated documentation files (the "Software"), to deal in the Software * + * without restriction, including without limitation the rights to use, copy, modify, * + * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * + * permit persons to whom the Software is furnished to do so, subject to the following * + * conditions: * + * * + * The above copyright notice and this permission notice shall be included in all copies * + * or substantial portions of the Software. * + * * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * + * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * + * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF * + * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * + * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * + ****************************************************************************************/ #include diff --git a/modules/space/tasks/generatedebrisvolumetask.cpp b/modules/space/tasks/generatedebrisvolumetask.cpp index 2922de72b7..d7bf763a45 100644 --- a/modules/space/tasks/generatedebrisvolumetask.cpp +++ b/modules/space/tasks/generatedebrisvolumetask.cpp @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * diff --git a/modules/space/tasks/generatedebrisvolumetask.h b/modules/space/tasks/generatedebrisvolumetask.h index 005936213d..887f75be60 100644 --- a/modules/space/tasks/generatedebrisvolumetask.h +++ b/modules/space/tasks/generatedebrisvolumetask.h @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * @@ -21,8 +21,9 @@ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE * * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * ****************************************************************************************/ -#ifndef __OPENSPACE_MODULE_SPACE___GENERATERDEBRISVOLUMETASK___H__ -#define __OPENSPACE_MODULE_SPACE___GENERATERDEBRISVOLUMETASK___H__ + +#ifndef __OPENSPACE_MODULE_SPACE___GENERATEDEBRISVOLUMETASK___H__ +#define __OPENSPACE_MODULE_SPACE___GENERATEDEBRISVOLUMETASK___H__ #include #include @@ -69,11 +70,8 @@ private: // not sure if it should be local function or hidden function. //std::vector readTLEFile(const std::string& filename); - }; - - } // namespace volume } // namespace openspace diff --git a/modules/webbrowser/src/processhelpermac.cpp b/modules/webbrowser/src/processhelpermac.cpp index b26788b629..f39f312b8f 100644 --- a/modules/webbrowser/src/processhelpermac.cpp +++ b/modules/webbrowser/src/processhelpermac.cpp @@ -2,7 +2,7 @@ * * * OpenSpace * * * - * Copyright (c) 2014-2019 * + * Copyright (c) 2014-2020 * * * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * * software and associated documentation files (the "Software"), to deal in the Software * diff --git a/support/coding/check_style_guide.py b/support/coding/check_style_guide.py index 34d03f6122..8b23b4027f 100644 --- a/support/coding/check_style_guide.py +++ b/support/coding/check_style_guide.py @@ -3,7 +3,7 @@ """ OpenSpace -Copyright (c) 2014-2018 +Copyright (c) 2014-2020 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -59,7 +59,7 @@ import os import re import sys -current_year = '2019' +current_year = '2020' is_strict_mode = False is_silent_mode = False diff --git a/support/coding/convert_tabs.py b/support/coding/convert_tabs.py index a7ae4d0b49..21425ae092 100644 --- a/support/coding/convert_tabs.py +++ b/support/coding/convert_tabs.py @@ -1,7 +1,7 @@ """ OpenSpace -Copyright (c) 2014-2018 +Copyright (c) 2014-2020 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/support/coding/count_includes.py b/support/coding/count_includes.py index 96cd39d9da..12088368cd 100644 --- a/support/coding/count_includes.py +++ b/support/coding/count_includes.py @@ -1,7 +1,7 @@ """ OpenSpace -Copyright (c) 2014-2018 +Copyright (c) 2014-2020 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/support/coding/new_files.py b/support/coding/new_files.py index ca3a3753ba..6721943f33 100644 --- a/support/coding/new_files.py +++ b/support/coding/new_files.py @@ -1,7 +1,7 @@ """ OpenSpace -Copyright (c) 2014-2018 +Copyright (c) 2014-2020 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/support/coding/remove_byte_order_mark.py b/support/coding/remove_byte_order_mark.py index b663e379d6..8095c6d835 100644 --- a/support/coding/remove_byte_order_mark.py +++ b/support/coding/remove_byte_order_mark.py @@ -1,7 +1,7 @@ """ OpenSpace -Copyright (c) 2014-2018 +Copyright (c) 2014-2020 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software