//
//     Copyright 2008 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2007 Jim Bublitz also apply

//                 Generated by twine

// This file is part of PyKDE4.

// PyKDE4 is free software; you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as
// published by the Free Software Foundation; either version 2.1 of
// the License, or (at your option) any later version.

// PyKDE4 is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.


class KRuler : QAbstractSlider
{
%TypeHeaderCode
#include <kruler.h>
%End


public:

    enum MetricStyle
    {
        Custom,
        Pixel,
        Inch,
        Millimetres,
        Centimetres,
        Metres
    };

    explicit                KRuler (QWidget* parent /TransferThis/ = 0);
    explicit                KRuler (Qt::Orientation orient, QWidget* parent /TransferThis/ = 0, Qt::WFlags f = 0);
                            KRuler (Qt::Orientation orient, int widgetWidth, QWidget* parent /TransferThis/ = 0, Qt::WFlags f = 0);
    void                    setMinValue (int);
    int                     minValue () const;
    void                    setMaxValue (int);
    int                     maxValue () const;
    void                    setTinyMarkDistance (int);
    int                     tinyMarkDistance () const;
    void                    setLittleMarkDistance (int);
    int                     littleMarkDistance () const;
    void                    setMediumMarkDistance (int);
    int                     mediumMarkDistance () const;
    void                    setBigMarkDistance (int);
    int                     bigMarkDistance () const;
    void                    setShowTinyMarks (bool);
    bool                    showTinyMarks () const;
    void                    setShowLittleMarks (bool);
    bool                    showLittleMarks () const;
    void                    setShowMediumMarks (bool);
    bool                    showMediumMarks () const;
    void                    setShowBigMarks (bool);
    bool                    showBigMarks () const;
    void                    setShowEndMarks (bool);
    bool                    showEndMarks () const;
    void                    setShowPointer (bool);
    bool                    showPointer () const;
    void                    setFrameStyle (int);
    void                    setShowEndLabel (bool);
    bool                    showEndLabel () const;
    void                    setEndLabel (const QString&);
    QString                 endLabel () const;
    void                    setRulerMetricStyle (KRuler::MetricStyle);
    void                    setPixelPerMark (double rate);
    double                  pixelPerMark () const;
    void                    setLength (int);
    int                     length () const;
    void                    setLengthFixed (bool fix);
    bool                    lengthFixed () const;
    void                    slideUp (int count = 1);
    void                    slideDown (int count = 1);
    void                    setOffset (int offset);
    int                     offset () const;
    int                     endOffset () const;
    void                    slotNewValue (int);
    void                    slotNewOffset (int);
    void                    slotEndOffset (int);

protected:
    virtual void            paintEvent (QPaintEvent*);
};   // KRuler


