diff --git a/LICENSE.md b/LICENSE.md index bd06286..d7cbf7f 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -630,7 +630,7 @@ attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. - Logarithm Graph Creator - Create graphs with logarithm scales. + Logarithmic Plotter - Create graphs with logarithm scales. Copyright (C) 2020 Ad5001 This program is free software: you can redistribute it and/or modify @@ -652,7 +652,7 @@ mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: - Logarithm Graph Creator Copyright (C) 2020 Ad5001 + Logarithmic Plotter Copyright (C) 2020 Ad5001 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. diff --git a/qml/About.qml b/qml/About.qml new file mode 100644 index 0000000..d9c59f4 --- /dev/null +++ b/qml/About.qml @@ -0,0 +1,107 @@ +/** + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +import QtQuick 2.12 +import QtQuick.Dialogs 1.3 as D +import QtQuick.Controls 2.12 + + +D.Dialog { + id: about + title: `About Logarithmic Plotter` + width: 400 + height: 600 + + Image { + id: logo + source: "../logplotter.svg" + sourceSize.width: 64 + sourceSize.height: 64 + width: 64 + height: 64 + anchors.horizontalCenter: parent.horizontalCenter + anchors.rightMargin: width/2 + anchors.top: parent.top + anchors.topMargin: 10 + } + + Text { + id: appName + anchors.top: logo.bottom + anchors.left: parent.left + anchors.topMargin: 10 + horizontalAlignment: Text.AlignHCenter + width: parent.width + wrapMode: Text.WordWrap + font.pixelSize: 25 + text: "Logarithmic Plotter v" + Helper.getVersion() + } + + Text { + id: description + anchors.top: appName.bottom + anchors.left: parent.left + anchors.topMargin: 10 + horizontalAlignment: Text.AlignHCenter + width: parent.width + wrapMode: Text.WordWrap + font.pixelSize: 18 + text: "Create graphs with logarithm scales." + } + + Text { + id: debugInfos + anchors.top: description.bottom + anchors.left: parent.left + anchors.topMargin: 10 + horizontalAlignment: Text.AlignHCenter + width: parent.width + wrapMode: Text.WordWrap + font.pixelSize: 14 + text: Helper.getDebugInfos() + } + + Text { + id: copyrightInfos + anchors.top: debugInfos.bottom + anchors.horizontalCenter: parent.horizontalCenter + anchors.topMargin: 10 + width: Math.min(410, parent.width) + wrapMode: Text.WordWrap + textFormat: Text.RichText + font.pixelSize: 13 + text: "Copyright (C) 2021 Ad5001 <mail@ad5001.eu>
+
+This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/." + onLinkActivated: Helper.openUrl(link) + } + + Button { + id: openIssueButton + anchors.top: copyrightInfos.bottom + anchors.horizontalCenter: parent.horizontalCenter + anchors.topMargin: 10 + text: 'Report a bug' + icon.name: 'bug' + onClicked: Helper.openUrl('https://git.ad5001.eu/Ad5001/LogarithmPlotter') + } +} diff --git a/qml/AppMenuBar.qml b/qml/AppMenuBar.qml index 5550c16..38d3a1e 100644 --- a/qml/AppMenuBar.qml +++ b/qml/AppMenuBar.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -104,6 +104,7 @@ MenuBar { Action { text: qsTr("&About") icon.name: 'about' + onTriggered: about.open() } } } diff --git a/qml/ComboBoxSetting.qml b/qml/ComboBoxSetting.qml index 1a8097b..5c6b99b 100644 --- a/qml/ComboBoxSetting.qml +++ b/qml/ComboBoxSetting.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/FileDialog.qml b/qml/FileDialog.qml index 49c9e66..2c0abf0 100644 --- a/qml/FileDialog.qml +++ b/qml/FileDialog.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/History.qml b/qml/History.qml index f030365..05f6d4a 100644 --- a/qml/History.qml +++ b/qml/History.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/HistoryBrowser.qml b/qml/HistoryBrowser.qml index 3f2d162..b91a24f 100644 --- a/qml/HistoryBrowser.qml +++ b/qml/HistoryBrowser.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/Icon.qml b/qml/Icon.qml index 3aee332..3d4765b 100644 --- a/qml/Icon.qml +++ b/qml/Icon.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/LogGraph.qml b/qml/LogGraph.qml index 4b3284b..8d685d6 100644 --- a/qml/LogGraph.qml +++ b/qml/LogGraph.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -37,6 +37,8 @@ ApplicationWindow { menuBar: AppMenuBar {} + About {id: about} + Drawer { id: sidebar width: 300 diff --git a/qml/LogGraphCanvas.qml b/qml/LogGraphCanvas.qml index cbad153..54e7e25 100644 --- a/qml/LogGraphCanvas.qml +++ b/qml/LogGraphCanvas.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/ObjectLists.qml b/qml/ObjectLists.qml index ea5fd9a..ecf15d7 100644 --- a/qml/ObjectLists.qml +++ b/qml/ObjectLists.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/Settings.qml b/qml/Settings.qml index b8bddd5..40a627e 100644 --- a/qml/Settings.qml +++ b/qml/Settings.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/TextSetting.qml b/qml/TextSetting.qml index d3efe16..1ccafd7 100644 --- a/qml/TextSetting.qml +++ b/qml/TextSetting.qml @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/js/historylib.js b/qml/js/historylib.js index fd97c59..f7eee82 100644 --- a/qml/js/historylib.js +++ b/qml/js/historylib.js @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/js/mathlib.js b/qml/js/mathlib.js index a4af435..0aedc2b 100644 --- a/qml/js/mathlib.js +++ b/qml/js/mathlib.js @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/js/objects.js b/qml/js/objects.js index 72e3527..5685ca4 100644 --- a/qml/js/objects.js +++ b/qml/js/objects.js @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/js/parameters.js b/qml/js/parameters.js index f7bf27a..6231552 100644 --- a/qml/js/parameters.js +++ b/qml/js/parameters.js @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/qml/js/utils.js b/qml/js/utils.js index 3258b2c..8cc2ab2 100644 --- a/qml/js/utils.js +++ b/qml/js/utils.js @@ -1,6 +1,6 @@ /** - * Logarithm Graph Creator - Create graphs with logarithm scales. - * Copyright (C) 2020 Ad5001 + * Logarithmic Plotter - Create graphs with logarithm scales. + * Copyright (C) 2021 Ad5001 * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/run.py b/run.py index bdec8bc..b5f832b 100644 --- a/run.py +++ b/run.py @@ -1,5 +1,5 @@ """ - * Logarithm Graph Creator - Create graphs with logarithm scales. + * Logarithmic Plotter - Create graphs with logarithm scales. * Copyright (C) 2020 Ad5001 * * This program is free software: you can redistribute it and/or modify @@ -20,16 +20,20 @@ from PySide2.QtWidgets import QApplication, QFileDialog from PySide2.QtQml import QQmlApplicationEngine, qmlRegisterType from PySide2.QtCore import Qt, QObject, Signal, Slot, Property from PySide2.QtGui import QIcon +from PySide2 import __version__ as PySide2_version import os import tempfile from platform import release as os_release from json import dumps -from sys import platform, argv +from sys import platform, argv, version as sys_version +import webbrowser + pwd = os.getcwd() os.chdir(os.path.dirname(os.path.realpath(__file__))) +__VERSION__ = "0.0.1.dev0" tempfile = tempfile.mkstemp(suffix='.png')[1] @@ -80,6 +84,22 @@ class Helper(QObject): global tempfile # TODO: Better copy system os.system("xclip -selection clipboard -t image/png -i " + tempfile) + + @Slot(result=str) + def getVersion(self): + return __VERSION__ + + @Slot(result=str) + def getDebugInfos(self): + """ + Returns the version info about Qt, PySide2 & Python + """ + return "Built with PySide2 (Qt) v{} and python v{}".format(PySide2_version, sys_version.split("\n")[0]) + + @Slot(str) + def openUrl(self, url): + webbrowser.open(url) + app = QApplication(argv) app.setApplicationName("Logarithmic Plotter")