summaryrefslogtreecommitdiffstats
path: root/style
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-08-07 01:38:41 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-08-07 01:38:41 -0500
commit71dde9e35e20bd8394feb5e790ac495669e089c2 (patch)
tree789e8239d957c0f9c0e8c165093258a3429a915c /style
parentb80c68a29b536677444162fce67a9ee509d93e4f (diff)
downloadtde-style-lipstik-71dde9e35e20bd8394feb5e790ac495669e089c2.tar.gz
tde-style-lipstik-71dde9e35e20bd8394feb5e790ac495669e089c2.zip
TQStyle API update
Diffstat (limited to 'style')
-rw-r--r--style/lipstik.cpp371
-rw-r--r--style/lipstik.h8
2 files changed, 197 insertions, 182 deletions
diff --git a/style/lipstik.cpp b/style/lipstik.cpp
index 150226e..7b4c1a3 100644
--- a/style/lipstik.cpp
+++ b/style/lipstik.cpp
@@ -278,101 +278,112 @@ LipstikStyle::~LipstikStyle()
delete verticalLine;
}
-void LipstikStyle::polish(TQApplication* app)
+void LipstikStyle::applicationPolish(TQStyleControlElementData ceData, ControlElementFlags, void *ptr)
{
- if (!qstrcmp(app->argv()[0], "kicker"))
- kickerMode = true;
- else if (!qstrcmp(app->argv()[0], "korn"))
- kornMode = true;
+ if (ceData.widgetObjectTypes.contains(TQAPPLICATION_OBJECT_NAME_STRING)) {
+ TQApplication *app = reinterpret_cast<TQApplication*>(ptr);
+ if (!qstrcmp(app->argv()[0], "kicker"))
+ kickerMode = true;
+ else if (!qstrcmp(app->argv()[0], "korn"))
+ kornMode = true;
+ }
}
-void LipstikStyle::polish(TQWidget* widget)
+void LipstikStyle::polish(TQStyleControlElementData ceData, ControlElementFlags elementFlags, void *ptr)
{
- if( !strcmp(widget->name(), "__khtml") ) { // is it a khtml widget...?
- khtmlWidgets[widget] = true;
- connect(widget, TQT_SIGNAL(destroyed(TQObject*)), this, TQT_SLOT(khtmlWidgetDestroyed(TQObject*)));
- }
-
- // use tqt_cast where possible to check if the widget inheits one of the classes. might improve
- // performance compared to TQObject::inherits()
- if ( ::tqqt_cast<TQPushButton*>(widget) || ::tqqt_cast<TQComboBox*>(widget) ||
- ::tqqt_cast<TQSpinWidget*>(widget) || ::tqqt_cast<TQSlider*>(widget) ||
- ::tqqt_cast<TQCheckBox*>(widget) || ::tqqt_cast<TQRadioButton*>(widget) ||
- ::tqqt_cast<TQToolButton*>(widget)
- )
- {
- widget->installEventFilter(this);
- } else if (::tqqt_cast<TQTabBar*>(widget)) {
- widget->setMouseTracking(true);
- widget->installEventFilter(this);
- } else if (::tqqt_cast<TQPopupMenu*>(widget)) {
- widget->setBackgroundMode( NoBackground );
- } else if(::tqqt_cast<TQScrollBar*>(widget)) {
- widget->setMouseTracking(true);
- widget->installEventFilter(this);
- } else if (widget->inherits(TQSPLITTERHANDLE_OBJECT_NAME_STRING) || widget->inherits(TQDOCKWINDOWHANDLE_OBJECT_NAME_STRING) ) {
- widget->installEventFilter(this);
- } else if (::tqqt_cast<TQLineEdit*>(widget)) {
- widget->installEventFilter(this);
- } else if ( !qstrcmp(widget->name(), "kde toolbar widget") ) {
- widget->installEventFilter(this);
- }
+ if (ceData.widgetObjectTypes.contains(TQWIDGET_OBJECT_NAME_STRING)) {
+ TQWidget *widget = reinterpret_cast<TQWidget*>(ptr);
- if( _animateProgressBar && ::tqqt_cast<TQProgressBar*>(widget) ) {
- widget->installEventFilter(this);
- progAnimWidgets[widget] = 0;
- connect(widget, TQT_SIGNAL(destroyed(TQObject*)), this, TQT_SLOT(progressBarDestroyed(TQObject*)));
- if (!animationTimer->isActive())
- animationTimer->start( 50, false );
- } else if( !qstrcmp(widget->className(), "KonqFrameStatusBar") ) {
- // This disables the white background of the KonquerorFrameStatusBar.
- // When the green led is shown the background is set to
- // applications cg.midlight() so we override it to standard background.
- // Thanks Comix! (because this was ugly from day one!)
- // NOTE: Check if we can set it earlier (before painting), cause
- // on slow machines we can see the repainting of the bar (from white to background...)
- TQPalette kPalette = TQApplication::palette();
- kPalette.setColor( TQColorGroup::Midlight,kPalette.active().background() );
- TQApplication::setPalette( kPalette );
+ if( !strcmp(widget->name(), "__khtml") ) { // is it a khtml widget...?
+ khtmlWidgets[widget] = true;
+ connect(widget, TQT_SIGNAL(destroyed(TQObject*)), this, TQT_SLOT(khtmlWidgetDestroyed(TQObject*)));
+ }
+
+ // use tqt_cast where possible to check if the widget inheits one of the classes. might improve
+ // performance compared to TQObject::inherits()
+ if ( ::tqqt_cast<TQPushButton*>(widget) || ::tqqt_cast<TQComboBox*>(widget) ||
+ ::tqqt_cast<TQSpinWidget*>(widget) || ::tqqt_cast<TQSlider*>(widget) ||
+ ::tqqt_cast<TQCheckBox*>(widget) || ::tqqt_cast<TQRadioButton*>(widget) ||
+ ::tqqt_cast<TQToolButton*>(widget)
+ )
+ {
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if (::tqqt_cast<TQTabBar*>(widget)) {
+ widget->setMouseTracking(true);
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if (::tqqt_cast<TQPopupMenu*>(widget)) {
+ widget->setBackgroundMode( NoBackground );
+ } else if(::tqqt_cast<TQScrollBar*>(widget)) {
+ widget->setMouseTracking(true);
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if (widget->inherits(TQSPLITTERHANDLE_OBJECT_NAME_STRING) || widget->inherits(TQDOCKWINDOWHANDLE_OBJECT_NAME_STRING) ) {
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if (::tqqt_cast<TQLineEdit*>(widget)) {
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if ( !qstrcmp(widget->name(), "kde toolbar widget") ) {
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ }
+
+ if( _animateProgressBar && ::tqqt_cast<TQProgressBar*>(widget) ) {
+ installObjectEventHandler(ceData, elementFlags, ptr, this);
+ progAnimWidgets[widget] = 0;
+ connect(widget, TQT_SIGNAL(destroyed(TQObject*)), this, TQT_SLOT(progressBarDestroyed(TQObject*)));
+ if (!animationTimer->isActive())
+ animationTimer->start( 50, false );
+ } else if( !qstrcmp(widget->className(), "KonqFrameStatusBar") ) {
+ // This disables the white background of the KonquerorFrameStatusBar.
+ // When the green led is shown the background is set to
+ // applications cg.midlight() so we override it to standard background.
+ // Thanks Comix! (because this was ugly from day one!)
+ // NOTE: Check if we can set it earlier (before painting), cause
+ // on slow machines we can see the repainting of the bar (from white to background...)
+ TQPalette kPalette = TQApplication::palette();
+ kPalette.setColor( TQColorGroup::Midlight,kPalette.active().background() );
+ TQApplication::setPalette( kPalette );
+ }
}
- KStyle::polish(widget);
+ KStyle::polish(ceData, elementFlags, ptr);
}
-void LipstikStyle::unPolish(TQWidget* widget)
+void LipstikStyle::unPolish(TQStyleControlElementData ceData, ControlElementFlags elementFlags, void *ptr)
{
- if( !strcmp(widget->name(), "__khtml") ) { // is it a khtml widget...?
- khtmlWidgets.remove(widget);
- }
+ if (ceData.widgetObjectTypes.contains(TQWIDGET_OBJECT_NAME_STRING)) {
+ TQWidget *widget = reinterpret_cast<TQWidget*>(ptr);
- // use tqt_cast to check if the widget inheits one of the classes.
- if ( ::tqqt_cast<TQPushButton*>(widget) || ::tqqt_cast<TQComboBox*>(widget) ||
- ::tqqt_cast<TQSpinWidget*>(widget) || ::tqqt_cast<TQSlider*>(widget) ||
- ::tqqt_cast<TQCheckBox*>(widget) || ::tqqt_cast<TQRadioButton*>(widget) ||
- ::tqqt_cast<TQToolButton*>(widget) || ::tqqt_cast<TQLineEdit*>(widget) ||
- widget->inherits(TQSPLITTERHANDLE_OBJECT_NAME_STRING) )
- {
- widget->removeEventFilter(this);
- }
- else if (::tqqt_cast<TQTabBar*>(widget)) {
- widget->setMouseTracking(false);
- widget->removeEventFilter(this);
- } else if (::tqqt_cast<TQScrollBar*>(widget)) {
- widget->setMouseTracking(false);
- widget->removeEventFilter(this);
- } else if (::tqqt_cast<TQPopupMenu*>(widget)) {
- widget->setBackgroundMode( PaletteBackground );
- } else if ( !qstrcmp(widget->name(), "kde toolbar widget") ) {
- widget->removeEventFilter(this);
- }
-
- if ( ::tqqt_cast<TQProgressBar*>(widget) ) {
- progAnimWidgets.remove(widget);
- } else if( widget->inherits("KonqFrameStatusBar") ) {
- widget->removeEventFilter(this);
+ if( !strcmp(widget->name(), "__khtml") ) { // is it a khtml widget...?
+ khtmlWidgets.remove(widget);
+ }
+
+ // use tqt_cast to check if the widget inheits one of the classes.
+ if ( ::tqqt_cast<TQPushButton*>(widget) || ::tqqt_cast<TQComboBox*>(widget) ||
+ ::tqqt_cast<TQSpinWidget*>(widget) || ::tqqt_cast<TQSlider*>(widget) ||
+ ::tqqt_cast<TQCheckBox*>(widget) || ::tqqt_cast<TQRadioButton*>(widget) ||
+ ::tqqt_cast<TQToolButton*>(widget) || ::tqqt_cast<TQLineEdit*>(widget) ||
+ widget->inherits(TQSPLITTERHANDLE_OBJECT_NAME_STRING) )
+ {
+ removeObjectEventHandler(ceData, elementFlags, ptr, this);
+ }
+ else if (::tqqt_cast<TQTabBar*>(widget)) {
+ widget->setMouseTracking(false);
+ removeObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if (::tqqt_cast<TQScrollBar*>(widget)) {
+ widget->setMouseTracking(false);
+ removeObjectEventHandler(ceData, elementFlags, ptr, this);
+ } else if (::tqqt_cast<TQPopupMenu*>(widget)) {
+ widget->setBackgroundMode( PaletteBackground );
+ } else if ( !qstrcmp(widget->name(), "kde toolbar widget") ) {
+ removeObjectEventHandler(ceData, elementFlags, ptr, this);
+ }
+
+ if ( ::tqqt_cast<TQProgressBar*>(widget) ) {
+ progAnimWidgets.remove(widget);
+ } else if( widget->inherits("KonqFrameStatusBar") ) {
+ removeObjectEventHandler(ceData, elementFlags, ptr, this);
+ }
}
- KStyle::unPolish(widget);
+ KStyle::unPolish(ceData, elementFlags, ptr);
}
void LipstikStyle::khtmlWidgetDestroyed(TQObject* obj)
@@ -3958,106 +3969,110 @@ int LipstikStyle::styleHint( StyleHint stylehint,
}
}
-bool LipstikStyle::eventFilter(TQObject *obj, TQEvent *ev)
+bool LipstikStyle::objectEventHandler( TQStyleControlElementData ceData, ControlElementFlags elementFlags, void* source, TQEvent *ev )
{
- if (KStyle::eventFilter(obj, ev) )
+ if (KStyle::objectEventHandler(ceData, elementFlags, source, ev) )
return true;
- if (!obj->isWidgetType() ) return false;
-
- // focus highlight
- if ( ::tqqt_cast<TQLineEdit*>(obj) ) {
- TQWidget* widget = TQT_TQWIDGET(obj);
-
- if ( ::tqqt_cast<TQSpinWidget*>(widget->parentWidget()) )
- {
- TQWidget* spinbox = widget->parentWidget();
- if ((ev->type() == TQEvent::FocusIn) || (ev->type() == TQEvent::FocusOut))
- {
- spinbox->repaint(false);
- }
- return false;
- }
-
- if ((ev->type() == TQEvent::FocusIn) || (ev->type() == TQEvent::FocusOut))
- {
- widget->repaint(false);
- }
- return false;
- }
-
- //Hover highlight... use tqt_cast to check if the widget inheits one of the classes.
- if ( ::tqqt_cast<TQPushButton*>(obj) || ::tqqt_cast<TQComboBox*>(obj) ||
- ::tqqt_cast<TQSpinWidget*>(obj) || ::tqqt_cast<TQCheckBox*>(obj) ||
- ::tqqt_cast<TQRadioButton*>(obj) || ::tqqt_cast<TQToolButton*>(obj) ||
- ::tqqt_cast<TQSlider*>(obj) || ::tqqt_cast<TQScrollBar*>(obj) ||
- obj->inherits(TQDOCKWINDOWHANDLE_OBJECT_NAME_STRING) || obj->inherits(TQSPLITTERHANDLE_OBJECT_NAME_STRING) )
- {
- if ((ev->type() == TQEvent::Enter) && TQT_TQWIDGET(obj)->isEnabled())
- {
- TQWidget* button = TQT_TQWIDGET(obj);
- hoverWidget = button;
- button->repaint(false);
- }
- else if ((ev->type() == TQEvent::Leave) && (TQT_BASE_OBJECT(obj) == TQT_BASE_OBJECT(hoverWidget)) )
- {
- TQWidget* button = TQT_TQWIDGET(obj);
- hoverWidget = 0;
- button->repaint(false);
- }
- return false;
- }
- if ( ::tqqt_cast<TQTabBar*>(obj) ) {
- if ((ev->type() == TQEvent::Enter) && TQT_TQWIDGET(obj)->isEnabled())
- {
- TQWidget* tabbar = TQT_TQWIDGET(obj);
- hoverWidget = tabbar;
- hoverTab = 0;
- tabbar->repaint(false);
- }
- else if (ev->type() == TQEvent::MouseMove)
- {
- TQTabBar *tabbar = dynamic_cast<TQTabBar*>(obj);
- TQMouseEvent *me = dynamic_cast<TQMouseEvent*>(ev);
-
- if (tabbar && me) {
- // avoid unnecessary repaints (which otherwise would occour on every
- // MouseMove event causing high cpu load).
+ if (ceData.widgetObjectTypes.contains(TQOBJECT_OBJECT_NAME_STRING)) {
+ TQObject* obj = reinterpret_cast<TQObject*>(source);
- bool repaint = true;
-
- TQTab *tab = tabbar->selectTab(me->pos() );
- if (hoverTab == tab)
- repaint = false;
- hoverTab = tab;
-
- if (repaint)
- tabbar->repaint(false);
- }
- }
- else if (ev->type() == TQEvent::Leave)
- {
- TQWidget* tabbar = TQT_TQWIDGET(obj);
- hoverWidget = 0;
- hoverTab = 0;
- tabbar->repaint(false);
- }
- return false;
- }
- // Track show events for progress bars
- if ( _animateProgressBar && ::tqqt_cast<TQProgressBar*>(obj) )
- {
- if ((ev->type() == TQEvent::Show) && !animationTimer->isActive())
- {
- animationTimer->start( 50, false );
- }
- }
- if ( !qstrcmp(obj->name(), "kde toolbar widget") )
- {
- TQWidget* lb = TQT_TQWIDGET(obj);
- if (lb->backgroundMode() == TQt::PaletteButton)
- lb->setBackgroundMode(TQt::PaletteBackground);
- lb->removeEventFilter(this);
+ if (!obj->isWidgetType() ) return false;
+
+ // focus highlight
+ if ( ::tqqt_cast<TQLineEdit*>(obj) ) {
+ TQWidget* widget = TQT_TQWIDGET(obj);
+
+ if ( ::tqqt_cast<TQSpinWidget*>(widget->parentWidget()) )
+ {
+ TQWidget* spinbox = widget->parentWidget();
+ if ((ev->type() == TQEvent::FocusIn) || (ev->type() == TQEvent::FocusOut))
+ {
+ spinbox->repaint(false);
+ }
+ return false;
+ }
+
+ if ((ev->type() == TQEvent::FocusIn) || (ev->type() == TQEvent::FocusOut))
+ {
+ widget->repaint(false);
+ }
+ return false;
+ }
+
+ //Hover highlight... use tqt_cast to check if the widget inheits one of the classes.
+ if ( ::tqqt_cast<TQPushButton*>(obj) || ::tqqt_cast<TQComboBox*>(obj) ||
+ ::tqqt_cast<TQSpinWidget*>(obj) || ::tqqt_cast<TQCheckBox*>(obj) ||
+ ::tqqt_cast<TQRadioButton*>(obj) || ::tqqt_cast<TQToolButton*>(obj) ||
+ ::tqqt_cast<TQSlider*>(obj) || ::tqqt_cast<TQScrollBar*>(obj) ||
+ obj->inherits(TQDOCKWINDOWHANDLE_OBJECT_NAME_STRING) || obj->inherits(TQSPLITTERHANDLE_OBJECT_NAME_STRING) )
+ {
+ if ((ev->type() == TQEvent::Enter) && TQT_TQWIDGET(obj)->isEnabled())
+ {
+ TQWidget* button = TQT_TQWIDGET(obj);
+ hoverWidget = button;
+ button->repaint(false);
+ }
+ else if ((ev->type() == TQEvent::Leave) && (TQT_BASE_OBJECT(obj) == TQT_BASE_OBJECT(hoverWidget)) )
+ {
+ TQWidget* button = TQT_TQWIDGET(obj);
+ hoverWidget = 0;
+ button->repaint(false);
+ }
+ return false;
+ }
+ if ( ::tqqt_cast<TQTabBar*>(obj) ) {
+ if ((ev->type() == TQEvent::Enter) && TQT_TQWIDGET(obj)->isEnabled())
+ {
+ TQWidget* tabbar = TQT_TQWIDGET(obj);
+ hoverWidget = tabbar;
+ hoverTab = 0;
+ tabbar->repaint(false);
+ }
+ else if (ev->type() == TQEvent::MouseMove)
+ {
+ TQTabBar *tabbar = dynamic_cast<TQTabBar*>(obj);
+ TQMouseEvent *me = dynamic_cast<TQMouseEvent*>(ev);
+
+ if (tabbar && me) {
+ // avoid unnecessary repaints (which otherwise would occour on every
+ // MouseMove event causing high cpu load).
+
+ bool repaint = true;
+
+ TQTab *tab = tabbar->selectTab(me->pos() );
+ if (hoverTab == tab)
+ repaint = false;
+ hoverTab = tab;
+
+ if (repaint)
+ tabbar->repaint(false);
+ }
+ }
+ else if (ev->type() == TQEvent::Leave)
+ {
+ TQWidget* tabbar = TQT_TQWIDGET(obj);
+ hoverWidget = 0;
+ hoverTab = 0;
+ tabbar->repaint(false);
+ }
+ return false;
+ }
+ // Track show events for progress bars
+ if ( _animateProgressBar && ::tqqt_cast<TQProgressBar*>(obj) )
+ {
+ if ((ev->type() == TQEvent::Show) && !animationTimer->isActive())
+ {
+ animationTimer->start( 50, false );
+ }
+ }
+ if ( !qstrcmp(obj->name(), "kde toolbar widget") )
+ {
+ TQWidget* lb = TQT_TQWIDGET(obj);
+ if (lb->backgroundMode() == TQt::PaletteButton)
+ lb->setBackgroundMode(TQt::PaletteBackground);
+ removeObjectEventHandler(ceData, elementFlags, source, this);
+ }
}
return false;
diff --git a/style/lipstik.h b/style/lipstik.h
index ca2721d..98edac9 100644
--- a/style/lipstik.h
+++ b/style/lipstik.h
@@ -69,9 +69,9 @@ public:
LipstikStyle();
virtual ~LipstikStyle();
- void polish(TQApplication* app );
- void polish(TQWidget* widget );
- void unPolish(TQWidget* widget );
+ void applicationPolish(TQStyleControlElementData ceData, ControlElementFlags elementFlags, void *);
+ void polish(TQStyleControlElementData ceData, ControlElementFlags elementFlags, void *);
+ void unPolish(TQStyleControlElementData ceData, ControlElementFlags elementFlags, void *);
void drawKStylePrimitive(KStylePrimitive kpe,
TQPainter* p,
@@ -276,7 +276,7 @@ protected:
virtual void renderMenuBlendPixmap( KPixmap& pix, const TQColorGroup& cg,
const TQPopupMenu* popup ) const;
- bool eventFilter(TQObject *, TQEvent *);
+ virtual bool objectEventHandler( TQStyleControlElementData ceData, ControlElementFlags elementFlags, void* source, TQEvent *e );
TQWidget* hoverWidget;
protected slots: