LCOV - code coverage report
Current view: top level - src/tags - field.hpp (source / functions) Hit Total Coverage
Test: coverage.info Lines: 2 2 100.0 %
Date: 2019-05-08 03:46:12 Functions: 1 1 100.0 %

          Line data    Source code
       1             : #pragma once
       2             : #ifndef FIELD_HPP
       3             : #define FIELD_HPP
       4             : #include <QSharedPointer>
       5             : 
       6             : #include <QVariant>
       7             : #include <QString>
       8             : #include <QVector>
       9             : #include <QImage>
      10             : 
      11             : #include "object.hpp"
      12             : 
      13             : namespace qtreports
      14             : {
      15             :     namespace detail
      16             :     {
      17             : 
      18             :         /*! @~russian
      19             :         @brief Класс, реализующий тэг <field>
      20             : 
      21             :         Класс, реализующий тэг <field>
      22             :         */
      23             :         class Field : public Object {
      24             : 
      25             :         public:
      26             :             Field();
      27             :             ~Field();
      28             : 
      29             :             /*! @~russian
      30             :             Устанавливает атрибут className
      31             :             @param[in] name Название класса
      32             :             */
      33             :             void            setClassName( const QString & name );
      34             : 
      35             :             /*! @~russian
      36             :             Возвращает атрибут className.
      37             :             */
      38             :             const QString   getClassName() const;
      39             : 
      40             :             /*! @~russian
      41             :             Устанавливает содержимое <field>
      42             :             @param[in] data Вектор, содержащие данные <field>
      43             :             */
      44             :             void            setData( const QVector< QVariant > & data );
      45             : 
      46             :             /*! @~russian
      47             :             Возвращает содержимое <field>
      48             :             @param[in] row Номер строки
      49             :             */
      50             :             QString         getData( int row );
      51             : 
      52             :             /*! @~russian
      53             :             Возвращает содержимое <field>. Шаблонный вариант.
      54             :             @param[in] row Номер строки
      55             :             */
      56             :             template < typename T1 >
      57          60 :             const T1 getData( int row )
      58             :             {
      59          60 :                 return m_data.value( row ).value< T1 >();
      60             :             }
      61             : 
      62             :             const QVariant getDataVar(int row);
      63             : 
      64             :             void setDataVar(int row, const QVariant & value);
      65             : 
      66             :             /*! @~russian
      67             :             Получить количество строк в <field>
      68             :             */
      69             :             int             getRowCount();
      70             : 
      71             :         private:
      72             :             QString                 m_className;
      73             :             QVector< QVariant >     m_data;
      74             : 
      75             :         };
      76             : 
      77             :         typedef QSharedPointer< Field > FieldPtr;
      78             :     }
      79             : }
      80             : 
      81             : #endif // FIELD_HPP

Generated by: LCOV version 1.14-2-gaa56a43