From e2de64d6f1beb9e492daf5b886e19933c1fa41dd Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdemultimedia@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- noatun/modules/winskin/waSlider.h | 82 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 noatun/modules/winskin/waSlider.h (limited to 'noatun/modules/winskin/waSlider.h') diff --git a/noatun/modules/winskin/waSlider.h b/noatun/modules/winskin/waSlider.h new file mode 100644 index 00000000..0003afd2 --- /dev/null +++ b/noatun/modules/winskin/waSlider.h @@ -0,0 +1,82 @@ +/* + standard Slider for winamp Skin + Copyright (C) 1999 Martin Vogt + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation. + + For more information look at the file COPYRIGHT in this package + + */ + + + + +#ifndef __WASLIDER_H +#define __WASLIDER_H + +#include + +#include "waWidget.h" +#include "waButton.h" + +class WaSlider : public WaWidget { + Q_OBJECT + + public: + WaSlider(int sliderBarMapId, int sliderId, bool is_volume = false); + ~WaSlider(); + + void setRange(int min, int max); + + void setValue(int value); + int value() const { return currentValue; } + + void hideButton() { slider_visible = false; } + void showButton() { slider_visible = true; } + + void cancelDrag(); + + public slots: + void setPixmapSliderButtonDown(int pixId) { down_pixmap = pixId; } + void setPixmapSliderButtonUp(int pixId) { up_pixmap = pixId; } + void setPixmapSliderBar(int pixId); + + private: + void paintEvent(QPaintEvent *); + int pixel2Value(int xpos); + int value2Pixel(int value); + + int slider_x; + int slider_y; + int slider_width; + bool slider_visible; + + int up_pixmap; + int down_pixmap; + + int sliderBarId; + int sliderBarMapId; + + bool lDragging; + QPoint pressPoint; + + int currentValue; + + int minValue; + int maxValue; + + void mousePressEvent(QMouseEvent *e); + void mouseMoveEvent(QMouseEvent *e); + void mouseReleaseEvent(QMouseEvent *e); + + private slots: + void updateSliderPos(int value); + + signals: + void sliderPressed(); + void sliderReleased(); + void valueChanged(int); +}; +#endif -- cgit v1.2.1