| 115 | } |
| 116 | |
| 117 | void Overview::drawColumn(QPainter& p, e_OverviewMode eOverviewMode, qint32 x, qint32 w, qint32 h, qint32 nofLines) |
| 118 | { |
| 119 | p.setPen(Qt::black); |
| 120 | p.drawLine(x, 0, x, h); |
| 121 | |
| 122 | if(nofLines == 0) return; |
| 123 | |
| 124 | qint32 line = 0; |
| 125 | qint32 oldY = 0; |
| 126 | qint32 oldConflictY = -1; |
| 127 | qint32 wrapLineIdx = 0; |
| 128 | Diff3LineList::const_iterator i; |
| 129 | |
| 130 | for(i = m_pDiff3LineList->begin(); i != m_pDiff3LineList->end();) |
| 131 | { |
| 132 | const Diff3Line& d3l = *i; |
| 133 | qint32 y = h * (line + 1) / nofLines; |
| 134 | MergeBlock lMergeBlock; |
| 135 | e_MergeDetails md; |
| 136 | bool bConflict; |
| 137 | bool bLineRemoved; |
| 138 | |
| 139 | lMergeBlock.mergeOneLine(d3l, bLineRemoved, !KDiff3App::isTripleDiff()); |
| 140 | md = lMergeBlock.details(); |
| 141 | bConflict = lMergeBlock.isConflict(); |
| 142 | |
| 143 | QColor c = gOptions->backgroundColor(); |
| 144 | bool bWhiteSpaceChange = false; |
| 145 | //if( bConflict ) c=gOptions->conflictColor(); |
| 146 | //else |
| 147 | switch(eOverviewMode) |
| 148 | { |
| 149 | case e_OverviewMode::eOMNormal: |
| 150 | switch(md) |
| 151 | { |
| 152 | case e_MergeDetails::eDefault: |
| 153 | case e_MergeDetails::eNoChange: |
| 154 | c = gOptions->backgroundColor(); |
| 155 | break; |
| 156 | |
| 157 | case e_MergeDetails::eBAdded: |
| 158 | case e_MergeDetails::eBDeleted: |
| 159 | case e_MergeDetails::eBChanged: |
| 160 | c = bConflict ? gOptions->conflictColor() : gOptions->bColor(); |
| 161 | bWhiteSpaceChange = d3l.isEqualAB() || (d3l.isWhiteLine(e_SrcSelector::A) && d3l.isWhiteLine(e_SrcSelector::B)); |
| 162 | break; |
| 163 | |
| 164 | case e_MergeDetails::eCAdded: |
| 165 | case e_MergeDetails::eCDeleted: |
| 166 | case e_MergeDetails::eCChanged: |
| 167 | bWhiteSpaceChange = d3l.isEqualAC() || (d3l.isWhiteLine(e_SrcSelector::A) && d3l.isWhiteLine(e_SrcSelector::C)); |
| 168 | c = bConflict ? gOptions->conflictColor() : gOptions->cColor(); |
| 169 | break; |
| 170 | |
| 171 | case e_MergeDetails::eBCChanged: // conflict |
| 172 | case e_MergeDetails::eBCChangedAndEqual: // possible conflict |
| 173 | case e_MergeDetails::eBCDeleted: // possible conflict |
| 174 | case e_MergeDetails::eBChanged_CDeleted: // conflict |
nothing calls this directly
no test coverage detected