Universal button and macro settings

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Post Reply
Alexscouce64
Posts: 7
Joined: Fri Jan 10, 2020 1:02 am

Universal button and macro settings

Post by Alexscouce64 » Mon Jan 13, 2020 12:09 am

Good morning all,

I use a translator, I hope my request will be comprehensive!

I use shortcuts and radial menus mainly for office shortcuts and I would like not to have
to enter the information for each application each time and recreate a radial menu for each of them because it is
very long and boring.

Is there a parameter or an application allowing to use the parameters of personalization of button for all the applications
at once ? It would be really very practical, I am surprised that this option is not offered by default ...

Thank you in advance for taking an interest in my request.

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

Re: Universal button and macro settings

Post by jwick » Mon Jan 13, 2020 2:15 am

Hello Alexscouce64,

There is no GUI support for this, but the driver supports it. You have to do it manually by editing some XML files. You need to move the XML entries from the application-specific XML file to the Global.xml file. These files will all be in %appdata%/3Dconnexion/3DxWare/Cfg.

It's best to start with a fresh cfg, then do just the changes you want (make a radial menu, assign buttons). This will show you the XML lines that need to move.

You might need my help on that.

Alexscouce64
Posts: 7
Joined: Fri Jan 10, 2020 1:02 am

Re: Universal button and macro settings

Post by Alexscouce64 » Tue Jan 14, 2020 12:20 am

Hello and thank you for your return,

I understood roughly what you meant, that said it is quite complex all the same.

By cons I can not find in the CFG folder, the XML files of my configurations, for example
I have assigned a configuration for TOPSOLID and I cannot find a Topsolid.xml file in the CFG folder.

Isn't there a tutorial or a video explaining step by step the process to follow with details?

Thanks again.

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

Re: Universal button and macro settings

Post by jwick » Tue Jan 14, 2020 1:39 am

A video is a great idea. But sorry, we have no facilities for that.
The GUI should do all this for you. I never intended to have users editing files.

If you made a change while Topsolid was running, you should have a file:
%appdata%\3Dconnexion\3DxWare\Cfg\Topsolid.xml
(just type/paste that whole thing into windows explorer - %appdata% goes to your private directory).

In that file, you will have some ButtonAction entries, Menus, Devices. Those need to be moved.
It might be easier for you to make your changes to Topsolid, then send me the file.
You can PM me a we/dropbox/OneDrive link.

Alexscouce64
Posts: 7
Joined: Fri Jan 10, 2020 1:02 am

Re: Universal button and macro settings

Post by Alexscouce64 » Tue Jan 14, 2020 6:02 am

Thank you for your concern!

Here is the WeTransfer link of the xml file, I hope it's the right one :

https://wetransfer.com/downloads/47e37e ... 447/32c1cb

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

Re: Universal button and macro settings

Post by jwick » Tue Jan 14, 2020 8:25 am

I see that you have created an eight section RadialMenu "Bureautique" that has a macro, Union, and some keyboard keys (Enter, Cut, Paste, delete, etc).
You have also create some other macros (Menu, j+Entrée, Analyse/Distance).

You have assigned the Radial menu to your SpaceNavigator Left button and Left Mouse Button to the SN Right mouse button.
You have also changed some settings in the Axes: -5*Rx, 2.7*Ry, -2.72*Rz, r*X, 5*Y, 5*Z (and swapped some axes).

How much do you want to be mapped all the time?
Is any of it TopSolid-specific?

You have a device with only 2 buttons and 6 axes. When you remap everything globally, it isn't going to do anything in TopSolid. The global mapping overrides any use in the application.

You are several 3DxWare versions behind.

Alexscouce64
Posts: 7
Joined: Fri Jan 10, 2020 1:02 am

Re: Universal button and macro settings

Post by Alexscouce64 » Tue Jan 14, 2020 9:38 am

Thanks for your feedback, I would like the macro to left click on the right button and the radial 8 sections menu with
the macro (Enter, Cut, Paste, delete etc) on the left button are assigned to all applications if possible.

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

Re: Universal button and macro settings

Post by jwick » Wed Jan 15, 2020 2:54 am

Part of this doesn't work as well as I'd hope.
The Menu can not be defined in Global. We don't read Menus from there at this time. I've created an enhancement request for it.

You need to put the Menu in Base.xml. This also means it will get overwritten every time you do an upgrade to a new 3DxWare version. You need to redo it each time (until I fix it).
You should start by upgrading to the latest release (10.6.4 at this time).

Open C:\Program Files\3Dconnexion\3DxWare\3DxWinCore64\Cfg\Base.xml (that's the typical default installation directory).
Look for the line <Menus>. Add this element under it, along with the other <Menu> elements:

Code: Select all

    <Menu Type="Radial">
      <Name>Bureautique</Name>
      <ID>MenuRM_52b0a632-b696-4cfe-8719-cd754eed3535</ID>
      <GesturesEnabled>true</GesturesEnabled>
      <Style>EightButton</Style>
      <Button>
        <Input>
          <ActionID>MenuButton_1</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_Toggle_3DxNumPad</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_2</ActionID>
        </Input>
        <Output>
          <ActionID>KB_Enter</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_3</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_ToggleRotations</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_4</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Paste</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_5</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Copy</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_6</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Cut</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_7</ActionID>
        </Input>
        <Output>
          <ActionID>KB_Delete</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_8</ActionID>
        </Input>
        <Output>
          <ActionID>KB_Esc</ActionID>
        </Output>
      </Button>
    </Menu>
Then add these lines to your %appdata%\3Dconnexion\3DxWare\Cfg\Global.xml file (inside the ButtonActions container):

Code: Select all

    <ButtonAction Type="Menu">
      <ID>RadialMenu_MenuRM_52b0a632-b696-4cfe-8719-cd754eed3535</ID>
      <Name>Bureautique</Name>
      <MenuID>MenuRM_52b0a632-b696-4cfe-8719-cd754eed3535</MenuID>
    </ButtonAction>
Finally add these lines also to the same Global.xml file (put the <Device> in an existing <Devices> container if you already have one.

Code: Select all

  <Devices>
    <Device>
      <Name>SpaceNavigator</Name>
      <ID>ID_ProductID_C626</ID>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>HIDButton_2</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Left</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>HIDButton_1</ActionID>
          </Input>
          <Output>
            <ActionID>RadialMenu_MenuRM_52b0a632-b696-4cfe-8719-cd754eed3535</ActionID>
          </Output>
        </Button>
      </ButtonBank>
    </Device>
  </Devices>
Then restart the driver after all that editing.
Let me know how it works.

Alexscouce64
Posts: 7
Joined: Fri Jan 10, 2020 1:02 am

Re: Universal button and macro settings

Post by Alexscouce64 » Wed Jan 15, 2020 7:53 am

Merci pour le retour, dans le fichier global.xml, je n'ai pas de ligne contenant " ButtonActions",
so I don't know where to position the program line



here is what my file contains:


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Global Default="false" xmlns="" CfgFormatVersion="1.3" ThisFileVersion="2.0">
<CfgProperties>
<ID>ID_Global_Cfg</ID>
<Name>STR_GLOBALCFG</Name>
<InheritsFromID>ID_Base_Cfg</InheritsFromID>
</CfgProperties>
<AuthorInfo>
<DriverVersion>17.6.4.16911</DriverVersion>
<LastChange>
<Tool>3DxSmartUI.exe</Tool>
<Version>1.2.19339.16799</Version>
<Date>1/13/2020 7:59:30 AM UTC</Date>
<User>B_ETUDE4</User>
</LastChange>
</AuthorInfo>
<Settings>
<InstallerAutoCheckForUpdates>false</InstallerAutoCheckForUpdates>
</Settings>
<Devices />
</Global>

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

Re: Universal button and macro settings

Post by jwick » Wed Jan 15, 2020 8:07 am

Then make a ButtonActions section. I'd put it between these two lines:

Code: Select all

    </Settings>
    <ButtonActions>
       <ButtonAction Type="Menu">
         <ID>RadialMenu_MenuRM_52b0a632-b696-4cfe-8719-cd754eed3535</ID>
         <Name>Bureautique</Name>
         <MenuID>MenuRM_52b0a632-b696-4cfe-8719-cd754eed3535</MenuID>
       </ButtonAction>
    </ButtonActions>
    <Devices />

Alexscouce64
Posts: 7
Joined: Fri Jan 10, 2020 1:02 am

Re: Universal button and macro settings

Post by Alexscouce64 » Wed Jan 15, 2020 9:30 am

I did what you told me but it didn't work, maybe I made a mistake in inserting lines, I tried to be precise ...

I admit that I am not a great computer scientist, I think that I will rather pray while waiting that one day the option will be integrated into the software, I think that it would add more value to the product I saw other requests similar to mine, my co-workers would also like the option.

It is very laborious to create the radial menu for each application each time, I do not understand that we cannot create it in common with all the applications.

Thanks again for your involvement

Post Reply