├── temp.txt ├── src ├── Jamesnet.Wpf │ ├── Jamesnet.Degisn.Tests │ │ ├── Usings.cs │ │ ├── UnitTest1.cs │ │ └── Jamesnet.Degisn.Tests.csproj │ ├── Jamesnet.Wpf │ │ ├── Global │ │ │ ├── Models │ │ │ │ ├── ThemeMode.cs │ │ │ │ ├── ThemeRoot.cs │ │ │ │ ├── ThemePack.cs │ │ │ │ ├── ThemeModel.cs │ │ │ │ └── ThemeUnit.cs │ │ │ ├── Composition │ │ │ │ ├── IThemeManager.cs │ │ │ │ ├── IResourceManager.cs │ │ │ │ ├── DimmingManager.cs │ │ │ │ ├── ResourceInitializer.cs │ │ │ │ ├── AutoWireManager.cs │ │ │ │ ├── ContentManager.cs │ │ │ │ └── ResourceManager.cs │ │ │ ├── Wpf │ │ │ │ └── Controls │ │ │ │ │ ├── DraggableBar.cs │ │ │ │ │ ├── IViewLoadable.cs │ │ │ │ │ ├── IViewInitializable.cs │ │ │ │ │ ├── JustifyEnum.cs │ │ │ │ │ ├── IViewable.cs │ │ │ │ │ ├── CloseButton .cs │ │ │ │ │ ├── MinimizeButton.cs │ │ │ │ │ ├── JamesGrid.cs │ │ │ │ │ ├── JamesContent.cs │ │ │ │ │ ├── JamesListBox.cs │ │ │ │ │ ├── JamesTreeView.cs │ │ │ │ │ ├── JamesListBoxItem.cs │ │ │ │ │ ├── JamesTreeViewItem.cs │ │ │ │ │ ├── JamesToggleSwitch.cs │ │ │ │ │ ├── JamesRegion.cs │ │ │ │ │ ├── MaximizeButton.cs │ │ │ │ │ ├── JamesWindow.cs │ │ │ │ │ ├── JamesStack.cs │ │ │ │ │ ├── JamesApplication.cs │ │ │ │ │ ├── DarkThemeWindow.cs │ │ │ │ │ └── JamesPanel.cs │ │ │ ├── Mvvm │ │ │ │ ├── ObservableBase.cs │ │ │ │ ├── UseDimmingAttribute.cs │ │ │ │ └── ObservableDialog.cs │ │ │ ├── Location │ │ │ │ ├── ViewModelLocatorCollection.cs │ │ │ │ ├── ViewModelLocatorItem.cs │ │ │ │ └── ViewModelLocationScenario.cs │ │ │ ├── Transfer │ │ │ │ ├── IEventHub.cs │ │ │ │ └── EventAggregatorHub.cs │ │ │ ├── Extensions │ │ │ │ ├── DependencyExtensions.cs │ │ │ │ ├── EnumExtensions.cs │ │ │ │ └── AnimationExtensions.cs │ │ │ └── Animation │ │ │ │ ├── EasingFunctionBaseMode.cs │ │ │ │ ├── ColorItem.cs │ │ │ │ ├── DoubleItem.cs │ │ │ │ └── ThicknessItem.cs │ │ ├── Resources │ │ │ └── logo.png │ │ ├── Event │ │ │ ├── SwitchThemePubsub.cs │ │ │ └── SwitchLanguagePubsub.cs │ │ ├── Themes │ │ │ ├── Generic.xaml │ │ │ └── Controls │ │ │ │ ├── JamesRegion.xaml │ │ │ │ ├── CloseButton.xaml │ │ │ │ ├── MinimizeButton.xaml │ │ │ │ ├── MaximizeButton.xaml │ │ │ │ ├── JamesIcon.xaml │ │ │ │ └── DarkThemeWindow.xaml │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── Jamesnet.Wpf.csproj │ ├── global.json │ ├── Jamesnet.Design │ │ ├── Resources │ │ │ └── logo.png │ │ ├── Images │ │ │ ├── ImageRoot.cs │ │ │ ├── ImageItem.cs │ │ │ ├── ImageConverter.cs │ │ │ ├── ImageContainer.cs │ │ │ └── ImageData.cs │ │ ├── Geometies │ │ │ ├── GeometryRoot.cs │ │ │ ├── GeometryItem.cs │ │ │ ├── GeometryConverter.cs │ │ │ └── GeometryContainer.cs │ │ └── Jamesnet.Design.csproj │ ├── AnatomyAnalyzerTestApp │ │ ├── Resources │ │ │ └── logo.png │ │ ├── Properties │ │ │ ├── Resources │ │ │ │ ├── theme.yaml │ │ │ │ └── language.yaml │ │ │ ├── ThemeSettings.cs │ │ │ └── AssemblyInfo.cs │ │ ├── UI │ │ │ └── Units │ │ │ │ └── PlayButton.cs │ │ ├── Themes │ │ │ ├── Generic.xaml │ │ │ └── Units │ │ │ │ └── PlayButton.xaml │ │ ├── Starter.cs │ │ ├── App.cs │ │ └── AnatomyAnalyzerTestApp.csproj │ ├── .idea │ │ └── .idea.Jamesnet.Wpf │ │ │ └── .idea │ │ │ ├── encodings.xml │ │ │ ├── vcs.xml │ │ │ ├── projectSettingsUpdater.xml │ │ │ ├── indexLayout.xml │ │ │ ├── .gitignore │ │ │ └── aws.xml │ ├── Sample │ │ ├── App.xaml.cs │ │ ├── App.xaml │ │ ├── MainWindow.xaml.cs │ │ ├── IconSamples.csproj │ │ ├── AssemblyInfo.cs │ │ └── MainWindow.xaml │ ├── JamesnetTest │ │ ├── App.xaml.cs │ │ ├── MainWindow.xaml.cs │ │ ├── App.xaml │ │ ├── JamesnetTest.csproj │ │ ├── AssemblyInfo.cs │ │ └── MainWindow.xaml │ ├── AnimationTest │ │ ├── App.xaml.cs │ │ ├── MainWindow.xaml.cs │ │ ├── CustomControl1.cs │ │ ├── App.xaml │ │ ├── AnimationTest.csproj │ │ ├── MainWindow.xaml │ │ ├── AssemblyInfo.cs │ │ └── Themes │ │ │ └── Generic.xaml │ ├── DarkWindowTest │ │ ├── App.xaml.cs │ │ ├── App.xaml │ │ ├── MainContentViewModel.cs │ │ ├── DarkWindowTest.csproj │ │ ├── MainWindow.xaml.cs │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── MainWindow.xaml │ ├── DarkWindowTest3 │ │ ├── Starter.cs │ │ ├── DarkWindowTest3.csproj │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ └── App.cs │ ├── DarkWindowTest2.Forms │ │ ├── UI │ │ │ └── Views │ │ │ │ ├── MainContent.cs │ │ │ │ ├── MainWindow.cs │ │ │ │ └── PopupContent.cs │ │ ├── DarkWindowTest2.Forms.csproj │ │ ├── Themes │ │ │ ├── Generic.xaml │ │ │ └── Views │ │ │ │ ├── PopupContent.xaml │ │ │ │ ├── MainContnet.xaml │ │ │ │ └── MainWindow.xaml │ │ ├── Local │ │ │ └── ViewModels │ │ │ │ ├── PopupContentViewModel.cs │ │ │ │ ├── MainContentViewModel.cs │ │ │ │ └── MainWindowViewModel.cs │ │ └── Properties │ │ │ └── AssemblyInfo.cs │ └── Jamesnet.Wpf.sln └── wpf-examples │ └── PolygonStyleButton │ ├── PolygonStyleButton │ ├── Images │ │ └── logo.png │ ├── App.xaml.cs │ ├── MainWindow.xaml.cs │ ├── App.xaml │ ├── PolygonStyleButton.csproj │ ├── AssemblyInfo.cs │ └── MainWindow.xaml │ ├── LolButton.Support │ ├── Resources │ │ └── logo.png │ ├── UI │ │ └── Units │ │ │ ├── PropertyPanel.cs │ │ │ ├── DetailListItem.cs │ │ │ ├── PlayButton.cs │ │ │ ├── DetailList.cs │ │ │ ├── ControlTreeView.cs │ │ │ └── ControlTreeItem.cs │ ├── LolButton.Support.csproj │ ├── Properties │ │ └── AssemblyInfo.cs │ └── Themes │ │ ├── Units │ │ ├── ControlTreeView.xaml │ │ ├── Window1.xaml.cs │ │ ├── Window1.xaml │ │ ├── DetailList.xaml │ │ ├── PropertyPanel.xaml │ │ ├── ControlTreeItem.xaml │ │ ├── DetailListItem.xaml │ │ └── PlayButton.xaml │ │ └── Generic.xaml │ ├── LolButton │ ├── Starter.cs │ ├── LolButton.csproj │ └── App.cs │ └── PolygonStyleButton.sln ├── .github └── FUNDING.yml ├── README.md ├── LICENSE └── .gitignore /temp.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Degisn.Tests/Usings.cs: -------------------------------------------------------------------------------- 1 | global using Xunit; -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [jamesnet214] 4 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Models/ThemeMode.cs: -------------------------------------------------------------------------------- 1 | namespace Jamesnet.Wpf.Models 2 | { 3 | 4 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Composition/IThemeManager.cs: -------------------------------------------------------------------------------- 1 | namespace Jamesnet.Wpf.Composition 2 | { 3 | 4 | } 5 | 6 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/emilliy98/jamesnetwpf/HEAD/src/Jamesnet.Wpf/Jamesnet.Wpf/Resources/logo.png -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "7.0.0", 4 | "rollForward": "latestMajor", 5 | "allowPrerelease": true 6 | } 7 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/emilliy98/jamesnetwpf/HEAD/src/Jamesnet.Wpf/Jamesnet.Design/Resources/logo.png -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/emilliy98/jamesnetwpf/HEAD/src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/Resources/logo.png -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Composition/IResourceManager.cs: -------------------------------------------------------------------------------- 1 | namespace Jamesnet.Wpf.Composition 2 | { 3 | public interface IResourceManager 4 | { 5 | } 6 | } -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/PolygonStyleButton/Images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/emilliy98/jamesnetwpf/HEAD/src/wpf-examples/PolygonStyleButton/PolygonStyleButton/Images/logo.png -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/LolButton.Support/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/emilliy98/jamesnetwpf/HEAD/src/wpf-examples/PolygonStyleButton/LolButton.Support/Resources/logo.png -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/DraggableBar.cs: -------------------------------------------------------------------------------- 1 | using System.Windows.Controls; 2 | 3 | namespace Jamesnet.Wpf.Controls 4 | { 5 | public class DraggableBar : Border 6 | { 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/IViewLoadable.cs: -------------------------------------------------------------------------------- 1 | namespace Jamesnet.Wpf.Controls 2 | { 3 | public interface IViewLoadable 4 | { 5 | void OnLoaded(IViewable view); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/IViewInitializable.cs: -------------------------------------------------------------------------------- 1 | namespace Jamesnet.Wpf.Controls 2 | { 3 | public interface IViewInitializable 4 | { 5 | void OnViewWired(IViewable view); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/.idea/.idea.Jamesnet.Wpf/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Degisn.Tests/UnitTest1.cs: -------------------------------------------------------------------------------- 1 | 2 | namespace Jamesnet.Degisn.Tests 3 | { 4 | public class UnitTest1 5 | { 6 | [Fact] 7 | public void Test1() 8 | { 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Mvvm/ObservableBase.cs: -------------------------------------------------------------------------------- 1 | using CommunityToolkit.Mvvm.ComponentModel; 2 | 3 | namespace Jamesnet.Wpf.Mvvm 4 | { 5 | public class ObservableBase : ObservableObject 6 | { 7 | 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/JustifyEnum.cs: -------------------------------------------------------------------------------- 1 | namespace Jamesnet.Wpf.Controls 2 | { 3 | public enum JustifyEnum 4 | { 5 | None, 6 | SpaceAround, 7 | SpaceBetween, 8 | SpaceEvenly 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/.idea/.idea.Jamesnet.Wpf/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Sample/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace Sample 4 | { 5 | /// 6 | /// Interaction logic for App.xaml 7 | /// 8 | public partial class App : Application 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/.idea/.idea.Jamesnet.Wpf/.idea/projectSettingsUpdater.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/JamesnetTest/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace JamesnetTest 4 | { 5 | /// 6 | /// Interaction logic for App.xaml 7 | /// 8 | public partial class App : Application 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnimationTest/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace AnimationTest 4 | { 5 | /// 6 | /// Interaction logic for App.xaml 7 | /// 8 | public partial class App : Application 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace DarkWindowTest 4 | { 5 | /// 6 | /// Interaction logic for App.xaml 7 | /// 8 | public partial class App : Application 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/.idea/.idea.Jamesnet.Wpf/.idea/indexLayout.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest3/Starter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace DarkWindowTest3; 4 | 5 | internal class Starter 6 | { 7 | [STAThread] 8 | private static void Main(string[] args) 9 | { 10 | _ = new App () 11 | .Run (); 12 | } 13 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Event/SwitchThemePubsub.cs: -------------------------------------------------------------------------------- 1 | using Prism.Events; 2 | 3 | namespace Jamesnet.Wpf.Event 4 | { 5 | /// 6 | /// string : 변경 언어 7 | /// 8 | public class SwitchThemePubsub : PubSubEvent 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Event/SwitchLanguagePubsub.cs: -------------------------------------------------------------------------------- 1 | using Prism.Events; 2 | 3 | namespace Jamesnet.Wpf.Event 4 | { 5 | /// 6 | /// string : 변경 언어 7 | /// 8 | public class SwitchLanguagePubsub : PubSubEvent 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/PolygonStyleButton/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace PolygonStyleButton 4 | { 5 | /// 6 | /// Interaction logic for App.xaml 7 | /// 8 | public partial class App : Application 9 | { 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Images/ImageRoot.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | using System.Collections.Generic; 3 | 4 | namespace Jamesnet.Design.Images 5 | { 6 | internal class ImageRoot 7 | { 8 | [JsonProperty("images")] 9 | public List Items { get; set; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/PolygonStyleButton/MainWindow.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace PolygonStyleButton 4 | { 5 | public partial class MainWindow : Window 6 | { 7 | public MainWindow() 8 | { 9 | InitializeComponent(); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/IViewable.cs: -------------------------------------------------------------------------------- 1 | using System.ComponentModel; 2 | using System.Windows; 3 | 4 | namespace Jamesnet.Wpf.Controls 5 | { 6 | public interface IViewable 7 | { 8 | FrameworkElement View { get; } 9 | INotifyPropertyChanged ViewModel { get; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Geometies/GeometryRoot.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | using System.Collections.Generic; 3 | 4 | namespace Jamesnet.Design.Geometries 5 | { 6 | internal class GeometryRoot 7 | { 8 | [JsonProperty("geometries")] 9 | public List Items { get; set; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Sample/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Images/ImageItem.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | 3 | namespace Jamesnet.Design.Images 4 | { 5 | internal class ImageItem 6 | { 7 | [JsonProperty("name")] 8 | public string Name { get; set; } 9 | [JsonProperty("data")] 10 | public string Data { get; set; } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Geometies/GeometryItem.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | 3 | namespace Jamesnet.Design.Geometries 4 | { 5 | internal class GeometryItem 6 | { 7 | [JsonProperty("name")] 8 | public string Name { get; set; } 9 | [JsonProperty("data")] 10 | public string Data { get; set; } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Sample/MainWindow.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace IconSamples 4 | { 5 | /// 6 | /// Interaction logic for MainWindow.xaml 7 | /// 8 | public partial class MainWindow : Window 9 | { 10 | public MainWindow() 11 | { 12 | InitializeComponent (); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/.idea/.idea.Jamesnet.Wpf/.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # 디폴트 무시된 파일 2 | /shelf/ 3 | /workspace.xml 4 | # Rider에서 무시된 파일 5 | /.idea.Jamesnet.Wpf.iml 6 | /modules.xml 7 | /projectSettingsUpdater.xml 8 | /contentModel.xml 9 | # 에디터 기반 HTTP 클라이언트 요청 10 | /httpRequests/ 11 | # Datasource local storage ignored files 12 | /dataSources/ 13 | /dataSources.local.xml 14 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Images/ImageConverter.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | namespace Jamesnet.Design.Images 4 | { 5 | public static class ImageConverter 6 | { 7 | public static string GetData([CallerMemberName] string name = null) 8 | { 9 | return ImageContainer._items[name].Data; 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/JamesnetTest/MainWindow.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace JamesnetTest 4 | { 5 | /// 6 | /// Interaction logic for MainWindow.xaml 7 | /// 8 | public partial class MainWindow : Window 9 | { 10 | public MainWindow() 11 | { 12 | InitializeComponent(); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/.idea/.idea.Jamesnet.Wpf/.idea/aws.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnimationTest/MainWindow.xaml.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | namespace AnimationTest 4 | { 5 | /// 6 | /// Interaction logic for MainWindow.xaml 7 | /// 8 | public partial class MainWindow : Window 9 | { 10 | public MainWindow() 11 | { 12 | InitializeComponent (); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/Properties/Resources/theme.yaml: -------------------------------------------------------------------------------- 1 | themes: 2 | - key: Basic.Foreground 3 | colors: 4 | black: "#FFFFFF" 5 | light: "#000000" 6 | - key: Basic.Foreground.Subtitles 7 | colors: 8 | black: "#666666" 9 | light: "#999999" 10 | fonts: 11 | - key: Basic.Font 12 | fonts: 13 | black: "Roboto" 14 | light: "Roboto" -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Design/Geometies/GeometryConverter.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | namespace Jamesnet.Design.Geometries 4 | { 5 | public static class GeometryConverter 6 | { 7 | public static string GetData([CallerMemberName] string name = null) 8 | { 9 | return GeometryContainer._items[name].Data; 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/PolygonStyleButton/App.xaml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest2.Forms/UI/Views/MainContent.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using Jamesnet.Wpf.Controls; 3 | 4 | namespace DarkWindowTest2.Forms.UI.Views; 5 | 6 | public class MainContent :JamesContent 7 | { 8 | static MainContent() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata(typeof(MainContent), new FrameworkPropertyMetadata(typeof(MainContent))); 11 | } 12 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest2.Forms/UI/Views/MainWindow.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using Jamesnet.Wpf.Controls; 3 | 4 | namespace DarkWindowTest2.Forms.UI.Views; 5 | 6 | public class MainWindow : DarkThemeWindow 7 | { 8 | static MainWindow() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata (typeof (MainWindow), new FrameworkPropertyMetadata (typeof (MainWindow))); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest2.Forms/DarkWindowTest2.Forms.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | net7.0-windows 5 | enable 6 | true 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest2.Forms/UI/Views/PopupContent.cs: -------------------------------------------------------------------------------- 1 | using Jamesnet.Wpf.Controls; 2 | using System.Windows; 3 | 4 | namespace DarkWindowTest2.Forms.UI.Views; 5 | 6 | public class PopupContent :JamesContent 7 | { 8 | static PopupContent() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata (typeof (PopupContent), new FrameworkPropertyMetadata (typeof (PopupContent))); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnimationTest/CustomControl1.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace AnimationTest 5 | { 6 | public class CustomControl1 : Control 7 | { 8 | static CustomControl1() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata(typeof(CustomControl1), new FrameworkPropertyMetadata(typeof(CustomControl1))); 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/LolButton/Starter.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace LolButton 8 | { 9 | internal class Starter 10 | { 11 | [STAThread] 12 | private static void Main(string[] args) 13 | { 14 | _ = new App().Run(); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Sample/IconSamples.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WinExe 5 | net7.0-windows 6 | enable 7 | true 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnimationTest/App.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/JamesnetTest/App.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/JamesnetTest/JamesnetTest.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WinExe 5 | net7.0-windows 6 | enable 7 | true 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnimationTest/AnimationTest.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WinExe 5 | net7.0-windows 6 | enable 7 | true 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest/App.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/CloseButton .cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace Jamesnet.Wpf.Controls 5 | { 6 | public class CloseButton : Button 7 | { 8 | static CloseButton() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata (typeof (CloseButton), new FrameworkPropertyMetadata (typeof (CloseButton))); 11 | } 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/MinimizeButton.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace Jamesnet.Wpf.Controls 5 | { 6 | public class MinimizeButton : Button 7 | { 8 | static MinimizeButton() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata (typeof (MinimizeButton), new FrameworkPropertyMetadata (typeof (MinimizeButton))); 11 | } 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Wpf/Controls/JamesGrid.cs: -------------------------------------------------------------------------------- 1 | #if NETFRAMEWORK 2 | using WpfAutoGrid; 3 | 4 | namespace Jamesnet.Wpf.Controls 5 | { 6 | public class JamesGrid : AutoGrid 7 | { 8 | public JamesGrid() 9 | { 10 | } 11 | } 12 | } 13 | #else 14 | using WpfAutoGrid; 15 | 16 | namespace Jamesnet.Wpf.Controls; 17 | public class JamesGrid : AutoGrid 18 | { 19 | public JamesGrid() 20 | { 21 | } 22 | } 23 | #endif -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/LolButton.Support/UI/Units/PropertyPanel.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace LolButton.Support.UI.Units 5 | { 6 | public class PropertyPanel : ContentControl 7 | { 8 | static PropertyPanel() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata(typeof(PropertyPanel), new FrameworkPropertyMetadata(typeof(PropertyPanel))); 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/LolButton.Support/UI/Units/DetailListItem.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | 4 | namespace LolButton.Support.UI.Units 5 | { 6 | public class DetailListItem : ListBoxItem 7 | { 8 | static DetailListItem() 9 | { 10 | DefaultStyleKeyProperty.OverrideMetadata(typeof(DetailListItem), new FrameworkPropertyMetadata(typeof(DetailListItem))); 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/UI/Units/PlayButton.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | using System.Windows.Controls.Primitives; 4 | 5 | namespace AnatomyAnalyzerTestApp.UI.Units 6 | { 7 | public class PlayButton : ToggleButton 8 | { 9 | static PlayButton() 10 | { 11 | DefaultStyleKeyProperty.OverrideMetadata(typeof(PlayButton), new FrameworkPropertyMetadata(typeof(PlayButton))); 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/Themes/Generic.xaml: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/LolButton.Support/UI/Units/PlayButton.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | using System.Windows.Controls; 3 | using System.Windows.Controls.Primitives; 4 | 5 | namespace LolButton.Support.UI.Units 6 | { 7 | public class PlayButton : ToggleButton 8 | { 9 | static PlayButton() 10 | { 11 | DefaultStyleKeyProperty.OverrideMetadata(typeof(PlayButton), new FrameworkPropertyMetadata(typeof(PlayButton))); 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Location/ViewModelLocatorCollection.cs: -------------------------------------------------------------------------------- 1 | using Prism.Mvvm; 2 | using System.Collections.Generic; 3 | 4 | namespace Jamesnet.Wpf.Global.Location 5 | { 6 | public class ViewModelLocatorCollection : List 7 | { 8 | public void Register() 9 | { 10 | ViewModelLocationProvider.Register (); 11 | this.Add (new ViewModelLocatorItem (typeof (T1), typeof (T2))); 12 | } 13 | } 14 | } 15 | 16 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest/MainContentViewModel.cs: -------------------------------------------------------------------------------- 1 | using Jamesnet.Wpf.Controls; 2 | using Jamesnet.Wpf.Global.Composition; 3 | using Jamesnet.Wpf.Mvvm; 4 | 5 | namespace DarkWindowTest 6 | { 7 | public partial class MainContentViewModel : ObservableBase, IViewLoadable 8 | { 9 | private ContentManager _contentManager; 10 | public MainContentViewModel() 11 | { 12 | } 13 | 14 | public void OnLoaded(IViewable view) 15 | { 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Location/ViewModelLocatorItem.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Jamesnet.Wpf.Global.Location 4 | 5 | { 6 | public class ViewModelLocatorItem 7 | { 8 | public ViewModelLocatorItem(Type viewType, Type dataContextType) 9 | { 10 | ViewType = viewType; 11 | DataContextType = dataContextType; 12 | } 13 | 14 | public Type ViewType { get; set; } 15 | public Type DataContextType { get; set; } 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest3/DarkWindowTest3.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WinExe 5 | net7.0-windows 6 | enable 7 | true 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Models/ThemeRoot.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using YamlDotNet.Serialization; 3 | 4 | namespace Jamesnet.Wpf.Models 5 | { 6 | 7 | public class ThemeRoot 8 | { 9 | [YamlMember(Alias = "themes")] 10 | public List Themes { get; set; } 11 | [YamlMember(Alias = "fonts")] 12 | public List Fonts { get; set; } 13 | [YamlMember(Alias = "languages")] 14 | public List Languages { get; set; } 15 | } 16 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Composition/DimmingManager.cs: -------------------------------------------------------------------------------- 1 | using Jamesnet.Wpf.Controls; 2 | using System.Windows; 3 | 4 | namespace Jamesnet.Wpf.Global.Composition 5 | { 6 | public class DimmingManager 7 | { 8 | public DimmingManager() 9 | { 10 | } 11 | 12 | public void Dimming(bool isDimming) 13 | { 14 | if (Application.Current.MainWindow is DarkThemeWindow window) 15 | { 16 | window.Dimming = isDimming; 17 | } 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Transfer/IEventHub.cs: -------------------------------------------------------------------------------- 1 | using Prism.Events; 2 | using System; 3 | using System.Diagnostics; 4 | 5 | namespace Jamesnet.Wpf.Global.Event 6 | { 7 | public interface IEventHub 8 | { 9 | void Publish(T2 value) where T1 : PubSubEvent, new(); 10 | void Subscribe(Action action) where T1 : PubSubEvent, new(); 11 | void UnSubscribe(Action action) where T1 : PubSubEvent, new(); 12 | Action Publising { get; set; } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Sample/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Windows; 2 | 3 | [assembly: ThemeInfo ( 4 | ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located 5 | //(used if a resource is not found in the page, 6 | // or application resource dictionaries) 7 | ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located 8 | //(used if a resource is not found in the page, 9 | // app, or any theme specific resource dictionaries) 10 | )] 11 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnimationTest/MainWindow.xaml: -------------------------------------------------------------------------------- 1 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest2.Forms/Themes/Generic.xaml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/Jamesnet.Wpf/Global/Mvvm/UseDimmingAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace Jamesnet.Wpf.Mvvm 4 | { 5 | [AttributeUsage(AttributeTargets.Class, Inherited = false)] 6 | public class UseDimmingAttribute : Attribute 7 | { 8 | public bool UseDimming { get; private set; } 9 | 10 | public UseDimmingAttribute() 11 | { 12 | UseDimming = true; 13 | } 14 | 15 | public UseDimmingAttribute(bool useDimming) 16 | { 17 | UseDimming = useDimming; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/wpf-examples/PolygonStyleButton/LolButton/LolButton.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | WinExe 5 | net7.0-windows 6 | enable 7 | true 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/Starter.cs: -------------------------------------------------------------------------------- 1 | using AnatomyAnalyzerTestApp.Properties; 2 | using Jamesnet.Wpf.Models; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace AnatomyAnalyzerTestApp 10 | { 11 | internal class Starter 12 | { 13 | [STAThread] 14 | private static void Main(string[] args) 15 | { 16 | _ = new App() 17 | .InitializeTheme() 18 | .Run(); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/DarkWindowTest2.Forms/Local/ViewModels/PopupContentViewModel.cs: -------------------------------------------------------------------------------- 1 | using Jamesnet.Wpf.Mvvm; 2 | using Prism.Services.Dialogs; 3 | 4 | namespace DarkWindowTest2.Forms.Local.ViewModels 5 | { 6 | [UseDimming] 7 | public partial class PopupContentViewModel : ObservableDialog 8 | { 9 | public virtual void OnDialogClosed() 10 | { 11 | base.OnDialogClosed(); 12 | } 13 | 14 | public virtual void OnDialogOpened(IDialogParameters parameters) 15 | { 16 | base.OnDialogOpened(parameters); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/Jamesnet.Wpf/AnatomyAnalyzerTestApp/App.cs: -------------------------------------------------------------------------------- 1 | using AnatomyAnalyzerTestApp.UI.Units; 2 | using Jamesnet.Wpf.Controls; 3 | using Jamesnet.Wpf.Local.Models; 4 | using Jamesnet.Wpf.Models; 5 | using System.Windows.Controls; 6 | 7 | namespace AnatomyAnalyzerTestApp 8 | { 9 | internal class App : AnatomyApplication 10 | { 11 | protected override void RegisterControls(AnatomyCollection items) 12 | { 13 | items.Add(); 14 | items.Add