Commit Graph

607 Commits

Author SHA1 Message Date
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
Terry MacDonald
e5be7f65e0 Add HotKeyLibrary to setup
This adds the HotKeyLibrary to the
DisplayMagician setup so that the
HotKey stuff will work once I build
it in!
2021-04-23 20:51:22 +12:00
Terry MacDonald
65ccc6876a Merge branch 'main' of https://github.com/terrymacdonald/DisplayMagician into main 2021-04-23 17:53:01 +12:00
Terry MacDonald
001853b2c5 Merge branch 'release/1.0.5' into main 2021-04-23 17:52:39 +12:00
Terry MacDonald
f6255d5d3f Update the update JSON for 1.0.5 2021-04-23 17:52:04 +12:00
Terry MacDonald
4ef1100ec2 Updated version to v1.0.5.0 2021-04-23 17:47:18 +12:00
Terry MacDonald
719c7f3350 Updated minimise checkbox to also boot
Made the MainForm's minimise checkbox also
start DisplayMagician on boot.
2021-04-23 17:41:59 +12:00
Terry MacDonald
d7dad2e864 Added Wait for alt game exe option
Added new 'Wait until an alternative
game executable is closed before continuing"
option to the game library part of the
ShortcutForm. This will allow people to
only change display/audio if a different
exe is closed from the game itself.

Closes #9
2021-04-23 14:14:13 +12:00
Terry MacDonald
8356290c3f [WIP] Part way through alt game exe
Have updated the loading and storing of the
alternative game exe monitoring and created
the user interface for it.

Need to next:
- create a file selection dialog
- have the file selected result in the name
   being extracted into the text file
- actually set up the RunShortcut to use
   the alternative monitoring if set
2021-04-21 22:58:45 +12:00
Terry MacDonald
d57ad60121 Added robustness for video card errors
Added exception protection around the video
card identifier errors to at least allow
DisplayMagician to kind of keep working even
if there are errors in the NVIDIA drivers. This fix
was brought about to get around problems with
NVIDIA RTX 2080Ti cards when using NVIDIA
driver 466.11. This fix should allow users with
cards that report data incorrectly to recreate new
DisplayProfiles, and then change all their shortcuts
to use those new Display Profiles. DisplayMagician
should then start working again. Fixes #7.

NOTE: This problem is a workaround for a broken
NVIDIA driver. Once NVIDIA find out and fix it, then
you will need to recreate your Display Profile again
and change all your shortcuts to the new Display
Prrofile in order for your shortcuts to work again.
2021-04-21 22:14:30 +12:00
Terry MacDonald
c0b70cb41c Fixing audio and capture permanence 2021-04-21 21:41:36 +12:00