Changed painter, add visual studio project.

This commit is contained in:
Christoph Holzheuer
2026-01-20 16:56:41 +01:00
parent 8639529bbe
commit 0d802fcec3
12 changed files with 8152 additions and 60 deletions

47
.gitignore vendored
View File

@@ -1,22 +1,25 @@
BionxControl.pro.user
build/
bcvalue.cpp.autosave
.qtcreator/BionxControl.pro.user
.user
# Objektdateien ignorieren
*.o
.qtc_clangd/
# Von Qt generierte MOC-Dateien (Meta-Object Compiler) ignorieren
moc_*
# Von Qt generierte Ressourcen-Dateien ignorieren
qrc_*
BionxControl
Makefile
ui_*
.qmake.stash
BionxControl.pro.user
build/
bcvalue.cpp.autosave
.qtcreator/BionxControl.pro.user
.user
# Objektdateien ignorieren
*.o
.qtc_clangd/
# Von Qt generierte MOC-Dateien (Meta-Object Compiler) ignorieren
moc_*
# Von Qt generierte Ressourcen-Dateien ignorieren
qrc_*
BionxControl
Makefile
ui_*
.qmake.stash
.vs/
debug/
release/

7483
BionxControl.qtvscr Normal file

File diff suppressed because one or more lines are too long

6
BionxControl.slnx Normal file
View File

@@ -0,0 +1,6 @@
<Solution>
<Configurations>
<Platform Name="x64" />
</Configurations>
<Project Path="BionxControl.vcxproj" />
</Solution>

299
BionxControl.vcxproj Normal file
View File

@@ -0,0 +1,299 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{84C4D2DA-BE54-3C31-BEF9-6BCCDD5C3277}</ProjectGuid>
<RootNamespace>BionxControl</RootNamespace>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion>10.0.26100.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformMinVersion>10.0.26100.0</WindowsTargetPlatformMinVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' OR !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<PlatformToolset>v145</PlatformToolset>
<OutputDirectory>release\</OutputDirectory>
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
<CharacterSet>NotSet</CharacterSet>
<ConfigurationType>Application</ConfigurationType>
<IntermediateDirectory>release\</IntermediateDirectory>
<PrimaryOutput>BionxControl</PrimaryOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<PlatformToolset>v145</PlatformToolset>
<OutputDirectory>debug\</OutputDirectory>
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
<CharacterSet>NotSet</CharacterSet>
<ConfigurationType>Application</ConfigurationType>
<IntermediateDirectory>debug\</IntermediateDirectory>
<PrimaryOutput>BionxControl</PrimaryOutput>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<Import Project="$(QtMsBuild)\qt_defaults.props" Condition="Exists('$(QtMsBuild)\qt_defaults.props')" />
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<QtInstall>msvc2022x64Qt6</QtInstall>
<QtModules>core;gui;widgets;svg</QtModules>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<QtInstall>msvc2022x64Qt6</QtInstall>
<QtModules>core;gui;widgets;svg</QtModules>
</PropertyGroup>
<Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') OR !Exists('$(QtMsBuild)\Qt.props')">
<Message Importance="High" Text="QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly." />
</Target>
<ImportGroup Label="ExtensionSettings" />
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
<Import Project="$(QtMsBuild)\Qt.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
<Import Project="$(QtMsBuild)\Qt.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">BionxControl</TargetName>
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">BionxControl</TargetName>
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<AdditionalIncludeDirectories>GeneratedFiles\$(ConfigurationName);GeneratedFiles;.;libwin;release;/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -permissive- -Zc:__cplusplus -Zc:externConstexpr -std=c++23 -utf-8 -w34100 -w34189 -w44456 -w44457 -w44458 %(AdditionalOptions)</AdditionalOptions>
<AssemblerListingLocation>release\</AssemblerListingLocation>
<BrowseInformation>false</BrowseInformation>
<DebugInformationFormat>None</DebugInformationFormat>
<DisableSpecificWarnings>4577;4467;%(DisableSpecificWarnings)</DisableSpecificWarnings>
<ExceptionHandling>Sync</ExceptionHandling>
<LanguageStandard>stdcpplatest</LanguageStandard>
<ObjectFileName>release\</ObjectFileName>
<Optimization>MaxSpeed</Optimization>
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;QT_NO_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessToFile>false</PreprocessToFile>
<ProgramDataBaseFileName>
</ProgramDataBaseFileName>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<SuppressStartupBanner>true</SuppressStartupBanner>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<UseFullPaths>false</UseFullPaths>
<WarningLevel>Level3</WarningLevel>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>$(QTDIR)\lib\Qt6EntryPoint.lib;shell32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
<DataExecutionPrevention>true</DataExecutionPrevention>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<GenerateDebugInformation>false</GenerateDebugInformation>
<IgnoreImportLibrary>true</IgnoreImportLibrary>
<LinkIncremental>false</LinkIncremental>
<OptimizeReferences>true</OptimizeReferences>
<OutputFile>$(OutDir)\BionxControl.exe</OutputFile>
<RandomizedBaseAddress>true</RandomizedBaseAddress>
<SubSystem>Windows</SubSystem>
<SuppressStartupBanner>true</SuppressStartupBanner>
</Link>
<Midl>
<DefaultCharType>Unsigned</DefaultCharType>
<EnableErrorChecks>None</EnableErrorChecks>
<WarningLevel>0</WarningLevel>
</Midl>
<ResourceCompile>
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;QT_NO_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
<QtMoc>
<CompilerFlavor>msvc</CompilerFlavor>
<Include>./$(Configuration)/moc_predefs.h</Include>
<ExecutionDescription>Moc'ing %(Identity)...</ExecutionDescription>
<DynamicSource>output</DynamicSource>
<QtMocDir>$(Configuration)</QtMocDir>
<QtMocFileName>moc_%(Filename).cpp</QtMocFileName>
</QtMoc>
<QtRcc>
<InitFuncName>bionxcontrol</InitFuncName>
<Compression>default</Compression>
<NoZstd>true</NoZstd>
<ExecutionDescription>Rcc'ing %(Identity)...</ExecutionDescription>
<QtRccDir>$(Configuration)</QtRccDir>
<QtRccFileName>qrc_%(Filename).cpp</QtRccFileName>
</QtRcc>
<QtUic>
<ExecutionDescription>Uic'ing %(Identity)...</ExecutionDescription>
<QtUicDir>$(ProjectDir)</QtUicDir>
<QtUicFileName>ui_%(Filename).h</QtUicFileName>
</QtUic>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<AdditionalIncludeDirectories>GeneratedFiles\$(ConfigurationName);GeneratedFiles;.;libwin;debug;/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -permissive- -Zc:__cplusplus -Zc:externConstexpr -std=c++23 -utf-8 -w34100 -w34189 -w44456 -w44457 -w44458 %(AdditionalOptions)</AdditionalOptions>
<AssemblerListingLocation>debug\</AssemblerListingLocation>
<BrowseInformation>false</BrowseInformation>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<DisableSpecificWarnings>4577;4467;%(DisableSpecificWarnings)</DisableSpecificWarnings>
<ExceptionHandling>Sync</ExceptionHandling>
<LanguageStandard>stdcpplatest</LanguageStandard>
<ObjectFileName>debug\</ObjectFileName>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessToFile>false</PreprocessToFile>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<SuppressStartupBanner>true</SuppressStartupBanner>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<UseFullPaths>false</UseFullPaths>
<WarningLevel>Level3</WarningLevel>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>$(QTDIR)\lib\Qt6EntryPointd.lib;shell32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
<DataExecutionPrevention>true</DataExecutionPrevention>
<GenerateDebugInformation>true</GenerateDebugInformation>
<IgnoreImportLibrary>true</IgnoreImportLibrary>
<OutputFile>$(OutDir)\BionxControl.exe</OutputFile>
<RandomizedBaseAddress>true</RandomizedBaseAddress>
<SubSystem>Windows</SubSystem>
<SuppressStartupBanner>true</SuppressStartupBanner>
</Link>
<Midl>
<DefaultCharType>Unsigned</DefaultCharType>
<EnableErrorChecks>None</EnableErrorChecks>
<WarningLevel>0</WarningLevel>
</Midl>
<ResourceCompile>
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
<QtMoc>
<CompilerFlavor>msvc</CompilerFlavor>
<Include>./$(Configuration)/moc_predefs.h</Include>
<ExecutionDescription>Moc'ing %(Identity)...</ExecutionDescription>
<DynamicSource>output</DynamicSource>
<QtMocDir>$(Configuration)</QtMocDir>
<QtMocFileName>moc_%(Filename).cpp</QtMocFileName>
</QtMoc>
<QtRcc>
<InitFuncName>bionxcontrol</InitFuncName>
<Compression>default</Compression>
<NoZstd>true</NoZstd>
<ExecutionDescription>Rcc'ing %(Identity)...</ExecutionDescription>
<QtRccDir>$(Configuration)</QtRccDir>
<QtRccFileName>qrc_%(Filename).cpp</QtRccFileName>
</QtRcc>
<QtUic>
<ExecutionDescription>Uic'ing %(Identity)...</ExecutionDescription>
<QtUicDir>$(ProjectDir)</QtUicDir>
<QtUicFileName>ui_%(Filename).h</QtUicFileName>
</QtUic>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="bc.cpp" />
<ClCompile Include="bcdelightpmwidget.cpp" />
<ClCompile Include="bcdeviceview.cpp" />
<ClCompile Include="bcdriver.cpp" />
<ClCompile Include="bcdriverstatewidget.cpp" />
<ClCompile Include="bcdrivertinycan.cpp" />
<ClCompile Include="bcmainwindow.cpp" />
<ClCompile Include="bcsliderstyle.cpp" />
<ClCompile Include="bcthemeswitchbutton.cpp" />
<ClCompile Include="bctoggleswitch.cpp" />
<ClCompile Include="bctransmitter.cpp" />
<ClCompile Include="bcvalue.cpp" />
<ClCompile Include="bcvaluedelegate.cpp" />
<ClCompile Include="bcvalueeditor.cpp" />
<ClCompile Include="bcvaluemodel.cpp" />
<ClCompile Include="bcxmlloader.cpp" />
<ClCompile Include="libwin\can_drv_win.c" />
<ClCompile Include="main.cpp" />
</ItemGroup>
<ItemGroup>
<QtMoc Include="bc.h" />
<QtMoc Include="bcdelightpmwidget.h" />
<QtMoc Include="bcdeviceview.h" />
<QtMoc Include="bcdriver.h" />
<QtMoc Include="bcdriverstatewidget.h" />
<ClInclude Include="bcdrivertinycan.h" />
<QtMoc Include="bcmainwindow.h" />
<ClInclude Include="bcsliderstyle.h" />
<QtMoc Include="bcthemeswitchbutton.h" />
<QtMoc Include="bctoggleswitch.h" />
<QtMoc Include="bctransmitter.h" />
<QtMoc Include="bcvalue.h" />
<QtMoc Include="bcvaluedelegate.h" />
<QtMoc Include="bcvalueeditor.h" />
<QtMoc Include="bcvaluemodel.h" />
<QtMoc Include="bcxmlloader.h" />
</ItemGroup>
<ItemGroup>
<CustomBuild Include="debug\moc_predefs.h.cbt">
<FileType>Document</FileType>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(QTDIR)\mkspecs\features\data\dummy.cpp;%(AdditionalInputs)</AdditionalInputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">cl -Bx"$(QTDIR)\bin\qmake.exe" -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -permissive- -Zc:__cplusplus -Zc:externConstexpr -std=c++23 -Zi -MDd -std:c++latest -utf-8 -W3 -w34100 -w34189 -w44456 -w44457 -w44458 -wd4577 -wd4467 -E $(QTDIR)\mkspecs\features\data\dummy.cpp 2&gt;NUL &gt;$(IntDir)\moc_predefs.h</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Generate moc_predefs.h</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)\moc_predefs.h;%(Outputs)</Outputs>
</CustomBuild>
<CustomBuild Include="release\moc_predefs.h.cbt">
<FileType>Document</FileType>
<AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(QTDIR)\mkspecs\features\data\dummy.cpp;%(AdditionalInputs)</AdditionalInputs>
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">cl -Bx"$(QTDIR)\bin\qmake.exe" -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -permissive- -Zc:__cplusplus -Zc:externConstexpr -std=c++23 -O2 -MD -std:c++latest -utf-8 -W3 -w34100 -w34189 -w44456 -w44457 -w44458 -wd4577 -wd4467 -E $(QTDIR)\mkspecs\features\data\dummy.cpp 2&gt;NUL &gt;$(IntDir)\moc_predefs.h</Command>
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Generate moc_predefs.h</Message>
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)\moc_predefs.h;%(Outputs)</Outputs>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<QtUic Include="bcmainwindow.ui" />
<QtUic Include="bcvalueeditor.ui" />
</ItemGroup>
<ItemGroup>
<None Include="resources\bc_dark.qss" />
<None Include="resources\bc_light.qss" />
<None Include="resources\bikeinfo.xml" />
<None Include="resources\bionx_akku.png" />
<None Include="resources\bionx_console.png" />
<None Include="resources\bionx_motor.png" />
<QtRcc Include="bionxcontrol.qrc" />
<None Include="resources\connect.png" />
<None Include="resources\exit.png" />
<None Include="resources\exit_red.png" />
<None Include="resources\smile\face-angel.png" />
<None Include="resources\smile\face-angry.png" />
<None Include="resources\smile\face-cool.png" />
<None Include="resources\smile\face-crying.png" />
<None Include="resources\smile\face-embarrassed.png" />
<None Include="resources\smile\face-glasses.png" />
<None Include="resources\smile\face-kiss.png" />
<None Include="resources\smile\face-laugh.png" />
<None Include="resources\smile\face-monkey.png" />
<None Include="resources\smile\face-plain.png" />
<None Include="resources\smile\face-raspberry.png" />
<None Include="resources\smile\face-sad.png" />
<None Include="resources\smile\face-sick.png" />
<None Include="resources\smile\face-smile-big.png" />
<None Include="resources\smile\face-smile.png" />
<None Include="resources\smile\face-smirk.png" />
<None Include="resources\smile\face-surprise.png" />
<None Include="resources\sync.png" />
<None Include="resources\sync_green.png" />
<None Include="resources\sync_yellow.png" />
<None Include="resources\update.png" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<Import Project="$(QtMsBuild)\qt.targets" Condition="Exists('$(QtMsBuild)\qt.targets')" />
<ImportGroup Label="ExtensionTargets" />
</Project>

View File

@@ -0,0 +1,266 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Form Files">
<UniqueIdentifier>{99349809-55BA-4b9d-BF79-8FDBB0286EB3}</UniqueIdentifier>
<Extensions>ui</Extensions>
<ParseFiles>false</ParseFiles>
</Filter>
<Filter Include="Form Files">
<UniqueIdentifier>{99349809-55BA-4b9d-BF79-8FDBB0286EB3}</UniqueIdentifier>
<Extensions>ui</Extensions>
<ParseFiles>false</ParseFiles>
</Filter>
<Filter Include="Generated Files">
<UniqueIdentifier>{71ED8ED8-ACB9-4CE9-BBE1-E00B30144E11}</UniqueIdentifier>
<Extensions>cpp;c;cxx;moc;h;def;odl;idl;res;</Extensions>
</Filter>
<Filter Include="Generated Files">
<UniqueIdentifier>{71ED8ED8-ACB9-4CE9-BBE1-E00B30144E11}</UniqueIdentifier>
<Extensions>cpp;c;cxx;moc;h;def;odl;idl;res;</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{D9D6E242-F8AF-46E4-B9FD-80ECBC20BA3E}</UniqueIdentifier>
<Extensions>qrc;*</Extensions>
<ParseFiles>false</ParseFiles>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{D9D6E242-F8AF-46E4-B9FD-80ECBC20BA3E}</UniqueIdentifier>
<Extensions>qrc;*</Extensions>
<ParseFiles>false</ParseFiles>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="bc.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcdelightpmwidget.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcdeviceview.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcdriver.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcdriverstatewidget.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcdrivertinycan.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcmainwindow.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcsliderstyle.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcthemeswitchbutton.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bctoggleswitch.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bctransmitter.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcvalue.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcvaluedelegate.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcvalueeditor.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcvaluemodel.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="bcxmlloader.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="libwin\can_drv_win.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<QtMoc Include="bc.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcdelightpmwidget.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcdeviceview.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcdriver.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcdriverstatewidget.h">
<Filter>Header Files</Filter>
</QtMoc>
<ClInclude Include="bcdrivertinycan.h">
<Filter>Header Files</Filter>
</ClInclude>
<QtMoc Include="bcmainwindow.h">
<Filter>Header Files</Filter>
</QtMoc>
<ClInclude Include="bcsliderstyle.h">
<Filter>Header Files</Filter>
</ClInclude>
<QtMoc Include="bcthemeswitchbutton.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bctoggleswitch.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bctransmitter.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcvalue.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcvaluedelegate.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcvalueeditor.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcvaluemodel.h">
<Filter>Header Files</Filter>
</QtMoc>
<QtMoc Include="bcxmlloader.h">
<Filter>Header Files</Filter>
</QtMoc>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="debug\moc_predefs.h.cbt">
<Filter>Generated Files</Filter>
</CustomBuild>
<CustomBuild Include="release\moc_predefs.h.cbt">
<Filter>Generated Files</Filter>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<QtUic Include="bcmainwindow.ui">
<Filter>Form Files</Filter>
</QtUic>
<QtUic Include="bcvalueeditor.ui">
<Filter>Form Files</Filter>
</QtUic>
</ItemGroup>
<ItemGroup>
<None Include="resources\bc_dark.qss">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\bc_light.qss">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\bikeinfo.xml">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\bionx_akku.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\bionx_console.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\bionx_motor.png">
<Filter>Resource Files</Filter>
</None>
<QtRcc Include="bionxcontrol.qrc">
<Filter>Resource Files</Filter>
</QtRcc>
<None Include="resources\connect.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\exit.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\exit_red.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-angel.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-angry.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-cool.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-crying.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-embarrassed.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-glasses.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-kiss.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-laugh.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-monkey.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-plain.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-raspberry.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-sad.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-sick.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-smile-big.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-smile.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-smirk.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\smile\face-surprise.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\sync.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\sync_green.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\sync_yellow.png">
<Filter>Resource Files</Filter>
</None>
<None Include="resources\update.png">
<Filter>Resource Files</Filter>
</None>
</ItemGroup>
</Project>

View File

@@ -46,7 +46,8 @@ BCDeviceView::BCDeviceView(QWidget *parent)
// __fix! ziemlich wildes ge-pointere, hier
_itemDelegate = new BCValueDelegate( _valueModel.getValueList(), this);
setItemDelegateForColumn( 1, _itemDelegate );
/*
/*
setStyleSheet( R"(QTableView::item:selected
{
background-color: green;
@@ -57,7 +58,8 @@ BCDeviceView::BCDeviceView(QWidget *parent)
outline: none;
}
})");
*/
*/
}

View File

@@ -242,7 +242,7 @@
<number>0</number>
</property>
<property name="currentIndex">
<number>1</number>
<number>2</number>
</property>
<widget class="BCDeviceView" name="_consolePanel">
<property name="frameShape">

View File

@@ -194,11 +194,38 @@ void BCValueDelegate::paintButtonIndicator(QPainter* painter, const QStyleOption
}
void BCValueDelegate::paintSliderIndicator(QPainter* painter, const QStyleOptionViewItem& option, const BCValue& bcValue) const
{
double ratio = bcValue.calcMinMaxRatio();
qDebug() << " --- paint: " << bcValue.label() << ":" << ratio;
// Text und kleiner Slider-Indikator zeichnen
painter->save();
painter->setRenderHint(QPainter::Antialiasing);
int adjX = option.rect.width() - cTextBlockOffset;
// Mini Progress Bar: der Gesamtbereich
QRect barRect = option.rect.adjusted( adjX, 12, -10-24, -12 );
painter->setPen(Qt::NoPen);
painter->setBrush(QColor(0xE0E0E0));
painter->drawRoundedRect(barRect, 2, 2);
// Mini Progress Bar: der Wertebereich
barRect.setWidth( ratio * barRect.width() );
painter->setBrush(QColor(0x0078D4));
painter->drawRoundedRect(barRect, 2, 2);
painter->restore();
}
/**
* @brief Zeichnet eine passiven Slider, um den möglichen Wertebereich des übergebenen BCValue anzuzeigen.
*/
void BCValueDelegate::paintSliderIndicator(QPainter* painter, const QStyleOptionViewItem& option, const BCValue& bcValue) const
void BCValueDelegate::paintSliderIndicatorXX(QPainter* painter, const QStyleOptionViewItem& option, const BCValue& bcValue) const
{
// Text und kleiner Slider-Indikator zeichnen
painter->save();
@@ -213,7 +240,8 @@ void BCValueDelegate::paintSliderIndicator(QPainter* painter, const QStyleOption
double ratio = bcValue.calcMinMaxRatio();
if( ratio)
qDebug() << " --- paint: " << bcValue.label() << ":" << ratio;
if(ratio)
{
// Mini Progress Bar: der Gesamtbereich
painter->setPen(Qt::NoPen);

View File

@@ -70,6 +70,8 @@ protected:
void updateRow(int row);
void paintHighlightRow(QPainter* painter, const QStyleOptionViewItem& option, int row) const;
void paintSliderIndicator(QPainter* painter, const QStyleOptionViewItem& option, const BCValue& bcValue) const;
void paintSliderIndicatorXX(QPainter* painter, const QStyleOptionViewItem& option, const BCValue& bcValue) const;
void paintButtonIndicator(QPainter* painter, const QStyleOptionViewItem& option, const BCValue& bcValue) const;
// Das ist ein Quickhack, der Delegate sollte

View File

@@ -128,8 +128,6 @@ int BCValueModel::columnCount(const QModelIndex& parent) const
}
/**
* @brief Gibt die Model-Daten zurück.
*/

View File

@@ -8,7 +8,8 @@
/* Borders: #3d3d3d, #4d4d4d */
/* === QWidget Base === */
QWidget {
QWidget
{
background-color: #202020;
color: #ffffff;
font-family: "Segoe UI", "Roboto", sans-serif;
@@ -21,12 +22,14 @@ QLabel#_headerLabel
/*font-weight: bold;*/
}
QWidget:disabled {
QWidget:disabled
{
color: #6d6d6d;
}
/* === QToolButton === */
QToolButton {
QToolButton
{
background-color: transparent;
color: #ffffff;
border: 1px solid transparent;
@@ -35,34 +38,40 @@ QToolButton {
margin: 2px;
}
QToolButton:hover {
QToolButton:hover
{
background-color: rgba(255, 255, 255, 0.06);
border: 1px solid rgba(255, 255, 255, 0.08);
}
QToolButton:pressed {
QToolButton:pressed
{
background-color: rgba(255, 255, 255, 0.03);
border: 1px solid rgba(255, 255, 255, 0.05);
}
QToolButton:checked {
QToolButton:checked
{
background-color: rgba(0, 120, 212, 0.15);
border: 1px solid #0078d4;
color: #0078d4;
}
QToolButton:checked:hover {
QToolButton:checked:hover
{
background-color: rgba(0, 120, 212, 0.25);
}
QToolButton:disabled {
QToolButton:disabled
{
color: #6d6d6d;
background-color: transparent;
}
/* Basis-Zustand: Alles weg */
QToolButton#_commitButton {
QToolButton#_commitButton
{
background: transparent;
background-color: transparent;
border: none;
@@ -71,8 +80,6 @@ QToolButton#_commitButton {
margin: 0px;
}
/* WICHTIG: Auch die interaktiven Zustände überschreiben,
sonst flackert der Standard-Style beim Klicken wieder auf */
QToolButton#_commitButton:hover
{
@@ -99,7 +106,8 @@ QToolButton#_commitButton:focus
}
/* === QTableView === */
QTableView {
QTableView
{
background-color: #2b2b2b;
color: #ffffff;
border: 1px solid #3d3d3d;
@@ -108,31 +116,27 @@ QTableView {
selection-color: #ffffff;
}
QTableView::item {
padding: 8px;
QTableView::item
{
padding: 0px;
border: none;
}
QTableView::item:hover {
QTableView::item:hover
{
background-color: rgba(255, 255, 255, 0.06);
}
QTableView::item:selected {
background-color: #0078d4;
color: #ffffff;
}
QTableView::item:selected:hover {
background-color: #005a9e;
}
QTableView::item:selected:!active {
background-color: rgba(0, 120, 212, 0.5);
QTableView::item:selected
{
background-color: green;
border: none;
}
/* === QScrollBar Vertical === */
QScrollBar:vertical {
QScrollBar:vertical
{
background: transparent;
width: 12px;
margin: 0;
@@ -213,4 +217,4 @@ QTableView QTableCornerButton::section
border: none;
border-right: 1px solid #3d3d3d;
border-bottom: 1px solid #3d3d3d;
}
}

View File

@@ -99,7 +99,8 @@ QToolButton#_commitButton:focus {
}
/* === QTableView === */
QTableView {
QTableView
{
background-color: #ffffff;
alternate-background-color: #fafafa;
color: #1f1f1f;
@@ -110,8 +111,8 @@ QTableView {
selection-color: #ffffff;
}
QTableView::item {
/*padding: 8px;*/
QTableView::item
{
border: none;
}