浏览代码

Allow decimal inputs and fix disappearing zoom level

wareya 4 月之前
父节点
当前提交
f19d1d5fda

+ 1 - 2
src/PixiEditor/Data/Localization/Languages/en.json

@@ -248,8 +248,7 @@
   "REDO_DESCRIPTIVE": "Redo last action",
   "REDO_DESCRIPTIVE": "Redo last action",
   "WINDOWS": "Windows",
   "WINDOWS": "Windows",
   "TOGGLE_GRIDLINES": "Toggle gridlines",
   "TOGGLE_GRIDLINES": "Toggle gridlines",
-  "GRIDLINES_XSIZE": "Grid X Size",
-  "GRIDLINES_YSIZE": "Grid Y Size",
+  "GRIDLINES_SIZE": "Grid Size",
   "ZOOM_IN": "Zoom in",
   "ZOOM_IN": "Zoom in",
   "ZOOM_OUT": "Zoom out",
   "ZOOM_OUT": "Zoom out",
   "NEW_WINDOW_FOR_IMG": "New window for current image",
   "NEW_WINDOW_FOR_IMG": "New window for current image",

+ 8 - 19
src/PixiEditor/Views/Main/ViewportControls/Viewport.axaml

@@ -134,25 +134,14 @@
                                           IsChecked="{Binding SnappingEnabled, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=viewportControls:Viewport}, Mode=TwoWay}" />
                                           IsChecked="{Binding SnappingEnabled, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=viewportControls:Viewport}, Mode=TwoWay}" />
                         </StackPanel>
                         </StackPanel>
                         <Separator />
                         <Separator />
-                        <StackPanel Spacing="10" HorizontalAlignment="Center" Orientation="Horizontal">
-                            <TextBlock VerticalAlignment="Center"
-                                       ui:Translator.Key="GRIDLINES_XSIZE" />
-                            <input:NumberInput Width="32"
-                                         HorizontalAlignment="Left"
-                                         Min="1" Decimals="0"
-                                         Max="1024"
-                                         Value="{Binding GridLinesXSize, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=viewportControls:Viewport}, Mode=TwoWay}" />
-                        </StackPanel>
-                        <Separator />
-                        <StackPanel Spacing="10" HorizontalAlignment="Center" Orientation="Horizontal">
-                            <TextBlock VerticalAlignment="Center"
-                                       ui:Translator.Key="GRIDLINES_YSIZE" />
-                            <input:NumberInput Width="32"
-                                         HorizontalAlignment="Left"
-                                         Min="1" Decimals="0"
-                                         Max="1024"
-                                         Value="{Binding GridLinesYSize, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=viewportControls:Viewport}, Mode=TwoWay}" />
-                        </StackPanel>
+                        <TextBlock HorizontalAlignment="Center"
+                                   ui:Translator.Key="GRIDLINES_SIZE" Margin="0 0 0 10"/>
+                        <input:NumberInput Min="1"
+                                           Max="1024"
+                                           Value="{Binding GridLinesXSize, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=viewportControls:Viewport}, Mode=TwoWay}" />
+                        <input:NumberInput Min="1"
+                                           Max="1024"
+                                           Value="{Binding GridLinesYSize, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=viewportControls:Viewport}, Mode=TwoWay}" />
                         <Separator />
                         <Separator />
                         <TextBlock ui:Translator.Key="RENDER_PREVIEW" />
                         <TextBlock ui:Translator.Key="RENDER_PREVIEW" />
                         <ComboBox
                         <ComboBox

+ 1 - 1
src/PixiEditor/Views/Overlays/GridLinesOverlay.cs

@@ -67,7 +67,7 @@ public class GridLinesOverlay : Overlay
 
 
     public override bool CanRender()
     public override bool CanRender()
     {
     {
-        return visibilityConverter.Check(ZoomScale);
+        return visibilityConverter.Check(ZoomScale * Math.Min(GridXSize, GridYSize));
     }
     }
 
 
     public override void RenderOverlay(Canvas context, RectD canvasBounds)
     public override void RenderOverlay(Canvas context, RectD canvasBounds)