Diffstat (limited to 'libopie2/opiepim/private/opimsortvector.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiepim/private/opimsortvector.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libopie2/opiepim/private/opimsortvector.h b/libopie2/opiepim/private/opimsortvector.h index 6c21339..11a40ac 100644 --- a/libopie2/opiepim/private/opimsortvector.h +++ b/libopie2/opiepim/private/opimsortvector.h | |||
@@ -53,6 +53,9 @@ public: | |||
53 | protected: | 53 | protected: |
54 | int testString( const QString&, const QString& )const; | 54 | int testString( const QString&, const QString& )const; |
55 | int testDate( const QDate&, const QDate& )const; | 55 | int testDate( const QDate&, const QDate& )const; |
56 | int testTime( const QTime&, const QTime& )const; | ||
57 | int testDateTime( const QDateTime& left, | ||
58 | const QDateTime& right )const; | ||
56 | protected: | 59 | protected: |
57 | bool sortAscending()const; | 60 | bool sortAscending()const; |
58 | int sortOrder()const; | 61 | int sortOrder()const; |
@@ -120,6 +123,7 @@ inline int OPimSortVector<T>::testString( const QString& left, | |||
120 | return QString::compare( left, right ); | 123 | return QString::compare( left, right ); |
121 | } | 124 | } |
122 | 125 | ||
126 | |||
123 | template<class T> | 127 | template<class T> |
124 | inline int OPimSortVector<T>::testDate( const QDate& left, | 128 | inline int OPimSortVector<T>::testDate( const QDate& left, |
125 | const QDate& right )const { | 129 | const QDate& right )const { |
@@ -132,6 +136,36 @@ inline int OPimSortVector<T>::testDate( const QDate& left, | |||
132 | 136 | ||
133 | return ret; | 137 | return ret; |
134 | } | 138 | } |
139 | |||
140 | template<class T> | ||
141 | inline int OPimSortVector<T>::testTime( const QTime& left, | ||
142 | const QTime& right )const { | ||
143 | int ret = 0; | ||
144 | if ( !left .isValid() ) ret++; | ||
145 | if ( !right.isValid() ) ret--; | ||
146 | |||
147 | if ( left.isValid() && right.isValid() ){ | ||
148 | ret += left < right ? -1 : 1; | ||
149 | } | ||
150 | |||
151 | return ret; | ||
152 | } | ||
153 | |||
154 | template<class T> | ||
155 | inline int OPimSortVector<T>::testDateTime( const QDateTime& left, | ||
156 | const QDateTime& right )const { | ||
157 | int ret = 0; | ||
158 | if ( !left .isValid() ) ret++; | ||
159 | if ( !right.isValid() ) ret--; | ||
160 | |||
161 | if ( left.isValid() && right.isValid() ){ | ||
162 | ret += left < right ? -1 : 1; | ||
163 | } | ||
164 | |||
165 | return ret; | ||
166 | |||
167 | } | ||
168 | |||
135 | } | 169 | } |
136 | } | 170 | } |
137 | 171 | ||