diff --git a/src/app/puzzle/share/resources/puzzleicon.qrc b/src/app/puzzle/share/resources/puzzleicon.qrc
index 12c2a72ee..83dde8c8e 100644
--- a/src/app/puzzle/share/resources/puzzleicon.qrc
+++ b/src/app/puzzle/share/resources/puzzleicon.qrc
@@ -14,5 +14,7 @@
puzzleicon/svg/icon_scissors.svg
puzzleicon/svg/icon_scissors_vertical.svg
puzzleicon/svg/icon_scissors_horizontal.svg
+ puzzleicon/16x16/roll.png
+ puzzleicon/16x16/template.png
diff --git a/src/app/puzzle/share/resources/puzzleicon/16x16/roll.png b/src/app/puzzle/share/resources/puzzleicon/16x16/roll.png
new file mode 100644
index 000000000..49c30dff1
Binary files /dev/null and b/src/app/puzzle/share/resources/puzzleicon/16x16/roll.png differ
diff --git a/src/app/puzzle/share/resources/puzzleicon/16x16/template.png b/src/app/puzzle/share/resources/puzzleicon/16x16/template.png
new file mode 100644
index 000000000..c29755d29
Binary files /dev/null and b/src/app/puzzle/share/resources/puzzleicon/16x16/template.png differ
diff --git a/src/app/puzzle/vpsheet.cpp b/src/app/puzzle/vpsheet.cpp
index 475584860..59018f0bb 100644
--- a/src/app/puzzle/vpsheet.cpp
+++ b/src/app/puzzle/vpsheet.cpp
@@ -204,25 +204,28 @@ QString VPSheet::GetTemplateName(PaperSizeTemplate tmpl)
//---------------------------------------------------------------------------------------------------------------------
PaperSizeTemplate VPSheet::GetTemplate(QSizeF size)
{
- const int max = static_cast(PaperSizeTemplate::Custom);
+ // TODO, float comparision not safe and problems with
+ // inch / cm
- for (int i=0; i < max; i++)
- {
- PaperSizeTemplate tmpl = static_cast(i);
- const QSizeF tmplSize = GetTemplateSize(tmpl);
+// const int max = static_cast(PaperSizeTemplate::Custom);
- if(size.width() == tmplSize.width())
- {
- if(isRollTemplate(tmpl))
- {
- return tmpl;
- }
- else if(size.height() == tmplSize.height())
- {
- return tmpl;
- }
- }
- }
+// for (int i=0; i < max; i++)
+// {
+// PaperSizeTemplate tmpl = static_cast(i);
+// const QSizeF tmplSize = GetTemplateSize(tmpl);
+
+// if(size.width() == tmplSize.width())
+// {
+// if(isRollTemplate(tmpl))
+// {
+// return tmpl;
+// }
+// else if(size.height() == tmplSize.height())
+// {
+// return tmpl;
+// }
+// }
+// }
return PaperSizeTemplate::Custom;
}
@@ -248,9 +251,14 @@ bool VPSheet::isRollTemplate(PaperSizeTemplate tmpl)
//---------------------------------------------------------------------------------------------------------------------
void VPSheet::PopulateComboBox(QVector *tmpls, QComboBox* comboBox)
{
+ const QIcon icoPaper("://puzzleicon/16x16/template.png");
+ const QIcon icoRoll("://puzzleicon/16x16/roll.png");
+
+ QIcon icon;
for (auto tmpl : *tmpls)
{
- comboBox->addItem(GetTemplateName(tmpl), QVariant(static_cast(tmpl)));
+ icon = (isRollTemplate(tmpl))? icoRoll : icoPaper;
+ comboBox->addItem(icon, GetTemplateName(tmpl), QVariant(static_cast(tmpl)));
}
}