summaryrefslogtreecommitdiff
path: root/launcher/ui/instanceview/InstanceProxyModel.cpp
diff options
context:
space:
mode:
authorMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 17:36:40 +0300
committerMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 17:36:40 +0300
commit1d4bf6e8b1208383021e22f61d859e9b721c482d (patch)
tree21c8e0c4350d7c44d817243ebf409be625ea4f21 /launcher/ui/instanceview/InstanceProxyModel.cpp
parent38c57e163abad6216f7e0f44d401c362c5fd5da6 (diff)
downloadProject-Tick-1d4bf6e8b1208383021e22f61d859e9b721c482d.tar.gz
Project-Tick-1d4bf6e8b1208383021e22f61d859e9b721c482d.zip
NOISSUE reformat MeshMC to new clang format rules and fixed macOS portability issue and java find issue
Signed-off-by: Mehmet Samet Duman <yongdohyun@projecttick.org>
Diffstat (limited to 'launcher/ui/instanceview/InstanceProxyModel.cpp')
-rw-r--r--launcher/ui/instanceview/InstanceProxyModel.cpp84
1 files changed, 45 insertions, 39 deletions
diff --git a/launcher/ui/instanceview/InstanceProxyModel.cpp b/launcher/ui/instanceview/InstanceProxyModel.cpp
index 303cc4bb78..93de0231a1 100644
--- a/launcher/ui/instanceview/InstanceProxyModel.cpp
+++ b/launcher/ui/instanceview/InstanceProxyModel.cpp
@@ -17,7 +17,7 @@
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
- *
+ *
* This file incorporates work covered by the following copyright and
* permission notice:
*
@@ -45,50 +45,56 @@
#include <QDebug>
-InstanceProxyModel::InstanceProxyModel(QObject *parent) : QSortFilterProxyModel(parent) {
- m_naturalSort.setNumericMode(true);
- m_naturalSort.setCaseSensitivity(Qt::CaseSensitivity::CaseInsensitive);
- // FIXME: use loaded translation as source of locale instead, hook this up to translation changes
- m_naturalSort.setLocale(QLocale::system());
+InstanceProxyModel::InstanceProxyModel(QObject* parent)
+ : QSortFilterProxyModel(parent)
+{
+ m_naturalSort.setNumericMode(true);
+ m_naturalSort.setCaseSensitivity(Qt::CaseSensitivity::CaseInsensitive);
+ // FIXME: use loaded translation as source of locale instead, hook this up
+ // to translation changes
+ m_naturalSort.setLocale(QLocale::system());
}
-QVariant InstanceProxyModel::data(const QModelIndex & index, int role) const
+QVariant InstanceProxyModel::data(const QModelIndex& index, int role) const
{
- QVariant data = QSortFilterProxyModel::data(index, role);
- if(role == Qt::DecorationRole)
- {
- return QVariant(APPLICATION->icons()->getIcon(data.toString()));
- }
- return data;
+ QVariant data = QSortFilterProxyModel::data(index, role);
+ if (role == Qt::DecorationRole) {
+ return QVariant(APPLICATION->icons()->getIcon(data.toString()));
+ }
+ return data;
}
-bool InstanceProxyModel::lessThan(const QModelIndex &left, const QModelIndex &right) const {
- const QString leftCategory = left.data(InstanceViewRoles::GroupRole).toString();
- const QString rightCategory = right.data(InstanceViewRoles::GroupRole).toString();
- if (leftCategory == rightCategory) {
- return subSortLessThan(left, right);
- }
- else {
- // FIXME: real group sorting happens in InstanceView::updateGeometries(), see LocaleString
- auto result = leftCategory.localeAwareCompare(rightCategory);
- if(result == 0) {
- return subSortLessThan(left, right);
- }
- return result < 0;
- }
+bool InstanceProxyModel::lessThan(const QModelIndex& left,
+ const QModelIndex& right) const
+{
+ const QString leftCategory =
+ left.data(InstanceViewRoles::GroupRole).toString();
+ const QString rightCategory =
+ right.data(InstanceViewRoles::GroupRole).toString();
+ if (leftCategory == rightCategory) {
+ return subSortLessThan(left, right);
+ } else {
+ // FIXME: real group sorting happens in
+ // InstanceView::updateGeometries(), see LocaleString
+ auto result = leftCategory.localeAwareCompare(rightCategory);
+ if (result == 0) {
+ return subSortLessThan(left, right);
+ }
+ return result < 0;
+ }
}
-bool InstanceProxyModel::subSortLessThan(const QModelIndex &left, const QModelIndex &right) const
+bool InstanceProxyModel::subSortLessThan(const QModelIndex& left,
+ const QModelIndex& right) const
{
- BaseInstance *pdataLeft = static_cast<BaseInstance *>(left.internalPointer());
- BaseInstance *pdataRight = static_cast<BaseInstance *>(right.internalPointer());
- QString sortMode = APPLICATION->settings()->get("InstSortMode").toString();
- if (sortMode == "LastLaunch")
- {
- return pdataLeft->lastLaunch() > pdataRight->lastLaunch();
- }
- else
- {
- return m_naturalSort.compare(pdataLeft->name(), pdataRight->name()) < 0;
- }
+ BaseInstance* pdataLeft =
+ static_cast<BaseInstance*>(left.internalPointer());
+ BaseInstance* pdataRight =
+ static_cast<BaseInstance*>(right.internalPointer());
+ QString sortMode = APPLICATION->settings()->get("InstSortMode").toString();
+ if (sortMode == "LastLaunch") {
+ return pdataLeft->lastLaunch() > pdataRight->lastLaunch();
+ } else {
+ return m_naturalSort.compare(pdataLeft->name(), pdataRight->name()) < 0;
+ }
}