From ed1cf2aeac76bde54c57c4058ba92e5db742c0a3 Mon Sep 17 00:00:00 2001 From: Mike Griese Date: Wed, 1 Sep 2021 14:57:41 -0500 Subject: [PATCH] add the boilerplate for a custom content dialog like thing --- .../TerminalApp/AdminWarningPlaceholder.cpp | 27 ++++++++++++ .../TerminalApp/AdminWarningPlaceholder.h | 29 +++++++++++++ .../TerminalApp/AdminWarningPlaceholder.idl | 10 +++++ .../TerminalApp/AdminWarningPlaceholder.xaml | 41 +++++++++++++++++++ .../Resources/en-US/Resources.resw | 8 ++-- .../TerminalApp/TerminalAppLib.vcxproj | 13 ++++++ src/cascadia/TerminalApp/TerminalPage.xaml | 4 +- 7 files changed, 126 insertions(+), 6 deletions(-) create mode 100644 src/cascadia/TerminalApp/AdminWarningPlaceholder.cpp create mode 100644 src/cascadia/TerminalApp/AdminWarningPlaceholder.h create mode 100644 src/cascadia/TerminalApp/AdminWarningPlaceholder.idl create mode 100644 src/cascadia/TerminalApp/AdminWarningPlaceholder.xaml diff --git a/src/cascadia/TerminalApp/AdminWarningPlaceholder.cpp b/src/cascadia/TerminalApp/AdminWarningPlaceholder.cpp new file mode 100644 index 000000000..54ad44ef3 --- /dev/null +++ b/src/cascadia/TerminalApp/AdminWarningPlaceholder.cpp @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +#pragma once + +#include "pch.h" +#include "AdminWarningPlaceholder.h" +#include "AdminWarningPlaceholder.g.cpp" +using namespace winrt::Windows::UI::Xaml; + +namespace winrt::TerminalApp::implementation +{ + AdminWarningPlaceholder::AdminWarningPlaceholder() + { + InitializeComponent(); + } + void AdminWarningPlaceholder::_primaryButtonClick(winrt::Windows::Foundation::IInspectable const& /*sender*/, + RoutedEventArgs const& e) + { + _PrimaryButtonClickedHandlers(*this, e); + } + void AdminWarningPlaceholder::_cancelButtonClick(winrt::Windows::Foundation::IInspectable const& /*sender*/, + RoutedEventArgs const& e) + { + _CancelButtonClickedHandlers(*this, e); + } +} diff --git a/src/cascadia/TerminalApp/AdminWarningPlaceholder.h b/src/cascadia/TerminalApp/AdminWarningPlaceholder.h new file mode 100644 index 000000000..a8e8e253b --- /dev/null +++ b/src/cascadia/TerminalApp/AdminWarningPlaceholder.h @@ -0,0 +1,29 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +#pragma once + +#include "AdminWarningPlaceholder.g.h" +#include "../../cascadia/inc/cppwinrt_utils.h" + +namespace winrt::TerminalApp::implementation +{ + struct AdminWarningPlaceholder : AdminWarningPlaceholderT + { + AdminWarningPlaceholder(); + TYPED_EVENT(PrimaryButtonClicked, TerminalApp::AdminWarningPlaceholder, winrt::Windows::UI::Xaml::RoutedEventArgs); + TYPED_EVENT(CancelButtonClicked, TerminalApp::AdminWarningPlaceholder, winrt::Windows::UI::Xaml::RoutedEventArgs); + + private: + friend struct AdminWarningPlaceholderT; // friend our parent so it can bind private event handlers + void _primaryButtonClick(winrt::Windows::Foundation::IInspectable const& sender, + winrt::Windows::UI::Xaml::RoutedEventArgs const& e); + void _cancelButtonClick(winrt::Windows::Foundation::IInspectable const& sender, + winrt::Windows::UI::Xaml::RoutedEventArgs const& e); + }; +} + +namespace winrt::TerminalApp::factory_implementation +{ + BASIC_FACTORY(AdminWarningPlaceholder); +} diff --git a/src/cascadia/TerminalApp/AdminWarningPlaceholder.idl b/src/cascadia/TerminalApp/AdminWarningPlaceholder.idl new file mode 100644 index 000000000..f7505fe18 --- /dev/null +++ b/src/cascadia/TerminalApp/AdminWarningPlaceholder.idl @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +namespace TerminalApp +{ + [default_interface] runtimeclass AdminWarningPlaceholder : Windows.UI.Xaml.Controls.UserControl + { + AdminWarningPlaceholder(); + } +} diff --git a/src/cascadia/TerminalApp/AdminWarningPlaceholder.xaml b/src/cascadia/TerminalApp/AdminWarningPlaceholder.xaml new file mode 100644 index 000000000..546f79baf --- /dev/null +++ b/src/cascadia/TerminalApp/AdminWarningPlaceholder.xaml @@ -0,0 +1,41 @@ + + + + + + + + +