-
Notifications
You must be signed in to change notification settings - Fork 0
please #10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Microsh1t
wants to merge
70
commits into
main
Choose a base branch
from
dev
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
please #10
Changes from 60 commits
Commits
Show all changes
70 commits
Select commit
Hold shift + click to select a range
8479950
python is very very bad I hate it
Microsh1t 396d6b7
Update README.md
Microsh1t 1b45648
Update to LoggerGui.ui
Microsh1t fdf36d7
Update to LoggerGUI.py
Microsh1t fea7832
uploaded new files
Microsh1t 48ced81
fixed bug: crashing when trying to save a file
Microsh1t d3a0a07
fixed bug: crashing when trying to save a file
Microsh1t 648423a
new line
Microsh1t e987f83
new line
Microsh1t 5d7a445
new file dialog for log store location
Microsh1t 18547fc
new file dialog for log store location
Microsh1t 0fc7037
better file dialog for log store location
Microsh1t e9d83d4
uploaded the .ui file for QT GUIs
Microsh1t dfbc011
fixed crash when specifically Windows sucks
Microsh1t a17a6bb
fixed crash when specifically Windows sucks fr fr no cap
Microsh1t fe64c51
fixed crash when specifically Windows sucks fr fr this time no cap
Microsh1t 8639fb5
fixed crash when specifically Windows sucks fr fr this time no cap I …
Microsh1t fc7e9e8
fixed path saving for windows loosers
Microsh1t ca45eaf
fixed path saving for windows loosers fr this time
Microsh1t 81de5c1
added owr awesome new logo (created in GIMP)
Microsh1t 4302e39
added a source directory called src
Microsh1t 888e079
Merge pull request #1 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t 561e347
it's been so long
Microsh1t d6f4fe2
updated readme with the build command
Microsh1t 6ddc144
cleaned
Microsh1t 9102616
cleaned 2
Microsh1t 003750c
updated build command to include crappy (not) operating systems
Microsh1t fe4920c
Merge pull request #2 from Spikes-2212-Programming-Guild/dev
Microsh1t 609603f
Merge pull request #3 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t 5dcb51c
fixed bug: infinite loop when saving a file
Microsh1t ba9cd3f
Merge remote-tracking branch 'origin/tzintzenet-dev' into tzintzenet-dev
Microsh1t 4b11f3a
added an update button to update the app
Microsh1t 64fc1cb
updated the text for the default gui before log
Microsh1t 8940e1e
updated the md file to include pyuic6
Microsh1t d457a04
now when saving log gui shows the default text again
Microsh1t d31c335
added about "dialog"
Microsh1t 70e95ed
added about "dialog" 2
Microsh1t b4e872d
added source code option
Microsh1t 06ba736
added new lines (because python)
Microsh1t 629c48d
removed imports
Microsh1t a0a1cda
changed the console new line to the end of the line (instead of the s…
Microsh1t 7804185
added auto scrolling & indicator
Microsh1t 461e995
removed stupid
Microsh1t 3a43510
Merge pull request #4 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t 41ea221
added instructions is settings
Microsh1t f301162
Merge pull request #5 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t 6ef6e4d
added icon
Microsh1t 7a6cc40
Merge pull request #6 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t afc5762
updated build command for inferior (not) operating systems
Microsh1t 7ed9571
sadly python convention
Microsh1t a48eca8
awesome README.md update!!!11!!1!
Microsh1t 1e82a0a
added Screenshot1.png because
Microsh1t ef36be9
Merge pull request #7 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t 69bb339
added note for Mr Borito's default value
Microsh1t 7a223e9
Merge pull request #8 from Spikes-2212-Programming-Guild/dev
Microsh1t 660c81b
added credits + GIMP files
Microsh1t 7177836
Merge remote-tracking branch 'origin/tzintzenet-dev' into tzintzenet-dev
Microsh1t ef4970d
update to logging values in README.md
Microsh1t 5e0b1ee
update 2 to logging values in README.md
Microsh1t c51a456
Merge pull request #9 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t fabc09d
hello
2cea245
Merge pull request #11 from Spikes-2212-Programming-Guild/tzintzenet-dev
Microsh1t edc6aff
updated the readme
763128d
added a print for easy debugging
423c0b7
added a warning for Windows losers
a8e7630
edited a comment
6c4192e
fixed bug when saving log files with a name that already exists & del…
f647812
added a clarification to the readme
eb949a8
conventions & fixes to things that conventions broke because python
2586f1c
:(
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Empty file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,72 @@ | ||
# SpikesLogger | ||
## Warning! | ||
### [python sucks](https://gitlab.com/TzintzeneT/dont-use-python), do not use python at home. | ||
|
||
# SpikesLogger | ||
 | ||
|
||
Welcome to the SpikesLogger official repo! | ||
this app is the desktop part of the SpikesLogger real-time FRC logger. | ||
The SpikesLogger uses the NetworkTables server on the (holy) roborio to log values from the robot to your computer. | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
You can download the latest release from [here](https://github.com/Spikes-2212-Programming-Guild/SpikesLogger/releases), or build it yourself with the commands below. | ||
the SpikesLogger is designed to replace the "System.out.println()" you do every time you want to log some value when you run your code. | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
it is meant to be used for debugging but feel free to use it as you want. | ||
|
||
# logging values | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
1. _FIRST_, set the "server IP" in the app settings to your roborio's ip, | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
and make sure you are connected to the robot's router. | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
2. _SECOND_, to log the values from your robot, you can use a couple of methods. | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
**note:** make sure to not log the temp value in the app settings, otherwise it will not be logged. | ||
if for some odd reason you want to log "SeaOttersAreSoFuckingCuteINeedThemInMyRoomRightNow", | ||
you can change it to a different value. | ||
|
||
### using SpikesLib2 | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
you can [install SpikesLib2](https://github.com/Spikes-2212-Programming-Guild/SpikesLib2#installation) | ||
and use the built-in SpikesLogger using | ||
``` | ||
SpikesLogger sl = new SpikesLogger(); | ||
sl.log(value); | ||
``` | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
|
||
### Putting values in to the NetworkTables | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
Although not recommended, you can put the values that you want to log at a certain location in the NetworkTables, for example: SpikesLogger/output. | ||
After that, you need to put in the app settings the NetworkTables location at the "Logger Location" and hit apply. | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
Also **make sure** to not update the value periodically unless you want to log that same value periodically. | ||
|
||
this method is not recommended because you can accidentally put the value in the wrong place, | ||
or do other stupid things you won't notice and will drive you insane. | ||
|
||
|
||
### Creating your own robot logger | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
You can create your own robot logger in your preferred language (Java/C++/Python) to use with this desktop app. | ||
you can take a look at the SpikesLogger class in SpikesLib2 for inspiration or just create one from scratch. | ||
To do that, you'll need to make sure you are putting all of the values at the same location at the NetworkTables, | ||
and you also need to put in the desktop app settings the "Logger Location" as that NetworkTables location. | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
|
||
# build commands: | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
### for linux: | ||
```commandline | ||
pyinstaller --onefile --add-data "SpikesLoggerSmallLogo.png:." SpikesLogger.py | ||
``` | ||
### for windows and mac: | ||
```commandline | ||
pyinstaller --onefile --windowed --icon=SpikesLoggerIcon.ico --add-data "SpikesLoggerSmallLogo.png:." SpikesLogger.py | ||
``` | ||
|
||
## convert the .ui GUI file to Python | ||
```commandline | ||
pyuic6 LoggerGUI.ui -o LoggerGUI.py | ||
``` | ||
|
||
## created using pain and FOSS | ||
This app is licensed under the awesome GPLv3 licence, and written in Python (unfortunately). | ||
|
||
### other projects making this app possible: | ||
- QT (PyQt6) | ||
- RobotPy (PyNetworkTables) | ||
- pyinstaller (Compiling this shit) | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- GIMP (logo design) | ||
- PyCharm (because VSCode is broken and PyCharm is awesome unlike python) |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
import json | ||
|
||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. maybe create settings class? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Python OOP? POOP? |
||
def applyChanges(ip, save_location, logger_nt_location, temp_value): | ||
conf_data = { | ||
"logger-nt-location": logger_nt_location, | ||
"save-location": save_location, | ||
"serverip": ip, | ||
"temp-value": temp_value | ||
} | ||
with open('../SpikesLog.conf', 'w') as file: | ||
json.dump(conf_data, file) | ||
|
||
|
||
def getData(): | ||
try: | ||
with open('../SpikesLog.conf', 'r') as json_file: | ||
conf_data = json.load(json_file) | ||
except: | ||
conf_data = { | ||
"logger-nt-location": "SpikesLogger/output", | ||
"save-location": "logs", | ||
"serverip": "255.255.255.255", | ||
"temp-value": "SeaOttersAreSoFuckingCuteINeedThemInMyRoomRightNow" # Thanks to Mr Borito our beloved alumn/mentor who went to FIRST service year | ||
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
Microsh1t marked this conversation as resolved.
Show resolved
Hide resolved
|
||
} | ||
return conf_data |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,196 @@ | ||
# Form implementation generated from reading ui file 'LoggerGUI.ui' | ||
# | ||
# Created by: PyQt6 UI code generator 6.4.2 | ||
# | ||
# WARNING: Any manual changes made to this file will be lost when pyuic6 is | ||
# run again. Do not edit this file unless you know what you are doing. | ||
|
||
|
||
from PyQt6 import QtCore, QtGui, QtWidgets | ||
|
||
|
||
class Ui_SpikesLoggerGuiWindow(object): | ||
def setupUi(self, SpikesLoggerGuiWindow): | ||
SpikesLoggerGuiWindow.setObjectName("SpikesLoggerGuiWindow") | ||
SpikesLoggerGuiWindow.resize(844, 719) | ||
self.centralwidget = QtWidgets.QWidget(parent=SpikesLoggerGuiWindow) | ||
self.centralwidget.setObjectName("centralwidget") | ||
self.gridLayout = QtWidgets.QGridLayout(self.centralwidget) | ||
self.gridLayout.setObjectName("gridLayout") | ||
self.tabWidget = QtWidgets.QTabWidget(parent=self.centralwidget) | ||
self.tabWidget.setObjectName("tabWidget") | ||
self.logsTab = QtWidgets.QWidget() | ||
self.logsTab.setObjectName("logsTab") | ||
self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.logsTab) | ||
self.horizontalLayout_3.setObjectName("horizontalLayout_3") | ||
self.scrollArea = QtWidgets.QScrollArea(parent=self.logsTab) | ||
self.scrollArea.setMaximumSize(QtCore.QSize(16777215, 16777215)) | ||
self.scrollArea.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.SizeAdjustPolicy.AdjustIgnored) | ||
self.scrollArea.setWidgetResizable(True) | ||
self.scrollArea.setAlignment(QtCore.Qt.AlignmentFlag.AlignBottom|QtCore.Qt.AlignmentFlag.AlignJustify) | ||
self.scrollArea.setObjectName("scrollArea") | ||
self.ConsoleScrollArea = QtWidgets.QWidget() | ||
self.ConsoleScrollArea.setGeometry(QtCore.QRect(0, 0, 802, 538)) | ||
self.ConsoleScrollArea.setObjectName("ConsoleScrollArea") | ||
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.ConsoleScrollArea) | ||
self.horizontalLayout_2.setObjectName("horizontalLayout_2") | ||
self.logsConsole = QtWidgets.QLabel(parent=self.ConsoleScrollArea) | ||
self.logsConsole.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignTop) | ||
self.logsConsole.setObjectName("logsConsole") | ||
self.horizontalLayout_2.addWidget(self.logsConsole) | ||
self.scrollArea.setWidget(self.ConsoleScrollArea) | ||
self.horizontalLayout_3.addWidget(self.scrollArea) | ||
self.tabWidget.addTab(self.logsTab, "") | ||
self.settingsTab = QtWidgets.QWidget() | ||
self.settingsTab.setObjectName("settingsTab") | ||
self.verticalLayout = QtWidgets.QVBoxLayout(self.settingsTab) | ||
self.verticalLayout.setSizeConstraint(QtWidgets.QLayout.SizeConstraint.SetDefaultConstraint) | ||
self.verticalLayout.setObjectName("verticalLayout") | ||
self.gridLayout_2 = QtWidgets.QGridLayout() | ||
self.gridLayout_2.setObjectName("gridLayout_2") | ||
self.TempValue = QtWidgets.QLineEdit(parent=self.settingsTab) | ||
self.TempValue.setObjectName("TempValue") | ||
self.gridLayout_2.addWidget(self.TempValue, 3, 2, 1, 1) | ||
self.ServerIP = QtWidgets.QLineEdit(parent=self.settingsTab) | ||
self.ServerIP.setObjectName("ServerIP") | ||
self.gridLayout_2.addWidget(self.ServerIP, 2, 2, 1, 1) | ||
self.label_3 = QtWidgets.QLabel(parent=self.settingsTab) | ||
self.label_3.setObjectName("label_3") | ||
self.gridLayout_2.addWidget(self.label_3, 1, 0, 1, 1) | ||
self.label_4 = QtWidgets.QLabel(parent=self.settingsTab) | ||
self.label_4.setObjectName("label_4") | ||
self.gridLayout_2.addWidget(self.label_4, 2, 0, 1, 1) | ||
self.networkTablesLoggerLocation = QtWidgets.QLineEdit(parent=self.settingsTab) | ||
self.networkTablesLoggerLocation.setInputMask("") | ||
self.networkTablesLoggerLocation.setObjectName("networkTablesLoggerLocation") | ||
self.gridLayout_2.addWidget(self.networkTablesLoggerLocation, 0, 2, 1, 1) | ||
self.label_5 = QtWidgets.QLabel(parent=self.settingsTab) | ||
self.label_5.setObjectName("label_5") | ||
self.gridLayout_2.addWidget(self.label_5, 3, 0, 1, 1) | ||
self.label_2 = QtWidgets.QLabel(parent=self.settingsTab) | ||
self.label_2.setObjectName("label_2") | ||
self.gridLayout_2.addWidget(self.label_2, 0, 0, 1, 1) | ||
self.ChooseDirPushButton = QtWidgets.QPushButton(parent=self.settingsTab) | ||
font = QtGui.QFont() | ||
font.setBold(False) | ||
self.ChooseDirPushButton.setFont(font) | ||
self.ChooseDirPushButton.setCursor(QtGui.QCursor(QtCore.Qt.CursorShape.ArrowCursor)) | ||
self.ChooseDirPushButton.setLayoutDirection(QtCore.Qt.LayoutDirection.LeftToRight) | ||
self.ChooseDirPushButton.setObjectName("ChooseDirPushButton") | ||
self.gridLayout_2.addWidget(self.ChooseDirPushButton, 1, 2, 1, 1) | ||
self.verticalLayout.addLayout(self.gridLayout_2) | ||
self.applyChangesPushButton = QtWidgets.QPushButton(parent=self.settingsTab) | ||
self.applyChangesPushButton.setObjectName("applyChangesPushButton") | ||
self.verticalLayout.addWidget(self.applyChangesPushButton) | ||
self.label_8 = QtWidgets.QLabel(parent=self.settingsTab) | ||
self.label_8.setText("") | ||
self.label_8.setObjectName("label_8") | ||
self.verticalLayout.addWidget(self.label_8) | ||
self.label_6 = QtWidgets.QLabel(parent=self.settingsTab) | ||
font = QtGui.QFont() | ||
font.setPointSize(20) | ||
self.label_6.setFont(font) | ||
self.label_6.setObjectName("label_6") | ||
self.verticalLayout.addWidget(self.label_6) | ||
self.label_7 = QtWidgets.QLabel(parent=self.settingsTab) | ||
self.label_7.setWordWrap(True) | ||
self.label_7.setObjectName("label_7") | ||
self.verticalLayout.addWidget(self.label_7) | ||
spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding) | ||
self.verticalLayout.addItem(spacerItem) | ||
self.tabWidget.addTab(self.settingsTab, "") | ||
self.gridLayout.addWidget(self.tabWidget, 9, 0, 1, 2) | ||
self.horizontalLayout = QtWidgets.QHBoxLayout() | ||
self.horizontalLayout.setObjectName("horizontalLayout") | ||
self.StartPushButton = QtWidgets.QPushButton(parent=self.centralwidget) | ||
self.StartPushButton.setObjectName("StartPushButton") | ||
self.horizontalLayout.addWidget(self.StartPushButton) | ||
self.PausePushButton = QtWidgets.QPushButton(parent=self.centralwidget) | ||
self.PausePushButton.setObjectName("PausePushButton") | ||
self.horizontalLayout.addWidget(self.PausePushButton) | ||
self.SaveAndStopPushButton = QtWidgets.QPushButton(parent=self.centralwidget) | ||
self.SaveAndStopPushButton.setAutoDefault(False) | ||
self.SaveAndStopPushButton.setObjectName("SaveAndStopPushButton") | ||
self.horizontalLayout.addWidget(self.SaveAndStopPushButton) | ||
self.gridLayout.addLayout(self.horizontalLayout, 11, 0, 1, 2) | ||
self.horizontalLayout_4 = QtWidgets.QHBoxLayout() | ||
self.horizontalLayout_4.setObjectName("horizontalLayout_4") | ||
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum) | ||
self.horizontalLayout_4.addItem(spacerItem1) | ||
self.label = QtWidgets.QLabel(parent=self.centralwidget) | ||
font = QtGui.QFont() | ||
font.setPointSize(14) | ||
self.label.setFont(font) | ||
self.label.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter) | ||
self.label.setObjectName("label") | ||
self.horizontalLayout_4.addWidget(self.label) | ||
self.StatusLable = QtWidgets.QLabel(parent=self.centralwidget) | ||
font = QtGui.QFont() | ||
font.setPointSize(14) | ||
self.StatusLable.setFont(font) | ||
self.StatusLable.setObjectName("StatusLable") | ||
self.horizontalLayout_4.addWidget(self.StatusLable) | ||
self.gridLayout.addLayout(self.horizontalLayout_4, 0, 1, 1, 1) | ||
SpikesLoggerGuiWindow.setCentralWidget(self.centralwidget) | ||
self.menubar = QtWidgets.QMenuBar(parent=SpikesLoggerGuiWindow) | ||
self.menubar.setGeometry(QtCore.QRect(0, 0, 844, 23)) | ||
self.menubar.setObjectName("menubar") | ||
self.menuSpikesLogger = QtWidgets.QMenu(parent=self.menubar) | ||
self.menuSpikesLogger.setObjectName("menuSpikesLogger") | ||
self.menuHelp = QtWidgets.QMenu(parent=self.menubar) | ||
self.menuHelp.setObjectName("menuHelp") | ||
SpikesLoggerGuiWindow.setMenuBar(self.menubar) | ||
self.statusbar = QtWidgets.QStatusBar(parent=SpikesLoggerGuiWindow) | ||
self.statusbar.setObjectName("statusbar") | ||
SpikesLoggerGuiWindow.setStatusBar(self.statusbar) | ||
self.actionOpen_file = QtGui.QAction(parent=SpikesLoggerGuiWindow) | ||
self.actionOpen_file.setObjectName("actionOpen_file") | ||
self.actionCreate_new_log = QtGui.QAction(parent=SpikesLoggerGuiWindow) | ||
self.actionCreate_new_log.setObjectName("actionCreate_new_log") | ||
self.actionAbout = QtGui.QAction(parent=SpikesLoggerGuiWindow) | ||
self.actionAbout.setObjectName("actionAbout") | ||
self.actionUpdate = QtGui.QAction(parent=SpikesLoggerGuiWindow) | ||
self.actionUpdate.setObjectName("actionUpdate") | ||
self.actionSource_code = QtGui.QAction(parent=SpikesLoggerGuiWindow) | ||
self.actionSource_code.setObjectName("actionSource_code") | ||
self.menuSpikesLogger.addAction(self.actionUpdate) | ||
self.menuSpikesLogger.addSeparator() | ||
self.menuSpikesLogger.addAction(self.actionSource_code) | ||
self.menuSpikesLogger.addSeparator() | ||
self.menuHelp.addAction(self.actionAbout) | ||
self.menubar.addAction(self.menuSpikesLogger.menuAction()) | ||
self.menubar.addAction(self.menuHelp.menuAction()) | ||
|
||
self.retranslateUi(SpikesLoggerGuiWindow) | ||
self.tabWidget.setCurrentIndex(0) | ||
QtCore.QMetaObject.connectSlotsByName(SpikesLoggerGuiWindow) | ||
|
||
def retranslateUi(self, SpikesLoggerGuiWindow): | ||
_translate = QtCore.QCoreApplication.translate | ||
SpikesLoggerGuiWindow.setWindowTitle(_translate("SpikesLoggerGuiWindow", "Spikes logger")) | ||
self.logsConsole.setText(_translate("SpikesLoggerGuiWindow", "Click start to start logging...")) | ||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.logsTab), _translate("SpikesLoggerGuiWindow", "Logs")) | ||
self.TempValue.setText(_translate("SpikesLoggerGuiWindow", "SeaOttersAreSoFuckingCuteINeedThemInMyRoomRightNow")) | ||
self.ServerIP.setText(_translate("SpikesLoggerGuiWindow", "255.255.255.255")) | ||
self.label_3.setText(_translate("SpikesLoggerGuiWindow", "Logs save location")) | ||
self.label_4.setText(_translate("SpikesLoggerGuiWindow", "Server IP")) | ||
self.networkTablesLoggerLocation.setText(_translate("SpikesLoggerGuiWindow", "SpikesLogger/output")) | ||
self.label_5.setText(_translate("SpikesLoggerGuiWindow", "Temp value")) | ||
self.label_2.setText(_translate("SpikesLoggerGuiWindow", "Logger location")) | ||
self.ChooseDirPushButton.setText(_translate("SpikesLoggerGuiWindow", "/logs")) | ||
self.applyChangesPushButton.setText(_translate("SpikesLoggerGuiWindow", "Apply")) | ||
self.label_6.setText(_translate("SpikesLoggerGuiWindow", "How to use?")) | ||
self.label_7.setText(_translate("SpikesLoggerGuiWindow", "<html><head/><body><p><span style=\" font-style:italic;\">FIRST</span>, make sure you are using a compatible logger on your robot (for example: SpikesLogger from SpikesLib). You can also put the value you want to log at the same location in the networktables as the Logger location in the settings above, although it is not recommended, and you need to make sure to not update the value periodically unless you want to log that same value periodically.</p><p>Enter your roborio IP and choose the location to save the logs to. after that you can start logging by pressing start, pause and save logs. You can change the temp value but make sure to set it to a value that is not likely to be logged.</p><p>To save the settings you can use the apply button.</p></body></html>")) | ||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.settingsTab), _translate("SpikesLoggerGuiWindow", "Settings")) | ||
self.StartPushButton.setText(_translate("SpikesLoggerGuiWindow", "Start")) | ||
self.PausePushButton.setText(_translate("SpikesLoggerGuiWindow", "Pause")) | ||
self.SaveAndStopPushButton.setText(_translate("SpikesLoggerGuiWindow", "Stop and save")) | ||
self.label.setText(_translate("SpikesLoggerGuiWindow", "Status:")) | ||
self.StatusLable.setText(_translate("SpikesLoggerGuiWindow", "<font color=\'red\'>off</font>")) | ||
self.menuSpikesLogger.setTitle(_translate("SpikesLoggerGuiWindow", "SpikesLogger")) | ||
self.menuHelp.setTitle(_translate("SpikesLoggerGuiWindow", "Help")) | ||
self.actionOpen_file.setText(_translate("SpikesLoggerGuiWindow", "Open log")) | ||
self.actionCreate_new_log.setText(_translate("SpikesLoggerGuiWindow", "Create new log")) | ||
self.actionAbout.setText(_translate("SpikesLoggerGuiWindow", "About")) | ||
self.actionUpdate.setText(_translate("SpikesLoggerGuiWindow", "Update")) | ||
self.actionSource_code.setText(_translate("SpikesLoggerGuiWindow", "Source code")) |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.