Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions RogueEssence.Editor.Avalonia/App.axaml
Original file line number Diff line number Diff line change
@@ -1,24 +1,30 @@
<Application xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:RogueEssence.Dev"
RequestedThemeVariant="Light"
x:Class="RogueEssence.Dev.App">
<Application.DataTemplates>
<local:ViewLocator/>
</Application.DataTemplates>

<Application.Styles>
<StyleInclude Source="avares://Avalonia.Themes.Default/DefaultTheme.xaml"/>
<StyleInclude Source="avares://Avalonia.Themes.Default/Accents/BaseLight.xaml"/>
<StyleInclude Source="avares://Avalonia.Controls.DataGrid/Themes/Default.xaml"/>
<SimpleTheme/>
<StyleInclude Source="avares://Avalonia.Controls.DataGrid/Themes/Simple.xaml"/>
<Style Selector="TabItem">
<Setter Property="Foreground" Value="Black" />
<Setter Property="FontSize" Value="12"/>
</Style>
<Style Selector="DataGridRow">
<Setter Property="Background" Value="#FFFFFF"/>
</Style>
<Style Selector="Button:pressed /template/ ContentPresenter#PART_ContentPresenter">
<!-- <Setter Property="Background" Value="" /> -->
<!-- <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderBrushPressed}" /> -->
<Setter Property="TextBlock.Foreground" Value="#454545" />
</Style>
<Style Selector="DataGridTextColumn">
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
</Style>
</Application.Styles>

</Application>
17 changes: 14 additions & 3 deletions RogueEssence.Editor.Avalonia/App.axaml.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
using Avalonia;
using System;
using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Input.Platform;
using Avalonia.Markup.Xaml;
using RogueEssence.Dev.ViewModels;
using RogueEssence.Dev.Views;
Expand All @@ -8,11 +10,20 @@ namespace RogueEssence.Dev
{
public class App : Application
{
public override void Initialize()


public static async void CopyText(string data)
{
AvaloniaXamlLoader.Load(this);
if (Current.ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
{
if (desktop.MainWindow.Clipboard is IClipboard clipbord)
{
await clipbord.SetTextAsync(data);
}
}
}


public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
<ColumnDefinition/>
<ColumnDefinition Width="40"/>
</Grid.ColumnDefinitions>
<DataGrid IsReadOnly="true" Items="{Binding Collection}" SelectedIndex="{Binding CurrentElement, Mode=TwoWay}" DoubleTapped="doubleClickStart" PointerReleased="gridCollection_DoubleClick" Margin="4" Grid.RowSpan="2" Grid.ColumnSpan="1" MinHeight="50">
<DataGrid IsReadOnly="true" ItemsSource="{Binding Collection}" SelectedIndex="{Binding CurrentElement, Mode=TwoWay}" DoubleTapped="doubleClickStart" PointerReleased="gridCollection_DoubleClick" Margin="4" Grid.RowSpan="2" Grid.ColumnSpan="1" MinHeight="50">
<DataGrid.Columns>
<DataGridTextColumn Header="Weight"
Binding="{Binding DisplayWeight}" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

namespace RogueEssence.Dev.Views
{
public class CategorySpawnBox : UserControl
public partial class CategorySpawnBox : UserControl
{

public CategorySpawnBox()
Expand All @@ -23,12 +23,7 @@ public CategorySpawnBox()
Button addItemButtom = this.FindControl<Button>("CategorySpawnBoxAddItemButton");
addItemButtom.AddHandler(PointerReleasedEvent, CategorySpawnBoxAddItemButton_OnPointerReleased, RoutingStrategies.Tunnel);
}

private void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}


bool doubleclick;
public void doubleClickStart(object sender, RoutedEventArgs e)
{
Expand Down
9 changes: 2 additions & 7 deletions RogueEssence.Editor.Avalonia/DataEditor/ClassBox.axaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,15 @@

namespace RogueEssence.Dev.Views
{
public class ClassBox : UserControl
public partial class ClassBox : UserControl
{
public ClassBox()
{
this.InitializeComponent();
Button button = this.FindControl<Button>("ClassBoxEditButton");
button.AddHandler(PointerReleasedEvent, ClassBoxEditButton_OnPointerReleased, RoutingStrategies.Tunnel);
}

private void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}


private void ClassBoxEditButton_OnPointerReleased(object sender, PointerReleasedEventArgs e)
{
KeyModifiers modifiers = e.KeyModifiers;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<ColumnDefinition/>
<ColumnDefinition Width="30"/>
</Grid.ColumnDefinitions>
<ListBox Name="lbxItems" Items="{Binding Collection}" SelectedIndex="{Binding SelectedIndex}" DoubleTapped="doubleClickStart" PointerReleased="lbxCollection_DoubleClick" Margin="4" Grid.RowSpan="2" Grid.ColumnSpan="2" MinHeight="50">
<ListBox Name="lbxItems" ItemsSource="{Binding Collection}" SelectedIndex="{Binding SelectedIndex}" DoubleTapped="doubleClickStart" PointerReleased="lbxCollection_DoubleClick" Margin="4" Grid.RowSpan="2" Grid.ColumnSpan="2" MinHeight="50">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=DisplayValue}"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,15 @@

namespace RogueEssence.Dev.Views
{
public class CollectionBox : UserControl
public partial class CollectionBox : UserControl
{
public CollectionBox()
{
this.InitializeComponent();
Button button = this.FindControl<Button>("CollectionBoxAddButton");
button.AddHandler(PointerReleasedEvent, CollectionBoxAddButton_OnPointerReleased, RoutingStrategies.Tunnel);
}

private void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}


//TODO: there has to be some way to set the ItemTemplate's text binding in code-behind...
//public void SetConv(IValueConverter conv)
//{
Expand Down
15 changes: 3 additions & 12 deletions RogueEssence.Editor.Avalonia/DataEditor/DataEditForm.axaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

namespace RogueEssence.Dev.Views
{
public class DataEditForm : ParentForm
public partial class DataEditForm : ParentForm
{
public delegate Task<bool> OKEvent();
public OKEvent SelectedOKEvent;
Expand All @@ -30,17 +30,8 @@ public DataEditForm()
InitializeComponent();

ControlPanel = this.FindControl<StackPanel>("stkContent");

#if DEBUG
this.AttachDevTools();
#endif
}

protected virtual void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}


public async Task SaveChildren()
{
for (int ii = children.Count - 1; ii >= 0; ii--)
Expand All @@ -65,7 +56,7 @@ public void Window_Loaded(object sender, EventArgs e)
this.Width = this.Width + 10;
}

public virtual async void Window_Closing(object sender, CancelEventArgs e)
public virtual async void Window_Closing(object sender, WindowClosingEventArgs e)
{
if (Design.IsDesignMode)
return;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,16 @@

namespace RogueEssence.Dev.Views
{
public class DataEditRootForm : DataEditForm
public partial class DataEditRootForm : DataEditForm
{
protected override void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}

public async void btnApply_Click(object sender, RoutedEventArgs e)
{
await SaveChildren();
if (SelectedOKEvent != null)
await SelectedOKEvent.Invoke();
}

public override async void Window_Closing(object sender, CancelEventArgs e)
public override async void Window_Closing(object sender, WindowClosingEventArgs e)
{
base.Window_Closing(sender, e);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<DataGrid Name="gridItems" IsReadOnly="true" Items="{Binding Collection}" SelectedIndex="{Binding SelectedIndex, Mode=TwoWay}" DoubleTapped="doubleClickStart" PointerReleased="lbxCollection_DoubleClick" Margin="4" Grid.RowSpan="2" Grid.ColumnSpan="2" MinHeight="60">
<DataGrid Name="gridItems" IsReadOnly="true" ItemsSource="{Binding Collection}" SelectedIndex="{Binding SelectedIndex, Mode=TwoWay}" DoubleTapped="doubleClickStart" PointerReleased="lbxCollection_DoubleClick" Margin="4" Grid.RowSpan="2" Grid.ColumnSpan="2" MinHeight="60">
<DataGrid.Columns>
<DataGridTextColumn Header="Key"
Binding="{Binding Key}" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

namespace RogueEssence.Dev.Views
{
public class DictionaryBox : UserControl
public partial class DictionaryBox : UserControl
{
public DictionaryBox()
{
Expand All @@ -21,11 +21,6 @@ public DictionaryBox()
button.AddHandler(PointerReleasedEvent, DictionaryBoxAddButton_OnPointerReleased, RoutingStrategies.Tunnel);
}

private void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}

bool doubleclick;
public void doubleClickStart(object sender, RoutedEventArgs e)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ public override void LoadWindowControls(StackPanel control, string parent, Type
{
DataFolderAttribute animAtt = ReflectionExt.FindAttribute<DataFolderAttribute>(attributes);
ComboBox cbValue = new SearchComboBox();
cbValue.VirtualizationMode = ItemVirtualizationMode.Simple;
string choice = member;

List<string> items = new List<string>();
Expand All @@ -44,7 +43,7 @@ public override void LoadWindowControls(StackPanel control, string parent, Type
}

var subject = new Subject<List<string>>();
cbValue.Bind(ComboBox.ItemsProperty, subject);
cbValue.Bind(ComboBox.ItemsSourceProperty, subject);
subject.OnNext(items);
cbValue.SelectedIndex = chosenIndex;
control.Children.Add(cbValue);
Expand Down
15 changes: 8 additions & 7 deletions RogueEssence.Editor.Avalonia/DataEditor/Editors/Editor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -279,11 +279,12 @@ void IEditor.LoadClassControls(StackPanel control, string parent, Type parentTyp
MenuItem copyToolStripMenuItem = new MenuItem();
MenuItem pasteToolStripMenuItem = new MenuItem();

Avalonia.Collections.AvaloniaList<object> list = (Avalonia.Collections.AvaloniaList<object>)copyPasteStrip.Items;
Avalonia.Collections.AvaloniaList<object> list = new Avalonia.Collections.AvaloniaList<object>();
list.AddRange(new MenuItem[] {
copyToolStripMenuItem,
pasteToolStripMenuItem});

copyPasteStrip.ItemsSource = list;
copyToolStripMenuItem.Header = "Copy " + type.Name;
pasteToolStripMenuItem.Header = "Paste " + type.Name;

Expand Down Expand Up @@ -384,11 +385,12 @@ void IEditor.LoadClassControls(StackPanel control, string parent, Type parentTyp
MenuItem copyToolStripMenuItem = new MenuItem();
MenuItem pasteToolStripMenuItem = new MenuItem();

Avalonia.Collections.AvaloniaList<object> list = (Avalonia.Collections.AvaloniaList<object>)copyPasteStrip.Items;
Avalonia.Collections.AvaloniaList<object> list = new Avalonia.Collections.AvaloniaList<object>();
list.AddRange(new MenuItem[] {
copyToolStripMenuItem,
pasteToolStripMenuItem});

copyPasteStrip.ItemsSource = list;
copyToolStripMenuItem.Header = "Copy " + type.Name;
pasteToolStripMenuItem.Header = "Paste " + type.Name;

Expand Down Expand Up @@ -489,11 +491,12 @@ void IEditor.LoadClassControls(StackPanel control, string parent, Type parentTyp
MenuItem copyToolStripMenuItem = new MenuItem();
MenuItem pasteToolStripMenuItem = new MenuItem();

Avalonia.Collections.AvaloniaList<object> list = (Avalonia.Collections.AvaloniaList<object>)copyPasteStrip.Items;
Avalonia.Collections.AvaloniaList<object> list = new Avalonia.Collections.AvaloniaList<object>();
list.AddRange(new MenuItem[] {
copyToolStripMenuItem,
pasteToolStripMenuItem});

copyPasteStrip.ItemsSource = list;
copyToolStripMenuItem.Header = "Copy " + type.Name;
pasteToolStripMenuItem.Header = "Paste " + type.Name;

Expand Down Expand Up @@ -722,7 +725,6 @@ private void populateTypeChoice(StackPanel typeContainer, Action initNewConstruc

ComboBox cbType = new SearchComboBox();
cbType.Margin = new Thickness(4, 0, 0, 0);
cbType.VirtualizationMode = ItemVirtualizationMode.Simple;
sharedRowPanel.Children.Add(cbType);
cbType.SetValue(Grid.ColumnProperty, 1);

Expand Down Expand Up @@ -793,7 +795,7 @@ private void populateTypeChoice(StackPanel typeContainer, Action initNewConstruc
throw new TargetException("Types do not match.");

var subject = new Subject<List<string>>();
cbType.Bind(ComboBox.ItemsProperty, subject);
cbType.Bind(ComboBox.ItemsSourceProperty, subject);
subject.OnNext(items);
cbType.SelectedIndex = selection;

Expand Down Expand Up @@ -861,7 +863,6 @@ private void populateTypeArgChoice(StackPanel templatePanel, Action initNewConst

ComboBox cbArgType = new SearchComboBox();
cbArgType.Margin = new Thickness(4, 0, 0, 0);
cbArgType.VirtualizationMode = ItemVirtualizationMode.Simple;
sharedRowPanel.Children.Add(cbArgType);
cbArgType.SetValue(Grid.ColumnProperty, 1);

Expand All @@ -886,7 +887,7 @@ private void populateTypeArgChoice(StackPanel templatePanel, Action initNewConst


var subject = new Subject<List<string>>();
cbArgType.Bind(ComboBox.ItemsProperty, subject);
cbArgType.Bind(ComboBox.ItemsSourceProperty, subject);
subject.OnNext(items);
cbArgType.SelectedIndex = selection;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public override void LoadWindowControls(StackPanel control, string parent, Type
nudValue.Minimum = attribute.Min;
nudValue.Maximum = attribute.Max;
}
nudValue.Value = (double)member;
nudValue.Value = (decimal)member;
control.Children.Add(nudValue);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public override void LoadWindowControls(StackPanel control, string parent, Type
nudValue.Minimum = attribute.Min;
nudValue.Maximum = attribute.Max;
}
nudValue.Value = (double)member;
nudValue.Value = (int)member;
control.Children.Add(nudValue);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,11 +118,12 @@ private static ContextMenu createContextMenu(StackPanel control, Type type, Prio
MenuItem copyToolStripMenuItem = new MenuItem();
MenuItem pasteToolStripMenuItem = new MenuItem();

Avalonia.Collections.AvaloniaList<object> list = (Avalonia.Collections.AvaloniaList<object>)copyPasteStrip.Items;
Avalonia.Collections.AvaloniaList<object> list = new Avalonia.Collections.AvaloniaList<object>();
list.AddRange(new MenuItem[] {
copyToolStripMenuItem,
pasteToolStripMenuItem});

copyPasteStrip.ItemsSource = list;

copyToolStripMenuItem.Header = "Copy List Element: " + elementType.Name;
pasteToolStripMenuItem.Header = "Insert List Element: " + elementType.Name;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,11 +129,12 @@ private static ContextMenu createContextMenu(StackPanel control, Type type, Rang
MenuItem copyToolStripMenuItem = new MenuItem();
MenuItem pasteToolStripMenuItem = new MenuItem();

Avalonia.Collections.AvaloniaList<object> list = (Avalonia.Collections.AvaloniaList<object>)copyPasteStrip.Items;
Avalonia.Collections.AvaloniaList<object> list = new Avalonia.Collections.AvaloniaList<object>();
list.AddRange(new MenuItem[] {
copyToolStripMenuItem,
pasteToolStripMenuItem});

copyPasteStrip.ItemsSource = list;
copyToolStripMenuItem.Header = "Copy List Element: " + elementType.Name;
pasteToolStripMenuItem.Header = "Insert List Element: " + elementType.Name;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,12 @@ private static ContextMenu createContextMenu(StackPanel control, Type type, Spaw
MenuItem copyToolStripMenuItem = new MenuItem();
MenuItem pasteToolStripMenuItem = new MenuItem();

Avalonia.Collections.AvaloniaList<object> list = (Avalonia.Collections.AvaloniaList<object>)copyPasteStrip.Items;
Avalonia.Collections.AvaloniaList<object> list = new Avalonia.Collections.AvaloniaList<object>();
list.AddRange(new MenuItem[] {
copyToolStripMenuItem,
pasteToolStripMenuItem});

copyPasteStrip.ItemsSource = list;
copyToolStripMenuItem.Header = "Copy List Element: " + elementType.Name;
pasteToolStripMenuItem.Header = "Insert List Element: " + elementType.Name;

Expand Down
Loading