chore: 格式化ElaWidgetTools代码
This commit is contained in:
@@ -1,115 +1,80 @@
|
||||
#include "ElaCalendarModel.h"
|
||||
|
||||
ElaCalendarModel::ElaCalendarModel(QObject* parent)
|
||||
: QAbstractListModel{parent}
|
||||
{
|
||||
ElaCalendarModel::ElaCalendarModel(QObject *parent) : QAbstractListModel{parent} {
|
||||
_pMinimumDate.setDate(1924, 1, 1);
|
||||
_pMaximumDate.setDate(2124, 12, 31);
|
||||
_initRowCount();
|
||||
}
|
||||
|
||||
ElaCalendarModel::~ElaCalendarModel()
|
||||
{
|
||||
}
|
||||
ElaCalendarModel::~ElaCalendarModel() {}
|
||||
|
||||
void ElaCalendarModel::setMinimumDate(QDate minimudate)
|
||||
{
|
||||
void ElaCalendarModel::setMinimumDate(QDate minimudate) {
|
||||
_pMinimumDate = minimudate;
|
||||
_initRowCount();
|
||||
}
|
||||
|
||||
QDate ElaCalendarModel::getMinimumDate() const
|
||||
{
|
||||
return _pMinimumDate;
|
||||
}
|
||||
QDate ElaCalendarModel::getMinimumDate() const { return _pMinimumDate; }
|
||||
|
||||
void ElaCalendarModel::setMaximumDate(QDate maximumDate)
|
||||
{
|
||||
void ElaCalendarModel::setMaximumDate(QDate maximumDate) {
|
||||
_pMaximumDate = maximumDate;
|
||||
_initRowCount();
|
||||
}
|
||||
|
||||
QDate ElaCalendarModel::getMaximumDate() const
|
||||
{
|
||||
return _pMaximumDate;
|
||||
}
|
||||
QDate ElaCalendarModel::getMaximumDate() const { return _pMaximumDate; }
|
||||
|
||||
void ElaCalendarModel::setDisplayMode(ElaCalendarType displayMode)
|
||||
{
|
||||
void ElaCalendarModel::setDisplayMode(ElaCalendarType displayMode) {
|
||||
beginResetModel();
|
||||
_displayMode = displayMode;
|
||||
endResetModel();
|
||||
Q_EMIT displayModeChanged();
|
||||
}
|
||||
|
||||
ElaCalendarType ElaCalendarModel::getDisplayMode() const
|
||||
{
|
||||
return _displayMode;
|
||||
}
|
||||
ElaCalendarType ElaCalendarModel::getDisplayMode() const { return _displayMode; }
|
||||
|
||||
QModelIndex ElaCalendarModel::getIndexFromDate(QDate date)
|
||||
{
|
||||
switch (_displayMode)
|
||||
{
|
||||
case YearMode:
|
||||
{
|
||||
QModelIndex ElaCalendarModel::getIndexFromDate(QDate date) {
|
||||
switch (_displayMode) {
|
||||
case YearMode: {
|
||||
return this->index(date.year() - _pMinimumDate.year());
|
||||
}
|
||||
case MonthMode:
|
||||
{
|
||||
case MonthMode: {
|
||||
return this->index((date.year() - _pMinimumDate.year()) * 12 + date.month() - 1);
|
||||
}
|
||||
case DayMode:
|
||||
{
|
||||
case DayMode: {
|
||||
return this->index(_pMinimumDate.daysTo(date) + _offset);
|
||||
}
|
||||
}
|
||||
return QModelIndex();
|
||||
}
|
||||
|
||||
QDate ElaCalendarModel::getDateFromIndex(const QModelIndex& index) const
|
||||
{
|
||||
if (!index.isValid() || index.row() < _offset)
|
||||
{
|
||||
QDate ElaCalendarModel::getDateFromIndex(const QModelIndex &index) const {
|
||||
if (!index.isValid() || index.row() < _offset) {
|
||||
return QDate();
|
||||
}
|
||||
return _pMinimumDate.addDays(index.row() - _offset);
|
||||
}
|
||||
|
||||
QVariant ElaCalendarModel::data(const QModelIndex& index, int role) const
|
||||
{
|
||||
if (role == Qt::UserRole)
|
||||
{
|
||||
switch (_displayMode)
|
||||
{
|
||||
case YearMode:
|
||||
{
|
||||
QVariant ElaCalendarModel::data(const QModelIndex &index, int role) const {
|
||||
if (role == Qt::UserRole) {
|
||||
switch (_displayMode) {
|
||||
case YearMode: {
|
||||
return QVariant::fromValue<ElaCalendarData>(ElaCalendarData(_pMinimumDate.year() + index.row(), 1, 1));
|
||||
}
|
||||
case MonthMode:
|
||||
{
|
||||
int year = _pMinimumDate.year() + index.row() / 12;
|
||||
case MonthMode: {
|
||||
int year = _pMinimumDate.year() + index.row() / 12;
|
||||
int month = index.row() % 12 + 1;
|
||||
if (month == 1)
|
||||
{
|
||||
if (month == 1) {
|
||||
return QVariant::fromValue<ElaCalendarData>(ElaCalendarData(year, month, 1, QString::number(year)));
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
return QVariant::fromValue<ElaCalendarData>(ElaCalendarData(_pMinimumDate.year() + index.row() / 12, month, 1));
|
||||
}
|
||||
}
|
||||
case DayMode:
|
||||
{
|
||||
if (index.row() >= _offset)
|
||||
{
|
||||
case DayMode: {
|
||||
if (index.row() >= _offset) {
|
||||
QDate date = getDateFromIndex(index);
|
||||
if (date.day() == 1)
|
||||
{
|
||||
return QVariant::fromValue<ElaCalendarData>(ElaCalendarData(date.year(), date.month(), date.day(), QString("%1月").arg(date.month())));
|
||||
}
|
||||
else
|
||||
{
|
||||
if (date.day() == 1) {
|
||||
return QVariant::fromValue<ElaCalendarData>(
|
||||
ElaCalendarData(date.year(), date.month(), date.day(), QString("%1月").arg(date.month())));
|
||||
} else {
|
||||
return QVariant::fromValue<ElaCalendarData>(ElaCalendarData(date.year(), date.month(), date.day()));
|
||||
}
|
||||
}
|
||||
@@ -119,34 +84,25 @@ QVariant ElaCalendarModel::data(const QModelIndex& index, int role) const
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
int ElaCalendarModel::rowCount(const QModelIndex& parent) const
|
||||
{
|
||||
switch (_displayMode)
|
||||
{
|
||||
case YearMode:
|
||||
{
|
||||
int ElaCalendarModel::rowCount(const QModelIndex &parent) const {
|
||||
switch (_displayMode) {
|
||||
case YearMode: {
|
||||
return _pMaximumDate.year() - _pMinimumDate.year() + 1;
|
||||
}
|
||||
case MonthMode:
|
||||
{
|
||||
case MonthMode: {
|
||||
return (_pMaximumDate.year() - _pMinimumDate.year() + 1) * 12;
|
||||
}
|
||||
case DayMode:
|
||||
{
|
||||
case DayMode: {
|
||||
return _dayRowCount;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ElaCalendarModel::_initRowCount()
|
||||
{
|
||||
void ElaCalendarModel::_initRowCount() {
|
||||
_dayRowCount = _pMinimumDate.daysTo(_pMaximumDate);
|
||||
_offset = _pMinimumDate.dayOfWeek();
|
||||
_offset = _pMinimumDate.dayOfWeek();
|
||||
_dayRowCount += _offset + 1;
|
||||
}
|
||||
|
||||
int ElaCalendarModel::_getCurrentDay(int row) const
|
||||
{
|
||||
return _pMinimumDate.addDays(row - _offset).day();
|
||||
}
|
||||
int ElaCalendarModel::_getCurrentDay(int row) const { return _pMinimumDate.addDays(row - _offset).day(); }
|
||||
|
||||
Reference in New Issue
Block a user