qamp/Qrakhen.TilingFrames/Controls/TilingPanelControl.cs

69 lines
1.7 KiB
C#

using Qrakhen.TilingFrames.Models;
using System.Windows;
using System.Windows.Controls;
namespace Qrakhen.TilingFrames.Controls;
/// <summary>
/// For Pop-Outs etc.
/// </summary>
public class TilingWindowControl : Window
{
static TilingWindowControl()
{
DefaultStyleKeyProperty.OverrideMetadata(
typeof(TilingWindowControl),
new FrameworkPropertyMetadata(typeof(TilingWindowControl)));
}
public TilingPanel Root {
get => (TilingPanel)GetValue(RootProperty);
set => SetValue(RootProperty, value);
}
public static DependencyProperty RootProperty = DependencyProperty
.Register(
nameof(Root),
typeof(TilingPanel),
typeof(TilingWindowControl));
}
public class TilingRootControl : TilingPanelControl
{
static TilingRootControl()
{
DefaultStyleKeyProperty.OverrideMetadata(
typeof(TilingRootControl),
new FrameworkPropertyMetadata(typeof(TilingRootControl)));
}
}
public class TilingPanelControl : Control
{
static TilingPanelControl()
{
DefaultStyleKeyProperty.OverrideMetadata(
typeof(TilingPanelControl),
new FrameworkPropertyMetadata(typeof(TilingPanelControl)));
}
}
public class TilingHostControl : Control
{
static TilingHostControl()
{
DefaultStyleKeyProperty.OverrideMetadata(
typeof(TilingHostControl),
new FrameworkPropertyMetadata(typeof(TilingHostControl)));
}
}
public class TilingFrameControl : ContentControl
{
static TilingFrameControl()
{
DefaultStyleKeyProperty.OverrideMetadata(
typeof(TilingFrameControl),
new FrameworkPropertyMetadata(typeof(TilingFrameControl)));
}
}