Mercurial > projects > doodle
comparison doodle/dia/standard_tools.d @ 56:b190a9d9352e
Checkpoint
author | "David Bryant <bagnose@gmail.com>" |
---|---|
date | Sun, 08 Aug 2010 21:56:54 +0930 |
parents | 1b4c9ba58673 |
children | 9960c4fbd0dd |
comparison
equal
deleted
inserted
replaced
55:4922e746dd76 | 56:b190a9d9352e |
---|---|
89 private { | 89 private { |
90 static invariant double ZOOM = sqrt(2.0); | 90 static invariant double ZOOM = sqrt(2.0); |
91 } | 91 } |
92 } | 92 } |
93 | 93 |
94 final class LassoTool : Tool { // TODO convert to SelectTool | 94 final class SelectTool : Tool { |
95 override bool handleButtonPress(scope Viewport viewport, in ButtonEvent event) { | 95 override bool handleButtonPress(scope Viewport viewport, in ButtonEvent event) { |
96 if (event.button_name == ButtonName.LEFT) { | 96 if (event.button_name == ButtonName.LEFT) { |
97 _active = true; | 97 _active = true; |
98 _anchorPoint = _currentPoint = event.pixelPoint; | 98 _anchorPoint = _currentPoint = event.pixelPoint; |
99 viewport.setCursor(Cursor.HAND); | 99 viewport.setCursor(Cursor.HAND); |
125 | 125 |
126 return false; | 126 return false; |
127 } | 127 } |
128 | 128 |
129 override void draw(in Viewport viewport, | 129 override void draw(in Viewport viewport, |
130 in Rectangle pixelDamage, scope Context pixelCr, | 130 in Rectangle pixelDamage, scope Context pixelCr) const { |
131 in Rectangle modelDamage, scope Context modelCr) const { | |
132 if (_active) { | 131 if (_active) { |
132 /* | |
133 pixelCr.save; { | 133 pixelCr.save; { |
134 pixelCr.setSourceRgba(0.0, 0.0, 0.8, 0.3); | 134 pixelCr.setSourceRgba(0.0, 0.0, 0.8, 0.3); |
135 rectangle(pixelCr, Rectangle(_currentPoint, _anchorPoint)); | 135 rectangle(pixelCr, Rectangle(_currentPoint, _anchorPoint)); |
136 pixelCr.fill(); | 136 pixelCr.fill(); |
137 } pixelCr.restore(); | 137 } pixelCr.restore(); |
138 */ | |
138 | 139 |
139 pixelCr.save(); { | 140 pixelCr.save(); { |
140 //double[] dashes = [ 4.0, 4.0 ]; | 141 double[] dashes = [ 4.0, 4.0 ]; |
141 //pixelCr.setDash(dashes, 0.0); | 142 pixelCr.setDash(dashes, 0.0); |
142 pixelCr.setSourceRgba(0.0, 0.0, 0.5, 1.0); | 143 pixelCr.setSourceRgba(0.0, 0.0, 0.5, 1.0); |
143 pixelCr.setLineWidth(LINE_WIDTH); | 144 pixelCr.setLineWidth(LINE_WIDTH); |
144 //writefln("Drawing rectangle: %s", Rectangle(_currentPoint, _anchorPoint)); | |
145 rectangle(pixelCr, Rectangle(_currentPoint, _anchorPoint)); | 145 rectangle(pixelCr, Rectangle(_currentPoint, _anchorPoint)); |
146 pixelCr.stroke; | 146 pixelCr.stroke; |
147 } pixelCr.restore; | 147 } pixelCr.restore; |
148 } | 148 } |
149 } | 149 } |