swift
Loading...
Searching...
No Matches
aircrafticaolistmodel.cpp
1// SPDX-FileCopyrightText: Copyright (C) 2015 swift Project Community / Contributors
2// SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3
5
6#include <Qt>
7#include <QtGlobal>
8
10#include "gui/models/columns.h"
12#include "misc/db/datastore.h"
13#include "misc/timestampbased.h"
14
15using namespace swift::misc::aviation;
16
17namespace swift::gui::models
18{
20 : CListModelDbObjects("AircraftIcaoListModel", parent)
21 {
22 m_columns.addColumn(CColumn::standardString("id", CAircraftIcaoCode::IndexDbIntegerKey,
24 m_columns.addColumn(CColumn::standardString("ICAO", CAircraftIcaoCode::IndexAircraftDesignator));
25 m_columns.addColumn(CColumn::standardString("IATA", CAircraftIcaoCode::IndexIataCode));
26 m_columns.addColumn(
27 CColumn::standardValueObject("rank", CAircraftIcaoCode::IndexRank, CDefaultFormatter::alignRightVCenter()));
28 m_columns.addColumn(CColumn::standardString("manufacturer", CAircraftIcaoCode::IndexManufacturer));
29 m_columns.addColumn(CColumn::standardString("family", CAircraftIcaoCode::IndexFamily));
30 m_columns.addColumn(
31 CColumn::standardString("category", { CAircraftIcaoCode::IndexCategory, CAircraftCategory::IndexPath }));
32 // m_columns.addColumn(CColumn::standardString("ICAO desc.", "ICAO description",
33 // CAircraftIcaoCode::IndexModelDescription)); m_columns.addColumn(CColumn::standardString("IATA desc.", "IATA
34 // description", CAircraftIcaoCode::IndexModelIataDescription));
35 // m_columns.addColumn(CColumn::standardString("swift desc.", "swift description",
36 // CAircraftIcaoCode::IndexModelSwiftDescription));
37 m_columns.addColumn(
38 CColumn::standardString("description", "ICAO description", CAircraftIcaoCode::IndexCombinedDescription));
39 m_columns.addColumn(
40 CColumn::standardString("type", "combined type", CAircraftIcaoCode::IndexCombinedAircraftType));
41 m_columns.addColumn(CColumn::standardString("WTC", "wake turbulence category", CAircraftIcaoCode::IndexWtc));
42 m_columns.addColumn(CColumn("mil.", "military", CAircraftIcaoCode::IndexIsMilitary,
43 new CBoolIconFormatter("military", "civil")));
44 m_columns.addColumn(CColumn("VTOL", "vertical take-off and landing", CAircraftIcaoCode::IndexIsVtol,
45 new CBoolIconFormatter("VTOL", "non VTOL")));
46 m_columns.addColumn(
47 CColumn("leg.", "legacy", CAircraftIcaoCode::IndexIsLegacy, new CBoolIconFormatter("legacy", "operating")));
48 m_columns.addColumn(CColumn("real.", "real world aircraft", CAircraftIcaoCode::IndexIsRealworld,
49 new CBoolIconFormatter("real", "non real")));
50 m_columns.addColumn(CColumn::standardString("changed", CAircraftIcaoCode::IndexUtcTimestampFormattedYmdhms));
51
52 // default sort order
53 this->setSortColumnByPropertyIndex(CAircraftIcaoCode::IndexAircraftDesignator);
55 }
56} // namespace swift::gui::models
CAircraftIcaoCodeListModel(QObject *parent=nullptr)
Constructor.
static CColumn standardValueObject(const QString &headerName, const swift::misc::CPropertyIndex &propertyIndex, int alignment=CDefaultFormatter::alignDefault())
Get a standard value object formatted column.
Definition columns.cpp:46
static CColumn standardString(const QString &headerName, const swift::misc::CPropertyIndex &propertyIndex, int alignment=CDefaultFormatter::alignDefault())
Get a standard string object formatted column.
Definition columns.cpp:57
static int alignRightVCenter()
Align right/vertically centered.
virtual bool setSortColumnByPropertyIndex(const swift::misc::CPropertyIndex &propertyIndex)
Set column for sorting.
QModelIndex parent(const QModelIndex &child) const final
Models to be used with views, mainly QTableView.
QObject(QObject *parent)
AscendingOrder