Skip to main content

NX Solutions Work Log

Project description

NX Work Log

I wrote this program originally in Borland C++ Builder. It adds an icon to the windows system tray that is green when it’s measuring time and red when it’s paused. I use it to measure my working hours, so I can switch it off when doing non work related tasks.

When I found Simon Brunning SysTrayIcon I decided to rewrite the application in Python as I wanted to make some improvements to the tool and no longer wanted to use my outdated version of C++ Builder.

As I was exploring the winpy32 package I found it contains a resource file parser and I thought it would be cool to define the dialog in Microsoft Visual Studio and see how this can be used in Python.

Linux port

As I’m also working on Projects requiring Ubuntu, I wanted to make the tool cross platform.

The Linux tray implementation uses pystray and behavior depends on the backend provided by the desktop environment.

  • Left/right mouse button behavior is not always identical to Windows. With the AppIndicator backend, primary click is menu-focused, so left click may open the menu instead of toggling pause.

  • Hover tooltip text is often not shown by Linux shells even when the application updates the tray title.

  • As a workaround for missing hover text, the current logged time is shown as the first (disabled) menu entry.

  • If AppIndicator libraries are missing, the app falls back to the Xorg backend. On Xorg, menu support is limited and right-click menu entries may be unavailable.

For full tray menu support on Ubuntu, install:

sudo apt update
sudo apt install libayatana-appindicator3-1 gir1.2-ayatanaappindicator3-0.1

You can force a specific backend for troubleshooting by setting the PYSTRAY_BACKEND environment variable (for example appindicator or xorg) before starting nxworklog.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nx_work_log-1.2.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

nx_work_log-1.2.0-py2.py3-none-win32.whl (15.5 kB view details)

Uploaded Python 2Python 3Windows x86

nx_work_log-1.2.0-py2.py3-none-any.whl (15.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file nx_work_log-1.2.0.tar.gz.

File metadata

  • Download URL: nx_work_log-1.2.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nx_work_log-1.2.0.tar.gz
Algorithm Hash digest
SHA256 21198464b2858e605d102624072b579266c6694263ee74b1fc18e57b5a1340a8
MD5 17021f614f3aac64c3d814afa3b0372a
BLAKE2b-256 79d55824996462a1d4f74ef75ba345f89af7743334b40b7a4dc1dfb9e9e3df0f

See more details on using hashes here.

File details

Details for the file nx_work_log-1.2.0-py2.py3-none-win32.whl.

File metadata

  • Download URL: nx_work_log-1.2.0-py2.py3-none-win32.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 2, Python 3, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nx_work_log-1.2.0-py2.py3-none-win32.whl
Algorithm Hash digest
SHA256 b7b755965f5e3cf6ee2e21b642fe2c40c7ef3b055640d6eeaf54a82d3ab68404
MD5 a199c170d53fc6990da739abe0f58414
BLAKE2b-256 f43ab8f85b515835870a308ccb69f1dfbfbc615ff76e96a2f871bce4217e42b0

See more details on using hashes here.

File details

Details for the file nx_work_log-1.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: nx_work_log-1.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nx_work_log-1.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 edcede91ffd8e211fd0e852931ce0a4d9e603e3c04a343b76514710ef014cd7d
MD5 9819638bd76b797f80e34507b949684c
BLAKE2b-256 38f50c211196344a034b0c63f50dd2e43a342eddf2fd621cbd7dd40ea03b0260

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page