mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Add "Tags" column in Desktop app's dive list view
Add DiveItem::displayTags helper method to return Tags as a QString New Tags column is by default inserted before "Photos" column by default disabled Signed-off-by: Jeremie Guichard <djebrest@gmail.com>
This commit is contained in:
parent
78986589f0
commit
12dc1889c7
4 changed files with 33 additions and 1 deletions
|
@ -1,3 +1,4 @@
|
||||||
|
- Desktop: Add Tags column in dive list view
|
||||||
- Desktop: revert change that inadvertantly broke applying GPS
|
- Desktop: revert change that inadvertantly broke applying GPS
|
||||||
coordinates to dives
|
coordinates to dives
|
||||||
- Map-widget: try to match the zoom level in Google Maps
|
- Map-widget: try to match the zoom level in Google Maps
|
||||||
|
|
|
@ -480,7 +480,8 @@ void DiveListView::reloadHeaderActions()
|
||||||
i == DiveTripModel::TOTALWEIGHT ||
|
i == DiveTripModel::TOTALWEIGHT ||
|
||||||
i == DiveTripModel::SUIT ||
|
i == DiveTripModel::SUIT ||
|
||||||
i == DiveTripModel::CYLINDER ||
|
i == DiveTripModel::CYLINDER ||
|
||||||
i == DiveTripModel::SAC);
|
i == DiveTripModel::SAC ||
|
||||||
|
i == DiveTripModel::TAGS);
|
||||||
bool shown = s.value(settingName, showHeaderFirstRun).toBool();
|
bool shown = s.value(settingName, showHeaderFirstRun).toBool();
|
||||||
a->setCheckable(true);
|
a->setCheckable(true);
|
||||||
a->setChecked(shown);
|
a->setChecked(shown);
|
||||||
|
|
|
@ -36,6 +36,7 @@ static QVariant dive_table_alignment(int column)
|
||||||
case DiveTripModel::SUIT:
|
case DiveTripModel::SUIT:
|
||||||
case DiveTripModel::CYLINDER:
|
case DiveTripModel::CYLINDER:
|
||||||
case DiveTripModel::GAS:
|
case DiveTripModel::GAS:
|
||||||
|
case DiveTripModel::TAGS:
|
||||||
case DiveTripModel::PHOTOS:
|
case DiveTripModel::PHOTOS:
|
||||||
case DiveTripModel::COUNTRY:
|
case DiveTripModel::COUNTRY:
|
||||||
case DiveTripModel::LOCATION:
|
case DiveTripModel::LOCATION:
|
||||||
|
@ -136,6 +137,9 @@ QVariant DiveItem::data(int column, int role) const
|
||||||
case MAXCNS:
|
case MAXCNS:
|
||||||
retVal = dive->maxcns;
|
retVal = dive->maxcns;
|
||||||
break;
|
break;
|
||||||
|
case TAGS:
|
||||||
|
retVal = displayTags();
|
||||||
|
break;
|
||||||
case PHOTOS:
|
case PHOTOS:
|
||||||
retVal = countPhotos(dive);
|
retVal = countPhotos(dive);
|
||||||
break;
|
break;
|
||||||
|
@ -186,6 +190,9 @@ QVariant DiveItem::data(int column, int role) const
|
||||||
else
|
else
|
||||||
retVal = dive->maxcns;
|
retVal = dive->maxcns;
|
||||||
break;
|
break;
|
||||||
|
case TAGS:
|
||||||
|
retVal = displayTags();
|
||||||
|
break;
|
||||||
case PHOTOS:
|
case PHOTOS:
|
||||||
break;
|
break;
|
||||||
case COUNTRY:
|
case COUNTRY:
|
||||||
|
@ -265,6 +272,9 @@ QVariant DiveItem::data(int column, int role) const
|
||||||
case MAXCNS:
|
case MAXCNS:
|
||||||
retVal = tr("Max. CNS");
|
retVal = tr("Max. CNS");
|
||||||
break;
|
break;
|
||||||
|
case TAGS:
|
||||||
|
retVal = tr("Tags");
|
||||||
|
break;
|
||||||
case PHOTOS:
|
case PHOTOS:
|
||||||
retVal = tr("Photos before/during/after dive");
|
retVal = tr("Photos before/during/after dive");
|
||||||
break;
|
break;
|
||||||
|
@ -409,6 +419,17 @@ QString DiveItem::displayWeightWithUnit() const
|
||||||
return weight_string(weight()) + ((get_units()->weight == units::KG) ? tr("kg") : tr("lbs"));
|
return weight_string(weight()) + ((get_units()->weight == units::KG) ? tr("kg") : tr("lbs"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QString DiveItem::displayTags() const
|
||||||
|
{
|
||||||
|
struct dive *dive = get_dive_by_uniq_id(diveId);
|
||||||
|
if (!dive->tag_list)
|
||||||
|
return QString();
|
||||||
|
|
||||||
|
char buf[1024];
|
||||||
|
taglist_get_tagstring(dive->tag_list, buf, 1024);
|
||||||
|
return QString(buf);
|
||||||
|
}
|
||||||
|
|
||||||
int DiveItem::weight() const
|
int DiveItem::weight() const
|
||||||
{
|
{
|
||||||
struct dive *dive = get_dive_by_uniq_id(diveId);
|
struct dive *dive = get_dive_by_uniq_id(diveId);
|
||||||
|
@ -498,6 +519,9 @@ QVariant DiveTripModel::headerData(int section, Qt::Orientation orientation, int
|
||||||
case MAXCNS:
|
case MAXCNS:
|
||||||
ret = tr("Max CNS");
|
ret = tr("Max CNS");
|
||||||
break;
|
break;
|
||||||
|
case TAGS:
|
||||||
|
ret = tr("Tags");
|
||||||
|
break;
|
||||||
case PHOTOS:
|
case PHOTOS:
|
||||||
ret = tr("Photos");
|
ret = tr("Photos");
|
||||||
break;
|
break;
|
||||||
|
@ -552,6 +576,9 @@ QVariant DiveTripModel::headerData(int section, Qt::Orientation orientation, int
|
||||||
case MAXCNS:
|
case MAXCNS:
|
||||||
ret = tr("Max CNS");
|
ret = tr("Max CNS");
|
||||||
break;
|
break;
|
||||||
|
case TAGS:
|
||||||
|
ret = tr("Tags");
|
||||||
|
break;
|
||||||
case PHOTOS:
|
case PHOTOS:
|
||||||
ret = tr("Photos before/during/after dive");
|
ret = tr("Photos before/during/after dive");
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -23,6 +23,7 @@ public:
|
||||||
SAC,
|
SAC,
|
||||||
OTU,
|
OTU,
|
||||||
MAXCNS,
|
MAXCNS,
|
||||||
|
TAGS,
|
||||||
PHOTOS,
|
PHOTOS,
|
||||||
COUNTRY,
|
COUNTRY,
|
||||||
LOCATION,
|
LOCATION,
|
||||||
|
@ -43,6 +44,7 @@ public:
|
||||||
QString displayWeightWithUnit() const;
|
QString displayWeightWithUnit() const;
|
||||||
QString displaySac() const;
|
QString displaySac() const;
|
||||||
QString displaySacWithUnit() const;
|
QString displaySacWithUnit() const;
|
||||||
|
QString displayTags() const;
|
||||||
int countPhotos(dive *dive) const;
|
int countPhotos(dive *dive) const;
|
||||||
int weight() const;
|
int weight() const;
|
||||||
QString icon_names[4];
|
QString icon_names[4];
|
||||||
|
@ -72,6 +74,7 @@ public:
|
||||||
SAC,
|
SAC,
|
||||||
OTU,
|
OTU,
|
||||||
MAXCNS,
|
MAXCNS,
|
||||||
|
TAGS,
|
||||||
PHOTOS,
|
PHOTOS,
|
||||||
COUNTRY,
|
COUNTRY,
|
||||||
LOCATION,
|
LOCATION,
|
||||||
|
|
Loading…
Add table
Reference in a new issue