27#ifndef MYCOLUMNHEADER_H_
28#define MYCOLUMNHEADER_H_
30#include "ColumnIndex.h"
31#include "Utils/Library/Sortorder.h"
32#include "Utils/Pimpl.h"
50 ColumnHeader(ColumnIndex::IntegerType columnIndex,
bool switchable, VariableSortorder sortAsc,
51 VariableSortorder sortDesc,
52 int preferredWidth,
bool isStretchable =
false);
53 virtual QString hashPrefix()
const = 0;
58 virtual QString title()
const = 0;
62 bool isStretchable()
const;
63 bool isSwitchable()
const;
64 int defaultSize()
const;
66 [[nodiscard]] VariableSortorder sortorder(Qt::SortOrder sortOrder)
const;
68 ColumnIndex::IntegerType columnIndex()
const;
77 ColumnHeaderTrack(ColumnIndex::Track columnIndex,
bool switchable, TrackSortorder sortAsc,
78 TrackSortorder sortDesc,
79 int preferredWidth,
bool isStretchable =
false);
80 QString title()
const override;
83 QString hashPrefix()
const override;
92 ColumnHeaderAlbum(ColumnIndex::Album columnIndex,
bool switchable, AlbumSortorder sortAsc,
93 AlbumSortorder sortDesc,
94 int preferredWidth,
bool isStretchable =
false);
95 QString title()
const override;
98 QString hashPrefix()
const override;
107 ColumnHeaderArtist(ColumnIndex::Artist columnIndex,
bool switchable, ArtistSortorder sortAsc,
108 ArtistSortorder sortDesc,
109 int preferredWidth,
bool isStretchable =
false);
110 QString title()
const override;
113 QString hashPrefix()
const override;
116 using ColumnHeaderPtr = std::shared_ptr<ColumnHeader>;
Definition ColumnHeader.h:88
Definition ColumnHeader.h:103
Definition ColumnHeader.h:73
The ColumnHeader class.
Definition ColumnHeader.h:45
Definition EngineUtils.h:33