## Link to GitHub Issue, if one exists
#399
## Description of change
Add image duplication option to screen resize, allowing overflow images
to wrap around the other side.
## Testing
Tested with DDR, IIDX (windowed and full screen TDJ), SDVX (orientation
swap)
## Link to GitHub Issue, if one exists
Fixes#307
## Description of change
Add an option for making TDJ/UFC subscreen window borderless in windowed
mode
Add another option for keeping the subscreen "always on top".
Add size / position arguments to SDVX windowed subscreen, exactly the
same as what is allowed for IIDX.
## Testing
Seems to work....
## Link to GitHub Issue, if one exists
Fixes#276
## Description of change
Note: this change is not compatible with previous screen resize config;
i.e., if you had the zoom setting dialed into a certain view, after this
change it won't be the same area, so you'll have to set up a scene
again. I think this is a worthwhile cost since the old logic is just
broken in weird ways, and preserving old settings is really tedious math
(for a feature that not many people use). Besides, this change will only
use the new Scenes values from the JSON.
Rewrite the DX9 image scaler logic.
* Previously, the rendering surface was fixed at `4096*4096 px`. Now,
this is relative to the backbuffer dimensions, which depends on the game
& respects user provided `-forceres`.
* Remove "center" option, make it the default.
Above two changes fix the aspect ratio issue (scaling in portrait games
not respecting screen ratio) and things breaking at higher res (1080p
when zoomed out far enough, or when forced to run at 4k resolution for
example)
* Use `scenes` leaf of screen resize JSON config for Scene 1 as well,
completely removing ourselves from being compatible with older spice2x
versions for these values.
* Add additional bounds check before calling `StretchRect` to avoid
users getting stuck with a bad layout, which can kill performance.
## Compiling
🦾
## Testing
Tested 32 bit (popn / ddr), 64 bit (ldj), portrait and landscape modes
(kfc)
## Link to GitHub Issue, if one exists
Fixes#263
## Description of change
Add "scenes" to screen resize.
* UI changes - F11 menu now has a "scene switcher" for `Scene 1/2/3/4`.
Clean up other UI bits.
* Add hotkeys for `Screen Resize Scene 1`, `Screen Resize 2`, and so on.
* Detect hot key and trigger resizes.
* Add additional objects to screen_resize.json for saving and loading
the new scene settings.
* Existing screen resize data is backwards compatible (can be
loaded/saved to JSON), and is treated as `Scene 1`.
* Add API endpoint for `Resize`, allow toggling resize on/off, switching
active scene
* Add Python wrapper. Did not bother with the other wrappers (Dart, C++,
etc)...
## Compiling
🥇
## Testing
Still testing, but seems to work fine for TDJ.
## Link to GitHub Issue, if one exists
n/a
## Description of change
Previously, F11 menu just provided text-based hint on how to enable
-windowscale option.
Instead, show a disabled checkbox that correctly reflects the current
state, nudging the user to read the tooltip.
Elaborate the option tooltip for -windowscale as well for consistency &
explain *why* you might want to enable this.
## Compiling
💯
## Testing
Tested 32/64 bit.