update hardcoded XPMs to .svg files. Updated .svg icons for clarity.

This commit is contained in:
Max Wilfinger
2024-03-23 14:59:24 +01:00
committed by wwmayer
parent 82e1091c19
commit 6ca8b2daae
33 changed files with 3207 additions and 593 deletions

View File

@@ -54,7 +54,6 @@
#include "ViewProviderTransform.h"
#include "ViewProviderTransformDemolding.h"
#include "Workbench.h"
#include "images.h"
// use a different name to CreateCommand()
@@ -138,9 +137,6 @@ PyMOD_INIT_FUNC(MeshGui)
PyObject* mod = MeshGui::initModule();
Base::Console().Log("Loading GUI of Mesh module... done\n");
// Register icons
Gui::BitmapFactory().addXPM("mesh_fillhole", mesh_fillhole);
// instantiating the commands
CreateMeshCommands();
if (qApp) {

View File

@@ -1585,7 +1585,10 @@ void CmdMeshFillInteractiveHole::activated(int)
if (view) {
Gui::View3DInventorViewer* viewer = view->getViewer();
viewer->setEditing(true);
viewer->setEditingCursor(QCursor(Gui::BitmapFactory().pixmap("mesh_fillhole"), 5, 5));
viewer->setEditingCursor(
QCursor(Gui::BitmapFactory().pixmapFromSvg("Mesh_CursorFillInteractive", QSize(32, 32)),
6,
6));
viewer->addEventCallback(SoMouseButtonEvent::getClassTypeId(),
MeshGui::ViewProviderMeshFaceSet::fillHoleCallback);
viewer->setSelectionEnabled(false);

View File

@@ -4,6 +4,7 @@
<file>icons/Mesh_BoundingBox.svg</file>
<file>icons/Mesh_BuildRegularSolid.svg</file>
<file>icons/Mesh_CrossSections.svg</file>
<file>icons/Mesh_CursorFillInteractive.svg</file>
<file>icons/Mesh_CurvatureInfo.svg</file>
<file>icons/Mesh_Decimating.svg</file>
<file>icons/Mesh_Difference.svg</file>

View File

@@ -0,0 +1,111 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="64px"
height="64px"
id="svg2980"
version="1.1"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2982">
<linearGradient
id="linearGradient3765">
<stop
style="stop-color:#d3d7cf;stop-opacity:1;"
offset="0"
id="stop3767" />
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="1"
id="stop3769" />
</linearGradient>
<linearGradient
id="linearGradient3864">
<stop
id="stop3866"
offset="0"
style="stop-color:#71b2f8;stop-opacity:1;" />
<stop
id="stop3868"
offset="1"
style="stop-color:#002795;stop-opacity:1;" />
</linearGradient>
<linearGradient
xlink:href="#linearGradient3765"
id="linearGradient3771"
x1="35"
y1="51"
x2="31"
y2="18"
gradientUnits="userSpaceOnUse" />
<linearGradient
xlink:href="#linearGradient3765"
id="linearGradient3000"
gradientUnits="userSpaceOnUse"
x1="35"
y1="51"
x2="31"
y2="18" />
</defs>
<metadata
id="metadata2985">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<rect
style="fill:#c8c8c8;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
id="rect12275"
width="2"
height="26"
x="12"
y="1.1085762e-06" />
<rect
style="fill:#c8c8c8;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
id="rect12379"
width="26"
height="2"
x="9.1291042e-08"
y="12.000001" />
<path
style="fill:#73d216;stroke:none;stroke-width:1"
d="M 13.29328,39.322385 52.228648,13.929754 59.000016,59.636489 Z"
id="path2991-3" />
<path
style="fill:none;stroke:#8ae234;stroke-width:4.15385;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 16.98489,40.412782 51.699332,18.107412"
id="path3779" />
<path
style="fill:none;stroke:#8ae234;stroke-width:4.15385;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 48.876308,16.721754 6.13595,39.970853"
id="path3781" />
<path
style="fill:none;stroke:#8ae234;stroke-width:4.15385;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="M 58.222982,55.26355 15.832544,36.783122"
id="path3783" />
<path
style="fill:none;stroke:#172a04;stroke-width:4.15385;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 13.29328,39.322385 52.228648,13.929754 59.000016,59.636489 Z"
id="path2991" />
<ellipse
style="fill:#204a87;fill-opacity:1;stroke:#0b1521;stroke-width:4.15385;stroke-opacity:1"
id="path10509"
cx="41.265102"
cy="36.691578"
rx="7.9562716"
ry="6.1528296" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -1,40 +0,0 @@
// clang-format off
/* XPM */
static const char *mesh_fillhole[]={
"32 32 3 1",
"# c #000000",
"+ c #ffffff",
". c None",
"....+...........................",
"....+....................##.....",
"....+...................###.....",
".......................####.....",
"+++.+.+++............###++#.....",
"....................###+++##....",
"....+.............###+++++##....",
"....+............###++++++##....",
"....+..........###++++++++##....",
"..............###++++++++++#....",
"............###++++++++++++#....",
"...........###+++#######+++##...",
"..........###+++#......##++##...",
"........###++++#........#++##...",
".......###+++++#........##+##...",
".....###+++++++#........##.##...",
"....###++++++++##.......#+++#...",
"....####++++++++##....##++++##..",
"......####++++++++#####+++++##..",
"........#####+++++++++++++++##..",
"...........####+++++++++++++##..",
".............#####++++++++++##..",
"................####+++++++++#..",
"..................#####++++++#..",
".....................####++++##.",
".......................#####+##.",
"..........................#####.",
"............................##..",
"................................",
"................................",
"................................",
"................................"};
// clang-format on