kopia lustrzana https://github.com/inkstitch/inkstitch
simulator: add button to toggle crosshair (#3616)
rodzic
fdd308fde1
commit
dd63ef0935
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 1.5 KiB |
|
@ -0,0 +1,64 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="256"
|
||||
height="256"
|
||||
viewBox="0 0 256 256"
|
||||
id="svg8375"
|
||||
version="1.1"
|
||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||
sodipodi:docname="cursor.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs8377" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="2.1965384"
|
||||
inkscape:cx="154.56138"
|
||||
inkscape:cy="137.94432"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
units="mm"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1131"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1" />
|
||||
<metadata
|
||||
id="metadata8380">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1">
|
||||
<path
|
||||
d="M 210.6054,116.73562 Q 216.02899,116.73562 216.02899,122.1592 V 137.17837 Q 216.02899,142.60196 210.6054,142.60196 H 143.01916 Q 140.93317,142.60196 140.93317,144.68795 V 210.60539 Q 140.93317,216.02898 135.50958,216.02898 H 120.49042 Q 115.06683,216.02898 115.06683,210.60539 V 144.68795 Q 115.06683,142.60196 112.98084,142.60196 H 45.394597 Q 39.97101,142.60196 39.97101,137.17837 V 122.1592 Q 39.97101,116.73562 45.394597,116.73562 H 112.98084 Q 115.06683,116.73562 115.06683,114.64962 V 45.394588 Q 115.06683,39.971 120.49042,39.971 H 135.50958 Q 140.93317,39.971 140.93317,45.394588 V 114.64962 Q 140.93317,116.73562 143.01916,116.73562 Z"
|
||||
id="text1"
|
||||
style="font-size:417.199px;font-family:Barlow;-inkscape-font-specification:Barlow;text-align:center;letter-spacing:2.03385px;word-spacing:0px;text-anchor:middle;stroke-width:2.13543;stroke-linejoin:round"
|
||||
aria-label="+" />
|
||||
</g>
|
||||
</svg>
|
Po Szerokość: | Wysokość: | Rozmiar: 2.5 KiB |
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 1.4 KiB |
|
@ -200,7 +200,7 @@ class DrawingPanel(wx.Panel):
|
|||
last_stitch = stitches[-1]
|
||||
break
|
||||
|
||||
if last_stitch:
|
||||
if last_stitch and self.view_panel.btnCursor.GetValue():
|
||||
self.draw_crosshair(last_stitch[0], last_stitch[1], canvas, transform)
|
||||
|
||||
canvas.EndLayer()
|
||||
|
|
|
@ -33,6 +33,7 @@ class ViewPanel(ScrolledPanel):
|
|||
self.stop_button_status = global_settings['stop_button_status']
|
||||
self.color_change_button_status = global_settings['color_change_button_status']
|
||||
self.toggle_page_button_status = global_settings['toggle_page_button_status']
|
||||
self.display_crosshair_status = global_settings['display_crosshair']
|
||||
|
||||
self.btnNpp = wx.BitmapToggleButton(self, -1, style=self.button_style)
|
||||
self.btnNpp.SetBitmap(self.control_panel.load_icon('npp'))
|
||||
|
@ -77,6 +78,12 @@ class ViewPanel(ScrolledPanel):
|
|||
self.btnBackgroundColor.SetToolTip(_("Change background color"))
|
||||
self.btnBackgroundColor.Bind(wx.EVT_COLOURPICKER_CHANGED, self.on_update_background_color)
|
||||
|
||||
self.btnCursor = wx.BitmapToggleButton(self, -1, style=self.button_style)
|
||||
self.btnCursor.SetToolTip(_('Show crosshair'))
|
||||
self.btnCursor.SetBitmap(self.control_panel.load_icon('cursor'))
|
||||
self.btnCursor.SetValue(self.display_crosshair_status)
|
||||
self.btnCursor.Bind(wx.EVT_TOGGLEBUTTON, self.on_cursor_button)
|
||||
|
||||
if not self.detach_callback:
|
||||
self.btnPage = wx.BitmapToggleButton(self, -1, style=self.button_style)
|
||||
self.btnPage.Bind(wx.EVT_TOGGLEBUTTON, self.toggle_page)
|
||||
|
@ -122,6 +129,7 @@ class ViewPanel(ScrolledPanel):
|
|||
settings_sizer = wx.StaticBoxSizer(wx.StaticBox(self, wx.ID_ANY, _("Settings")), wx.VERTICAL)
|
||||
settings_inner_sizer = wx.BoxSizer(wx.VERTICAL)
|
||||
settings_inner_sizer.Add(self.btnBackgroundColor, 0, wx.EXPAND | wx.ALL, 2)
|
||||
settings_inner_sizer.Add(self.btnCursor, 0, wx.EXPAND | wx.ALL, 2)
|
||||
if not self.detach_callback:
|
||||
settings_inner_sizer.Add(self.btnPage, 0, wx.EXPAND | wx.ALL, 2)
|
||||
settings_inner_sizer.Add(self.btnSettings, 0, wx.EXPAND | wx.ALL, 2)
|
||||
|
@ -152,6 +160,10 @@ class ViewPanel(ScrolledPanel):
|
|||
self.drawing_panel.Refresh()
|
||||
global_settings['npp_button_status'] = self.btnNpp.GetValue()
|
||||
|
||||
def on_cursor_button(self, event):
|
||||
self.drawing_panel.Refresh()
|
||||
global_settings['display_crosshair'] = self.btnCursor.GetValue()
|
||||
|
||||
def toggle_page(self, event):
|
||||
debug.log("toggle page")
|
||||
value = self.btnPage.GetValue()
|
||||
|
|
|
@ -26,6 +26,7 @@ DEFAULT_SETTINGS = {
|
|||
"stop_button_status": False,
|
||||
"color_change_button_status": False,
|
||||
"toggle_page_button_status": True,
|
||||
"display_crosshair": True,
|
||||
# apply palette
|
||||
"last_applied_palette": "",
|
||||
# sew stack editor
|
||||
|
|
Ładowanie…
Reference in New Issue