[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    koffice/kexi/plugins/forms/widgets
From:       Jaroslaw Staniek <js () iidea ! pl>
Date:       2006-07-03 8:27:14
Message-ID: 1151915234.646109.11129.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 557422 by staniek:

Forms
- AutoField: focus label's associated widget (editor) 
  when user clicked the label

2.0: merged



 M  +10 -0     kexidbautofield.cpp  
 M  +1 -0      kexidbautofield.h  


--- trunk/koffice/kexi/plugins/forms/widgets/kexidbautofield.cpp #557421:557422
@@ -103,6 +103,7 @@
 	d->layout = 0;
 	m_subwidget = 0;
 	d->label = new QLabel(text, this);
+	d->label->installEventFilter( this );
 	QFontMetrics fm( font() );
 	//d->label->setFixedWidth( fm.width("This is a test string length") );
 	d->autoCaption = true;
@@ -732,6 +733,15 @@
 	return QWidget::setProperty(name, value);
 }
 
+bool KexiDBAutoField::eventFilter( QObject *o, QEvent *e )
+{
+	if (o==d->label && d->label->buddy() && e->type()==QEvent::MouseButtonRelease) {
+		//focus label's buddy when user clicked the label
+		d->label->buddy()->setFocus();
+	}
+	return QWidget::eventFilter(o, e);
+}
+
 /*
 int KexiDBAutoField::lineWidth () const
 {
--- trunk/koffice/kexi/plugins/forms/widgets/kexidbautofield.h #557421:557422
@@ -159,6 +159,7 @@
 		//! internal editor can be created too late, so certain properties should be copied
 		void copyPropertiesToEditor();
 
+		virtual bool eventFilter( QObject *o, QEvent *e );
 	private:
 		class Private;
 		Private *d;
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic