Commit Graph

96 Commits

Author SHA1 Message Date
rlnilsen 332cad21a4 Wiimote Mapping UI: Motion Input tab: Rework mapping warning, add explanation of and button to open Alternate Input Sources window. 2019-10-27 15:59:36 +01:00
rlnilsen 4cb3baba5c Add support for motion controllers via the CemuHook controller input protocol.
This is done by:
1) Implementing said protocol in a new controller input class CemuHookUDPServer.
2) Adding functionality in the WiimoteEmu class for pushing that motion input to the emulated Wiimote and MotionPlus.
3) Suitably modifying the UI for configuring an Emulated Wii Remote.
2019-10-26 02:19:53 +02:00
Jordan Woyak 1fe44238b1 ExpressionParser: Add XOR operator. 2019-10-20 09:51:52 -05:00
Jordan Woyak 72302d9c42 ExpressionParser: Add support for /* */ style comments. 2019-10-12 11:41:02 -05:00
Jordan Woyak b57178d246 ExpressionParser: Remove ! character from function syntax. Remove unused serialization functions. 2019-10-11 18:12:18 -05:00
Jordan Woyak 7912dc57dd ExpressionParser: Remove !while and add optional 2nd argument to !smooth. 2019-10-11 18:12:18 -05:00
Jordan Woyak ca7ce67450 ExpressionParser/DolphinQt: Added parse results to UI. 2019-10-11 18:12:18 -05:00
Jordan Woyak c8b2188e19 DolphinQT: Add syntax highlighting from tokenizer data. 2019-10-11 18:12:18 -05:00
Jordan Woyak e3cf2ae0d4 DolphinQT/IOWindow: Add combo boxes to insert the new operators and functions so people are semi-aware of them. Fixed the "Apply" button. Display an error message on expression parse error. 2019-10-11 18:12:18 -05:00
Jordan Woyak e896835f86 ExpressionParser: Renamed ControlFinder to ControlEnvironment. Added support for variables and assignment operator. ControlExpression objects now reference a matching input and output so the two can me mixed in any expression. (you can set rumble directly from inputs) 2019-10-11 17:14:32 -05:00
Connor McLaughlin 1bd8f03362
Merge pull request #8271 from lioncash/qstring
DolphinQt: Replace unnecessary QStringLiterals with alternatives where applicable
2019-08-08 12:25:30 +10:00
Miksel12 9395d7ea08 DolphinQt: Reorder nunchuk mapping 2019-08-04 14:02:43 +02:00
Mike Kuijl cbfc442e90 DolphinQt: Limit numeric widget width 2019-08-02 18:20:37 +02:00
Lioncash fef1b84f0a DolphinQt: Replace QStringLiteral with alternatives where applicable
QStringLiterals generate a buffer so that during runtime there's very
little cost to constructing a QString. However, this also means that
duplicated strings cannot be optimized out into a single entry that gets
referenced everywhere, taking up space in the binary.

Rather than use QStringLiteral(""), we can just use QString{} (the
default constructor) to signify the empty string. This gets rid of an
unnecessary string buffer from being created, saving a tiny bit of
space.

While we're at it, we can just use the character overloads of particular
functions when they're available instead of using a QString overload.
The characters in this case are Latin-1 to begin with, so we can just
specify the characters as QLatin1Char instances to use those overloads.
These will automatically convert to QChar if needed, so this is safe.
2019-07-30 09:06:03 -04:00
Lioncash ec60027f56 InputCommon: Use nested namespace specifiers where applicable 2019-06-17 16:51:41 -04:00
Vincent Duvert 2ac1ca133f GCPadWiiUConfigDialog: Update the adapter state dynamically
Update the GC adapter config GUI if the adapter is plugged or unplugged.
2019-05-29 18:28:24 +02:00
Vincent Duvert b08e2ec959 GCAdapter: Report libusb open errors to the user
If opening the adapter fails, report the libusb error message in the GUI
instead of “No Adapter Detected”.

The error condition is removed when the adapter is unplugged.
2019-05-29 18:28:24 +02:00
Tillmann Karras 2195ef30f3 DolphinQt/Mapping: red = error, don't flash 2019-05-26 17:59:30 +02:00
Léo Lam e2c769a9c5
Merge pull request #7992 from artemist/centering
ControllerEmu: Add support for setting the center of a ReshapableInput
2019-05-20 18:29:31 +02:00
Artemis Tosini 4bbbd02de7
ControllerEmu: Do not change center when closing window 2019-05-19 16:55:29 +00:00
Artemis Tosini e5683988c0
ControllerEmu: Zero the center of a ReshapableInput when calibrating 2019-05-18 19:32:48 +00:00
Artemis Tosini 99cf9a57fc
Draw center when calibrating and remove constant
This adds the center to the calibration menu when it is nonzero.
It also refactors CENTER_COLOR to be a function, similar to other colors
after an earlier commit.
2019-05-18 18:36:28 +00:00
Artemis Tosini 49e46c8aff
ControllerEmu: Add support for setting the center of a ReshapableInput
This is useful in far out-of-calibration controllers, such as the
Switch Pro controller. This also adds support for configuring the center
in the Mapping widget.
2019-05-18 14:45:16 +00:00
Jordan Woyak 374585f128 WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward mappings. 2019-05-08 20:27:41 -05:00
Léo Lam 6607d9512f
Merge pull request #8081 from jordan-woyak/structured-binding
DolphinQt: Use a structured binding.
2019-05-08 10:37:15 +02:00
Jordan Woyak 0de6b5f7fa WiimoteEmu: Implement "Drawsome" tablet. 2019-05-07 18:07:24 -05:00
Jordan Woyak 6ebd35d511 DolphinQt: Use a structured binding. 2019-05-06 15:33:57 -05:00
Jordan Woyak 6784225573 DolphinQt: Profile combobox fixes. 2019-05-03 16:29:22 -05:00
Jordan Woyak 27043c1dac WiimoteEmu: Implement TaTaCon extension. 2019-05-02 19:35:46 -05:00
Léo Lam 3b16d2261a
Merge pull request #8065 from jordan-woyak/wm-ext-names
WiimoteEmu/DolphinQt: Better extension display names.
2019-05-02 13:14:17 +02:00
Jordan Woyak 77bda63627 DolphinQt: Don't refresh devices on open of mapping UI. 2019-05-01 19:30:02 -05:00
Jordan Woyak 99f537d499 WiimoteEmu/DolphinQt: Better extension display names. 2019-05-01 17:25:48 -05:00
Jordan Woyak 2babbd76d0 WiimoteEmu: Implement uDraw GameTablet. 2019-04-30 18:36:37 -05:00
JMC47 360f2b4a2f
Merge pull request #8042 from jordan-woyak/mapping-ui-clear-fix
DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension.
2019-04-29 06:14:27 -04:00
spycrab 6e6f833bb3
Merge pull request #8044 from jordan-woyak/indicators-on-top
DolphinQt: Move mapping indicators to top of UI.
2019-04-29 02:48:23 +02:00
Jordan Woyak 4e39d833ae DolphinQt: Fix mapping of space, return, and mouse-clicks from immediately re-activating detection. 2019-04-28 08:34:47 -05:00
Jordan Woyak af8b14f452 DolphinQt: Move mapping indicators to top of UI. 2019-04-27 14:23:29 -05:00
Jordan Woyak 74a997da65 DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension. 2019-04-27 10:51:57 -05:00
JMC47 664376dae1
Merge pull request #7861 from jordan-woyak/mplus-emu
WiimoteEmu: Emulated MotionPlus and improved emulated swing.
2019-04-26 05:50:18 -04:00
Jordan Woyak ba1b335118 WiimoteEmu: Improve emulated swing. 2019-04-23 19:02:41 -05:00
Jordan Woyak 4374600367 WiimoteEmu: Implement MotionPlus parameter y0 and other cleanups. 2019-04-23 18:38:00 -05:00
spycrab 7f861f095a Qt/Mapping: Remove iterative input 2019-04-23 22:59:34 +02:00
Jordan Woyak a9ef110349 DolphinQt: Query mapping indicator colors using QPalette for better behavior with alternative themes. 2019-04-21 08:20:45 -05:00
Jordan Woyak c89ddf8cba WiimoteEmu: Allow shake frequency and intensity to be configured. Other minor cleanups. 2019-04-12 16:50:59 -05:00
Jordan Woyak 5efb717873 InputCommon: Clean up how numeric settings are handled. Add units of measure to UI. Eliminate hidden magic values of the IR cursor. 2019-04-07 09:32:49 -05:00
JMC47 a1f53716dc
Merge pull request #7893 from jordan-woyak/mapping-ui-cleanup
DolphinQ: Mapping UI cleanups.
2019-03-26 20:30:30 -04:00
spycrab e8b3c6cb3e Qt/Mapping: Use QGridLayout in a few more places 2019-03-20 23:46:45 +01:00
Jordan Woyak 9cb17b062c DolphinQ: Mapping UI cleanups. 2019-03-15 18:32:25 -05:00
JMC47 011ecd92e8
Merge pull request #7829 from jordan-woyak/detect-input-improve
ControllerInterface/DolphinQt: Improve input detection.
2019-03-13 19:00:24 -04:00
spycrab 470b9e68e7 Qt: Increase padding a bit 2019-03-06 13:46:00 +01:00