mirror of
https://github.com/ClemensFischer/XAML-Map-Control.git
synced 2025-12-06 07:12:04 +01:00
31 lines
700 B
C#
31 lines
700 B
C#
using System.Threading.Tasks;
|
|
|
|
namespace MapControl.UiTools
|
|
{
|
|
public abstract partial class MapMenuItem
|
|
{
|
|
public abstract Task ExecuteAsync(MapBase map);
|
|
|
|
protected abstract bool GetIsChecked(MapBase map);
|
|
|
|
protected virtual bool GetIsEnabled(MapBase map) => true;
|
|
|
|
private void Initialize()
|
|
{
|
|
if (DataContext is MapBase map)
|
|
{
|
|
IsEnabled = GetIsEnabled(map);
|
|
IsChecked = GetIsChecked(map);
|
|
}
|
|
}
|
|
|
|
private async void Execute()
|
|
{
|
|
if (DataContext is MapBase map)
|
|
{
|
|
await ExecuteAsync(map);
|
|
}
|
|
}
|
|
}
|
|
}
|