~ubuntu-branches/ubuntu/maverick/digikam/maverick

« back to all changes in this revision

Viewing changes to libs/widgets/common/curveswidget.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Luka Renko
  • Date: 2009-03-17 23:07:56 UTC
  • mfrom: (1.2.20 upstream) (3.1.4 experimental)
  • Revision ID: james.westby@ubuntu.com-20090317230756-db5b8rqjwb2j35e5
Tags: 2:0.10.0-1ubuntu1
* Remaining changes to Debian (committed to Debian SVN):
  - Depends: kde-icons-oxygen dropped (included through kdelibs)
  - Recommends: kipi-plugins added (provides major functionality)
  - debian/digikamthemedesigner.manpage: add missing manpage
* Remaning change to Debian:
  - Section: devel for -dbg package (no debug in Jaunty)

Show diffs side-by-side

added added

removed removed

Lines of Context:
233
233
 
234
234
            for (int i = 0; i <= 8; i++)
235
235
            {
236
 
                int index = CLAMP(i * m_imageHistogram->getHistogramSegment()/8,
237
 
                                  0, m_imageHistogram->getHistogramSegment()-1);
 
236
                int index = CLAMP(i * m_imageHistogram->getHistogramSegments()/8,
 
237
                                  0, m_imageHistogram->getHistogramSegments()-1);
238
238
 
239
239
                d->curves->setCurvePoint(m_channelType, i * 2, 
240
240
                                         QPoint(index, d->curves->getCurveValue(m_channelType, index)));
428
428
        int    i, j;
429
429
        int    curveVal;
430
430
 
431
 
        i = (x       * histogram->getHistogramSegment()) / wWidth;
432
 
        j = ((x + 1) * histogram->getHistogramSegment()) / wWidth;
 
431
        i = (x       * histogram->getHistogramSegments()) / wWidth;
 
432
        j = ((x + 1) * histogram->getHistogramSegments()) / wWidth;
433
433
 
434
434
        curveVal = d->curves->getCurveValue(m_channelType, i);
435
435
 
493
493
        p1.save();
494
494
        p1.setRenderHint(QPainter::Antialiasing);
495
495
        p1.setPen(QPen(palette().color(QPalette::Active, QPalette::Link), 2, Qt::SolidLine));
496
 
        p1.drawLine(x - 1, wHeight - ((curvePrevVal * wHeight) / histogram->getHistogramSegment()),
497
 
                    x,     wHeight - ((curveVal * wHeight) / histogram->getHistogramSegment()));
 
496
        p1.drawLine(x - 1, wHeight - ((curvePrevVal * wHeight) / histogram->getHistogramSegments()),
 
497
                    x,     wHeight - ((curveVal * wHeight) / histogram->getHistogramSegments()));
498
498
 
499
499
        p1.restore();
500
500
        curvePrevVal = curveVal;
514
514
 
515
515
         if (curvePoint.x() >= 0)
516
516
         {
517
 
             p1.drawEllipse( ((curvePoint.x() * wWidth) / histogram->getHistogramSegment()) - 2,
518
 
                             wHeight - 2 - ((curvePoint.y() * wHeight) / histogram->getHistogramSegment()),
 
517
             p1.drawEllipse( ((curvePoint.x() * wWidth) / histogram->getHistogramSegments()) - 2,
 
518
                             wHeight - 2 - ((curvePoint.y() * wHeight) / histogram->getHistogramSegments()),
519
519
                             4, 4 );
520
520
         }
521
521
      }
577
577
 
578
578
        if (guidePos != -1)
579
579
        {
580
 
            int xGuide = (guidePos * wWidth) / histogram->getHistogramSegment();
 
580
            int xGuide = (guidePos * wWidth) / histogram->getHistogramSegments();
581
581
            p1.drawLine(xGuide, 0, xGuide, wHeight);
582
582
 
583
583
            QString string = i18n("x:%1",guidePos);
629
629
        return;
630
630
 
631
631
    int x = CLAMP((int)(e->pos().x() *
632
 
                       ((float)(m_imageHistogram->getHistogramSegment()-1) / (float)width())),
633
 
                    0, m_imageHistogram->getHistogramSegment()-1 );
 
632
                       ((float)(m_imageHistogram->getHistogramSegments()-1) / (float)width())),
 
633
                    0, m_imageHistogram->getHistogramSegments()-1 );
634
634
    int y = CLAMP((int)(e->pos().y() *
635
 
                       ((float)(m_imageHistogram->getHistogramSegment()-1) / (float)height())),
636
 
                    0, m_imageHistogram->getHistogramSegment()-1 );
 
635
                       ((float)(m_imageHistogram->getHistogramSegments()-1) / (float)height())),
 
636
                    0, m_imageHistogram->getHistogramSegments()-1 );
637
637
 
638
638
    distance = 65536;
639
639
 
651
651
        }
652
652
    }
653
653
 
654
 
    int delta = m_imageHistogram->getHistogramSegment()/16;
 
654
    int delta = m_imageHistogram->getHistogramSegments()/16;
655
655
    if (distance > 8)
656
656
        closest_point = (x + delta/2) / delta;
657
657
 
674
674
                }
675
675
            }
676
676
 
677
 
            d->rightMost = m_imageHistogram->getHistogramSegment();
 
677
            d->rightMost = m_imageHistogram->getHistogramSegments();
678
678
 
679
679
            for (i = closest_point + 1 ; i < 17 ; i++)
680
680
            {
687
687
 
688
688
            d->grabPoint = closest_point;
689
689
            d->curves->setCurvePoint(m_channelType, d->grabPoint,
690
 
                                     QPoint(x, m_imageHistogram->getHistogramSegment() - y));
 
690
                                     QPoint(x, m_imageHistogram->getHistogramSegments() - y));
691
691
 
692
692
            break;
693
693
        }
695
695
        case ImageCurves::CURVE_FREE:
696
696
        {
697
697
 
698
 
            d->curves->setCurveValue(m_channelType, x, m_imageHistogram->getHistogramSegment() - y);
 
698
            d->curves->setCurveValue(m_channelType, x, m_imageHistogram->getHistogramSegments() - y);
699
699
            d->grabPoint = x;
700
700
            d->last      = y;
701
701
            break;
732
732
   if (d->clearFlag == CurvesWidgetPriv::HistogramStarted)
733
733
      return;
734
734
 
735
 
   int x = CLAMP( (int)(e->pos().x()*((float)(m_imageHistogram->getHistogramSegment()-1)/(float)width())),
736
 
                  0, m_imageHistogram->getHistogramSegment()-1 );
737
 
   int y = CLAMP( (int)(e->pos().y()*((float)(m_imageHistogram->getHistogramSegment()-1)/(float)height())),
738
 
                  0, m_imageHistogram->getHistogramSegment()-1 );
 
735
   int x = CLAMP( (int)(e->pos().x()*((float)(m_imageHistogram->getHistogramSegments()-1)/(float)width())),
 
736
                  0, m_imageHistogram->getHistogramSegments()-1 );
 
737
   int y = CLAMP( (int)(e->pos().y()*((float)(m_imageHistogram->getHistogramSegments()-1)/(float)height())),
 
738
                  0, m_imageHistogram->getHistogramSegments()-1 );
739
739
 
740
740
   distance = 65536;
741
741
 
751
751
      }
752
752
   }
753
753
 
754
 
   int delta = m_imageHistogram->getHistogramSegment()/16;
 
754
   int delta = m_imageHistogram->getHistogramSegments()/16;
755
755
   if (distance > 8)
756
756
      closest_point = (x + delta/2) / delta;
757
757
 
780
780
                  d->grabPoint = closest_point;
781
781
 
782
782
               d->curves->setCurvePoint(m_channelType, d->grabPoint,
783
 
                                        QPoint(x, m_imageHistogram->getHistogramSegment()-1 - y));
 
783
                                        QPoint(x, m_imageHistogram->getHistogramSegments()-1 - y));
784
784
            }
785
785
 
786
786
            d->curves->curvesCalculateCurve(m_channelType);
813
813
           {
814
814
              for (i = x1 ; i <= x2 ; i++)
815
815
                 d->curves->setCurveValue(m_channelType, i,
816
 
                    m_imageHistogram->getHistogramSegment()-1 - (y1 + ((y2 - y1) * (i - x1)) / (x2 - x1)));
 
816
                    m_imageHistogram->getHistogramSegments()-1 - (y1 + ((y2 - y1) * (i - x1)) / (x2 - x1)));
817
817
           }
818
818
           else
819
819
           {
820
 
              d->curves->setCurveValue(m_channelType, x, m_imageHistogram->getHistogramSegment()-1 - y);
 
820
              d->curves->setCurveValue(m_channelType, x, m_imageHistogram->getHistogramSegments()-1 - y);
821
821
           }
822
822
 
823
823
           d->grabPoint = x;
831
831
   }
832
832
 
833
833
   d->xMouseOver = x;
834
 
   d->yMouseOver = m_imageHistogram->getHistogramSegment()-1 - y;
 
834
   d->yMouseOver = m_imageHistogram->getHistogramSegments()-1 - y;
835
835
   emit signalMouseMoved(d->xMouseOver, d->yMouseOver);
836
836
   repaint();
837
837
}