Yet another feature request (LAYERS)...

x64 Replacement/Alternative to Microsoft's IntelliMouse application.
Forum rules
Please read the forum rules before posting for the first time.
The more information you can provide, the quicker and more accurately someone can help.
NOTE: To reduce spam, new users can not post links or images until they have at least 4 posts.
Post Reply
Jon Lee
New User
Posts: 7
Joined: Tue Sep 08, 2009 4:59 pm

Yet another feature request (LAYERS)...

Post by Jon Lee » Wed Sep 09, 2009 6:33 am

Hi Phil,

First off: Thank you! I've only just found XMouse but have been looking for a good SetPoint replacement for some time. It is generous of you to share your work and it's very appreciated!

I'm hoping my suggestion is a relatively easy addition and that you'll consider it even if your time for XMouse programming is limited as you mention in your FAQ.

The one thing I've found missing from all mouse mapping programs is the concept of LAYERS. As the std mouse driver only exposes 5 buttons (9 if you count wheel movement/tilting) an easy way to get more functionality is to be able to assign a button as layer-shift (not the shift key which of course you can already do). It's a great and easy to use way to assign multiple actions to each button. If the std mouse drivers only expose up to 5 mouse buttons, we need to make the most of them.

I actually started to code something to do this and while researching how to do it found XMouse which does everything I'm looking for *except* layers. Rather than reinvent the wheel, I thought I'd toss the idea your way and see if you'd consider adding it.

I was planning to add support for up to 4 additional layers but personally can only imagine using 1 or 2. I use a Logitech G5 and hope to map my two thumb buttons for layer shifting.

What do you think? Should I be patient or keep researching mouse hooks ;-)

Thanks for your ear... Cheers, -Jon.

User avatar
phil
Site Admin
Posts: 5958
Joined: Sun Apr 06, 2003 11:12 pm

Re: Yet another feature request (LAYERS)...

Post by phil » Wed Sep 09, 2009 10:36 am

Layers... That's a new term for an existing issue :)
I have been intending on adding multiple profiles (what you call layers) for some time now. Its pretty near the top of the to-do list and might well make it into the next version.

I still have to figure out the best way to do it, but essentially what you describe is exactly what I plan to do. I just cant give a definite time frame for it, because amongst other things, I have a few holidays coming up and I've got a load of other things to sort out before then. But it is on the to-do and I hope it wont be more and a few months away.

Its not technically difficult - more of a "how to best arrange the GUI". The simple option is to just add the "layers" into the existing application profiles pane and has a shortcut button (or keypress) to switch between them.

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-9600k, Asus Z390-ROG, 16GB DDR4,
nVidia GeForce GTX 970, Evo 970 500Gb NVME, 2x2TB WD Black (RAID1)

Jon Lee
New User
Posts: 7
Joined: Tue Sep 08, 2009 4:59 pm

Re: Yet another feature request (LAYERS)...

Post by Jon Lee » Wed Sep 09, 2009 3:04 pm

That is excellent news Phil! I will be patient :-)

As for the GUI issue, there are two approaches I'd suggest:

1. Leave your GUI exactly as it is but just turn your "Default Application Settings" group into tabbed pages - one for each layer. You'll also then need to add options in each button assignment combo for layer switching ("Activate Layer X") - but only in the base/default layer as the button that activates a given layer should remain consistent while that layer is active.

Image

2. The method I was thinking of using was a grid. The screenshot is of my early (and unfinished) GUI but you get the idea. While taking up more screen real estate it allows you to see the entire profile at a glance without needing to switch tabs which I thought was an advantage (and ppl have big screens anyway ;-) )

Image

My $0.02 is not to make additional profiles and switch between them. My logic here is that a profile is associated with a particular .exe and switching between them while using a given .exe breaks that association and I feel becomes confusing (not all profiles will apply to all .exe). I'd leave the 1 profile to 1 .exe association and just make each profile support layers on their own. Of course, this is just my opinion, I'm sure you'll come up with a good solution :-)

Anyway, I hope this is good food for thought and I look forward to however you decide on going about it.

Thanks again! Cheers, -Jon.

User avatar
phil
Site Admin
Posts: 5958
Joined: Sun Apr 06, 2003 11:12 pm

Re: Yet another feature request (LAYERS)...

Post by phil » Wed Sep 09, 2009 3:25 pm

Yes, tabs is probably the easy way to go with my gui without making too many changes (although I seem to recall tabs in C++ are a bit of a pain compared to C# which I've gotten too used to lol).

But then its fairly static, a fixed-ish (of only by screen real-estate) number of "layers". I suppose that does not really matter.

I see what your saying about having the layers switch while the button is down - it makes sense, while I wasn't intending on having such a configuration, I would think its possible, with a little thought.

My main intention was to allow the user to have multiple "default" profiles that he could switch between with a key/button combination but your right when you say each app may also want seperate profiles, so its best not to so it in the same way.

All good things to think about, but as I said, until November, pretty much every weekend is booked up now (and I only get weekends and the odd evening to play with this), so no immediate response promised!

Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-9600k, Asus Z390-ROG, 16GB DDR4,
nVidia GeForce GTX 970, Evo 970 500Gb NVME, 2x2TB WD Black (RAID1)

Jon Lee
New User
Posts: 7
Joined: Tue Sep 08, 2009 4:59 pm

Re: Yet another feature request (LAYERS)...

Post by Jon Lee » Wed Sep 09, 2009 11:18 pm

phil wrote:(although I seem to recall tabs in C++ are a bit of a pain compared to C# which I've gotten too used to lol).
I'm a Delphi guy so I'm used to the C# way of doing things (same designer). All I can say is I feel your pain with C++ ;-)
phil wrote:All good things to think about, but as I said, until November, pretty much every weekend is booked up now (and I only get weekends and the odd evening to play with this), so no immediate response promised!
Fair enough. Such is the way of things with hobby projects. I may still mess around with mouse hooks in the meantime but to be honest, I'm not used to working with raw Windows messages and I'm stumbling a bit at this point. I'll most likely just be patient and wait until you get around to it.

Good luck and enjoy your holidays! -Jon.

User avatar
phil
Site Admin
Posts: 5958
Joined: Sun Apr 06, 2003 11:12 pm

Re: Yet another feature request (LAYERS)...

Post by phil » Wed Sep 09, 2009 11:49 pm

Well the mouse hook bit really is gthe easy bit :) If you do want to experiment, feel free to ask any questions.
I will certinly do my best to enjoy my hols :)
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-9600k, Asus Z390-ROG, 16GB DDR4,
nVidia GeForce GTX 970, Evo 970 500Gb NVME, 2x2TB WD Black (RAID1)

Jon Lee
New User
Posts: 7
Joined: Tue Sep 08, 2009 4:59 pm

Re: Yet another feature request (LAYERS)...

Post by Jon Lee » Thu Sep 10, 2009 7:00 pm

phil wrote:If you do want to experiment, feel free to ask any questions.
Thanks. If I do decided to continue mucking around with it, I may just take you up on that! :-)

Cheers, -Jon.

User avatar
phil
Site Admin
Posts: 5958
Joined: Sun Apr 06, 2003 11:12 pm

Re: Yet another feature request (LAYERS)...

Post by phil » Sun Sep 13, 2009 12:03 pm

Jon,

How do you fancy trying a beta version with layer support?
I've done some stuff - its not finished with all the polish yet but it should be functional, and if you want to test it and point out any bugs or more likely, things that you would like it to do differently, then let me know and I will provide a link to the beta.

As I said, I've got hol's coming up soon so I might not be able to work on this until the end of October after today, but this should at least provide some interim solution.

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-9600k, Asus Z390-ROG, 16GB DDR4,
nVidia GeForce GTX 970, Evo 970 500Gb NVME, 2x2TB WD Black (RAID1)

Jon Lee
New User
Posts: 7
Joined: Tue Sep 08, 2009 4:59 pm

Re: Yet another feature request (LAYERS)...

Post by Jon Lee » Sun Sep 13, 2009 3:04 pm

Hi Phil,

I'd be happy to beta test for you. I'll PM you with my email address and you can send the link there.

Cheers, -Jon.

wjansen
New User
Posts: 2
Joined: Tue Sep 15, 2009 12:19 pm

Re: Yet another feature request (LAYERS)...

Post by wjansen » Tue Sep 15, 2009 3:45 pm

Hi Phil,

I am a new user, and VERY happy with X-Mouse! It solves nearly all the problems that I ran into, being a Kensington ExpertMouse user on a Vista x64 system.

I was reading this thread on Layers, which made me wonder if these layers will make it possible to use a button for multiple actions within one program by using extra keys. (e.g. clicking the upper right button on my trackball will be some various simulated keystrokes, and Shift-clicking that same button will be an entirely different set of simulated keystrokes.) And if there would be any way to implement a feature like that for the Shift-, Ctrl- and Alt-keys. That would create four (or even more, if you combine those keys) different sets of buttons, which for me would be extremely practical.

Is the above in any way similar to the Layers that this thread is about? And if not, would it be a feature that you'd consider implementing in the future?

Grtz,
Wouter Jansen

User avatar
phil
Site Admin
Posts: 5958
Joined: Sun Apr 06, 2003 11:12 pm

Re: Yet another feature request (LAYERS)...

Post by phil » Tue Sep 15, 2009 3:52 pm

Yes this is essentially the same thing.
The layers allow you to configure different actions on one button, and then you just need a way of switching between layers (and holding shift could be one of those ways). Each application profile (inc. default) can have its own layer defined.

Right now I'm in early stages of adding this functionality, I have 5 layers which you can switch between (only using the mouse right now). The next step is to add keyboard shortcuts to switch layers, and/or activate layers if a key is down.

I don't know when this will be finished because I have some holidays and busy weekends soon so I wont have much free time for XMBC, but its certainly in progress.

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-9600k, Asus Z390-ROG, 16GB DDR4,
nVidia GeForce GTX 970, Evo 970 500Gb NVME, 2x2TB WD Black (RAID1)

wjansen
New User
Posts: 2
Joined: Tue Sep 15, 2009 12:19 pm

Re: Yet another feature request (LAYERS)...

Post by wjansen » Tue Sep 15, 2009 4:00 pm

Great. This is wonderful news.

If at any time you need another beta-tester, let me know.
Like Jon, I'd be happy to.

Grtz,
Wouter Jansen

User avatar
phil
Site Admin
Posts: 5958
Joined: Sun Apr 06, 2003 11:12 pm

Re: Yet another feature request (LAYERS)...

Post by phil » Tue Sep 15, 2009 4:06 pm

When I have keyboard support, I will let you know and you can test it for me.

Thanks,
Phil
--[ Phil ]--
--[ Administrator & XMBC Author ]--
Logitech G9, Logitech MX518, Microsoft Intellimouse, Trust 16341 BT Mouse
Windows 10 x64, Intel i5-9600k, Asus Z390-ROG, 16GB DDR4,
nVidia GeForce GTX 970, Evo 970 500Gb NVME, 2x2TB WD Black (RAID1)

Post Reply