comparison Framework/Widgets/IWorldSceneMouseTracker.h @ 281:300d8b8c48b3 am-2

mouse tracker tuning
author am@osimis.io
date Tue, 28 Aug 2018 10:01:31 +0200
parents fccffbf99ba1
children 56b2e47d3c0c
comparison
equal deleted inserted replaced
280:829163c6efc1 281:300d8b8c48b3
11 * 11 *
12 * This program is distributed in the hope that it will be useful, but 12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of 13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Affero General Public License for more details. 15 * Affero General Public License for more details.
16 * 16 *
17 * You should have received a copy of the GNU Affero General Public License 17 * You should have received a copy of the GNU Affero General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>. 18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 **/ 19 **/
20 20
21 21
23 23
24 #include "../Viewport/CairoContext.h" 24 #include "../Viewport/CairoContext.h"
25 25
26 namespace OrthancStone 26 namespace OrthancStone
27 { 27 {
28
29 // this is tracking a mouse in scene coordinates/mm unlike
30 // the IMouseTracker that is tracking a mouse
31 // in screen coordinates/pixels.
28 class IWorldSceneMouseTracker : public boost::noncopyable 32 class IWorldSceneMouseTracker : public boost::noncopyable
29 { 33 {
30 public: 34 public:
31 virtual ~IWorldSceneMouseTracker() 35 virtual ~IWorldSceneMouseTracker()
32 { 36 {
33 } 37 }
34 38
35 virtual void Render(CairoContext& context, 39 virtual void Render(CairoContext& context,
36 double zoom) = 0; 40 double zoom) = 0;
37 41
38 virtual void MouseUp() = 0; 42 virtual void MouseUp() = 0;
39 43
40 virtual void MouseMove(double x, 44 virtual void MouseMove(double x,
41 double y) = 0; 45 double y) = 0;
42 }; 46 };