feat: make style but not finished
@ -1,45 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
viewBox="0 0 24 24"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
sodipodi:docname="EntrySpan.svg"
|
||||
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
|
||||
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">
|
||||
<defs
|
||||
id="defs1" />
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
showgrid="false"
|
||||
inkscape:zoom="32.916667"
|
||||
inkscape:cx="12"
|
||||
inkscape:cy="12"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1017"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg1" />
|
||||
<path
|
||||
d="m 3,5 h 12 a 2,2 0 0 1 2,2 v 10 a 2,2 0 0 1 -2,2 H 3 A 2,2 0 0 1 1,17 V 7 A 2,2 0 0 1 3,5 m 0,4 v 3 H 8 V 9 H 3 m 7,0 v 3 h 5 V 9 h -5 m -7,5 v 3 H 8 V 14 H 3 m 7,0 v 3 h 5 v -3 h -5 m 13,0 V 7 h -4 v 2 h 2 v 3 h -2 v 2 z"
|
||||
id="path1"
|
||||
style="display:none" />
|
||||
<path
|
||||
style="fill:#607d8b;fill-opacity:1;stroke-width:0.000911392"
|
||||
d="M 2.6603145,18.954526 C 2.0342019,18.830552 1.504953,18.432753 1.2313779,17.880496 1.0050729,17.423661 1.0187765,17.802701 1.0187765,12 c 0,-5.802701 -0.013704,-5.4236612 0.2126014,-5.880496 0.2286057,-0.461479 0.66326,-0.8381691 1.1621054,-1.0071305 L 2.643038,5.0278481 h 6.3493671 c 6.0786359,0 6.3571389,0.00238 6.5316459,0.055889 0.548505,0.1681803 1.006352,0.5493146 1.246659,1.0377815 0.228464,0.464394 0.211568,-0.00506 0.211568,5.8784814 0,4.936481 -0.0034,5.283414 -0.05347,5.468354 -0.184376,0.68086 -0.67577,1.199908 -1.359184,1.435674 l -0.197468,0.06812 -6.2886077,0.0045 c -3.5053194,0.0025 -6.3481903,-0.0073 -6.4232298,-0.02214 z M 8.0050633,15.493671 V 13.974684 H 5.4987342 2.9924051 v 1.518987 1.518987 h 2.5063291 2.5063291 z m 7.0177217,0 V 13.974684 H 12.501266 9.9797468 v 1.518987 1.518987 h 2.5215192 2.521519 z M 8.0050633,10.496203 V 8.9924051 H 5.4987342 2.9924051 V 10.496203 12 h 2.5063291 2.5063291 z m 7.0177217,0 V 8.9924051 H 12.501266 9.9797468 V 10.496203 12 h 2.5215192 2.521519 z"
|
||||
id="path2" />
|
||||
<path
|
||||
style="fill:#2196f3;fill-opacity:1;stroke-width:0.000911392"
|
||||
d="M 19.002532,12.987342 V 12 h 1.002531 1.002532 V 10.496203 8.9924051 H 20.005063 19.002532 V 8.0050633 7.0177215 h 1.989873 1.989873 v 3.4784815 3.478481 h -1.989873 -1.989873 z"
|
||||
id="path3" />
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
@ -4,67 +4,30 @@
|
||||
xmlns:local="clr-namespace:BallanceTasEditor"
|
||||
StartupUri="Views/MainWindow.xaml">
|
||||
<Application.Resources>
|
||||
<!-- Application Icons -->
|
||||
<Image x:Shared="False" x:Key="IconApp" Source="/Assets/App.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="/Styles/IconTextBlock.xaml"/>
|
||||
<ResourceDictionary Source="/Styles/AccessoryIconControl.xaml"/>
|
||||
<ResourceDictionary Source="/Styles/NoteBanner.xaml"/>
|
||||
<ResourceDictionary Source="/Styles/GenericButton.xaml"/>
|
||||
<ResourceDictionary>
|
||||
|
||||
<!-- Menu Icons -->
|
||||
<Image x:Shared="False" x:Key="IconMenuNewFile" Source="/Assets/NewFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuOpenFile" Source="/Assets/OpenFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSaveFile" Source="/Assets/SaveFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSaveFileAs" Source="/Assets/SaveFileAs.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSaveFileThenRunGame" Source="/Assets/SaveFileThenRunGame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuCloseFile" Source="/Assets/CloseFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuExit" Source="/Assets/Exit.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuUndo" Source="/Assets/Undo.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuRedo" Source="/Assets/Redo.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuNextItem" Source="/Assets/NextItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuNextPage" Source="/Assets/NextPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuPreviousItem" Source="/Assets/PreviousItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuPreviousPage" Source="/Assets/PreviousPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuGoto" Source="/Assets/Goto.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuDrawMode" Source="/Assets/DrawMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuFillMode" Source="/Assets/FillMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSelectMode" Source="/Assets/SelectMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuUniformFps" Source="/Assets/SetFps.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuPreference" Source="/Assets/Preference.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuReportBug" Source="/Assets/ReportBug.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuAbout" Source="/Assets/About.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<!-- Application Icons -->
|
||||
<Image x:Shared="False" x:Key="IconApp" Source="/Assets/App.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Mode Tool Button Icons -->
|
||||
<Image x:Shared="False" x:Key="IconToolBtnDrawMode" Source="/Assets/DrawMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconToolBtnFillMode" Source="/Assets/FillMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconToolBtnSelectMode" Source="/Assets/SelectMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconToolBtnSaveFileThenRunGame" Source="/Assets/SaveFileThenRunGame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<!-- OK and Cancel Button Icons -->
|
||||
<Image x:Shared="False" x:Key="IconBtnOk" Source="/Assets/Ok.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconBtnCancel" Source="/Assets/Cancel.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Background Drag & Drop Icon -->
|
||||
<Image x:Shared="False" x:Key="IconDragAndDrop" Source="/Assets/OpenFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Context Menu Icons -->
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuSet" Source="/Assets/SetCell.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuUnset" Source="/Assets/UnsetCell.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuFlip" Source="/Assets/FlipCell.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuCut" Source="/Assets/CutFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuCopy" Source="/Assets/CopyFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuPaste" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuDelete" Source="/Assets/DeleteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuAdd" Source="/Assets/AddFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Panel Icons -->
|
||||
<Image x:Shared="False" x:Key="IconPanelGoto" Source="/Assets/PanelGoto.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelNextItem" Source="/Assets/PanelNextItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelNextPage" Source="/Assets/PanelNextPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelPreviousItem" Source="/Assets/PanelPreviousItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelPreviousPage" Source="/Assets/PanelPreviousPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- OK and Cancel Button Icons -->
|
||||
<Image x:Shared="False" x:Key="IconBtnOk" Source="/Assets/Ok.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconBtnCancel" Source="/Assets/Cancel.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Preference GroupBox Iconx -->
|
||||
<Image x:Shared="False" x:Key="IconGroupEditorLayout" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconGroupPasteBehavior" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconGroupFrameCount" Source="/Assets/Count.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconGroupGamePath" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<!-- Preference GroupBox Icons -->
|
||||
<!-- TODO: this layout icon is wrong -->
|
||||
<Image x:Shared="False" x:Key="IconGroupEditorLayout" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconGroupPasteBehavior" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconGroupFrameCount" Source="/Assets/Count.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconGroupGamePath" Source="/Assets/SaveFileThenRunGame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
</ResourceDictionary>
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>
|
||||
</Application.Resources>
|
||||
</Application>
|
||||
|
||||
|
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 102 KiB |
|
Before Width: | Height: | Size: 100 KiB After Width: | Height: | Size: 100 KiB |
|
Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 102 KiB |
|
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 101 KiB |
|
Before Width: | Height: | Size: 101 KiB After Width: | Height: | Size: 101 KiB |
@ -89,18 +89,39 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</ApplicationDefinition>
|
||||
<Compile Include="Controls\IconTextBlock.cs" />
|
||||
<Compile Include="Styles\AccessoryIcon.cs" />
|
||||
<Compile Include="Views\AboutDialog.xaml.cs">
|
||||
<DependentUpon>AboutDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\GotoDialog.xaml.cs">
|
||||
<DependentUpon>GotoDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\NewFileDialog.xaml.cs">
|
||||
<DependentUpon>NewFileDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\PreferenceDialog.xaml.cs">
|
||||
<DependentUpon>PreferenceDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\SetupCountAndFpsDialog.xaml.cs">
|
||||
<DependentUpon>SetupCountAndFpsDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Page Include="Styles\AccessoryIconControl.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\GenericButton.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\IconTextBlock.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\NoteBanner.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Views\AboutDialog.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@ -125,6 +146,10 @@
|
||||
<DependentUpon>MainWindow.xaml</DependentUpon>
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Page Include="Views\NewFileDialog.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Views\PreferenceDialog.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@ -189,11 +214,11 @@
|
||||
<Resource Include="Assets\NewFile.ico" />
|
||||
<Resource Include="Assets\Ok.ico" />
|
||||
<Resource Include="Assets\OpenFile.ico" />
|
||||
<Resource Include="Assets\PanelGoto.ico" />
|
||||
<Resource Include="Assets\PanelNextItem.ico" />
|
||||
<Resource Include="Assets\PanelNextPage.ico" />
|
||||
<Resource Include="Assets\PanelPreviousItem.ico" />
|
||||
<Resource Include="Assets\PanelPreviousPage.ico" />
|
||||
<Resource Include="Assets\Goto.ico" />
|
||||
<Resource Include="Assets\NextItem.ico" />
|
||||
<Resource Include="Assets\NextPage.ico" />
|
||||
<Resource Include="Assets\PreviousItem.ico" />
|
||||
<Resource Include="Assets\PreviousPage.ico" />
|
||||
<Resource Include="Assets\PasteFrame.ico" />
|
||||
<Resource Include="Assets\Preference.ico" />
|
||||
<Resource Include="Assets\Redo.ico" />
|
||||
|
||||
49
BallanceTasEditor/Styles/AccessoryIcon.cs
Normal file
@ -0,0 +1,49 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Media;
|
||||
|
||||
namespace BallanceTasEditor.Styles {
|
||||
|
||||
public class AccessoryIcon {
|
||||
public static Object GetAccessoryIcon(DependencyObject obj) {
|
||||
return (Object)obj.GetValue(AccessoryIconProperty);
|
||||
}
|
||||
|
||||
public static void SetAccessoryIcon(DependencyObject obj, Object value) {
|
||||
obj.SetValue(AccessoryIconProperty, value);
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty AccessoryIconProperty =
|
||||
DependencyProperty.RegisterAttached("AccessoryIcon", typeof(Object), typeof(AccessoryIcon), new PropertyMetadata(null));
|
||||
}
|
||||
|
||||
public class AccessoryIconContentTemplateSelector : DataTemplateSelector {
|
||||
private static ImageSourceConverter Converter = new ImageSourceConverter();
|
||||
|
||||
/// <summary>
|
||||
/// 给定的图标是已经加载的数据。
|
||||
/// </summary>
|
||||
public DataTemplate LoadedIconTemplate { get; set; }
|
||||
/// <summary>
|
||||
/// 给定的图标是来源字符串。
|
||||
/// </summary>
|
||||
public DataTemplate SourceIconTemplate { get; set; }
|
||||
|
||||
public override DataTemplate SelectTemplate(object item, DependencyObject container) {
|
||||
var ctl = VisualTreeHelper.GetParent(container);
|
||||
var accessoryIcon = ctl.GetValue(AccessoryIcon.AccessoryIconProperty);
|
||||
|
||||
if (accessoryIcon is null || !Converter.CanConvertFrom(accessoryIcon.GetType())) {
|
||||
return LoadedIconTemplate;
|
||||
} else {
|
||||
return SourceIconTemplate;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
41
BallanceTasEditor/Styles/AccessoryIconControl.xaml
Normal file
@ -0,0 +1,41 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:local="clr-namespace:BallanceTasEditor.Styles">
|
||||
<!--<ImageSourceConverter x:Key="AccessorySourceIconConverter"/>
|
||||
<DataTemplate x:Key="AccessoryLoadedIconDataTemplate">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{Binding Path=(local:AccessoryIcon.AccessoryIcon), RelativeSource={RelativeSource AncestorType=Control, AncestorLevel=1}}"
|
||||
Width="16" Height="16"/>
|
||||
<ContentControl Content="{Binding}" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="AccessorySourceIconDataTemplate" >
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="{Binding Path=(local:AccessoryIcon.AccessoryIcon), RelativeSource={RelativeSource AncestorType=Control, AncestorLevel=1}, Converter={StaticResource AccessorySourceIconConverter}}"
|
||||
Width="16" Height="16"/>
|
||||
<ContentControl Content="{Binding}" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
<local:AccessoryIconContentTemplateSelector x:Key="AccessoryIconDataTemplateSelector"
|
||||
LoadedIconTemplate="{StaticResource AccessoryLoadedIconDataTemplate}"
|
||||
SourceIconTemplate="{StaticResource AccessorySourceIconDataTemplate}"/>-->
|
||||
|
||||
<ControlTemplate x:Key="shit" TargetType="ContentControl">
|
||||
<ContentPresenter x:Name="Icon" ContentSource="Content"/>
|
||||
</ControlTemplate>
|
||||
|
||||
<Style x:Key="AccessoryIconButton" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="ContentTemplate">
|
||||
<Setter.Value>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{Binding Path=(local:AccessoryIcon.AccessoryIcon), RelativeSource={RelativeSource AncestorType=Button, AncestorLevel=1}}"
|
||||
Width="16" Height="16" Template="{StaticResource shit}">
|
||||
</ContentControl>
|
||||
<ContentControl Content="{Binding}" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
33
BallanceTasEditor/Styles/GenericButton.xaml
Normal file
@ -0,0 +1,33 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<Style x:Key="OkButtonStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Padding" Value="5"/>
|
||||
<Setter Property="Margin" Value="5"/>
|
||||
<Setter Property="MinWidth" Value="80"/>
|
||||
<Setter Property="ContentTemplate">
|
||||
<Setter.Value>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="/Assets/Ok.ico" Width="16" Height="16" VerticalAlignment="Center"/>
|
||||
<ContentControl Content="{Binding}" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<Style x:Key="CancelButtonStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Padding" Value="5"/>
|
||||
<Setter Property="Margin" Value="5"/>
|
||||
<Setter Property="MinWidth" Value="80"/>
|
||||
<Setter Property="ContentTemplate">
|
||||
<Setter.Value>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="/Assets/Cancel.ico" Width="16" Height="16" VerticalAlignment="Center"/>
|
||||
<ContentControl Content="{Binding}" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
8
BallanceTasEditor/Styles/NoteBanner.xaml
Normal file
@ -0,0 +1,8 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<Style x:Key="NoteBannerStyle" TargetType="TextBlock" BasedOn="{StaticResource {x:Type TextBlock}}">
|
||||
<Setter Property="Background" Value="#0097A7"/>
|
||||
<Setter Property="Foreground" Value="#CDDC39"/>
|
||||
<Setter Property="Padding" Value="10"/>
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
@ -5,7 +5,7 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:BallanceTasEditor.Views"
|
||||
mc:Ignorable="d" WindowStartupLocation="CenterOwner" WindowStyle="ToolWindow"
|
||||
Title="About Ballance TAS Editor" Width="340" Height="480" Icon="/Assets/MenuAbout.ico">
|
||||
Title="About Ballance TAS Editor" Width="340" Height="480" Icon="/Assets/About.ico">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
@ -33,6 +33,6 @@ Version: 1.2 stable
|
||||
Build Date: October 21, 2025 "/>
|
||||
|
||||
<!-- 确认按钮 -->
|
||||
<Button Grid.Row="4" Content="OK" MinWidth="80" HorizontalAlignment="Center" Margin="10" Padding="5"/>
|
||||
<Button Grid.Row="4" Content="OK" IsDefault="True" Margin="10" Padding="5" MinWidth="80" HorizontalAlignment="Center"/>
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
@ -4,8 +4,63 @@
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:BallanceTasEditor.Views"
|
||||
xmlns:styles="clr-namespace:BallanceTasEditor.Styles"
|
||||
mc:Ignorable="d" WindowStartupLocation="CenterScreen"
|
||||
RenderOptions.BitmapScalingMode="HighQuality"
|
||||
Title="Ballance TAS Editor" Height="600" Width="800" Icon="/Assets/App.ico">
|
||||
|
||||
<Window.Resources>
|
||||
<!-- Menu Icons -->
|
||||
<Image x:Shared="False" x:Key="IconMenuNewFile" Source="/Assets/NewFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuOpenFile" Source="/Assets/OpenFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSaveFile" Source="/Assets/SaveFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSaveFileAs" Source="/Assets/SaveFileAs.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSaveFileThenRunGame" Source="/Assets/SaveFileThenRunGame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuCloseFile" Source="/Assets/CloseFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuExit" Source="/Assets/Exit.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuUndo" Source="/Assets/Undo.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuRedo" Source="/Assets/Redo.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuNextItem" Source="/Assets/NextItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuNextPage" Source="/Assets/NextPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuPreviousItem" Source="/Assets/PreviousItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuPreviousPage" Source="/Assets/PreviousPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuGoto" Source="/Assets/Goto.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuDrawMode" Source="/Assets/DrawMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuFillMode" Source="/Assets/FillMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuSelectMode" Source="/Assets/SelectMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuUniformFps" Source="/Assets/SetFps.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuPreference" Source="/Assets/Preference.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuReportBug" Source="/Assets/ReportBug.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconMenuAbout" Source="/Assets/About.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Mode Tool Button Icons -->
|
||||
<Image x:Shared="False" x:Key="IconToolBtnDrawMode" Source="/Assets/DrawMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconToolBtnFillMode" Source="/Assets/FillMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconToolBtnSelectMode" Source="/Assets/SelectMode.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconToolBtnSaveFileThenRunGame" Source="/Assets/SaveFileThenRunGame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Background Drag & Drop Icon -->
|
||||
<Image x:Shared="False" x:Key="IconDragAndDrop" Source="/Assets/OpenFile.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Context Menu Icons -->
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuSet" Source="/Assets/SetCell.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuUnset" Source="/Assets/UnsetCell.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuFlip" Source="/Assets/FlipCell.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuCut" Source="/Assets/CutFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuCopy" Source="/Assets/CopyFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuPaste" Source="/Assets/PasteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuDelete" Source="/Assets/DeleteFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuAdd" Source="/Assets/AddFrame.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconCtxMenuFps" Source="/Assets/SetFps.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
|
||||
<!-- Panel Icons -->
|
||||
<Image x:Shared="False" x:Key="IconPanelGoto" Source="/Assets/PanelGoto.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelNextItem" Source="/Assets/PanelNextItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelNextPage" Source="/Assets/PanelNextPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelPreviousItem" Source="/Assets/PanelPreviousItem.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
<Image x:Shared="False" x:Key="IconPanelPreviousPage" Source="/Assets/PanelPreviousPage.ico" RenderOptions.BitmapScalingMode="HighQuality" UseLayoutRounding="True" SnapsToDevicePixels="True"/>
|
||||
</Window.Resources>
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
@ -17,7 +72,7 @@
|
||||
<Menu Grid.Row="0">
|
||||
<MenuItem Header="_File" Padding="5">
|
||||
<MenuItem Header="_New File" Icon="{StaticResource IconMenuNewFile}" InputGestureText="Ctrl+N" Click="MenuItem_Click_3"/>
|
||||
<MenuItem Header="_Open File" Icon="{StaticResource IconMenuOpenFile}" InputGestureText="Ctrl+O"/>
|
||||
<MenuItem Header="_Open File" Icon="/Assets/SelectMode.ico" InputGestureText="Ctrl+O"/>
|
||||
<Separator/>
|
||||
<MenuItem Header="_Save File" Icon="{StaticResource IconMenuSaveFile}" InputGestureText="Ctrl+S"/>
|
||||
<MenuItem Header="Save File As ..." Icon="{StaticResource IconMenuSaveFileAs}"/>
|
||||
@ -40,7 +95,7 @@
|
||||
<MenuItem Header="Fill Mode" Icon="{StaticResource IconMenuFillMode}"/>
|
||||
<MenuItem Header="Draw Mode" Icon="{StaticResource IconMenuDrawMode}"/>
|
||||
<Separator/>
|
||||
<MenuItem Header="Uniform FPS"/>
|
||||
<MenuItem Header="Uniform FPS" Icon="{StaticResource IconMenuUniformFps}"/>
|
||||
<Separator/>
|
||||
<MenuItem Header="Preference" Icon="{StaticResource IconMenuPreference}" InputGestureText="Ctrl+P" Click="MenuItem_Click"/>
|
||||
</MenuItem>
|
||||
@ -57,22 +112,28 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Grid.Column="0">
|
||||
<Button Margin="5" Padding="5">
|
||||
<controls:IconTextBlock Icon="{StaticResource IconToolBtnSelectMode}" Text="Select Mode"/>
|
||||
</Button>
|
||||
<Button Style="{StaticResource AccessoryIconButton}" styles:AccessoryIcon.AccessoryIcon="{StaticResource IconToolBtnSelectMode}" Content="Select Mode" Margin="5" Padding="5"/>
|
||||
<Button Style="{StaticResource AccessoryIconButton}" styles:AccessoryIcon.AccessoryIcon="/Assets/Mode" Content="Select Mode" Margin="5" Padding="5"/>
|
||||
|
||||
<Button Margin="5" Padding="5">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconToolBtnSelectMode}" Width="24" Height="24"/>
|
||||
<TextBlock Text="Select Mode" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="Select Mode" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Margin="5" Padding="5">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconToolBtnFillMode}" Width="24" Height="24"/>
|
||||
<TextBlock Text="Fill Mode" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="Fill Mode" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Margin="5" Padding="5">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconToolBtnDrawMode}" Width="24" Height="24"/>
|
||||
<TextBlock Text="Draw Mode" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="Draw Mode" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
@ -80,7 +141,7 @@
|
||||
<Button Grid.Column="1" Margin="5" Padding="5">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconToolBtnSaveFileThenRunGame}" Width="24" Height="24"/>
|
||||
<TextBlock Text="Save then Run Game" VerticalAlignment="Center"/>
|
||||
<TextBlock Text="Save then Run Game" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</Grid>
|
||||
@ -112,7 +173,7 @@
|
||||
<MenuItem Header="Add after This" Icon="{StaticResource IconCtxMenuAdd}" Click="MenuItem_Click_2"/>
|
||||
<MenuItem Header="Add before This"/>
|
||||
<Separator/>
|
||||
<MenuItem Header="Set FPS"/>
|
||||
<MenuItem Header="Set FPS" Icon="{StaticResource IconCtxMenuFps}"/>
|
||||
</ContextMenu>
|
||||
</Grid.ContextMenu>
|
||||
</Grid>
|
||||
@ -131,6 +192,5 @@
|
||||
<StatusBarItem Content="$Status" HorizontalAlignment="Stretch"/>
|
||||
</StatusBar>
|
||||
|
||||
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
@ -22,6 +22,12 @@ namespace BallanceTasEditor.Views {
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void MenuItem_Click_3(object sender, RoutedEventArgs e) {
|
||||
var dialog = new NewFileDialog();
|
||||
dialog.Owner = this;
|
||||
dialog.ShowDialog();
|
||||
}
|
||||
|
||||
private void MenuItem_Click(object sender, RoutedEventArgs e) {
|
||||
var dialog = new PreferenceDialog();
|
||||
dialog.Owner = this;
|
||||
@ -41,10 +47,5 @@ namespace BallanceTasEditor.Views {
|
||||
dialog.ShowDialog();
|
||||
}
|
||||
|
||||
private void MenuItem_Click_3(object sender, RoutedEventArgs e) {
|
||||
var dialog = new SetupCountAndFpsDialog();
|
||||
dialog.Owner = this;
|
||||
dialog.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
56
BallanceTasEditor/Views/NewFileDialog.xaml
Normal file
@ -0,0 +1,56 @@
|
||||
<Window x:Class="BallanceTasEditor.Views.NewFileDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:BallanceTasEditor.Views"
|
||||
mc:Ignorable="d" WindowStartupLocation="CenterOwner" WindowStyle="ToolWindow"
|
||||
RenderOptions.BitmapScalingMode="HighQuality"
|
||||
Title="New File" Height="250" Width="400" Icon="/Assets/NewFile.ico">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock Grid.Row="0" Text="Create new TAS file with given FPS and frame count." Style="{StaticResource NoteBannerStyle}"/>
|
||||
|
||||
<Grid Grid.Row="1">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Grid Margin="10">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto"/>
|
||||
<ColumnDefinition Width="auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Image Source="/Assets/Count.ico" Grid.Column="0" Grid.Row="0" Width="16" Height="16" VerticalAlignment="Center"/>
|
||||
<Image Source="/Assets/Fps.ico" Grid.Column="0" Grid.Row="1" Width="16" Height="16" VerticalAlignment="Center"/>
|
||||
|
||||
<TextBlock Margin="5" Grid.Column="1" Grid.Row="0" Text="Count" VerticalAlignment="Center"/>
|
||||
<TextBlock Margin="5" Grid.Column="1" Grid.Row="1" Text="FPS" VerticalAlignment="Center"/>
|
||||
<TextBlock Margin="5" Grid.Column="1" Grid.Row="2" Text="Delta Time" VerticalAlignment="Center"/>
|
||||
|
||||
<TextBox Margin="5" Padding="3" Grid.Row="0" Grid.Column="2" VerticalAlignment="Center"/>
|
||||
<TextBox Margin="5" Padding="3" Grid.Row="1" Grid.Column="2" VerticalAlignment="Center"/>
|
||||
<TextBlock Margin="5" Padding="3" Grid.Row="2" Grid.Column="2" VerticalAlignment="Center" Text="N/A"/>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="2" HorizontalAlignment="Right" Margin="10">
|
||||
<Button Content="OK" Margin="5" Style="{StaticResource OkButtonStyle}" IsDefault="True"/>
|
||||
<Button Content="Cancel" Margin="5" Style="{StaticResource CancelButtonStyle}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Window>
|
||||
24
BallanceTasEditor/Views/NewFileDialog.xaml.cs
Normal file
@ -0,0 +1,24 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace BallanceTasEditor.Views {
|
||||
/// <summary>
|
||||
/// Interaction logic for NewFileDialog.xaml
|
||||
/// </summary>
|
||||
public partial class NewFileDialog : Window {
|
||||
public NewFileDialog() {
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -5,7 +5,7 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="clr-namespace:BallanceTasEditor.Views"
|
||||
mc:Ignorable="d" WindowStartupLocation="CenterOwner" WindowStyle="ToolWindow"
|
||||
Title="Editor Preference" Height="450" Width="400" Icon="/Assets/MenuPreference.ico">
|
||||
Title="Editor Preference" Height="450" Width="400" Icon="/Assets/Preference.ico">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*"/>
|
||||
@ -14,7 +14,13 @@
|
||||
|
||||
<ScrollViewer Grid.Row="0" VerticalScrollBarVisibility="Visible">
|
||||
<StackPanel Orientation="Vertical">
|
||||
<GroupBox Header="Editor Layout" Margin="10" Padding="10">
|
||||
<GroupBox Margin="10" Padding="10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconGroupEditorLayout}" Height="16" Width="16"/>
|
||||
<TextBlock Text="Editor Layout" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
@ -24,7 +30,13 @@
|
||||
<RadioButton Content="Vertical Layout" GroupName="EditorLayout" Grid.Column="1"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Header="Paste Behavior" Margin="10" Padding="10">
|
||||
<GroupBox Margin="10" Padding="10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconGroupPasteBehavior}" Height="16" Width="16"/>
|
||||
<TextBlock Text="Paste Behavior" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
@ -34,10 +46,22 @@
|
||||
<RadioButton Content="Overwritten Paste" GroupName="PasteBehavior" Grid.Column="1"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Header="Frame Count" Margin="10" Padding="10">
|
||||
<GroupBox Margin="10" Padding="10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconGroupFrameCount}" Height="16" Width="16"/>
|
||||
<TextBlock Text="Frame Count" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<TextBox Padding="3"/>
|
||||
</GroupBox>
|
||||
<GroupBox Header="Game Path" Margin="10" Padding="10">
|
||||
<GroupBox Margin="10" Padding="10">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconGroupGamePath}" Height="16" Width="16"/>
|
||||
<TextBlock Text="Game Path" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
@ -51,8 +75,22 @@
|
||||
</ScrollViewer>
|
||||
|
||||
<StackPanel Grid.Row="1" HorizontalAlignment="Right" Orientation="Horizontal" Margin="10">
|
||||
<Button Content="OK" IsDefault="True" Padding="5" Margin="5" MinWidth="80"/>
|
||||
<Button Content="Cancel" Padding="5" Margin="5" MinWidth="80"/>
|
||||
<Button IsDefault="True" Padding="5" Margin="5" MinWidth="80">
|
||||
<Button.Content>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconBtnOk}" Width="24" Height="24"/>
|
||||
<TextBlock Text="OK" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button.Content>
|
||||
</Button>
|
||||
<Button Padding="5" Margin="5" MinWidth="80">
|
||||
<Button.Content>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<ContentControl Content="{StaticResource IconBtnCancel}" Width="24" Height="24"/>
|
||||
<TextBlock Text="Cancel" Margin="5,0,0,0" VerticalAlignment="Center"/>
|
||||
</StackPanel>
|
||||
</Button.Content>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||