This only works because the analog sticks are mapped as a joystick to applications and consequently, apps
have to implement stick support.
GMenu2x did the strict minimum and only implemented support for sticks and not buttons, hence why you can't do anything.
Emulators also have to add specific support for external joysticks/gamepads, thus it will work for Handy ingame for example but not for something like SMS Plus GX or PCSX4ALL.
This needs to be added to each emulator manually (in addition to the mapping) so it will take some time.
Also, i saw that you opened another thread for Xbox gamepads : support for them needs to be added to the kernel.
That definitively won't be possible for Xbox One controllers because support for them only got merged later than Linux 3.10 i believe.
(though i suppose it could be added manually with a module like this one : https://github.com/paroj/xpad