[PATCH 1/2] qt-models: remove obsolete printer related classes

Tomaz Canabrava tcanabrava at kde.org
Mon Nov 9 10:46:54 PST 2015


Removed Obsolete Code <3
Music to my ears.

On Mon, Nov 9, 2015 at 4:42 PM, Lubomir I. Ivanov <neolit123 at gmail.com>
wrote:

> From: "Lubomir I. Ivanov" <neolit123 at gmail.com>
>
> The profileprintmodel.cpp/.h and the
> tableprintmode.cpp/.h pairs are obsolete.
>
> The print layouting is now handled via the Grantlee library
> and HTML.
>
> Signed-off-by: Lubomir I. Ivanov <neolit123 at gmail.com>
> ---
>  qt-models/CMakeLists.txt        |   4 +-
>  qt-models/profileprintmodel.cpp | 157
> ----------------------------------------
>  qt-models/profileprintmodel.h   |  26 -------
>  qt-models/tableprintmodel.cpp   | 127 --------------------------------
>  qt-models/tableprintmodel.h     |  45 ------------
>  5 files changed, 1 insertion(+), 358 deletions(-)
>  delete mode 100644 qt-models/profileprintmodel.cpp
>  delete mode 100644 qt-models/profileprintmodel.h
>  delete mode 100644 qt-models/tableprintmodel.cpp
>  delete mode 100644 qt-models/tableprintmodel.h
>
> diff --git a/qt-models/CMakeLists.txt b/qt-models/CMakeLists.txt
> index c9bcf5c..c35ca43 100644
> --- a/qt-models/CMakeLists.txt
> +++ b/qt-models/CMakeLists.txt
> @@ -11,12 +11,10 @@ set(SUBSURFACE_MODELS_LIB_SRCS
>         weightmodel.cpp
>         divecomputermodel.cpp
>         treemodel.cpp
> -       tableprintmodel.cpp
>         yearlystatisticsmodel.cpp
>         divetripmodel.cpp
>         divecomputerextradatamodel.cpp
>         completionmodels.cpp
> -       profileprintmodel.cpp
>         divepicturemodel.cpp
>         diveplotdatamodel.cpp
>         divelocationmodel.cpp
> @@ -26,4 +24,4 @@ set(SUBSURFACE_MODELS_LIB_SRCS
>
>  source_group("Subsurface Models" FILES ${SUBSURFACE_MODELS})
>  add_library(subsurface_models STATIC ${SUBSURFACE_MODELS_LIB_SRCS})
> -target_link_libraries(subsurface_models ${QT_LIBRARIES})
> \ No newline at end of file
> +target_link_libraries(subsurface_models ${QT_LIBRARIES})
> diff --git a/qt-models/profileprintmodel.cpp
> b/qt-models/profileprintmodel.cpp
> deleted file mode 100644
> index 1d01f6a..0000000
> --- a/qt-models/profileprintmodel.cpp
> +++ /dev/null
> @@ -1,157 +0,0 @@
> -#include "profileprintmodel.h"
> -#include "metrics.h"
> -#include "dive.h"
> -#include "divetripmodel.h"
> -#include "helpers.h"
> -
> -ProfilePrintModel::ProfilePrintModel(QObject *parent)
> -{
> -       fontSize = 12.0;
> -}
> -
> -void ProfilePrintModel::setDive(struct dive *divePtr)
> -{
> -       diveId = divePtr->id;
> -       // reset();
> -}
> -
> -void ProfilePrintModel::setFontsize(double size)
> -{
> -       fontSize = size;
> -}
> -
> -int ProfilePrintModel::rowCount(const QModelIndex &parent) const
> -{
> -       return 12;
> -}
> -
> -int ProfilePrintModel::columnCount(const QModelIndex &parent) const
> -{
> -       return 5;
> -}
> -
> -QVariant ProfilePrintModel::data(const QModelIndex &index, int role) const
> -{
> -       const int row = index.row();
> -       const int col = index.column();
> -
> -       switch (role) {
> -       case Qt::DisplayRole: {
> -               struct dive *dive = get_dive_by_uniq_id(diveId);
> -               struct DiveItem di;
> -               di.diveId = diveId;
> -
> -               const QString unknown = tr("unknown");
> -
> -               // dive# + date, depth, location, duration
> -               if (row == 0) {
> -                       if (col == 0)
> -                               return tr("Dive #%1 -
> %2").arg(dive->number).arg(di.displayDate());
> -                       if (col == 3) {
> -                               QString unit = (get_units()->length ==
> units::METERS) ? "m" : "ft";
> -                               return tr("Max depth: %1
> %2").arg(di.displayDepth()).arg(unit);
> -                       }
> -               }
> -               if (row == 1) {
> -                       if (col == 0)
> -                               return QString(get_dive_location(dive));
> -                       if (col == 3)
> -                               return QString(tr("Duration: %1
> min")).arg(di.displayDuration());
> -               }
> -               // headings
> -               if (row == 2) {
> -                       if (col == 0)
> -                               return tr("Gas used:");
> -                       if (col == 2)
> -                               return tr("Tags:");
> -                       if (col == 3)
> -                               return tr("SAC:");
> -                       if (col == 4)
> -                               return tr("Weights:");
> -               }
> -               // notes
> -               if (col == 0) {
> -                       if (row == 6)
> -                               return tr("Notes:");
> -                       if (row == 7)
> -                               return QString(dive->notes);
> -               }
> -               // more headings
> -               if (row == 4) {
> -                       if (col == 0)
> -                               return tr("Divemaster:");
> -                       if (col == 1)
> -                               return tr("Buddy:");
> -                       if (col == 2)
> -                               return tr("Suit:");
> -                       if (col == 3)
> -                               return tr("Viz:");
> -                       if (col == 4)
> -                               return tr("Rating:");
> -               }
> -               // values for gas, sac, etc...
> -               if (row == 3) {
> -                       if (col == 0) {
> -                               int added = 0;
> -                               QString gas, gases;
> -                               for (int i = 0; i < MAX_CYLINDERS; i++) {
> -                                       if (!is_cylinder_used(dive, i))
> -                                               continue;
> -                                       gas =
> dive->cylinder[i].type.description;
> -                                       gas += QString(!gas.isEmpty() ? "
> " : "") + gasname(&dive->cylinder[i].gasmix);
> -                                       // if has a description and if
> such gas is not already present
> -                                       if (!gas.isEmpty() &&
> gases.indexOf(gas) == -1) {
> -                                               if (added > 0)
> -                                                       gases += QString("
> / ");
> -                                               gases += gas;
> -                                               added++;
> -                                       }
> -                               }
> -                               return gases;
> -                       }
> -                       if (col == 2) {
> -                               char buffer[256];
> -                               taglist_get_tagstring(dive->tag_list,
> buffer, 256);
> -                               return QString(buffer);
> -                       }
> -                       if (col == 3)
> -                               return di.displaySac();
> -                       if (col == 4) {
> -                               weight_t tw = { total_weight(dive) };
> -                               return get_weight_string(tw, true);
> -                       }
> -               }
> -               // values for DM, buddy, suit, etc...
> -               if (row == 5) {
> -                       if (col == 0)
> -                               return QString(dive->divemaster);
> -                       if (col == 1)
> -                               return QString(dive->buddy);
> -                       if (col == 2)
> -                               return QString(dive->suit);
> -                       if (col == 3)
> -                               return (dive->visibility) ?
> QString::number(dive->visibility).append(" / 5") : QString();
> -                       if (col == 4)
> -                               return (dive->rating) ?
> QString::number(dive->rating).append(" / 5") : QString();
> -               }
> -               return QString();
> -       }
> -       case Qt::FontRole: {
> -               QFont font;
> -               font.setPointSizeF(fontSize);
> -               if (row == 0 && col == 0) {
> -                       font.setBold(true);
> -               }
> -               return QVariant::fromValue(font);
> -       }
> -       case Qt::TextAlignmentRole: {
> -               // everything is aligned to the left
> -               unsigned int align = Qt::AlignLeft;
> -               // align depth and duration right
> -               if (row < 2 && col == 4)
> -                       align = Qt::AlignRight | Qt::AlignVCenter;
> -               return QVariant::fromValue(align);
> -       }
> -       } // switch (role)
> -       return QVariant();
> -}
> diff --git a/qt-models/profileprintmodel.h b/qt-models/profileprintmodel.h
> deleted file mode 100644
> index b15f2df..0000000
> --- a/qt-models/profileprintmodel.h
> +++ /dev/null
> @@ -1,26 +0,0 @@
> -#ifndef PROFILEPRINTMODEL_H
> -#define PROFILEPRINTMODEL_H
> -
> -#include <QAbstractTableModel>
> -
> -/* ProfilePrintModel:
> - * this model is used when printing a data table under a profile. it
> requires
> - * some exact usage of setSpan(..) on the target QTableView widget.
> - */
> -class ProfilePrintModel : public QAbstractTableModel {
> -       Q_OBJECT
> -
> -private:
> -       int diveId;
> -       double fontSize;
> -
> -public:
> -       ProfilePrintModel(QObject *parent = 0);
> -       int rowCount(const QModelIndex &parent = QModelIndex()) const;
> -       int columnCount(const QModelIndex &parent = QModelIndex()) const;
> -       QVariant data(const QModelIndex &index, int role =
> Qt::DisplayRole) const;
> -       void setDive(struct dive *divePtr);
> -       void setFontsize(double size);
> -};
> -
> -#endif
> \ No newline at end of file
> diff --git a/qt-models/tableprintmodel.cpp b/qt-models/tableprintmodel.cpp
> deleted file mode 100644
> index c3ed3c1..0000000
> --- a/qt-models/tableprintmodel.cpp
> +++ /dev/null
> @@ -1,127 +0,0 @@
> -#include "tableprintmodel.h"
> -#include "metrics.h"
> -#include "color.h"
> -
> -TablePrintModel::TablePrintModel()
> -{
> -       columns = 7;
> -       rows = 0;
> -}
> -
> -TablePrintModel::~TablePrintModel()
> -{
> -       for (int i = 0; i < list.size(); i++)
> -               delete list.at(i);
> -}
> -
> -void TablePrintModel::insertRow(int index)
> -{
> -       struct TablePrintItem *item = new struct TablePrintItem();
> -       item->colorBackground = 0xffffffff;
> -       if (index == -1) {
> -               beginInsertRows(QModelIndex(), rows, rows);
> -               list.append(item);
> -       } else {
> -               beginInsertRows(QModelIndex(), index, index);
> -               list.insert(index, item);
> -       }
> -       endInsertRows();
> -       rows++;
> -}
> -
> -void TablePrintModel::callReset()
> -{
> -       beginResetModel();
> -       endResetModel();
> -}
> -
> -QVariant TablePrintModel::data(const QModelIndex &index, int role) const
> -{
> -       if (!index.isValid())
> -               return QVariant();
> -       if (role == Qt::BackgroundRole)
> -               return QColor(list.at(index.row())->colorBackground);
> -       if (role == Qt::DisplayRole)
> -               switch (index.column()) {
> -               case 0:
> -                       return list.at(index.row())->number;
> -               case 1:
> -                       return list.at(index.row())->date;
> -               case 2:
> -                       return list.at(index.row())->depth;
> -               case 3:
> -                       return list.at(index.row())->duration;
> -               case 4:
> -                       return list.at(index.row())->divemaster;
> -               case 5:
> -                       return list.at(index.row())->buddy;
> -               case 6:
> -                       return list.at(index.row())->location;
> -               }
> -       if (role == Qt::FontRole) {
> -               QFont font;
> -               font.setPointSizeF(7.5);
> -               if (index.row() == 0 && index.column() == 0) {
> -                       font.setBold(true);
> -               }
> -               return QVariant::fromValue(font);
> -       }
> -       return QVariant();
> -}
> -
> -bool TablePrintModel::setData(const QModelIndex &index, const QVariant
> &value, int role)
> -{
> -       if (index.isValid()) {
> -               if (role == Qt::DisplayRole) {
> -                       switch (index.column()) {
> -                       case 0:
> -                               list.at(index.row())->number =
> value.toString();
> -                       case 1:
> -                               list.at(index.row())->date =
> value.toString();
> -                       case 2:
> -                               list.at(index.row())->depth =
> value.toString();
> -                       case 3:
> -                               list.at(index.row())->duration =
> value.toString();
> -                       case 4:
> -                               list.at(index.row())->divemaster =
> value.toString();
> -                       case 5:
> -                               list.at(index.row())->buddy =
> value.toString();
> -                       case 6: {
> -                               /* truncate if there are more than N lines
> of text,
> -                                * we don't want a row to be larger that a
> single page! */
> -                               QString s = value.toString();
> -                               const int maxLines = 15;
> -                               int count = 0;
> -                               for (int i = 0; i < s.length(); i++) {
> -                                       if (s.at(i) != QChar('\n'))
> -                                               continue;
> -                                       count++;
> -                                       if (count > maxLines) {
> -                                               s = s.left(i - 1);
> -                                               break;
> -                                       }
> -                               }
> -                               list.at(index.row())->location = s;
> -                       }
> -                       }
> -                       return true;
> -               }
> -               if (role == Qt::BackgroundRole) {
> -                       list.at(index.row())->colorBackground =
> value.value<unsigned int>();
> -                       return true;
> -               }
> -       }
> -       return false;
> -}
> -
> -int TablePrintModel::rowCount(const QModelIndex &parent) const
> -{
> -       Q_UNUSED(parent);
> -       return rows;
> -}
> -
> -int TablePrintModel::columnCount(const QModelIndex &parent) const
> -{
> -       Q_UNUSED(parent);
> -       return columns;
> -}
> diff --git a/qt-models/tableprintmodel.h b/qt-models/tableprintmodel.h
> deleted file mode 100644
> index 9263d10..0000000
> --- a/qt-models/tableprintmodel.h
> +++ /dev/null
> @@ -1,45 +0,0 @@
> -#ifndef TABLEPRINTMODEL_H
> -#define TABLEPRINTMODEL_H
> -
> -#include <QAbstractTableModel>
> -
> -/* TablePrintModel:
> - * for now we use a blank table model with row items TablePrintItem.
> - * these are pretty much the same as DiveItem, but have color
> - * properties, as well. perhaps later one a more unified model has to be
> - * considered, but the current TablePrintModel idea has to be extended
> - * to support variadic column lists and column list orders that can
> - * be controlled by the user.
> - */
> -struct TablePrintItem {
> -       QString number;
> -       QString date;
> -       QString depth;
> -       QString duration;
> -       QString divemaster;
> -       QString buddy;
> -       QString location;
> -       unsigned int colorBackground;
> -};
> -
> -class TablePrintModel : public QAbstractTableModel {
> -       Q_OBJECT
> -
> -private:
> -       QList<TablePrintItem *> list;
> -
> -public:
> -       ~TablePrintModel();
> -       TablePrintModel();
> -
> -       int rows, columns;
> -       void insertRow(int index = -1);
> -       void callReset();
> -
> -       QVariant data(const QModelIndex &index, int role) const;
> -       bool setData(const QModelIndex &index, const QVariant &value, int
> role);
> -       int rowCount(const QModelIndex &parent) const;
> -       int columnCount(const QModelIndex &parent) const;
> -};
> -
> -#endif
> --
> 1.7.11.msysgit.0
>
> _______________________________________________
> subsurface mailing list
> subsurface at subsurface-divelog.org
> http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.subsurface-divelog.org/pipermail/subsurface/attachments/20151109/2d9400cc/attachment-0001.html>


More information about the subsurface mailing list