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))); } }