Radial Menu inside Global.xml

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Post Reply
pablo.najurieta
Posts: 4
Joined: Thu Dec 07, 2023 4:10 am

Radial Menu inside Global.xml

Post by pablo.najurieta »

Hi,

New user here so hope someone can help me.

I am trying to have a radial menu to be always mapped to one of my CadMouse Pro buttons (the Forward mouse button specifically).

I made the radial menu and tried to copy it into the Global.XML file but I don't know where to put some of the parts of the file. In the examples I've seen you only need to add the parts under ButtonBank, but I see the radial menu has other sections like MacroTables, Macros and Menus. What would be the correct way to add them to the Global.xml?

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

Re: Radial Menu inside Global.xml

Post by jwick »

Post your Global.xml here. (Remove any personal info first)
pablo.najurieta
Posts: 4
Joined: Thu Dec 07, 2023 4:10 am

Re: Radial Menu inside Global.xml

Post by pablo.najurieta »

Thanks, hope you can help me.

Here's my global.xml - it only has a macro mapped to the forward button, so it will show the desktop, but it only works sometimes (I think only when the default mappings on a software has been already changed, if the default is still there it will not do anything).

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<Global Default="false" xmlns="" CfgFormatVersion="1.3" ThisFileVersion="">
  <CfgProperties>
    <ID>ID_Global_Cfg</ID>
    <Name>STR_GLOBALCFG</Name>
    <InheritsFromID>ID_Global_Cfg</InheritsFromID>
  </CfgProperties>
  <AuthorInfo>
    <DriverVersion>17.8.16.20445</DriverVersion>
    <LastChange>
      <Tool>3DxSmartUI.exe</Tool>
      <Version>1.2.23265.20445</Version>
      <Date>12/6/2023 5:17:28 PM UTC</Date>
      <User>C7972342-43EB-45B0-B0BE-D0F0C91CCBA3</User>
    </LastChange>
    <Created>
      <Tool>3DxService.exe</Tool>
      <Version>17.8.16.20445</Version>
      <Date>2023:12:5:1:13:55:15:778</Date>
      <User>C7972342-43EB-45B0-B0BE-D0F0C91CCBA3</User>
    </Created>
  </AuthorInfo>
  <Settings>
    <CheckedForMouseSysParams />
    <InstallerAutoCheckForUpdates>true</InstallerAutoCheckForUpdates>
    <LastAutoCheckForUpdates>6-12-2023</LastAutoCheckForUpdates>
  </Settings>
  <Devices>
    <Device>
      <ID>ID_ProductID_C654</ID>
      <Settings>
        <OverallScale>0.55</OverallScale>
      </Settings>
		<ButtonBank Global="true">   <!-- This is important -->
        <ID>Global Global</ID>
        <Name>Global</Name>
        <InheritsFromID/>
        <Button>
          <Input>
            <ActionID>HIDButton_6</ActionID>
          </Input>
          <Output>
            <ActionID>Left Windows+D</ActionID>
          </Output>
        </Button>
      </ButtonBank>
	</Device>
    <Device>
      <ID>ID_ProductID_C633</ID>
      <Settings>
      </Settings>
    </Device>
    <Device>
      <ID>ID_ProductID_C652</ID>
      <Settings>
        <OnScreenDisplay>
          <AlwaysOn>true</AlwaysOn>
          <Enabled>true</Enabled>
        </OnScreenDisplay>
      </Settings>
    </Device>
  </Devices>
</Global>

And here's the xml that already has the radial menu I want to add to global.

Code: Select all

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<AppCfg xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Default="false" CfgFormatVersion="1.3" ThisFileVersion="2.2">
  <AppInfo>
    <Signature>
      <Name>Notepad++</Name>
    </Signature>
    <Options />
  </AppInfo>
  <CfgProperties>
    <ID>ID_Notepad++</ID>
    <Name>Notepad++</Name>
    <InheritsFromID>ID_Notepad++</InheritsFromID>
  </CfgProperties>
  <MacroTable>
    <MacroEntry>
      <ID>Left Windows+D</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Windows</Modifier>
        </Modifiers>
        <Key>7</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>Left Windows+TAB</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Windows</Modifier>
        </Modifiers>
        <Key>2B</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>ESC</ID>
      <KeyStroke>
        <Key>29</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+Z</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
        </Modifiers>
        <Key>1D</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+SHIFT+Z</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
          <Modifier>Shift</Modifier>
        </Modifiers>
        <Key>1D</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+SHIFT+P</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
          <Modifier>Shift</Modifier>
        </Modifiers>
        <Key>13</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>E</ID>
      <KeyStroke>
        <Key>8</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+SHIFT</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
        </Modifiers>
        <Key>E1</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+S</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
        </Modifiers>
        <Key>16</Key>
      </KeyStroke>
    </MacroEntry>
  </MacroTable>
  <Devices>
    <Device>
      <ID>ID_ProductID_C654</ID>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>HIDButton_5</ActionID>
          </Input>
          <Output>
            <ActionID>Left Windows+D</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>HIDButton_6</ActionID>
          </Input>
          <Output>
            <ActionID>RadialMenu_MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</ActionID>
          </Output>
        </Button>
      </ButtonBank>
    </Device>
  </Devices>
  <AuthorInfo>
    <DriverVersion>17.8.16.20445</DriverVersion>
    <LastChange>
      <Tool>3DxSmartUI.exe</Tool>
      <Version>1.2.23265.20445</Version>
      <Date>12/7/2023 10:46:55 AM UTC</Date>
      <User>C7972342-43EB-45B0-B0BE-D0F0C91CCBA3</User>
    </LastChange>
  </AuthorInfo>
  <Menus>
    <Menu Type="Radial">
      <ID>MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</ID>
      <Name>Radial_v02</Name>
      <Style>EightButton</Style>
      <GesturesEnabled>True</GesturesEnabled>
      <Button>
        <Input>
          <ActionID>MenuButton_1</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+S</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_2</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+SHIFT+P</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_3</ActionID>
        </Input>
        <Output>
          <ActionID>Left Windows+D</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_4</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+SHIFT+Z</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_5</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_ShowDriverGUI</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_6</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+Z</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_7</ActionID>
        </Input>
        <Output>
          <ActionID>Left Windows+TAB</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_8</ActionID>
        </Input>
        <Output>
          <ActionID>ESC</ActionID>
        </Output>
      </Button>
    </Menu>
  </Menus>
  <ButtonActions>
    <ButtonAction Type="Menu">
      <ID>RadialMenu_MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</ID>
      <Name>Radial_v02</Name>
      <MenuID>MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</MenuID>
    </ButtonAction>
  </ButtonActions>
</AppCfg>
jwick
Moderator
Moderator
Posts: 3341
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: Radial Menu inside Global.xml

Post by jwick »

Well, far out, it works. I surprise myself sometimes. That's probably useful.

You can just put all those things into your Global.xml.
Fair warning, our GUI, LCD and OnScreenDisplay don't know anything about these global assignments. They will more than likely not show what is actually happening.

Here's your fixed global.xml:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<Global Default="false" xmlns="" CfgFormatVersion="1.3" ThisFileVersion="">
  <CfgProperties>
    <ID>ID_Global_Cfg</ID>
    <Name>STR_GLOBALCFG</Name>
    <InheritsFromID>ID_Global_Cfg</InheritsFromID>
  </CfgProperties>
  <AuthorInfo>
    <DriverVersion>17.8.16.20445</DriverVersion>
    <LastChange>
      <Tool>3DxSmartUI.exe</Tool>
      <Version>1.2.23265.20445</Version>
      <Date>12/6/2023 5:17:28 PM UTC</Date>
      <User>C7972342-43EB-45B0-B0BE-D0F0C91CCBA3</User>
    </LastChange>
    <Created>
      <Tool>3DxService.exe</Tool>
      <Version>17.8.16.20445</Version>
      <Date>2023:12:5:1:13:55:15:778</Date>
      <User>C7972342-43EB-45B0-B0BE-D0F0C91CCBA3</User>
    </Created>
  </AuthorInfo>
  <Settings>
    <CheckedForMouseSysParams />
    <InstallerAutoCheckForUpdates>true</InstallerAutoCheckForUpdates>
    <LastAutoCheckForUpdates>6-12-2023</LastAutoCheckForUpdates>
  </Settings>
  <ButtonActions>
    <ButtonAction Type="Menu">
      <ID>RadialMenu_MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</ID>
      <Name>Radial_v02</Name>
      <MenuID>MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</MenuID>
    </ButtonAction>
  </ButtonActions>
  <MacroTable>
    <MacroEntry>
      <ID>Left Windows+D</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Windows</Modifier>
        </Modifiers>
        <Key>7</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>Left Windows+TAB</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Windows</Modifier>
        </Modifiers>
        <Key>2B</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>ESC</ID>
      <KeyStroke>
        <Key>29</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+Z</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
        </Modifiers>
        <Key>1D</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+SHIFT+Z</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
          <Modifier>Shift</Modifier>
        </Modifiers>
        <Key>1D</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+SHIFT+P</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
          <Modifier>Shift</Modifier>
        </Modifiers>
        <Key>13</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>E</ID>
      <KeyStroke>
        <Key>8</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+SHIFT</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
        </Modifiers>
        <Key>E1</Key>
      </KeyStroke>
    </MacroEntry>
    <MacroEntry>
      <ID>CTRL+S</ID>
      <KeyStroke>
        <Modifiers>
          <Modifier>Control</Modifier>
        </Modifiers>
        <Key>16</Key>
      </KeyStroke>
    </MacroEntry>
  </MacroTable>
  <Menus>
    <Menu Type="Radial">
      <ID>MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</ID>
      <Name>Radial_v02</Name>
      <Style>EightButton</Style>
      <GesturesEnabled>True</GesturesEnabled>
      <Button>
        <Input>
          <ActionID>MenuButton_1</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+S</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_2</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+SHIFT+P</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_3</ActionID>
        </Input>
        <Output>
          <ActionID>Left Windows+D</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_4</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+SHIFT+Z</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_5</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_ShowDriverGUI</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_6</ActionID>
        </Input>
        <Output>
          <ActionID>CTRL+Z</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_7</ActionID>
        </Input>
        <Output>
          <ActionID>Left Windows+TAB</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_8</ActionID>
        </Input>
        <Output>
          <ActionID>ESC</ActionID>
        </Output>
      </Button>
    </Menu>
  </Menus>
  <Devices>
    <Device>
      <ID>ID_ProductID_C654</ID>
      <ButtonBank Global="true">
        <ID>Global Global</ID>
        <Name>Global</Name>
        <Button>
          <Input>
            <ActionID>HIDButton_5</ActionID>
          </Input>
          <Output>
            <ActionID>Left Windows+D</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>HIDButton_6</ActionID>
          </Input>
          <Output>
            <ActionID>RadialMenu_MenuRM_4b4ec489-da52-4082-a1c2-7a02a26fb6a2</ActionID>
          </Output>
        </Button>
      </ButtonBank>
    </Device>
  </Devices>
</Global>
pablo.najurieta
Posts: 4
Joined: Thu Dec 07, 2023 4:10 am

Re: Radial Menu inside Global.xml

Post by pablo.najurieta »

Hi jwick, thanks for your help.

I copied what you sent and replaced the content on my file but for some reason I get an error.

See attached.

Thanks,

Pablo
Attachments
Screenshot - 2023-12-11 10.26.23.png
Screenshot - 2023-12-11 10.26.23.png (29.02 KiB) Viewed 10912 times
jwick
Moderator
Moderator
Posts: 3341
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: Radial Menu inside Global.xml

Post by jwick »

Do you have more than one 3DxPieMenus.exe running?
pablo.najurieta
Posts: 4
Joined: Thu Dec 07, 2023 4:10 am

Re: Radial Menu inside Global.xml

Post by pablo.najurieta »

Thanks for trying to help...

The message pops up when I press the button for the second time. So, when I press once nothing happens (I can see the mouse flicker so it's trying to show something but the radial menu doesn't show up). When I press again it shows the error.

Are you part of 3dConnexion? If yes, how come it is not possible to have some settings applied to all programs? Is this planned to be added at some point? Seems super basic to me. Having to edit and send the content of XML files to tech support is... I don't even know how to put it politely.

If it's not possible to edit for all programs, at least there should be a way to load the configs easily. I create a radial menu -> save it as an XML -> and I can load it when I'm customising a button. Having to program the same keys for all the different programs I use is the opposite of what I'm trying to do which is automate work. If I decide I want to change a shortcut, then I need to edit EVERY SINGLE MENU again. If it was loading a file at least then you only need to edit it once.
Post Reply