[feat:] implemented a basic editor for the wiki
This commit is contained in:
@@ -1,17 +1,59 @@
|
||||
using System;
|
||||
using System.IO;
|
||||
using Avalonia.Controls;
|
||||
using Avalonia.Interactivity;
|
||||
|
||||
namespace Logof_Client.Wiki;
|
||||
|
||||
public partial class EditorWindow : Window
|
||||
{
|
||||
private void InitializeComponent()
|
||||
{
|
||||
Avalonia.Markup.Xaml.AvaloniaXamlLoader.Load(this);
|
||||
}
|
||||
public string filename = "";
|
||||
|
||||
public EditorWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
public EditorWindow(string filename = "")
|
||||
{
|
||||
InitializeComponent();
|
||||
this.filename = filename;
|
||||
if (!string.IsNullOrWhiteSpace(filename) && File.Exists(filename))
|
||||
{
|
||||
var content = TbContent;
|
||||
if (content != null) content.Text = File.ReadAllText(this.filename);
|
||||
Title = "Wiki Editor - " + filename;
|
||||
}
|
||||
else if (!string.IsNullOrWhiteSpace(filename))
|
||||
{
|
||||
MessageBox.Show(null, "Die Datei existiert nicht", "Fehler");
|
||||
Close();
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnSave_OnClick(object? sender, RoutedEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
File.WriteAllText(filename, TbContent.Text);
|
||||
MainWindow._instance.PopulateNavTree();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(null,
|
||||
"Es ist ein Fehler aufgetreten. Bitte senden Sie ihn über git.mypapercloud.de/fierke/logofclient ein:\n" +
|
||||
ex.StackTrace, "Fehler");
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnSaveAs_OnClick(object? sender, RoutedEventArgs e)
|
||||
{
|
||||
MessageBox.Show(null,
|
||||
"Feature noch nicht implemetiert.\nErstelle neue Dateien unter " + Global._instance.wiki_storage_path,
|
||||
"Fehler");
|
||||
}
|
||||
|
||||
private async void BtnDelete_OnClick(object? sender, RoutedEventArgs e)
|
||||
{
|
||||
var result = await MessageBox.Show(null, "Sicher?", "Sicher?", MessageBoxButton.YesNo);
|
||||
if (result == MessageBoxResult.No) return;
|
||||
File.Delete(filename);
|
||||
MainWindow._instance.PopulateNavTree();
|
||||
Close();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user