summaryrefslogtreecommitdiff
path: root/libopie/ocolorbutton.cpp
Side-by-side diff
Diffstat (limited to 'libopie/ocolorbutton.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/ocolorbutton.cpp45
1 files changed, 33 insertions, 12 deletions
diff --git a/libopie/ocolorbutton.cpp b/libopie/ocolorbutton.cpp
index ddb6c4f..113a77a 100644
--- a/libopie/ocolorbutton.cpp
+++ b/libopie/ocolorbutton.cpp
@@ -36,8 +36,16 @@
-class OColorButtonPrivate {
-public:
- QPopupMenu *m_menu;
- QColor m_color;
+struct OColorButtonPrivate {
+ QPopupMenu *m_menu;
+ QColor m_color;
};
+
+/**
+ * This concstructs a Color Button with @param color as the start color
+ * It'll use a OColorPopupMenu internally
+ *
+ * @param parent The parent of the Color Button
+ * @param color The color from where to start on
+ * @param name @see QObject
+ */
OColorButton::OColorButton ( QWidget *parent, const QColor &color, const char *name )
@@ -47,3 +55,3 @@ OColorButton::OColorButton ( QWidget *parent, const QColor &color, const char *n
- d-> m_menu = new ColorPopupMenu ( color, 0, 0 );
+ d-> m_menu = new OColorPopupMenu ( color, 0, 0 );
setPopup ( d-> m_menu );
@@ -59,2 +67,5 @@ OColorButton::OColorButton ( QWidget *parent, const QColor &color, const char *n
+/**
+ * This destructs the object
+ */
OColorButton::~OColorButton ( )
@@ -64,2 +75,5 @@ OColorButton::~OColorButton ( )
+/**
+ * @return Returns the current color of the button
+ */
QColor OColorButton::color ( ) const
@@ -69,2 +83,6 @@ QColor OColorButton::color ( ) const
+/**
+ * This method sets the color of the button
+ * @param c The color to be set.
+ */
void OColorButton::setColor ( const QColor &c )
@@ -74,2 +92,5 @@ void OColorButton::setColor ( const QColor &c )
+/**
+ * @internal
+ */
void OColorButton::updateColor ( const QColor &c )
@@ -77,15 +98,15 @@ void OColorButton::updateColor ( const QColor &c )
d-> m_color = c;
-
+
QImage img ( 16, 16, 32 );
img. fill ( 0 );
-
+
int r, g, b;
c. rgb ( &r, &g, &b );
-
+
int w = img. width ( );
int h = img. height ( );
-
+
int dx = w * 20 / 100; // 15%
int dy = h * 20 / 100;
-
+
for ( int y = 0; y < h; y++ ) {
@@ -102,3 +123,3 @@ void OColorButton::updateColor ( const QColor &c )
alpha *= ( double ( h - y ) / dy );
-
+
int a = int ( alpha * 255.0 );
@@ -116,3 +137,3 @@ void OColorButton::updateColor ( const QColor &c )
pix. convertFromImage ( img );
- setPixmap ( pix );
+ setPixmap ( pix );