added comments and wpf base

This commit is contained in:
4.E Zatko Dominik 2025-10-01 11:42:03 +02:00
parent 74c6a87254
commit ab86652859
146 changed files with 2046 additions and 290 deletions

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,37 @@
{
"Version": 1,
"WorkspaceRootPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{0F8F1431-618F-4C41-BDAF-1FA509805E7C}|KarnaughMap.csproj|r:\\prg\\kmap-solver\\karnaugh-map\\cs-kmap\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{0F8F1431-618F-4C41-BDAF-1FA509805E7C}|KarnaughMap.csproj|solutionrelative:program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Program.cs",
"DocumentMoniker": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\Program.cs",
"RelativeDocumentMoniker": "Program.cs",
"ToolTip": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\Program.cs",
"RelativeToolTip": "Program.cs",
"ViewState": "AgIAANQAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-10-01T09:21:12.658Z",
"EditorCaption": ""
}
]
}
]
}
]
}

View file

@ -0,0 +1,37 @@
{
"Version": 1,
"WorkspaceRootPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{0F8F1431-618F-4C41-BDAF-1FA509805E7C}|KarnaughMap.csproj|r:\\prg\\kmap-solver\\karnaugh-map\\cs-kmap\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{0F8F1431-618F-4C41-BDAF-1FA509805E7C}|KarnaughMap.csproj|solutionrelative:program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Program.cs",
"DocumentMoniker": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\Program.cs",
"RelativeDocumentMoniker": "Program.cs",
"ToolTip": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\Program.cs",
"RelativeToolTip": "Program.cs",
"ViewState": "AgIAAJ4AAAAAAAAAAAAAAOAAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-10-01T09:21:12.658Z",
"EditorCaption": ""
}
]
}
]
}
]
}

View file

@ -2,7 +2,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

View file

@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.7.34018.315
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KarnaughMap", "KarnaughMap\KarnaughMap.csproj", "{0F8F1431-618F-4C41-BDAF-1FA509805E7C}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KarnaughMap", "KarnaughMap.csproj", "{0F8F1431-618F-4C41-BDAF-1FA509805E7C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution

View file

@ -0,0 +1,227 @@
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
// funkce vraci znak s negaci nad pismenem
static string Overbar(string s)
{
return s switch
{
"A" => "Ā", // a s negaci
"B" => "B̄", // b s negaci
"C" => "C̄", // c s negaci
"D" => "D̄", // d s negaci
_ => s // jinak vrati puvodni znak
};
}
static void Main()
{
do
{
string[,] map = new string[4, 4]; // prazdna 4x4 karnaugh mapa
// inicializace vsech bunek na "N" (nezadano)
for (int r = 0; r < 4; r++)
for (int c = 0; c < 4; c++)
map[r, c] = "N";
// zadavani hodnot pro kazdou bunku
for (int r = 0; r < 4; r++)
{
for (int c = 0; c < 4; c++)
{
Console.Clear();
map[r, c] = "K"; // oznaci aktualni bunku
PrintMap(map, true); // vykresli mapu s instrukcemi
Console.Write($"Zadej hodnotu pro ({r},{c}) [0 = záporná, 1 = kladná, X = nevadí]: ");
string input = Console.ReadLine()!.Trim().ToUpper();
if (input != "0" && input != "1" && input != "X") input = "0"; // default na 0
map[r, c] = input;
}
}
Console.Clear();
Console.WriteLine("Karnaughova mapa:");
PrintMap(map, false); // vykresli hotovou mapu
Console.WriteLine("\nZjednodušený výraz:");
string result = CalculateExpression(map); // spocita zjednoduseny bool vyraz
Console.WriteLine(result);
Console.WriteLine("\nPokračovat? (Y/N nebo Escape)"); //tohle je jen kontrola jestli bylo zmacknuty N nebo Y aby se program vypl
ConsoleKeyInfo keyInfo = Console.ReadKey(true);
if (keyInfo.Key == ConsoleKey.N || keyInfo.Key == ConsoleKey.Escape)
break;
} while (true);
}
static void PrintMap(string[,] map, bool showInstructions) //funguje jako legenda pro pochopeni programu a vypisuje se nonstop
{
string[] rowLabels = { "(ĀB̄)", "(ĀB)", "(AB)", "(A B̄)" };
string[] colLabels = { "(C̄D̄)", "(C̄D)", "(CD)", "(C D̄)" };
Console.Write(" ");
foreach (var col in colLabels)
Console.Write(col.PadRight(6));
Console.WriteLine();
for (int r = 0; r < 4; r++)
{
Console.Write(rowLabels[r].PadRight(8));
for (int c = 0; c < 4; c++)
Console.Write(map[r, c].PadRight(6));
Console.WriteLine();
}
if (showInstructions)
{
Console.WriteLine();
Console.WriteLine("Legenda:");
Console.WriteLine("0 = záporná hodnota (FALSE)");
Console.WriteLine("1 = kladná hodnota (TRUE)");
Console.WriteLine("X = nevadí (Don't Care) - může být 0 nebo 1");
Console.WriteLine("K = aktuální vybraná buňka");
Console.WriteLine("N = zatím nezadáno (není specifikováno)");
Console.WriteLine();
}
}
// hlavni funkce na vypocet zjednoduseneho vyrazu
static string CalculateExpression(string[,] map)
{
// prevod mapy na cisla: 1 = TRUE, 0 = FALSE, -1 = X (dont care)
int[,] binMap = new int[4, 4];
for (int r = 0; r < 4; r++)
for (int c = 0; c < 4; c++)
binMap[r, c] = map[r, c] == "1" ? 1 : map[r, c] == "X" ? -1 : 0;
var terms = new List<string>(); // sem se budou pridavat vysledne cleny
// gray kod pro radky a sloupce
// zakladni matematicky princip: sousedici bunky se lisí jen v jednom bitu
string[] rowGray = { "00", "01", "11", "10" };
string[] colGray = { "00", "01", "11", "10" };
bool[,] used = new bool[4, 4]; // zaznam, ktere bunky uz byly pokryty
// funkce kontroluje, jestli blok bunek je validni pro sjednoceni
bool CheckGroup(int rStart, int cStart, int height, int width)
{
bool hasOne = false; // musi byt alespon jedna 1
for (int dr = 0; dr < height; dr++)
{
for (int dc = 0; dc < width; dc++)
{
int rr = (rStart + dr) % 4; // wraparound mapy po radcich
int cc = (cStart + dc) % 4; // wraparound mapy po sloupcich
if (binMap[rr, cc] == 0) return false; // pokud je 0, blok nelze pouzit
if (binMap[rr, cc] == 1) hasOne = true; // aspon jedna 1
}
}
return hasOne;
}
// oznaci bunky v bloku jako pouzite
void MarkUsed(int rStart, int cStart, int height, int width)
{
for (int dr = 0; dr < height; dr++) // projdi vsechny radky bloku
for (int dc = 0; dc < width; dc++) // projdi vsechny sloupce bloku
{
int rr = (rStart + dr) % 4; // vypocitej index radku s wraparoundem po 4
int cc = (cStart + dc) % 4; // vypocitej index sloupce s wraparoundem po 4
used[rr, cc] = true; // oznac bunku jako pouzitou, aby se dalsi bloky na ni nepripocitavaly
}
}
// prevede blok bunek na minimalizovany logicky clan (A,B,C,D s negacemi)
string GroupToTerm(int rStart, int cStart, int height, int width)
{
var rowsBits = new List<string>(); // sem ulozime gray kody radku pro blok
var colsBits = new List<string>(); // sem ulozime gray kody sloupcu pro blok
for (int dr = 0; dr < height; dr++)
rowsBits.Add(rowGray[(rStart + dr) % 4]); // pridej gray kod radku s wraparoundem
for (int dc = 0; dc < width; dc++)
colsBits.Add(colGray[(cStart + dc) % 4]); // pridej gray kod sloupce s wraparoundem
string term = ""; // inicializace vysledneho logickeho clenu
// A je urceno prvnim bitem radku
bool A_const = true; // predpokladame, ze hodnota A je konstantni v bloku
char A_val = rowsBits[0][0]; // vezmeme prvni hodnotu A z prvniho radku
foreach (var rb in rowsBits)
if (rb[0] != A_val) A_const = false; // pokud se nektery radek lisi, A neni konstantni
if (A_const) term += A_val == '0' ? Overbar("A") : "A"; // pridame A nebo A negaci do termu
// B je urceno druhem bitem radku
bool B_const = true; // predpokladame, ze B je konstantni
char B_val = rowsBits[0][1]; // vezmeme hodnotu B z prvniho radku
foreach (var rb in rowsBits)
if (rb[1] != B_val) B_const = false; // pokud se nektery radek lisi, B vynechame
if (B_const) term += B_val == '0' ? Overbar("B") : "B"; // pridame B nebo B negaci
// C je urceno prvnim bitem sloupce
bool C_const = true; // predpokladame konstantni C
char C_val = colsBits[0][0]; // vezmeme hodnotu C z prvniho sloupce
foreach (var cb in colsBits)
if (cb[0] != C_val) C_const = false; // pokud se nektery sloupec lisi, C vynechame
if (C_const) term += C_val == '0' ? Overbar("C") : "C"; // pridame C nebo C negaci
// D je urceno druhem bitem sloupce
bool D_const = true; // predpokladame konstantni D
char D_val = colsBits[0][1]; // vezmeme hodnotu D z prvniho sloupce
foreach (var cb in colsBits)
if (cb[1] != D_val) D_const = false; // pokud se nektery sloupec lisi, D vynechame
if (D_const) term += D_val == '0' ? Overbar("D") : "D"; // pridame D nebo D negaci
if (term == "") // pokud zadna promenna neni konstantni v bloku
term = "1"; // pak clan je jen logicka 1 (pravda)
return term; // vrat minimalizovany logicky clan
}
// vsechny mozne velikosti bloku, od nejvetsi po nejmensi pro maximalni minimalizaci
var blockSizes = new List<(int h, int w)>
{
(4, 4), (4, 2), (2, 4), (4, 1), (1, 4), (2, 2), (2, 1), (1, 2), (1,1)
};
// projdi vsechny bloky a vytvor minimalizovane cleny
foreach (var (h, w) in blockSizes) // pro kazdou velikost bloku
{
for (int r0 = 0; r0 < 4; r0++) // pro kazdy radek jako start bloku
{
for (int c0 = 0; c0 < 4; c0++) // pro kazdy sloupec jako start bloku
{
if (CheckGroup(r0, c0, h, w)) // pokud je blok validni (obsahuje jen 1 a X a alespon jednu 1)
{
string term = GroupToTerm(r0, c0, h, w); // preved blok na minimalizovany clan
bool coversNew = false; // kontrola, jestli blok kryje nove bunky
// zjisti, jestli blok obsahuje alespon jednu novou bunku
for (int dr = 0; dr < h; dr++)
for (int dc = 0; dc < w; dc++)
{
int rr = (r0 + dr) % 4; // wraparound radku
int cc = (c0 + dc) % 4; // wraparound sloupcu
if (!used[rr, cc]) coversNew = true; // pokud je bunky nove nepouzita, nastav true
}
// pokud kryje nove bunky a term jeste neni pridany, pridej ho
if (coversNew && !terms.Contains(term))
{
terms.Add(term); // pridej clan do vysledneho seznamu
MarkUsed(r0, c0, h, w); // oznac bunky jako pouzite
}
}
}
}
}
if (terms.Count == 0) // pokud se nenasel zadny validni blok
return "0"; // vrat logickou nulu
return string.Join(" + ", terms); // jinak spoj vsechny cleny logickym OR
}
}

View file

@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"KarnaughMap/1.0.0": {
"runtime": {
"KarnaughMap.dll": {}
}
}
}
},
"libraries": {
"KarnaughMap/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,12 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

View file

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("KarnaughMap")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+07856709b5ec8302157b41b72353a5a9f2c3d9a6")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+74c6a872546677f322ac3b2a7973154fe3543dc1")]
[assembly: System.Reflection.AssemblyProductAttribute("KarnaughMap")]
[assembly: System.Reflection.AssemblyTitleAttribute("KarnaughMap")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View file

@ -0,0 +1 @@
9599c76307378650c19ce67e92e1f34d0b326c9372c6a069ee2d4ce4246edccc

View file

@ -8,7 +8,7 @@ build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = KarnaughMap
build_property.ProjectDir = R:\PRG\Kmap-solver\karnaugh-map\KarnaughMap\
build_property.ProjectDir = R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
build_property.EffectiveAnalysisLevelStyle = 7.0

View file

@ -26,3 +26,17 @@ R:\PRG\Kmap-solver\karnaugh-map\KarnaughMap\obj\Debug\net7.0\refint\KarnaughMap.
R:\PRG\Kmap-solver\karnaugh-map\KarnaughMap\obj\Debug\net7.0\KarnaughMap.pdb
R:\PRG\Kmap-solver\karnaugh-map\KarnaughMap\obj\Debug\net7.0\KarnaughMap.genruntimeconfig.cache
R:\PRG\Kmap-solver\karnaugh-map\KarnaughMap\obj\Debug\net7.0\ref\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net7.0\KarnaughMap.exe
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net7.0\KarnaughMap.deps.json
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net7.0\KarnaughMap.runtimeconfig.json
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net7.0\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net7.0\KarnaughMap.pdb
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.GeneratedMSBuildEditorConfig.editorconfig
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.AssemblyInfoInputs.cache
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.AssemblyInfo.cs
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.csproj.CoreCompileInputs.cache
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\refint\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.pdb
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\KarnaughMap.genruntimeconfig.cache
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net7.0\ref\KarnaughMap.dll

View file

@ -0,0 +1 @@
cc107c347ba09d34d62fca1a102d12d3c486d63954f2d27ad63149bff1c44ab6

View file

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]

View file

@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("KarnaughMap")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+74c6a872546677f322ac3b2a7973154fe3543dc1")]
[assembly: System.Reflection.AssemblyProductAttribute("KarnaughMap")]
[assembly: System.Reflection.AssemblyTitleAttribute("KarnaughMap")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Vygenerované třídou WriteCodeFragment nástroje MSBuild

View file

@ -0,0 +1 @@
9599c76307378650c19ce67e92e1f34d0b326c9372c6a069ee2d4ce4246edccc

View file

@ -0,0 +1,15 @@
is_global = true
build_property.TargetFramework = net8.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = KarnaughMap
build_property.ProjectDir = R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
build_property.EffectiveAnalysisLevelStyle = 8.0
build_property.EnableCodeStyleSeverity =

View file

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;

View file

@ -0,0 +1 @@
ef64d6ebddacddb47aed6d0562ee0d227ee03f9f15d57a531a0e4d71e501c616

View file

@ -0,0 +1,14 @@
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net8.0\KarnaughMap.exe
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net8.0\KarnaughMap.deps.json
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net8.0\KarnaughMap.runtimeconfig.json
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net8.0\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\bin\Debug\net8.0\KarnaughMap.pdb
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.GeneratedMSBuildEditorConfig.editorconfig
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.AssemblyInfoInputs.cache
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.AssemblyInfo.cs
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.csproj.CoreCompileInputs.cache
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\refint\KarnaughMap.dll
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.pdb
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\KarnaughMap.genruntimeconfig.cache
R:\PRG\Kmap-solver\karnaugh-map\CS-kmap\obj\Debug\net8.0\ref\KarnaughMap.dll

Binary file not shown.

View file

@ -0,0 +1 @@
4d13c624999dec0078d2e7a15afec2931e74a16e2cccfd04182c08efbb58f2cd

Binary file not shown.

Binary file not shown.

View file

@ -1,17 +1,17 @@
{
"format": 1,
"restore": {
"R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj": {}
"R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj": {}
},
"projects": {
"R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj": {
"R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj",
"projectUniqueName": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj",
"projectName": "KarnaughMap",
"projectPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj",
"projectPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj",
"packagesPath": "C:\\Users\\dominik.zatko\\.nuget\\packages\\",
"outputPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\obj\\",
"outputPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
@ -22,7 +22,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net7.0"
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@ -30,8 +30,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net7.0": {
"targetAlias": "net7.0",
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
@ -48,8 +48,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
"net7.0": {
"targetAlias": "net7.0",
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
@ -61,30 +61,12 @@
],
"assetTargetFallback": true,
"warn": true,
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Host.win-x64",
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.WindowsDesktop.App.Ref",
"version": "[7.0.20, 7.0.20]"
}
],
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.102\\RuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.102/PortableRuntimeIdentifierGraph.json"
}
}
}

View file

@ -1,11 +1,11 @@
{
"version": 3,
"targets": {
"net7.0": {}
"net8.0": {}
},
"libraries": {},
"projectFileDependencyGroups": {
"net7.0": []
"net8.0": []
},
"packageFolders": {
"C:\\Users\\dominik.zatko\\.nuget\\packages\\": {},
@ -14,11 +14,11 @@
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj",
"projectUniqueName": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj",
"projectName": "KarnaughMap",
"projectPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj",
"projectPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj",
"packagesPath": "C:\\Users\\dominik.zatko\\.nuget\\packages\\",
"outputPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\obj\\",
"outputPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
@ -29,7 +29,7 @@
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net7.0"
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
@ -37,8 +37,8 @@
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net7.0": {
"targetAlias": "net7.0",
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
@ -55,8 +55,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
"net7.0": {
"targetAlias": "net7.0",
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
@ -68,30 +68,12 @@
],
"assetTargetFallback": true,
"warn": true,
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Host.win-x64",
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[7.0.20, 7.0.20]"
},
{
"name": "Microsoft.WindowsDesktop.App.Ref",
"version": "[7.0.20, 7.0.20]"
}
],
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.102\\RuntimeIdentifierGraph.json"
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.102/PortableRuntimeIdentifierGraph.json"
}
}
}

View file

@ -0,0 +1,8 @@
{
"version": 2,
"dgSpecHash": "auKYocqSBWE=",
"success": true,
"projectFilePath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\CS-kmap\\KarnaughMap.csproj",
"expectedPackageFiles": [],
"logs": []
}

View file

@ -1,213 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static string Overbar(string s)
{
return s switch
{
"A" => "Ā",
"B" => "B̄",
"C" => "C̄",
"D" => "D̄",
_ => s
};
}
static void Main()
{
do
{
string[,] map = new string[4, 4];
// Inicializace na N (not specified yet)
for (int r = 0; r < 4; r++)
for (int c = 0; c < 4; c++)
map[r, c] = "N";
// Input for Karnaugh map cells
for (int r = 0; r < 4; r++)
{
for (int c = 0; c < 4; c++)
{
Console.Clear();
map[r, c] = "K"; // Mark current cell
PrintMap(map, true);
Console.Write($"Zadej hodnotu pro ({r},{c}) [0 = záporná, 1 = kladná, X = nevadí]: ");
string input = Console.ReadLine()!.Trim().ToUpper();
if (input != "0" && input != "1" && input != "X") input = "0";
map[r, c] = input;
}
}
Console.Clear();
Console.WriteLine("Karnaughova mapa:");
PrintMap(map, false);
Console.WriteLine("\nZjednodušený výraz:");
string result = CalculateExpression(map);
Console.WriteLine(result);
// Prompt to restart or exit
Console.WriteLine("\nPokračovat? (Y/N nebo Escape)");
ConsoleKeyInfo keyInfo = Console.ReadKey(true);
if (keyInfo.Key == ConsoleKey.N || keyInfo.Key == ConsoleKey.Escape)
break;
} while (true);
}
static void PrintMap(string[,] map, bool showInstructions)
{
string[] rowLabels = { "(ĀB̄)", "(ĀB)", "(AB)", "(A B̄)" };
string[] colLabels = { "(C̄D̄)", "(C̄D)", "(CD)", "(C D̄)" };
Console.Write(" ");
foreach (var col in colLabels)
Console.Write(col.PadRight(6));
Console.WriteLine();
for (int r = 0; r < 4; r++)
{
Console.Write(rowLabels[r].PadRight(8));
for (int c = 0; c < 4; c++)
Console.Write(map[r, c].PadRight(6));
Console.WriteLine();
}
if (showInstructions)
{
Console.WriteLine();
Console.WriteLine("Legenda:");
Console.WriteLine("0 = záporná hodnota (FALSE)");
Console.WriteLine("1 = kladná hodnota (TRUE)");
Console.WriteLine("X = nevadí (Don't Care) - může být 0 nebo 1");
Console.WriteLine("K = aktuální vybraná buňka");
Console.WriteLine("N = zatím nezadáno (není specifikováno)");
Console.WriteLine();
}
}
static string CalculateExpression(string[,] map)
{
int[,] binMap = new int[4, 4];
for (int r = 0; r < 4; r++)
for (int c = 0; c < 4; c++)
binMap[r, c] = map[r, c] == "1" ? 1 : map[r, c] == "X" ? -1 : 0;
var terms = new List<string>();
string[] rowGray = { "00", "01", "11", "10" };
string[] colGray = { "00", "01", "11", "10" };
bool[,] used = new bool[4, 4];
// Check if all cells in the group are 1 or X and group contains at least one 1
bool CheckGroup(int rStart, int cStart, int height, int width)
{
bool hasOne = false;
for (int dr = 0; dr < height; dr++)
{
for (int dc = 0; dc < width; dc++)
{
int rr = (rStart + dr) % 4;
int cc = (cStart + dc) % 4;
if (binMap[rr, cc] == 0) return false;
if (binMap[rr, cc] == 1) hasOne = true;
}
}
return hasOne;
}
void MarkUsed(int rStart, int cStart, int height, int width)
{
for (int dr = 0; dr < height; dr++)
for (int dc = 0; dc < width; dc++)
{
int rr = (rStart + dr) % 4;
int cc = (cStart + dc) % 4;
used[rr, cc] = true;
}
}
string GroupToTerm(int rStart, int cStart, int height, int width)
{
var rowsBits = new List<string>();
var colsBits = new List<string>();
for (int dr = 0; dr < height; dr++)
rowsBits.Add(rowGray[(rStart + dr) % 4]);
for (int dc = 0; dc < width; dc++)
colsBits.Add(colGray[(cStart + dc) % 4]);
string term = "";
bool A_const = true;
char A_val = rowsBits[0][0];
foreach (var rb in rowsBits)
if (rb[0] != A_val) A_const = false;
if (A_const) term += A_val == '0' ? Overbar("A") : "A";
bool B_const = true;
char B_val = rowsBits[0][1];
foreach (var rb in rowsBits)
if (rb[1] != B_val) B_const = false;
if (B_const) term += B_val == '0' ? Overbar("B") : "B";
bool C_const = true;
char C_val = colsBits[0][0];
foreach (var cb in colsBits)
if (cb[0] != C_val) C_const = false;
if (C_const) term += C_val == '0' ? Overbar("C") : "C";
bool D_const = true;
char D_val = colsBits[0][1];
foreach (var cb in colsBits)
if (cb[1] != D_val) D_const = false;
if (D_const) term += D_val == '0' ? Overbar("D") : "D";
if (term == "")
term = "1";
return term;
}
var blockSizes = new List<(int h, int w)>
{
(4, 4),
(4, 2), (2, 4),
(4, 1), (1, 4),
(2, 2),
(2, 1), (1, 2),
(1,1)
};
foreach (var (h, w) in blockSizes)
{
for (int r0 = 0; r0 < 4; r0++)
{
for (int c0 = 0; c0 < 4; c0++)
{
if (CheckGroup(r0, c0, h, w))
{
string term = GroupToTerm(r0, c0, h, w);
bool coversNew = false;
for (int dr = 0; dr < h; dr++)
for (int dc = 0; dc < w; dc++)
{
int rr = (r0 + dr) % 4;
int cc = (c0 + dc) % 4;
if (!used[rr, cc]) coversNew = true;
}
if (coversNew && !terms.Contains(term))
{
terms.Add(term);
MarkUsed(r0, c0, h, w);
}
}
}
}
}
if (terms.Count == 0)
return "0";
return string.Join(" + ", terms);
}
}

View file

@ -1 +0,0 @@
acf4d6ab7f5a9eca47c3b5e49038729dce8aa4cf8e9babca7665c5253206aa17

View file

@ -1 +0,0 @@
f5b855a9d8d33e53f3fed43638b47caa1fab5e430ec5c22b9e38a2477148878e

View file

@ -1,13 +0,0 @@
{
"version": 2,
"dgSpecHash": "RMfOFENSJSY=",
"success": true,
"projectFilePath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\KarnaughMap\\KarnaughMap.csproj",
"expectedPackageFiles": [
"C:\\Users\\dominik.zatko\\.nuget\\packages\\microsoft.windowsdesktop.app.ref\\7.0.20\\microsoft.windowsdesktop.app.ref.7.0.20.nupkg.sha512",
"C:\\Users\\dominik.zatko\\.nuget\\packages\\microsoft.netcore.app.ref\\7.0.20\\microsoft.netcore.app.ref.7.0.20.nupkg.sha512",
"C:\\Users\\dominik.zatko\\.nuget\\packages\\microsoft.aspnetcore.app.ref\\7.0.20\\microsoft.aspnetcore.app.ref.7.0.20.nupkg.sha512",
"C:\\Users\\dominik.zatko\\.nuget\\packages\\microsoft.netcore.app.host.win-x64\\7.0.20\\microsoft.netcore.app.host.win-x64.7.0.20.nupkg.sha512"
],
"logs": []
}

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,53 @@
{
"Version": 1,
"WorkspaceRootPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|r:\\prg\\kmap-solver\\karnaugh-map\\wpf-kmap\\wpf-kmap\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|solutionrelative:wpf-kmap\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
},
{
"AbsoluteMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|r:\\prg\\kmap-solver\\karnaugh-map\\wpf-kmap\\wpf-kmap\\mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|solutionrelative:wpf-kmap\\mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "MainWindow.xaml",
"DocumentMoniker": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml",
"RelativeDocumentMoniker": "WPF-kmap\\MainWindow.xaml",
"ToolTip": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml",
"RelativeToolTip": "WPF-kmap\\MainWindow.xaml",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
"WhenOpened": "2025-10-01T09:16:10.616Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "MainWindow.xaml.cs",
"DocumentMoniker": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml.cs",
"RelativeDocumentMoniker": "WPF-kmap\\MainWindow.xaml.cs",
"ToolTip": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml.cs",
"RelativeToolTip": "WPF-kmap\\MainWindow.xaml.cs",
"ViewState": "AgIAAAwAAAAAAAAAAAAuwDUAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-10-01T09:16:10.161Z",
"EditorCaption": ""
}
]
}
]
}
]
}

View file

@ -0,0 +1,53 @@
{
"Version": 1,
"WorkspaceRootPath": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\",
"Documents": [
{
"AbsoluteMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|r:\\prg\\kmap-solver\\karnaugh-map\\wpf-kmap\\wpf-kmap\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
"RelativeMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|solutionrelative:wpf-kmap\\mainwindow.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
},
{
"AbsoluteMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|r:\\prg\\kmap-solver\\karnaugh-map\\wpf-kmap\\wpf-kmap\\mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}|WPF-kmap\\WPF-kmap.csproj|solutionrelative:wpf-kmap\\mainwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": [
{
"DockedWidth": 200,
"SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "MainWindow.xaml",
"DocumentMoniker": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml",
"RelativeDocumentMoniker": "WPF-kmap\\MainWindow.xaml",
"ToolTip": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml",
"RelativeToolTip": "WPF-kmap\\MainWindow.xaml",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
"WhenOpened": "2025-10-01T09:16:10.616Z",
"EditorCaption": ""
},
{
"$type": "Document",
"DocumentIndex": 1,
"Title": "MainWindow.xaml.cs",
"DocumentMoniker": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml.cs",
"RelativeDocumentMoniker": "WPF-kmap\\MainWindow.xaml.cs",
"ToolTip": "R:\\PRG\\Kmap-solver\\karnaugh-map\\WPF-kmap\\WPF-kmap\\MainWindow.xaml.cs",
"RelativeToolTip": "WPF-kmap\\MainWindow.xaml.cs",
"ViewState": "AgIAAAwAAAAAAAAAAAAuwDUAAAAAAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2025-10-01T09:16:10.161Z",
"EditorCaption": ""
}
]
}
]
}
]
}

View file

@ -0,0 +1,22 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.12.35707.178 d17.12
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WPF-kmap", "WPF-kmap\WPF-kmap.csproj", "{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1806E4A3-B7C7-4CA9-BB99-590F86FF5FC5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View file

@ -0,0 +1,9 @@
<Application x:Class="WPF_kmap.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WPF_kmap"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>

View file

@ -0,0 +1,14 @@
using System.Configuration;
using System.Data;
using System.Windows;
namespace WPF_kmap
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
}
}

View file

@ -0,0 +1,10 @@
using System.Windows;
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]

View file

@ -0,0 +1,76 @@
<Window x:Class="WPF_kmap.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WPF_kmap"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid Width="160" Height="160" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="31"/>
<ColumnDefinition Width="31"/>
<ColumnDefinition Width="31"/>
<ColumnDefinition Width="31"/>
</Grid.ColumnDefinitions>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="0" Grid.Column="0"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="0" Grid.Column="1"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="0" Grid.Column="2"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="0" Grid.Column="3"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="1" Grid.Column="0"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="1" Grid.Column="1"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="1" Grid.Column="2"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="1" Grid.Column="3"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="2" Grid.Column="0"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="2" Grid.Column="1"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="2" Grid.Column="2"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="2" Grid.Column="3"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="3" Grid.Column="0"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="3" Grid.Column="1"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="3" Grid.Column="2"/>
<Button Content="0" Width="31" Height="30" Background="#FFBEBCF1" Foreground="Black"
BorderBrush="Black" FontSize="14" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"
Click="boxOnClick" Grid.Row="3" Grid.Column="3"/>
</Grid>
</Window>

View file

@ -0,0 +1,57 @@
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WPF_kmap
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void boxOnClick(object sender, RoutedEventArgs e)
{
Button btn = sender as Button;
if (btn == null)
return;
int currentValue = 0;
if (btn.Tag != null)
{
currentValue = (int)btn.Tag;
}
else
{
if (btn.Content.ToString() == "X")
currentValue = -1;
else if (!int.TryParse(btn.Content.ToString(), out currentValue))
currentValue = 0;
}
int newValue;
if (currentValue == -1)
newValue = 0;
else if (currentValue == 0)
newValue = 1;
else
newValue = -1;
btn.Tag = newValue;
btn.Content = newValue == -1 ? "X" : newValue.ToString();
}
}
}

View file

@ -0,0 +1,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows</TargetFramework>
<RootNamespace>WPF_kmap</RootNamespace>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UseWPF>true</UseWPF>
</PropertyGroup>
</Project>

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
<ItemGroup>
<ApplicationDefinition Update="App.xaml">
<SubType>Designer</SubType>
</ApplicationDefinition>
</ItemGroup>
<ItemGroup>
<Page Update="MainWindow.xaml">
<SubType>Designer</SubType>
</Page>
</ItemGroup>
</Project>

View file

@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"WPF-kmap/1.0.0": {
"runtime": {
"WPF-kmap.dll": {}
}
}
}
},
"libraries": {
"WPF-kmap/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

View file

@ -0,0 +1,19 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"frameworks": [
{
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
{
"name": "Microsoft.WindowsDesktop.App",
"version": "8.0.0"
}
],
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true,
"CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false
}
}
}

View file

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]

View file

@ -0,0 +1,71 @@
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "580B9FA6092286927498943DC248D74FD6DB8089"
//------------------------------------------------------------------------------
// <auto-generated>
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WPF_kmap;
namespace WPF_kmap {
/// <summary>
/// App
/// </summary>
public partial class App : System.Windows.Application {
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
public void InitializeComponent() {
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
#line default
#line hidden
}
/// <summary>
/// Application Entry Point.
/// </summary>
[System.STAThreadAttribute()]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
public static void Main() {
WPF_kmap.App app = new WPF_kmap.App();
app.InitializeComponent();
app.Run();
}
}
}

View file

@ -0,0 +1,71 @@
#pragma checksum "..\..\..\App.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "580B9FA6092286927498943DC248D74FD6DB8089"
//------------------------------------------------------------------------------
// <auto-generated>
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WPF_kmap;
namespace WPF_kmap {
/// <summary>
/// App
/// </summary>
public partial class App : System.Windows.Application {
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
public void InitializeComponent() {
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
#line default
#line hidden
}
/// <summary>
/// Application Entry Point.
/// </summary>
[System.STAThreadAttribute()]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
public static void Main() {
WPF_kmap.App app = new WPF_kmap.App();
app.InitializeComponent();
app.Run();
}
}
}

View file

@ -0,0 +1,207 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "944AF59068FB0977BE57065FF28E48FDFBAEDED2"
//------------------------------------------------------------------------------
// <auto-generated>
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WPF_kmap;
namespace WPF_kmap {
/// <summary>
/// MainWindow
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/WPF-kmap;component/mainwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\MainWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
#line 25 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 2:
#line 28 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 3:
#line 31 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 4:
#line 34 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 5:
#line 38 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 6:
#line 41 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 7:
#line 44 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 8:
#line 47 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 9:
#line 51 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 10:
#line 54 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 11:
#line 57 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 12:
#line 60 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 13:
#line 64 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 14:
#line 67 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 15:
#line 70 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 16:
#line 73 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
}
this._contentLoaded = true;
}
}
}

View file

@ -0,0 +1,207 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "944AF59068FB0977BE57065FF28E48FDFBAEDED2"
//------------------------------------------------------------------------------
// <auto-generated>
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Controls.Ribbon;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using WPF_kmap;
namespace WPF_kmap {
/// <summary>
/// MainWindow
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/WPF-kmap;component/mainwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\MainWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "9.0.1.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
#line 25 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 2:
#line 28 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 3:
#line 31 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 4:
#line 34 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 5:
#line 38 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 6:
#line 41 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 7:
#line 44 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 8:
#line 47 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 9:
#line 51 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 10:
#line 54 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 11:
#line 57 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 12:
#line 60 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 13:
#line 64 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 14:
#line 67 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 15:
#line 70 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
case 16:
#line 73 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.boxOnClick);
#line default
#line hidden
return;
}
this._contentLoaded = true;
}
}
}

View file

@ -0,0 +1,25 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Tento kód byl generován nástrojem.
// Verze modulu runtime:4.0.30319.42000
//
// Změny tohoto souboru mohou způsobit nesprávné chování a budou ztraceny,
// dojde-li k novému generování kódu.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("WPF-kmap")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+74c6a872546677f322ac3b2a7973154fe3543dc1")]
[assembly: System.Reflection.AssemblyProductAttribute("WPF-kmap")]
[assembly: System.Reflection.AssemblyTitleAttribute("WPF-kmap")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
// Vygenerované třídou WriteCodeFragment nástroje MSBuild

View file

@ -0,0 +1 @@
035978d88d8adb109d69856d3a2e383f38ba0ae9113db67d6bd9e73c7bcb6b1a

View file

@ -0,0 +1,16 @@
is_global = true
build_property.TargetFramework = net8.0-windows
build_property.TargetPlatformMinVersion = 7.0
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = WPF_kmap
build_property.ProjectDir = R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
build_property.CsWinRTUseWindowsUIXamlProjections = false
build_property.EffectiveAnalysisLevelStyle = 8.0
build_property.EnableCodeStyleSeverity =

View file

@ -0,0 +1,6 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.Linq;
global using global::System.Threading;
global using global::System.Threading.Tasks;

View file

@ -0,0 +1 @@
170b7b581ff3217c451a8a0c72490e5e7ecf057e36a620bd703e4b37945ebc2a

View file

@ -0,0 +1,20 @@
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\MainWindow.g.cs
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\App.g.cs
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap_MarkupCompile.cache
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap_MarkupCompile.lref
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\bin\Debug\net8.0-windows\WPF-kmap.exe
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\bin\Debug\net8.0-windows\WPF-kmap.deps.json
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\bin\Debug\net8.0-windows\WPF-kmap.runtimeconfig.json
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\bin\Debug\net8.0-windows\WPF-kmap.dll
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\bin\Debug\net8.0-windows\WPF-kmap.pdb
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\MainWindow.baml
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.g.resources
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.GeneratedMSBuildEditorConfig.editorconfig
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.AssemblyInfoInputs.cache
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.AssemblyInfo.cs
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.csproj.CoreCompileInputs.cache
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.dll
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\refint\WPF-kmap.dll
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.pdb
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\WPF-kmap.genruntimeconfig.cache
R:\PRG\Kmap-solver\karnaugh-map\WPF-kmap\WPF-kmap\obj\Debug\net8.0-windows\ref\WPF-kmap.dll

View file

@ -0,0 +1,11 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {}
},
"libraries": {}
}

View file

@ -0,0 +1,25 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"frameworks": [
{
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
{
"name": "Microsoft.WindowsDesktop.App",
"version": "8.0.0"
}
],
"additionalProbingPaths": [
"C:\\Users\\dominik.zatko\\.dotnet\\store\\|arch|\\|tfm|",
"C:\\Users\\dominik.zatko\\.nuget\\packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true,
"CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false,
"Microsoft.NETCore.DotNetHostPolicy.SetAppPaths": true
}
}
}

Some files were not shown because too many files have changed in this diff Show more