Skip to content
Merged

sync #647

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
23658e4
CharGrid
joecare99 Nov 6, 2025
97f0e3b
DataAnalysis.Core
joecare99 Nov 6, 2025
3008bb6
DataAnalysis.WPF
joecare99 Nov 6, 2025
d27b079
DataAnalysis.WPF.TestHarness
joecare99 Nov 6, 2025
bf7805d
CSharpBible
joecare99 Nov 6, 2025
09ea13c
Document.Docx
joecare99 Nov 7, 2025
e3e43bd
CharGrid
joecare99 Nov 7, 2025
f8327ef
AboutEx
joecare99 Nov 7, 2025
def52ef
Merge branch 'master' of https://github.com/joecare99/CSharp
joecare99 Nov 7, 2025
906a212
Analyzer1
joecare99 Nov 8, 2025
83791a0
Analyzer1.Test
joecare99 Nov 8, 2025
db245f5
TranspilerConsTest
joecare99 Nov 8, 2025
0767e6e
TranspilerLib
joecare99 Nov 8, 2025
75b51ae
TranspilerLibTests
joecare99 Nov 8, 2025
d0a99c1
Transpiler_pp
joecare99 Nov 8, 2025
a1ab507
Merge branch 'Transpiler_pp'
joecare99 Nov 8, 2025
be00e5b
AboutEx
joecare99 Nov 8, 2025
4e930bf
Merge branch 'master' of https://github.com/joecare99/CSharp
joecare99 Nov 8, 2025
3d505d1
DBTest1
joecare99 Nov 8, 2025
f4f885a
BaseLibTests
joecare99 Nov 8, 2025
6a97733
GenInterfaces
joecare99 Nov 8, 2025
0fb6567
GenDBImplOLEDB
joecare99 Nov 8, 2025
9b0a59a
GenDBImplOLEDBTests
joecare99 Nov 8, 2025
1ae48ac
GenFreeBase
joecare99 Nov 8, 2025
f5db2c1
GenFreeBaseClassesTests
joecare99 Nov 8, 2025
99a6c0d
GenFreeBaseTests
joecare99 Nov 8, 2025
dc80430
GenFreeBrowser
joecare99 Nov 8, 2025
c9b050c
GenFreeBrowser.Tests
joecare99 Nov 8, 2025
96f4c4d
GenFreeDataTests
joecare99 Nov 8, 2025
5450c7d
GenFreeHelperTests
joecare99 Nov 8, 2025
4f76d51
GenFreeWin2
joecare99 Nov 8, 2025
d560772
GenFreeWin3
joecare99 Nov 8, 2025
3e1f6dc
GenFreeWinForms
joecare99 Nov 8, 2025
005cfc1
GenFreeWinFormsTests
joecare99 Nov 8, 2025
127c90d
GenFreeWinTests
joecare99 Nov 8, 2025
8cd15bb
MapDemo
joecare99 Nov 8, 2025
38919e4
MdbBrowser
joecare99 Nov 8, 2025
e226fea
MdbBrowserTests
joecare99 Nov 8, 2025
9ef428f
MSQBrowser
joecare99 Nov 8, 2025
4d7361a
PlaceAuthorityConsoleDemo
joecare99 Nov 8, 2025
f13480c
BaseGenClassesTests
joecare99 Nov 8, 2025
a8edebd
WinAhnenClsTests
joecare99 Nov 8, 2025
4fe2abd
GenFreeWin
joecare99 Nov 8, 2025
7f400bc
Merge branch 'GenFreeWin'
joecare99 Nov 8, 2025
6e6c459
Merge branch 'Avalonia_Apps'
joecare99 Nov 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
/Avalonia_Apps/AA21_Buttons/AA21_Buttons/*.user
.vs
bin
obj
*.bak
*.user
112 changes: 21 additions & 91 deletions CSharpBible/CharGrid/CharGrid.csproj
Original file line number Diff line number Diff line change
@@ -1,92 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{C9207149-1178-4D9E-818E-36C4DA31047C}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>CSharpBible.CharGrid</RootNamespace>
<AssemblyName>CharGrid</AssemblyName>
<BaseOutputPath>..\..\bin\$(MSBuildProjectName)\</BaseOutputPath>
<BaseIntermediateOutputPath>..\..\obj\$(MSBuildProjectName)\</BaseIntermediateOutputPath>
<IntermediateOutputPath>..\..\obj\$(MSBuildProjectName)\</IntermediateOutputPath>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<StartupObject>
</StartupObject>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Visual\FrmCharGridMain.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Visual\FrmCharGridMain.Designer.cs">
<DependentUpon>FrmCharGridMain.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<EmbeddedResource Include="Visual\FrmCharGridMain.resx">
<DependentUpon>FrmCharGridMain.cs</DependentUpon>
</EmbeddedResource>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Project>
<Import Project="..\Solution_net.props" />
<PropertyGroup>
<OutputType>WinExe</OutputType>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{C9207149-1178-4D9E-818E-36C4DA31047C}</ProjectGuid>
<RootNamespace>CSharpBible.CharGrid</RootNamespace>
<TargetFrameworks>net8.0-windows</TargetFrameworks>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.0" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.10" />
</ItemGroup>
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.props" />
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.targets" />
<ItemGroup>
<ProjectReference Include="..\Libraries\BaseLib\BaseLib.csproj" />
<ProjectReference Include="..\Libraries\WFSystem.Data\WFSystem.Windows.Data.csproj" />
</ItemGroup>
</Project>
37 changes: 19 additions & 18 deletions CSharpBible/CharGrid/Program.cs
Original file line number Diff line number Diff line change
@@ -1,36 +1,37 @@
// ***********************************************************************
// Assembly : CharGrid
// Author : Mir
// Created : 12-19-2021
// Assembly : CharGrid
// Author : Mir
// Created :12-19-2021
//
// Last Modified By : Mir
// Last Modified On : 02-29-2020
// ***********************************************************************
// <copyright file="Program.cs" company="JC-Soft">
// Copyright © JC-Soft 2020
// </copyright>
// <summary></summary>
// Last Modified By : GitHub Copilot
// Last Modified On :2025-11-05
// ***********************************************************************
using System;
using System.Windows.Forms;
using CSharpBible.CharGrid.Visual;
using CSharpBible.CharGrid.Views;
using CSharpBible.CharGrid.Services;
using CSharpBible.CharGrid.ViewModels.Interfaces;
using CSharpBible.CharGrid.ViewModels;
using Microsoft.Extensions.DependencyInjection;

namespace CSharpBible.CharGrid
{
/// <summary>
/// Class Program.
/// </summary>
static class Program
{
/// <summary>
/// Der Haupteinstiegspunkt für die Anwendung.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new FrmCharGridMain());

var services = new ServiceCollection()
.AddSingleton<IRandomCharService, RandomCharService>()
.AddSingleton<ICharGridProvider, InMemoryCharGridProvider>()
.AddTransient<ICharGridViewModel, CharGridViewModel>()
.AddTransient<FrmCharGridMain>()
.BuildServiceProvider();

Application.Run(services.GetRequiredService<FrmCharGridMain>());
}
}
}
7 changes: 0 additions & 7 deletions CSharpBible/CharGrid/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,7 @@
// Allgemeine Informationen über eine Assembly werden über die folgenden
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
// die einer Assembly zugeordnet sind.
[assembly: AssemblyTitle("CharGrid")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("JC-Soft")]
[assembly: AssemblyProduct("CharGrid")]
[assembly: AssemblyCopyright("Copyright © JC-Soft 2020")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

Expand All @@ -44,5 +39,3 @@
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
// indem Sie "*" wie unten gezeigt eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
2 changes: 1 addition & 1 deletion CSharpBible/CharGrid/Properties/Resources.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions CSharpBible/CharGrid/Services/ICharGridProvider.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace CSharpBible.CharGrid.Services;

public interface ICharGridProvider
{
int Rows { get; }
int Columns { get; }
char GetChar(int row, int column);
void SetChar(int row, int column, char value);
}
9 changes: 9 additions & 0 deletions CSharpBible/CharGrid/Services/IRandomCharService.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using System;

namespace CSharpBible.CharGrid.Services
{
public interface IRandomCharService
{
char NextChar();
}
}
25 changes: 25 additions & 0 deletions CSharpBible/CharGrid/Services/InMemoryCharGridProvider.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
using System;

namespace CSharpBible.CharGrid.Services
{
public class InMemoryCharGridProvider : ICharGridProvider
{
private readonly char[,] _grid;
public int Rows { get; }
public int Columns { get; }

public InMemoryCharGridProvider(int rows = 16, int columns = 32, IRandomCharService random = null)
{
Rows = rows;
Columns = columns;
_grid = new char[rows, columns];
var rnd = random ?? new RandomCharService();
for (int r = 0; r < rows; r++)
for (int c = 0; c < columns; c++)
_grid[r, c] = rnd.NextChar();
}

public char GetChar(int row, int column) => _grid[row, column];
public void SetChar(int row, int column, char value) => _grid[row, column] = value;
}
}
14 changes: 14 additions & 0 deletions CSharpBible/CharGrid/Services/RandomCharService.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
using System;

namespace CSharpBible.CharGrid.Services
{
public class RandomCharService : IRandomCharService
{
private readonly Random _rnd = new Random();
public char NextChar()
{
// ASCII uppercase letters
return (char)('A' + _rnd.Next(0,26));
}
}
}
52 changes: 52 additions & 0 deletions CSharpBible/CharGrid/ViewModels/CharGridViewModel.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
using System.Collections.ObjectModel;
using CSharpBible.CharGrid.Services;
using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using CSharpBible.CharGrid.ViewModels.Interfaces;
using System.Windows.Forms;

namespace CSharpBible.CharGrid.ViewModels;

public partial class CharGridViewModel : ViewModelBase, ICharGridViewModel
{
private readonly ICharGridProvider _provider;

[ObservableProperty]
private ObservableCollection<ObservableCollection<char>> rows = new();

public int RowCount => _provider.Rows;
public int ColumnCount => _provider.Columns;

public CharGridViewModel(ICharGridProvider provider)
{
_provider = provider;
for (int r = 0; r < _provider.Rows; r++)
{
var row = new ObservableCollection<char>();
for (int c = 0; c < _provider.Columns; c++)
row.Add(_provider.GetChar(r, c));
rows.Add(row);
}
}

[RelayCommand]
private void UpdateCell((int r, int c, char value) args)
{
var (r, c, value) = args;
_provider.SetChar(r, c, value);
rows[r][c] = value;
// ObservableProperty will raise PropertyChanged for Rows when set; direct item change triggers collection notifications
}

[RelayCommand]
private void Exit()
{
Application.Exit();
}

[RelayCommand]
private void About()
{

}
}
15 changes: 15 additions & 0 deletions CSharpBible/CharGrid/ViewModels/Interfaces/ICharGridViewModel.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
using CommunityToolkit.Mvvm.Input;
using System.Collections.ObjectModel;

namespace CSharpBible.CharGrid.ViewModels.Interfaces;

public interface ICharGridViewModel
{
ObservableCollection<ObservableCollection<char>> Rows { get; }

IRelayCommand ExitCommand { get; }
IRelayCommand AboutCommand { get; }
IRelayCommand<(int r, int c, char value)> UpdateCellCommand { get; }
int ColumnCount { get; }
int RowCount { get; }
}
9 changes: 9 additions & 0 deletions CSharpBible/CharGrid/ViewModels/ViewModelBase.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using CommunityToolkit.Mvvm.ComponentModel;

namespace CSharpBible.CharGrid.ViewModels
{
// Replaced manual INotifyPropertyChanged with ObservableObject from CommunityToolkit
public abstract partial class ViewModelBase : ObservableObject
{
}
}
Loading