Commit Graph

567 Commits

Author SHA1 Message Date
Terry MacDonald
77fbec545b Added debug and trace options
Can now add a '--debug' or a
'--trace' option to the DisplayMagician
to force it to generate a TRACE log for that
session only. Once you close the application
it will go back to the normal logging level
set within the Settings Window.
2021-05-20 17:41:38 +12:00
Terry MacDonald
0dc7c9c0d1 Fixing slight logic error during restructure
Managed to break some logic when trying to
add robustness.... effectively doing the
opposite of what I was trying to do :/. Now
*should* be fixed, but we shall see with more
testing.
2021-05-19 22:24:04 +12:00
Terry MacDonald
2096322cf0 Make EDID detection robust
Modified EDID detection to make it more
robust and to report what went wrong in
the logs in more detail. Aids in #16
2021-05-19 21:32:49 +12:00
Terry MacDonald
a4db4b39b7 Updated game library images
Also changed from game library icons
to game library images to better match
the current icon generation logic.
2021-05-19 20:40:26 +12:00
Terry MacDonald
5b99c3ac7a Working Game selection window
Also correctly extracts icons from icon
files and game exes as best it can.
2021-05-18 22:03:02 +12:00
Terry MacDonald
36c085d918 Initially working iconextrator code
This code now will cope with incorrectly
formatted icons, and will simply ignore
them and move on to the next one.

This also fixes a game ILV adaptor error
which was causing argumentnullexceptions
2021-05-18 21:24:36 +12:00
Terry MacDonald
8e46178bbe Removed an old library 2021-05-16 21:48:26 +12:00
Terry MacDonald
5bdb2adba8 Mostly working Game icons!
Well this took enough time! I have
almost corrected all the issues with
the icon parsing functions, but I still
have a couple of edge cases to fix.
2021-05-16 21:46:58 +12:00
Terry MacDonald
22964f07df Made the Game Font readable
Game font was too large in the image
list view, so made it smaller.
2021-05-15 22:09:56 +12:00
Terry MacDonald
94d9da1b7c [WIP] Using single BItmap Generator
Changed to use a single bitmap generator
to try and simplify and standardise the way
that images are extracted from the games.
Have tried to use every method to extract
icons from icon files and from exes, but it's
still not quite right :(
2021-05-15 21:58:46 +12:00
Terry MacDonald
1366ef0ab2 [WIP] Some smaller icons still broken
Currently struggling with the fact that
the smaller game icons don't get extracted
properly, and that they end up tucked into
the top left of the 256x256 bitmap at
32x32 size... so really tiny. Need to find a
fix for this so it always returns a 256x256,
and attempts to grow the 32x32 icons into
256x256 icons.
2021-05-14 21:22:29 +12:00
Terry MacDonald
91a493a35d [WIP] Almost working game selection
This is almost working. I'm struggling with
the icons loaded from various icon files which
are coming in really small rather than the large
size they should be. The .Net Icon constructor
isn't making an Icon the size I requested, so I may
need to change something else.
2021-05-14 20:07:53 +12:00
Terry MacDonald
b84eff07ad [WIP] Nearly completed ilv game selector
This is almost working, but the icons aren't
being grabbed from the game bitmaps and
loaded into the ilb_games ImageListView
2021-05-14 18:17:23 +12:00
Terry MacDonald
dcb55f0063 Initial working dynamic start programs
The startprograms logic should now
work properly. The JSON transformation
from using Enabled to Disable setting has
been tested and works too.
2021-05-14 15:37:40 +12:00
Terry MacDonald
4a1c4cf370 [WIP] Added new start program button
Can now create new start programs. Still
isn't saving and loading the start programs
into the shortcuts properly, and still loads
empty start programs which we need to
filter out.
2021-05-14 10:53:14 +12:00
Terry MacDonald
e2bfa65157 [WIP] Added up and down buttons
Added up and down buttons to the UI
so that you can use the buttons or click
and drag the startup items to where you
want them. All works fine!
2021-05-14 10:40:37 +12:00
Terry MacDonald
829057bcfd [WIP] UI working as intended!
Lots of improvements to make still
but the basic UI is working as it should.
Big thanks to @teawithcookies for the
tip to set DragDropEffects to Move in
order to make DragDrop method fire!
That took me 20 mins to figure out...
2021-05-13 21:50:01 +12:00
Terry MacDonald
a278f183d7 [WIP] First working drag and drop
Drag and drop finally works! But there is
no feedback, and no animation and no
cursor control. And the page still doesn't
actually save the information, and it can't
have new start programs added to it yet.
It's fair to say there is still a lot to do :/
2021-05-11 22:01:51 +12:00
Terry MacDonald
dccd13c019 [WIP] Partially working flowlayout 2021-05-11 16:08:57 +12:00
Terry MacDonald
6131833b25 WIP] First attempt at tablelayout 2021-05-11 15:59:53 +12:00
Terry MacDonald
7534fe6fc6 [WIP] Basic partially working panel
The panel successfully has the usercontrols
put into it, but it doesn't reorganise the rest
of the usercontrols when one is deleted up
to head of the list. I've done some research
and the internet tells me to move from a panel
container to a FlowLayoutPanel or a
TableLayoutPanel to get the automatic redrawing
functionality. It's apparently far easier to swap
than to write the redrawing code yourself.

So thats the plan for later this week.
2021-05-09 21:43:06 +12:00
Terry MacDonald
84c9338be4 [WIP] Basic partially working prototype 2021-05-08 23:22:44 +12:00
Terry MacDonald
7e99af19d1 [WIP] still figuring out user controls 2021-05-08 23:15:01 +12:00
Terry MacDonald
1d752a1021 [WIP] First StartProgram UserControl
First attempt at using a customer User
Control to make it easier to create dynamic
list of start programs to kick off before the
main program is started.

I already have the ability within the data model
to store and track multiple start programs... the
difficulty is in making the WninForms UI handle
a dynamic number of start programs. This is the
basic construction of it, but it needs a LOT of UI
work.
2021-05-08 22:59:38 +12:00
Terry MacDonald
4ec7829a43 Made the shortcut images more reliable
Also added a ton of trace logging to be
able to fix issues remotely.
2021-05-02 22:05:25 +12:00
Terry MacDonald
2e954d5b75 Hotkeys complete!
Managed to add the Hotkey list
that shows the user the entire list
of hotkeys across the application.
Also allows you to delete them all!
This function is now complete, and
is all working based on my testing.
2021-05-01 21:56:31 +12:00
Terry MacDonald
b79aecc7fb Suppress CLS non-compliance
I know its not compliant...that's by
design.
2021-05-01 20:59:26 +12:00
Terry MacDonald
325a1b6012 Working hotkeys of all types
Yay! Managed to get all the hotkey
logic working so all types of hotkeys
work fine. Next step is getting the
list of dynamic hotkeys populated
from the Display Profiles and the
Game Shortcuts, and then hooking up
the Clear All Hotkeys button so that it
clears the dynamic hotkeys too!
2021-05-01 20:58:09 +12:00
Terry MacDonald
b96a846410 First working Hotkeys
In this first working hotkey scenario
the DisplayProfiles and Shortcuts can
be run from Hotkey. I now need to add
the ability to run the mainfor, display profile
config page, and the shortcut library itself.
And of course add the items to the settings
window so they can be changed.
2021-05-01 17:03:15 +12:00
Terry MacDonald
beab71ace4 [WIP] broken Form to form passing 2021-04-30 22:45:11 +12:00
Terry MacDonald
c5121702b2 Fixed the Hotkey selection text
Works fine now. No more errant
selections.
2021-04-30 22:11:36 +12:00
Terry MacDonald
43374ff1b2 Merged in hotfix for 1.0.6 2021-04-30 21:50:41 +12:00
Terry MacDonald
3ae712f578 Update version to v1.0.6 2021-04-30 21:25:34 +12:00
Terry MacDonald
cb08611f39 Fixing tests NuGet reference
Fixing silly OriginLibrary copy paste error.
2021-04-30 17:54:04 +12:00
Terry MacDonald
c4fe410eb9 Fixed missing OriginLibrary references
This iwas a stupid mistake. I forgot to change
the Uplay library references when I copied them
to nmake the OriginLibrary. This caused issues
as they cross pollinated, breaking both :(.
2021-04-30 17:34:11 +12:00
Terry MacDonald
6af0603d8f Fixed OriginLibrary issue
OriginLibrary wasn't added to the validity
checking, so no Origin games would work.
Also added a LOAD more trace logging with the
Origin library so I can see from the logs what's
happening. Also updated the version to 1.0.5.1.
And finally, removed unneeded validityrefresh
from the base ShortcutItem constructor as it
is refreshed later anyway. Should speed up
object creation a little.
2021-04-30 17:28:01 +12:00
terrymacdonald
a2eb285d19
Merge pull request #14 from ngoetje/bugfix/work-around-uplay-unhandled-exception
Bugfix/work around uplay unhandled exception
2021-04-30 09:58:20 +12:00
Nils Goetje
2bffdbc098 Prevent exception when scanning origin lib 2021-04-29 16:48:24 +02:00
Nils Goetje
0b8117d39b checks matches of regex search before accessing it 2021-04-29 15:21:24 +02:00
Terry MacDonald
0b9f6e7e6f [Wip] Partially working hotkey
Managed to get the hotkeys for
the DisplayProfiles and the Game
Shortccuts to work ok. Still needs
polish for the HotKeyForm, and I
need a way to set the MainWindow,
DisplayProfileWindow and
ShortcutWindow Hotkeys
2021-04-29 22:45:13 +12:00
Terry MacDonald
e9f401960e [WIP] Still moving to NHotkey 2021-04-28 22:14:54 +12:00
Terry MacDonald
209e3f0338 [WIP] Partway through swap to NHotkey
Also trying to port Willy-Kimura's HKL
HotkeySelector code over as well cause
it is ace!
2021-04-27 22:19:44 +12:00
Terry MacDonald
92c0678e79 WIP] commit where I'm up to
This is a stopgap place to commit
while I test out another hotkey lib.
2021-04-27 21:57:27 +12:00
Terry MacDonald
9dc68ff506 Suppress CLS 2021-04-25 22:25:41 +12:00
Terry MacDonald
023a1a8862 [WIP] Shortcut and Profile hotkey UI
Completed the Shortcut and Display Profile
hotkey UI interface to a satisfactory level.
The hotkey settings are stored with the
profile JSON for profiles, and with the
shortcut JSON for shortcuts. This means
they load correctly and are remembered
between runs of DisplayMagician.

Next step is to actually register the Hotkeys
so they work, and then allow them to be
replaced or removed when they are changed.
2021-04-25 21:13:25 +12:00
Terry MacDonald
a5f74576ba Suppress CLS error 2021-04-25 17:06:02 +12:00
Terry MacDonald
e604b1a871 [WIP] Hotkey passing to form working
At this point, we now have a hotkey form
that can generate hotkeys, and we have a way
of passing it some text to make it obvious which
hotkey we are setting. Additonally we can get
the set hotkey back.

Next steps are to store the hotkeys with the
display profiles and the game shortcuts, and
to load them as we load the files in.
2021-04-25 16:54:17 +12:00
Terry MacDonald
0e7ee3acef [WIP] Testing passing hotkeys
Testing the best way to pass hotkeys through
to the Hotkey form in a way that I can reuse it
across the whole application.
2021-04-24 16:06:00 +12:00
Terry MacDonald
b360fc9f37 [WIP] Creating hotkey setting form
This form will show when the user wants
to set a hotkey for a display profile or for
a shortcut. This will not be used for the
setting the main window, or shortcut library
hotkey...those will be set in the settings
window.
2021-04-23 21:42:18 +12:00
Terry MacDonald
fd50594211 [WIP] Adding hotkey buttons to forms 2021-04-23 21:25:42 +12:00