| Age | Commit message (Collapse) | Author |
|
ControllerInterface.cpp. The variable ok_count was never incremented, which caused the function to always return false.
|
|
Huge megacommit because a lot of things needed to be modified to make this
possible.
|
|
|
|
|
|
SDL2.0 removed SDL_HAPTIC_SQUARE because of ABI issues (see comment #7 on issue
6491 by Ryan C. Gordon from the SDL project). It will be reintroduced again in
2.1, so keep the code and #ifdef it away.
|
|
This reverts commit cce809ac90cc195f0c88a6cc788b3ff7359083a5.
The code was actually correct: "expr" is never allocated when an error is
returned. This means when the expression parser fails, deleting "expr" means
deleting an uninitialized pointer.
|
|
Because there's a return here, expr should be deleted since it's not assigned to anything before returning.
|
|
This tells you what you did wrong at a high level if you messed up.
|
|
I forgot to git add this change.
|
|
|
|
Based on the original XLib plugin, and thus shares some of its warts.
|
|
|
|
Without clearing out the "accumulator" for the backtick parsing,
our control name was full of junk (the previous device name) causing
us to not correctly find the control.
Ensure that always we clear the "accumulator" string during backtick
parsing.
|
|
(vector.clear()) was intended in ExpressionParser.cpp.
|
|
Just show the actual expression. We need to do a bit of mangling
here as wx has no way to turn off mnemonics parsing, so do that
as well.
|
|
Otherwise, valid control names like "Cursor X+" would be incorrectly
tokenized as "`Cursor` `X` +", causing the parser to first abort trying to
find a control named `Cursor` rather than aborting with invalid syntax on
the bad binop.
We could also do this by resolving devices lazily, but since simple
control name bindings are going to be 90% of usecases, just look for these
first.
|
|
Whoops. MSVC++ messed up somehow and didn't tell me it didn't work
locally.
|
|
Yeah, yeah, it's possible that some guy would try to build DInput
without XInput, but they're crazy, and I doubt it would have worked
since the header file mess was so fragile anyway. Always exclude
DInput devices when we don't have XInput.
|
|
If an expression can't be parsed normally, we then look to see if it's a
simple device name. This keeps backwards compatibility with simple input
ocnfigurations, where people just used the Detect button.
|
|
|
|
We need to make sure we eat the delimiter, otherwise we'll notice
the colon / backtick and think it's either a new control or part
of the control name
|
|
The full expression is quite often too big for a simple button
label, so encourage people to use the full editor to edit it.
|
|
Using backticks for all control names can get a bit grating,
so support "A & B" instead of requiring "`A` & `B`".
|
|
Use "+" instead of "^" this time.
|
|
This contains a new, hand-written expression parser to replace the old
hack language based on string munging. The new approach is a simple
AST-based evaluation approach, instead of the "list of operations"
infix-based hack that there was before.
The new language for configuration has support for parentheses, and
counts "!" as a unary operator instead of the binary "NOT OR" operator
it was before. A simple example:
(X & Y) | !B
Explicit device references, and complex device names ("Right Y+") are
handled with backticks and colons:
(`SDL/0/6 axis joystick:Right X+` & `DInput/0/Keyboard Mouse:A`)
The basic editor UI that inserts tokens has not been updated to reflect
the new language.
|
|
The ExpressionParser needs this to be out of here to prevent issues
with cyclic references.
|
|
single class instead of everywhere willy-nilly
|
|
|
|
because that makes it easier to adjust it
Adding visual aid for the hardware range because that makes it easier to adjust the radius relative to it
|
|
Needs to be tested.
|
|
Fixed other structures that still assumed 4 of everything.
|
|
Also update the comment headers for two functions in GCMemcard.cpp.
|
|
VideoCommon, and Common projects.
|
|
|
|
way. Add a default GCPad.ini file so it actually works.
|
|
Some indentations were also too far for some things. Fixed this.
Also update the license header to show Git instead of SVN.
Got rid of some trailing spaces/tabs too.
|
|
Keeps the files consistent.
|
|
|
|
Yell at pauldachz if this doesn't work.
Or... say thanks.
|
|
|
|
Fixes issue 5971.
|
|
|
|
|
|
This reverts commit b7d32b0a3d810736b2e1151d6d8b9da85ebfbcf3.
OSX C++ std library in charge of holding back progress (as usual).
|
|
mem_fun is deprecated in C++11. Also it does everything mem_fun can do, but more conveniently.
|
|
Fixes issue 3492.
|
|
|
|
needed for XInput)
|
|
some silly physical gamepads)
|
|
|