-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 3392a64
Showing
66 changed files
with
13,569 additions
and
0 deletions.
There are no files selected for viewing
This file contains 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,65 @@ | ||
# This file is used to ignore files which are generated | ||
# ---------------------------------------------------------------------------- | ||
|
||
*~ | ||
*.autosave | ||
*.a | ||
*.core | ||
*.moc | ||
*.o | ||
*.obj | ||
*.orig | ||
*.rej | ||
*.so | ||
*.so.* | ||
*_pch.h.cpp | ||
*_resource.rc | ||
*.qm | ||
.#* | ||
*.*# | ||
core | ||
!core/ | ||
tags | ||
.DS_Store | ||
.directory | ||
*.debug | ||
Makefile* | ||
*.prl | ||
*.app | ||
moc_*.cpp | ||
moc_*.h | ||
ui_*.h | ||
*.qmlc | ||
qrc_*.cpp | ||
Thumbs.db | ||
*.res | ||
*.rc | ||
/.qmake.cache | ||
/.qmake.stash | ||
|
||
# qtcreator generated files | ||
*.pro.user* | ||
|
||
# QtCreator local machine specific files for imported projects | ||
*creator.user* | ||
|
||
*_qmlcache.qrc | ||
|
||
# QtCreator Qml | ||
*.qmlproject.user | ||
*.qmlproject.user.* | ||
|
||
# MinGW generated files | ||
*.Debug | ||
*.Release | ||
|
||
# Python byte code | ||
*.pyc | ||
|
||
# Binaries | ||
# -------- | ||
*.dll | ||
*.exe | ||
|
||
|
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains 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,95 @@ | ||
<a name="Timekeeper" /> | ||
|
||
<p align="center"> | ||
<img src="https://www.mediafire.com/convkey/fa55/yajr055h6hk5ejg6g.jpg" alt="Timekeeper" /> | ||
</p> | ||
|
||
--- | ||
|
||
<p align="center"> | ||
<a href="https://github.com/skauertz/Timekeeper/releases"> | ||
<img src="https://img.shields.io/badge/platform-Windows%20%7C%20Linux-lightgrey.svg" alt="Releases" /> | ||
</a> | ||
<a href="https://github.com/skauertz/Timekeeper/blob/master/LICENSE"> | ||
<img src="https://img.shields.io/badge/license-GPLv3-blue.svg" alt="GPLv3" /> | ||
</a> | ||
</p> | ||
|
||
--- | ||
|
||
<p align="center"><b> | ||
Timekeeper is a simple time-tracking app based on Qt and QML. | ||
</b></p> | ||
|
||
--- | ||
|
||
Timekeeper is a simple app to facilitate time tracking over various tasks and provide some simple statistics on it. It is mainly meant to support more accurate booking of time to different projects, but it can also be used for other purposes, from monitoring speaker time in plenary discussions to tracking how much time you spend in various video games. | ||
|
||
Timekeeper is a purely local application. None of your data is saved in the Cloud, and no online account is necessary. All your data is saved locally in a file you specify and can optionally be encrypted. | ||
|
||
Timekeeper is currently considered in Beta phase, with a lot of testing already done by the author, and all features considered complete. Nevertheless, <b>bugs are possible</b>, so keep backups of your data files and don’t hesitate to open an issue if something does not work as expected. | ||
|
||
--- | ||
|
||
### Windows Installation | ||
A release package for Windows can be downloaded from the [Release] page. | ||
|
||
Timekeeper does not require system-wide installation. All necessary libraries are included in the download. Just extract the archive in a location of your choice and start `Timekeeper.exe` from there. | ||
|
||
Timekeeper has been tested on Windows 10 only. Other versions of Windows may work, but are not officially supported. | ||
|
||
--- | ||
|
||
### Linux Installation | ||
A release package for Linux can be downloaded from the [Release] page. | ||
|
||
Timekeeper does not require system-wide installation. All necessary libraries are included in the download. Just extract the archive in a location of your choice and start it by launching `Timekeeper.sh` from there. This makes sure Timekeeper uses the Qt libraries provided with the download instead of the system libraries. | ||
|
||
Note: Make sure both `Timekeeper` and `Timekeeper.sh` are made executable, or the application won't run. | ||
|
||
--- | ||
|
||
### Compiling from source | ||
Timekeeper has been developed with QtCreator 4.6.2, and the source code repository includes a project file for it. This should allow you to import the project directly into QtCreator. Provided you have an appropriate kit for your platform you should be able to compile it without any problems. | ||
|
||
Timekeeper has been developed using Qt 5.11.1. Any Qt version later than this should be compatible. | ||
|
||
--- | ||
|
||
### Screenshots | ||
|
||
![Main Window](https://www.mediafire.com/convkey/db27/1zvj5hwooze575x6g.jpg) | ||
![Report Window](https://www.mediafire.com/convkey/b4a1/d5bsfgkvshzogfv6g.jpg) | ||
|
||
--- | ||
|
||
### Features | ||
- Manual tracking of time spent on various tasks | ||
- Report window showing simple statistics on a daily, monthly and yearly basis | ||
- Modification and reallocation of time from one task to one or multiple others | ||
- Sorting of task list | ||
- Encryption of time and task data | ||
- Export of time and task data to CSV format | ||
|
||
--- | ||
|
||
### Contributions | ||
Timekeeper is currently considered feature-complete, but that doesn't mean new features may not be added in the future. If you think about a feature that may be useful to add, feel free to open an [issue]. | ||
|
||
Some features that may be added in a future release are: | ||
|
||
* Verification mechanism when changing encryption password | ||
* Compensate for time spent in suspend or hibernate with a running task | ||
* Allow opening the app with a data file as argument | ||
* Import from CSV | ||
* Customizable colors | ||
|
||
--- | ||
|
||
### Bug reports | ||
Bug reports are always welcome. If you think you have found a bug, please open an [issue] for it. | ||
|
||
|
||
[User Manual]: /doc/TimekeeperUserGuide.pdf | ||
[Release]: https://github.com/skauertz/Timekeeper/releases | ||
[issue]: https://github.com/skauertz/Timekeeper/issues |
This file contains 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,95 @@ | ||
QT += qml quick gui widgets | ||
CONFIG += c++11 | ||
|
||
# The following define makes your compiler emit warnings if you use | ||
# any feature of Qt which as been marked deprecated (the exact warnings | ||
# depend on your compiler). Please consult the documentation of the | ||
# deprecated API in order to know how to port your code away from it. | ||
DEFINES += QT_DEPRECATED_WARNINGS | ||
|
||
# You can also make your code fail to compile if you use deprecated APIs. | ||
# In order to do so, uncomment the following line. | ||
# You can also select to disable deprecated APIs only up to a certain version of Qt. | ||
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 | ||
|
||
SOURCES += \ | ||
main.cpp \ | ||
crypto/AES256.cpp \ | ||
crypto/AESCommon.cpp \ | ||
crypto/BlockCipher.cpp \ | ||
crypto/CBC.cpp \ | ||
crypto/Cipher.cpp \ | ||
crypto/Crypto.cpp \ | ||
crypto/Hash.cpp \ | ||
crypto/pbkdf2.cpp \ | ||
crypto/SHA1.cpp \ | ||
crypto/SHA256.cpp \ | ||
src/CTaskModel.cpp \ | ||
src/CTrayManager.cpp | ||
|
||
RESOURCES += qml.qrc | ||
|
||
# Additional import path used to resolve QML modules in Qt Creator's code model | ||
QML_IMPORT_PATH = | ||
|
||
# Additional import path used to resolve QML modules just for Qt Quick Designer | ||
QML_DESIGNER_IMPORT_PATH = | ||
|
||
# Default rules for deployment. | ||
qnx: target.path = /tmp/$${TARGET}/bin | ||
else: unix:!android: target.path = /opt/$${TARGET}/bin | ||
!isEmpty(target.path): INSTALLS += target | ||
|
||
RC_ICONS = icons/Timekeeper_SysTray.ico | ||
|
||
DISTFILES += \ | ||
icons/bars-solid.png \ | ||
icons/calendar-alt-regular.png \ | ||
icons/edit-regular.png \ | ||
icons/exclamation-triangle-solid.png \ | ||
icons/eye-regular.png \ | ||
icons/eye-slash-regular.png \ | ||
icons/home-solid.png \ | ||
icons/lock-solid.png \ | ||
icons/minus-square-regular.png \ | ||
icons/plus-circle-solid.png \ | ||
icons/plus-square-regular.png \ | ||
icons/sort-alpha-down-solid.png \ | ||
icons/Timekeeper_Logo.png \ | ||
icons/Timekeeper_SysTray.png \ | ||
icons/Timekeeper_SysTray_Alert.png \ | ||
icons/Timekeeper_SysTray.ico \ | ||
src/AboutWindow.qml \ | ||
src/AddEditWindow.qml \ | ||
src/AddTimeDialog.qml \ | ||
src/AreYouSure.qml \ | ||
src/EditContextMenu.qml \ | ||
src/EditContextMenuReport.qml \ | ||
src/LoadFileDialog.qml \ | ||
src/Notification.qml \ | ||
src/OptionsMenu.qml \ | ||
src/PasswordEntry.qml \ | ||
src/PasswordIncorrect.qml \ | ||
src/ReallocateDialog.qml \ | ||
src/ReportWindow.qml \ | ||
src/SaveFileDialog.qml \ | ||
src/SettingsWindow.qml \ | ||
src/SortMenu.qml | ||
|
||
HEADERS += \ | ||
crypto/utility/EndianUtil.h \ | ||
crypto/utility/LimbUtil.h \ | ||
crypto/utility/ProgMemUtil.h \ | ||
crypto/utility/RotateUtil.h \ | ||
crypto/AES.h \ | ||
crypto/BlockCipher.h \ | ||
crypto/CBC.h \ | ||
crypto/Cipher.h \ | ||
crypto/Crypto.h \ | ||
crypto/Hash.h \ | ||
crypto/pbkdf2.h \ | ||
crypto/SHA1.h \ | ||
crypto/SHA256.h \ | ||
src/CTaskModel.h \ | ||
src/CTrayManager.h | ||
|
Oops, something went wrong.