muchimi / JoystickGremlinEx

Modified version of Joystick Gremlin to add features I wanted to have but were difficult to do as just a plugin, plus I wanted to run this as 64 bit and on a more current version of Python/QT.
GNU General Public License v3.0
11 stars 2 forks source link

GUI missing graphics / icons #34

Open Lolo401 opened 3 weeks ago

Lolo401 commented 3 weeks ago

Missing button labels in the plugins section:

image

Missing graphics identifying if a button has been mapped:

image

muchimi commented 3 weeks ago

Thanks. Please attach the profile so I can tell how it's attached and why the icon is returning a null value (that happens when it doesn't understand the input type usually). Each module returns the icon based on the mapping, and the default is no icon if it's either not mapped or doesn't know how to do this. Come to think of it I may change this default behavior to return a generic icon in case it's confused so at least the code can tell you "I have no idea what this is".

Lolo401 commented 3 weeks ago

The only action not resulting in a label is the 'legacy' remap (blank space highlighted in red)

image

VPC_LEDs - Copy.txt

Attached is the plugin file (extension changed from py to txt) for the missing button labels.

muchimi commented 2 weeks ago

I've tested this and not seeing any issues with the legacy remap finding its icons (shown here using an axis map and a button map on a Virpil stick) image

I also ran the VPC led plugin without issue. I reviewed the code, which essentially looks for axis, button or hat mapping on the raw input and determines based on that the icon to pull, and the icon is in the gfx/icons folder under the remap action plugin. So one thing to check is that the icons are indeed in that folder.

image

I am working on a small modification (pictured) to pull a generic icon if the file isn't found. I'm also looking at creating these dynamically as QT can do this IIRC.

So nothing very evident from my testing so far as to why your icons are gone - the theory is - the icon files cannot be found.

muchimi commented 2 weeks ago

Code update in pre-release includes generic icons and improved logging in case an input condition isn't known so an icon cannot be derived. The two things icons need to know is the type of raw input this is and the input ID.

That should hopefully get us somewhere on this topic.

muchimi commented 2 weeks ago

Just had an Ah - HA moment. Turns out the icons work fine in non compiled mode so the culprit is the packaging. I have a solution I think... Stay tuned.

muchimi commented 2 weeks ago

Looks like the packaging changed a bit, and I have additional logic for VjoyRemap and the legacy Remap to look for their icons and, importantly, report back why it cannot find something in the log file (and where it was looking). Try this (updated a few mins ago): https://github.com/muchimi/JoystickGremlinEx/releases/tag/10.40.10ex

Lolo401 commented 2 weeks ago

EDIT: This appears to have been a one time event. JG13.40.10Ex launching correctly now. I will leave this post for tracking purposes.

ORIGINAL: Just tried the linked release and got this at first start attempt:

image

muchimi commented 2 weeks ago

Fat fingered that one. Should be fixed (famous last words) in the latest 10.40.10ex (redownload, same version but has the latest dev branch changes).

https://github.com/muchimi/JoystickGremlinEx/releases/tag/10.40.10ex

This said if this triggered on your box, it points to a path issue with the icons. I'm curious why JGEX cannot find icons on your system @Lolo401

Lolo401 commented 2 weeks ago

image

The screenshot here above: (1) On the left, Joystick_gremlin.exe 13.40.10Ex downloaded 27 Apr 24 at 2325Z (2) On the right, joystick_gremlin.py 13.40.10Ex Dev branch running on VSCode with Python 3.12.3.

The same profile is run simultaneously with both versions running at the same time.

The difference in icon can be seen (Question marks on the exe version)

Whenever the associated button was depressed, the following error would popup on the EXE version, not the PY:

image

Lolo401 commented 2 weeks ago

Of note: Since the errors pop up at the center of the screen, I was able to isolate the error the EXE version by running both versions separatly. They were run simultaneously for the prupose of the screenshot

muchimi commented 2 weeks ago

Helpful, thanks. Another place an icon is used. QT can be - as we say - a challenge. The screenshot is very helpful. Update applied.