--- a/mouse-data/.seznam.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/.seznam.xml Thu Sep 05 01:12:12 2019 +0200
@@ -10,35 +10,35 @@
<a href="index.xhtml">Mouse utilities</a>
–
Introduction to the mouse utilities.
- (3.9. 2019 22:04)
+ (4.9. 2019 23:19)
</p>
<p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
style="seznamStranek">
<a href="cadMousePro.xhtml">cadMousePro</a>
–
CLI tool, D-Bus service and a GUI application for configuring the CadMouse Pro.
- (3.9. 2019 22:04)
+ (4.9. 2019 23:19)
</p>
<p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
style="seznamStranek">
<a href="spacenav-demo.xhtml">Spacenav Demo</a>
–
Demo program that shows current state of 3D mouse.
- (3.9. 2019 22:04)
+ (5.9. 2019 0:10)
</p>
<p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
style="seznamStranek">
<a href="spacenav-simulator.xhtml">Spacenav Simulator</a>
–
A tool that simulates 3D mouse (resp. the socket) and allows control of a CAD or other client program.
- (3.9. 2019 22:04)
+ (5.9. 2019 0:26)
</p>
<p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
style="seznamStranek">
<a href="spacenav-hack.xhtml">Spacenav Hack</a>
–
An LD_PRELOAD hack that translates socket messages to the X11 events.
- (3.9. 2019 22:04)
+ (5.9. 2019 1:05)
</p>
<p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
style="seznamStranek">
@@ -52,14 +52,21 @@
<a href="download.xhtml">Download</a>
–
Sources and distribution of Mouse utilities
- (3.9. 2019 23:26)
+ (4.9. 2019 23:38)
</p>
<p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
style="seznamStranek">
<a href="contact.xhtml">Support & contact</a>
–
Support and contact information
- (3.9. 2019 23:21)
+ (4.9. 2019 23:38)
+ </p>
+ <p xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
+ style="seznamStranek">
+ <a href="screenshots.xhtml">Screenshots</a>
+ –
+ Pictures of the GUI
+ (5.9. 2019 0:18)
</p>
</text>
</stránka>
\ No newline at end of file
--- a/mouse-data/cadMousePro.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/cadMousePro.xml Thu Sep 05 01:12:12 2019 +0200
@@ -8,7 +8,119 @@
<text xmlns="http://www.w3.org/1999/xhtml">
<p>
+ The cadMousePro is an independent free tool for configuring 3DConnexion CadMouse Pro.
</p>
+
+ <h2>Architecture</h2>
+
+ <p>
+ The cadMousePro consists of two parts:
+ </p>
+
+ <p>
+ The first one is a command line utility which sends configuration to the mouse as a USB HID message.
+ This utility can also run in daemon mode and expose a D-Bus interface that could be called by other apllication.
+ This tool must run under <code>root</code> or other user who has permissions to access the USB device.
+ </p>
+
+ <p>
+ The second part is a simple GUI apllication which shows mouse status (name and battery level) and can configure the mouse.
+ This GUI layer connects to the daemon using the D-Bus interface.
+ Thus the GUI can run under any user (can be restricted using the D-Bus rules, if needed).
+ The information about the battery level is provided by the UPower daemon (also over a D-Bus interface).
+ </p>
+
+ <m:diagram><![CDATA[
+ node [shape="box", fontname="Ubuntu,Sans"];
+
+ usb [label="USB HID"]
+ daemon [label="cadMousePro Daemon"]
+ cli [label="cadMousePro CLI"]
+ gui [label="cadMousePro GUI"]
+ other [label="Other D-Bus client"]
+ upower [label="UPower"]
+
+ other -> daemon;
+ gui -> daemon;
+ gui -> upower;
+
+ cli -> usb;
+ daemon -> usb;
+ upower -> usb;
+ ]]></m:diagram>
+
+ <h2>Features</h2>
+
+ <p>Mouse status:</p>
+ <m:img src="img/cadMousePro-status-adwaita-v0.3.png"/>
+
+ <p>Mouse configuration:</p>
+ <m:img src="img/cadMousePro-configuration-adwaita-v0.3.png"/>
+
+ <p>About:</p>
+ <m:img src="img/cadMousePro-about-adwaita-v0.3.png"/>
+
+ <h2>Disable Smart scrolling (free wheel)</h2>
+
+ <p>
+ The CadMouse Pro has a feature called „smart“ scrolling (also know as „free wheel“)
+ which is actually not so smart and is rather an anti-feature and most users will probably want to disable it.
+ </p>
+
+ <p>
+ This feature simulates the momentum – if you scroll bit faster, the mouse continue to send scroll events even if you have already stopped scrolling the wheel.
+ So you scroll, stop scrolling, move cursor to another window… but the mouse still scrolls and you get angry
+ (especially it that another window was a taskbar and your windows are now fiercely switching).
+ </p>
+
+ <h2>Build and installation</h2>
+
+ <p>We use the CMake build system, so the steps are basically:</p>
+
+ <pre><![CDATA[mkdir build && cd build && cmake .. && make]]></pre>
+
+ <p>Required libraries:</p>
+
+ <ul>
+ <li>hidapi-hidraw</li>
+ <li>Qt</li>
+ </ul>
+
+ <p>
+ Old version <code>v0.1</code> requires only <code>hidapi-hidraw</code> and has no GUI nor D-Bus interface.
+ </p>
+
+ <p>
+ The daemon mode requires instalation of the D-Bus policy (in order to expose the service on the system bus and allow others to use it).
+ Template for policy is in file:
+ </p>
+ <pre>config/etc/dbus-1/system.d/info.globalcode.mouse.cadMousePro.conf</pre>
+
+ <p>
+ If we want to configure the mouse automatically when it is connected, we should install a udev rule.
+ Template for udev rule is in file:
+ </p>
+ <pre>config/etc/udev/rules.d/99-cadMousePro.rules</pre>
+
+ <h2>Usage</h2>
+
+ <p>
+ For ad-hoc configuration we just run:
+ </p>
+
+ <pre>sudo ./cadMousePro --frequency 250 --smart-scrolling false --lift-off-detection true</pre>
+
+ <p>
+ The daemon is started in this way:
+ </p>
+
+ <pre>sudo ./cadMousePro --daemon true</pre>
+
+ <h2>3DConnexion CadMouse Pro Wireless</h2>
+ <p>Our software works with this mouse:</p>
+ <m:img src="img/3DConnexion-CadMouse-Pro-1.jpeg"/>
+ <m:usb-id/>
+
</text>
</stránka>
--- a/mouse-data/contact.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/contact.xml Thu Sep 05 01:12:12 2019 +0200
@@ -10,7 +10,7 @@
<slovo>contact</slovo>
<slovo>public keys</slovo>
</klíčováSlova>
- <pořadí>100</pořadí>
+ <pořadí>900</pořadí>
<text xmlns="http://www.w3.org/1999/xhtml">
<p>
--- a/mouse-data/download.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/download.xml Thu Sep 05 01:12:12 2019 +0200
@@ -4,7 +4,7 @@
<nadpis>Download</nadpis>
<perex>Sources and distribution of Mouse utilities</perex>
- <pořadí>090</pořadí>
+ <pořadí>100</pořadí>
<text xmlns="http://www.w3.org/1999/xhtml">
<p>
Binary file mouse-data/img/3DConnexion-CadMouse-Pro-1.jpeg has changed
Binary file mouse-data/img/3DConnexion-CadMouse-Pro-1.xcf has changed
Binary file mouse-data/img/3DConnexion-SpaceMouse-1.jpeg has changed
Binary file mouse-data/img/3DConnexion-SpaceMouse-1.xcf has changed
Binary file mouse-data/img/cadMousePro-about-adwaita-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-about-breeze-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-about-cleanlooks-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-about-oxygen-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-configuration-adwaita-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-configuration-breeze-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-configuration-cleanlooks-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-configuration-oxygen-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-status-adwaita-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-status-breeze-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-status-cleanlooks-v0.3.png has changed
Binary file mouse-data/img/cadMousePro-status-oxygen-v0.3.png has changed
Binary file mouse-data/img/spacenavDemo-adwaita-v0.1.png has changed
Binary file mouse-data/img/spacenavDemo-breeze-v0.1.png has changed
Binary file mouse-data/img/spacenavDemo-cleanlooks-v0.1.png has changed
Binary file mouse-data/img/spacenavDemo-oxygen-v0.1.png has changed
Binary file mouse-data/img/spacenavHack-freecad-v0.1.png has changed
Binary file mouse-data/img/spacenavSimulator-adwaita-v0.1.png has changed
Binary file mouse-data/img/spacenavSimulator-breeze-v0.1.png has changed
Binary file mouse-data/img/spacenavSimulator-cleanlooks-v0.1.png has changed
Binary file mouse-data/img/spacenavSimulator-oxygen-v0.1.png has changed
--- a/mouse-data/index.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/index.xml Thu Sep 05 01:12:12 2019 +0200
@@ -11,6 +11,16 @@
<m:name/> are free software utilities for computer mice and similar hardware.
They are developed on and for GNU/Linux, but should work also on other unix-like systems.
</p>
+
+ <m:img src="img/cadMousePro-status-adwaita-v0.3.png"/>
+
+ <p>
+ <em>
+ n.b. We (GlobalCode) are not affiliated to any manufacturer of hardware mentioned on this website.
+ And this website is not intended as a product review or a recommendation to purchase any hardware.
+ However, if you already have such piece of hardware, we hope our software will help you to use it on your free operating system.
+ </em>
+ </p>
</text>
</stránka>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mouse-data/makra/escape-xml.xsl Thu Sep 05 01:12:12 2019 +0200
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="2.0"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://www.w3.org/1999/xhtml"
+ xmlns:s="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
+ xmlns:k="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/konfigurace"
+ xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fn="http://www.w3.org/2005/xpath-functions"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ exclude-result-prefixes="fn h s k m xs">
+
+ <!--
+ Should be used as a pipe filter in scripts with výstup="xhtml"
+ -->
+ <xsl:template match="m:escape-xml"><![CDATA[sed -e 's/&/\&/g' -e 's/</\</g' -e 's/>/\>/g' -e 's/"/\"/g' -e "s/'/\\'/g"]]></xsl:template>
+
+</xsl:stylesheet>
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mouse-data/makra/usb-id.xsl Thu Sep 05 01:12:12 2019 +0200
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="2.0"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:h="http://www.w3.org/1999/xhtml"
+ xmlns:s="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
+ xmlns:k="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/konfigurace"
+ xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fn="http://www.w3.org/2005/xpath-functions"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ exclude-result-prefixes="fn h s k m xs">
+
+ <xsl:template match="m:usb-id">
+ <p>The mouse connects using a wireless USB adapter with ID: <code>256f:c652</code> and identifies itself as <code>3Dconnexion Universal Receiver</code></p>
+ </xsl:template>
+
+</xsl:stylesheet>
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mouse-data/screenshots.xml Thu Sep 05 01:12:12 2019 +0200
@@ -0,0 +1,38 @@
+<stránka
+ xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
+ xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro">
+
+ <nadpis>Screenshots</nadpis>
+ <perex>Pictures of the GUI</perex>
+ <pořadí>090</pořadí>
+
+ <text xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ Our GUI applications are build with the Qt toolkit
+ and can be styled (themed) in various ways to fit your desktop environment.
+ </p>
+
+ <p>Adwaita:</p>
+ <m:img src="img/cadMousePro-status-adwaita-v0.3.png"/>
+ <m:img src="img/spacenavDemo-adwaita-v0.1.png"/>
+ <m:img src="img/spacenavSimulator-adwaita-v0.1.png"/>
+
+ <p>Oxygen:</p>
+ <m:img src="img/cadMousePro-status-oxygen-v0.3.png"/>
+ <m:img src="img/spacenavDemo-oxygen-v0.1.png"/>
+ <m:img src="img/spacenavSimulator-oxygen-v0.1.png"/>
+
+ <p>Breeze:</p>
+ <m:img src="img/cadMousePro-status-breeze-v0.3.png"/>
+ <m:img src="img/spacenavDemo-breeze-v0.1.png"/>
+ <m:img src="img/spacenavSimulator-breeze-v0.1.png"/>
+
+ <p>Cleanlooks:</p>
+ <m:img src="img/cadMousePro-status-cleanlooks-v0.3.png"/>
+ <m:img src="img/spacenavDemo-cleanlooks-v0.1.png"/>
+ <m:img src="img/spacenavSimulator-cleanlooks-v0.1.png"/>
+
+ </text>
+
+</stránka>
+
--- a/mouse-data/spacenav-demo.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/spacenav-demo.xml Thu Sep 05 01:12:12 2019 +0200
@@ -8,7 +8,31 @@
<text xmlns="http://www.w3.org/1999/xhtml">
<p>
+ The Spacenav Demo is a simple client program for the <a href="http://spacenav.sourceforge.net/">Spacenav</a> library and daemon.
+ This demo just shows current status of the 6DoF 3D mouse
+ and can be used for testing.
</p>
+
+ <m:img src="img/spacenavDemo-adwaita-v0.1.png"/>
+
+ <h2>Build and installation</h2>
+
+ <p>We use the CMake build system, so the steps are basically:</p>
+
+ <pre><![CDATA[mkdir build && cd build && cmake .. && make]]></pre>
+
+ <p>Required libraries:</p>
+
+ <ul>
+ <li>spnav</li>
+ <li>Qt</li>
+ </ul>
+
+ <h2>3DConnexion SpaceMouse Wireless</h2>
+ <p>Our software works with this mouse:</p>
+ <m:img src="img/3DConnexion-SpaceMouse-1.jpeg"/>
+ <m:usb-id/>
+
</text>
</stránka>
--- a/mouse-data/spacenav-hack.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/spacenav-hack.xml Thu Sep 05 01:12:12 2019 +0200
@@ -8,7 +8,54 @@
<text xmlns="http://www.w3.org/1999/xhtml">
<p>
+ There are two ways how the <a href="http://spacenav.sourceforge.net/">Spacenav</a> client (e.g. Blender, OpenSCAD or FreeCAD) and the Spacenav server (Spacenav daemon connected to the 6DoF 3D mouse or our simulator)
+ can reach each other:
</p>
+
+ <ul>
+ <li>unix domain socket</li>
+ <li>X11</li>
+ </ul>
+
+ <p>
+ The client might be compiled with both options (like X11 with fallback to socket interface) or only with one (like X11 only).
+ The server can be configured to provide both interfaces (it needs the <code>~/.Xauthority</code> X11 magic cookie)
+ or only the socket interface (if the cookie is missing).
+ </p>
+
+ <p>
+ If we have socket-only server and X11-only client, we can of course recompile the client or reconfigure the server.
+ Or we can have some fun, hack it in the <code>LD_PRELOAD</code> fashion and translate the socket interface to the X11 one.
+ So we make X11 client talking to the socket server.
+ </p>
+
+ <m:img src="img/spacenavHack-freecad-v0.1.png"/>
+
+ <h2>Build and installation</h2>
+
+ <p>We use the CMake build system, so the steps are basically:</p>
+
+ <pre><![CDATA[mkdir build && cd build && cmake .. && make]]></pre>
+
+ <p>Required libraries:</p>
+
+ <ul>
+ <li>spnav</li>
+ </ul>
+
+ <h2>Usage</h2>
+
+ <p>We just run our favourite CAD with our hackish library preloaded:</p>
+
+ <pre>LD_PRELOAD="./libspnav-lib-hack.so" freecad</pre>
+
+ <p>and it translates the X11 API calls to the socket ones.</p>
+
+ <h2>3DConnexion SpaceMouse Wireless</h2>
+ <p>Our software works with this mouse:</p>
+ <m:img src="img/3DConnexion-SpaceMouse-1.jpeg"/>
+ <m:usb-id/>
+
</text>
</stránka>
--- a/mouse-data/spacenav-simulator.xml Tue Sep 03 23:28:46 2019 +0200
+++ b/mouse-data/spacenav-simulator.xml Thu Sep 05 01:12:12 2019 +0200
@@ -8,7 +8,31 @@
<text xmlns="http://www.w3.org/1999/xhtml">
<p>
+ The Spacenav Simulator is a simple server program that simulates the <a href="http://spacenav.sourceforge.net/">Spacenav</a> unix domain socket.
+ This simulator pretends that it is a 6DoF 3D mouse and Spacenav daemon.
+ It can be used for testing and development even if we do not have given hardware.
+ We can control e.g. Blender or OpenSCAD using this simulator.
</p>
+
+ <m:img src="img/spacenavSimulator-adwaita-v0.1.png"/>
+
+ <h2>Build and installation</h2>
+
+ <p>We use the CMake build system, so the steps are basically:</p>
+
+ <pre><![CDATA[mkdir build && cd build && cmake .. && make]]></pre>
+
+ <p>Required libraries:</p>
+
+ <ul>
+ <li>Qt</li>
+ </ul>
+
+
+ <h2>3DConnexion SpaceMouse Wireless</h2>
+ <p>Our software simulates this mouse:</p>
+ <m:img src="img/3DConnexion-SpaceMouse-1.jpeg"/>
+
</text>
</stránka>
--- a/scripts/image-comment.sh Tue Sep 03 23:28:46 2019 +0200
+++ b/scripts/image-comment.sh Thu Sep 05 01:12:12 2019 +0200
@@ -2,7 +2,7 @@
FILE="$1";
COMMENT="$2";
-COPYRIGHT="Mouse utilities (c) $(date +%Y) Frantisek Kucera, Frantovo.cz, GlobalCode.info; copylefted under the GNU FDLv1.3+ license"; # this tag should be in ASCII, see http://www.exiv2.org/tags.html
+COPYRIGHT="Mouse utilities (c) $(date +%Y) Frantisek Kucera, Frantovo.cz, GlobalCode.info; copylefted under the GNU FDLv1.3+ license; source: https://mouse.globalcode.info/"; # this tag should be in ASCII, see http://www.exiv2.org/tags.html
[ -n "$FILE" ] && exiv2 -M "set Exif.Image.Copyright $COPYRIGHT" "$FILE";
[ -n "$COMMENT" ] && exiv2 -M "set Exif.Photo.UserComment charset=Unicode $COMMENT" "$FILE";