Hi Frank, On 11/29/21 10:58, Frank Pereny wrote: > I am interested in bringing my project to the KDE family. I am > requesting a sponsor, please allow me to introduce the project below.
thanks for your submission! From a quick glance, here are a few things I spotted: - The application doesn't build on my system, see attachment. - The standard layout is to have source code in a src/ subfolder. - License headers are missing.- A lot of things are pointers for seemingly no reason. If you heap-allocate a std::vector, a QString or QStringList with "new", you should stop and ask yourself "Wait. Is this really the right thing to do?". (The reason is that these things are already wrapper classes around heap memory. Heap-allocating the wrapper data structure is rarely helpful)
All the best, Sven
» make -j [ 10%] Automatic MOC and UIC for target konverter [ 10%] Built target konverter_autogen [ 30%] Automatic RCC for icons.qrc [ 30%] Generating ../konverter_en_US.ts Scanning directory '/home/sven/Downloads/konverter'... Updating '../konverter_en_US.ts'... Found 27 source text(s) (0 new and 27 already existing) [ 50%] Building CXX object CMakeFiles/konverter.dir/datatablewindow.cpp.o [ 50%] Building CXX object CMakeFiles/konverter.dir/aboutdialog.cpp.o [ 70%] Building CXX object CMakeFiles/konverter.dir/konverter_autogen/mocs_compilation.cpp.o [ 70%] Building CXX object CMakeFiles/konverter.dir/main.cpp.o [ 80%] Building CXX object CMakeFiles/konverter.dir/newunitdialog.cpp.o [ 90%] Building CXX object CMakeFiles/konverter.dir/konverter_autogen/EWIEGA46WW/qrc_icons.cpp.o /home/sven/Downloads/konverter/newunitdialog.cpp: In member function ‘void NewUnitDialog::on_buttonBox_accepted()’: /home/sven/Downloads/konverter/newunitdialog.cpp:125:35: error: variable ‘QTextStream stream’ has initializer but incomplete type 125 | QTextStream stream(&file); | ^ make[2]: *** [CMakeFiles/konverter.dir/build.make:158: CMakeFiles/konverter.dir/newunitdialog.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... /home/sven/Downloads/konverter/datatablewindow.cpp: In member function ‘void DataTableWindow::refresh_data()’: /home/sven/Downloads/konverter/datatablewindow.cpp:135:46: error: ambiguous overload for ‘operator=’ (operand types are ‘QStringList’ and ‘<brace-enclosed initializer list>’) 135 | *unit_names = {"°C", "°F", "°K", "°R"}; | ^ In file included from /usr/include/qt/QtCore/qlist.h:1196, from /usr/include/qt/QtCore/qobject.h:49, from /usr/include/qt/QtWidgets/qwidget.h:45, from /usr/include/qt/QtWidgets/qmainwindow.h:44, from /usr/include/qt/QtWidgets/QMainWindow:1, from /home/sven/Downloads/konverter/datatablewindow.h:4, from /home/sven/Downloads/konverter/datatablewindow.cpp:1: /usr/include/qt/QtCore/qstringlist.h:124:18: note: candidate: ‘QStringList& QStringList::operator=(const QList<QString>&)’ 124 | QStringList &operator=(const QList<QString> &other) | ^~~~~~~~ /usr/include/qt/QtCore/qstringlist.h:126:18: note: candidate: ‘QStringList& QStringList::operator=(QList<QString>&&)’ 126 | QStringList &operator=(QList<QString> &&other) noexcept | ^~~~~~~~ /usr/include/qt/QtCore/qstringlist.h:111:7: note: candidate: ‘QStringList& QStringList::operator=(const QStringList&)’ 111 | class QStringList : public QList<QString> | ^~~~~~~~~~~ /usr/include/qt/QtCore/qstringlist.h:111:7: note: candidate: ‘QStringList& QStringList::operator=(QStringList&&)’ /home/sven/Downloads/konverter/datatablewindow.cpp:137:49: error: ambiguous overload for ‘operator=’ (operand types are ‘QStringList’ and ‘<brace-enclosed initializer list>’) 137 | *unit_notes = {"Master Unit", "", "", ""}; | ^ In file included from /usr/include/qt/QtCore/qlist.h:1196, from /usr/include/qt/QtCore/qobject.h:49, from /usr/include/qt/QtWidgets/qwidget.h:45, from /usr/include/qt/QtWidgets/qmainwindow.h:44, from /usr/include/qt/QtWidgets/QMainWindow:1, from /home/sven/Downloads/konverter/datatablewindow.h:4, from /home/sven/Downloads/konverter/datatablewindow.cpp:1: /usr/include/qt/QtCore/qstringlist.h:124:18: note: candidate: ‘QStringList& QStringList::operator=(const QList<QString>&)’ 124 | QStringList &operator=(const QList<QString> &other) | ^~~~~~~~ /usr/include/qt/QtCore/qstringlist.h:126:18: note: candidate: ‘QStringList& QStringList::operator=(QList<QString>&&)’ 126 | QStringList &operator=(QList<QString> &&other) noexcept | ^~~~~~~~ /usr/include/qt/QtCore/qstringlist.h:111:7: note: candidate: ‘QStringList& QStringList::operator=(const QStringList&)’ 111 | class QStringList : public QList<QString> | ^~~~~~~~~~~ /usr/include/qt/QtCore/qstringlist.h:111:7: note: candidate: ‘QStringList& QStringList::operator=(QStringList&&)’ make[2]: *** [CMakeFiles/konverter.dir/build.make:130: CMakeFiles/konverter.dir/datatablewindow.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:84: CMakeFiles/konverter.dir/all] Error 2 make: *** [Makefile:91: all] Error 2
OpenPGP_signature
Description: OpenPGP digital signature