35class KEXIGUIUTILS_EXPORT KexiGradientWidget :
public TQWidget {
36 typedef TQPtrList<TQWidget> WidgetList;
44 TQ_PROPERTY(
double blendOpacity READ blendOpacity WRITE
setBlendOpacity DESIGNABLE
true)
62 VerticalGradient = KImageEffect::VerticalGradient,
63 HorizontalGradient = KImageEffect::HorizontalGradient,
64 DiagonalGradient = KImageEffect::DiagonalGradient,
65 CrossDiagonalGradient = KImageEffect::CrossDiagonalGradient,
66 PyramidGradient = KImageEffect::PyramidGradient,
67 RectangleGradient = KImageEffect::RectangleGradient,
68 PipeCrossGradient = KImageEffect::PipeCrossGradient,
69 EllipticGradient = KImageEffect::EllipticGradient
76 virtual void setPaletteBackgroundPixmap(
const TQPixmap& pixmap ) {
77 p_backgroundPixmap = pixmap;
78 p_rebuildDelayTimer.start( REBUILD_DELAY,
true );
81 virtual const TQColor& paletteBackgroundColor()
const;
104 p_gradientType = type;
113 return p_gradientType;
156 double blendOpacity()
const {
return p_opacity; }
159 virtual void setPaletteBackgroundColor(
const TQColor& color );
162 virtual bool eventFilter( TQObject*
object, TQEvent* event );
163 virtual void enabledChange(
bool enabled ) {
165 TQWidget::enabledChange( enabled );
168 virtual void paletteChange(
const TQPalette& pal ) {
170 TQWidget::paletteChange( pal );
173 virtual void paintEvent( TQPaintEvent* e );
175 virtual void resizeEvent( TQResizeEvent* e ) {
176 p_rebuildDelayTimer.start( REBUILD_DELAY,
true );
177 TQWidget::resizeEvent( e );
180 virtual void styleChange( TQStyle& style ) {
182 TQWidget::styleChange( style );
194 static void buildChildrenList( WidgetList& list, TQWidget* p );
199 static bool isValidChildWidget( TQObject* child );
214 void updateChildBackground( TQWidget* childWidget );
219 DisplayMode p_displayMode;
220 GradientType p_gradientType;
221 KPixmap p_backgroundPixmap;
224 TQTimer p_rebuildDelayTimer;
225 TQWidget* p_currentChild;
229 TQColor p_backgroundColor;
242 void setCacheDirty() {