Lock/Unlock, reverting back to default settings, not my settings

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Post Reply
ISAWHIM
Posts: 5
Joined: Fri Apr 20, 2018 3:46 pm

Lock/Unlock, reverting back to default settings, not my settings

Post by ISAWHIM » Fri Apr 20, 2018 3:52 pm

I setup specific limits in a program...

For instance, the "Collage" software. I disable the ROLL (Right/Left, Forward/Backwards)...

Then, if I hit "Lock", it naturally locks-out those, and also ROTATE.

Then, if I hit "unlock", it unlocks ALL ROTATE and ROLL settings, which I just disabled...

Is it going to do this for every program? Is there no way to give it TWO settings, for the LOCKED and UNLOCKED button?

If not, is there a way to disable that button, so it does something more useful, that doesn't "break user settings"...

jwick
Moderator
Moderator
Posts: 2685
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: Lock/Unlock, reverting back to default settings, not my settings

Post by jwick » Thu Apr 26, 2018 1:00 am

You can define Banks of button and axis settings in your cfg and tell the driver to switch between them with your device buttons.

There is no GUI support for this. You have to dig into the XML.

There are several operations: GoTo, Push, Pop, Next, Previous, PushPop (push while the device button is down, pop when the device button is released - a generalized shift/modifier key). It sound like Push and Pop are what you are looking for.

The following ButtonAction pushes to a ButtonBank named "Bank_A" (which you create). That new ButtonBank gets used; the last one gets saved on a stack. There is no limit on the depth of the stack.

The next ButtonAction pops that ButtonBank to go back to your original ButtonBank (before the push).

E.g.,
<ButtonAction Type="ButtonBank">
<ID>ButtonBank_Push</ID>
<Name>Push Bank_A</Name>
<Action>Push</Action>
<BankID>Bank_A</BankID>
<Image>
<Source>[driver_images:ButtonBankPush.png]</Source>
</Image>
</ButtonAction>

<ButtonAction Type="ButtonBank">
<ID>ButtonBank_Pop</ID>
<Name>Pop BB</Name>
<Action>Pop</Action>
<BankID></BankID>
<Image>
<Source>[driver_images:ButtonBankPop.png]</Source>
</Image>
</ButtonAction>

For Axes, I'm assuming the same thing works:
<ButtonAction Type="AxisBank">
<ID>AxisBank_Push</ID>
<Name>Push AxisBank_A</Name>
<Action>Push</Action>
<BankID>AxisBank_A</BankID>
<Image>
<Source>[driver_images:ButtonBankPush.png]</Source>
</Image>
</ButtonAction>

<ButtonAction Type="AxisBank">
<ID>AxisBank_Pop</ID>
<Name>Pop AB</Name>
<Action>Pop</Action>
<BankID></BankID>
<Image>
<Source>[driver_images:ButtonBankPop.png]</Source>
</Image>
</ButtonAction>

If you align the names, there are "Application" analogs that operate on the Buttonbanks and AxisBanks in unison.

To replace the Lock button functionality, I'd assign the Push to the Lock button. Then when it goes into that ButtonBank, assign the Pop to the Lock button, so you can use the Lock button as a toggle of this state. It'll take a bit of effort to work all this out w/o the help of the GUI. I'll help you if you want. Frankly, I don't know how to create a GUI that explains this.

Post Reply