summaryrefslogtreecommitdiffstats
path: root/kscreensaver/kdesavers/sspreviewarea.h
diff options
context:
space:
mode:
Diffstat (limited to 'kscreensaver/kdesavers/sspreviewarea.h')
-rw-r--r--kscreensaver/kdesavers/sspreviewarea.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/kscreensaver/kdesavers/sspreviewarea.h b/kscreensaver/kdesavers/sspreviewarea.h
new file mode 100644
index 00000000..5b14f09d
--- /dev/null
+++ b/kscreensaver/kdesavers/sspreviewarea.h
@@ -0,0 +1,57 @@
+//============================================================================
+//
+// KRotation screen saver for KDE
+// Copyright (C) 2004 Georg Drenkhahn
+// $Id$
+//
+//============================================================================
+
+#ifndef SSPREVIEWAREA_H
+#define SSPREVIEWAREA_H
+
+#include <qwidget.h>
+
+/** @brief Reimplementation of QWidget emitting a signal if resized.
+ *
+ * This class is equalt to QWidget except for the fact that the signal resized()
+ * is emitted if the widget gets resized. By this signaling mechanism it is
+ * possible to resize the embedded GL area object within the screen saver setup
+ * dialog.
+ *
+ * In the constructor of the dialog widget (KPendulumSetup::KPendulumSetup(),
+ * KRotationSetup::KRotationSetup()) the signal SsPreviewArea::resized() is
+ * connected with a slot of the screensaver class
+ * (KPendulumSaver::resizeGlArea(), KRotationSaver::resizeGlArea()). This slot
+ * function calls the reimplemented QGLWidget::resizeGL() method of the GL
+ * widgets (PendulumGLWidget::resizeGL(), RotationGLWidget::resizeGL()) which
+ * really resizes the GL scenery. */
+class SsPreviewArea : public QWidget
+{
+ Q_OBJECT
+
+ public:
+ /** @brief Constructor for SsPreviewArea
+ * @param parent Pointer tp parent widget, forwarded to the QWidget
+ * constructor
+ * @param name Pointer to widget name, forwarded to the QWidget constructor
+ *
+ * The constructor just calls QWidget::QWidget() with the given arguments.
+ */
+ SsPreviewArea(QWidget* parent = NULL, const char* name = NULL);
+
+ protected:
+ /** @brief Called if widget gets resized.
+ * @param e Pointer to the corresponding QResizeEvent object containing the
+ * resize information
+ *
+ * Reimplemented event handler from QWidget. Only the signal resized() is
+ * emitted. */
+ virtual void resizeEvent(QResizeEvent* e);
+
+ signals:
+ /** @brief Signal which is emitted in the resizeEvent() method.
+ * @param e Pointer to the corresponding QResizeEvent object */
+ void resized(QResizeEvent* e);
+};
+
+#endif