summaryrefslogtreecommitdiffabout
path: root/kaddressbook/imagewidget.cpp
Side-by-side diff
Diffstat (limited to 'kaddressbook/imagewidget.cpp') (more/less context) (show whitespace changes)
-rw-r--r--kaddressbook/imagewidget.cpp28
1 files changed, 23 insertions, 5 deletions
diff --git a/kaddressbook/imagewidget.cpp b/kaddressbook/imagewidget.cpp
index 48370e3..9ee4eac 100644
--- a/kaddressbook/imagewidget.cpp
+++ b/kaddressbook/imagewidget.cpp
@@ -38,35 +38,36 @@
#include <qcheckbox.h>
#include <qgroupbox.h>
#include <qlabel.h>
#include <qlayout.h>
#include <qpixmap.h>
+#include <qpushbutton.h>
#include <qapplication.h>
#include "imagewidget.h"
ImageWidget::ImageWidget( QWidget *parent, const char *name )
: QWidget( parent, name )
{
QGridLayout *topLayout = new QGridLayout( this, 2, 1, KDialog::marginHint(),
KDialog::spacingHint() );
QGroupBox *photoBox = new QGroupBox( 0, Qt::Vertical, i18n( "Photo" ), this );
- QGridLayout *boxLayout = new QGridLayout( photoBox->layout(), 3, 2,
+ QGridLayout *boxLayout = new QGridLayout( photoBox->layout(), 4, 2,
KDialog::spacingHint() );
boxLayout->setRowStretch( 2, 1 );
mPhotoLabel = new QLabel( photoBox );
int fac = 9;
if ( QApplication::desktop()->width() > 320 )
fac = 6;
mPhotoLabel->setFixedSize( 50*9/fac, 70*9/fac );
mPhotoLabel->setScaledContents( true );
mPhotoLabel->setFrameStyle( QFrame::Panel | QFrame::Sunken );
- boxLayout->addMultiCellWidget( mPhotoLabel, 0, 2, 0, 0 );
+ boxLayout->addMultiCellWidget( mPhotoLabel, 0, 3, 0, 0 );
mPhotoUrl = new KURLRequester( photoBox );
#ifndef KAB_EMBEDDED
mPhotoUrl->setFilter( KImageIO::pattern() );
#else //KAB_EMBEDDED
//US qDebug("ImageWidget::ImageWidget KImageIO not defined. Does this harm ???");
@@ -76,23 +77,28 @@ ImageWidget::ImageWidget( QWidget *parent, const char *name )
boxLayout->addWidget( mPhotoUrl, 0, 1 );
mUsePhotoUrl = new QCheckBox( i18n( "Store as URL" ), photoBox );
mUsePhotoUrl->setEnabled( false );
boxLayout->addWidget( mUsePhotoUrl, 1, 1 );
+ QPushButton * pb = new QPushButton( i18n( "Remove" ), photoBox );
+ connect( pb, SIGNAL( clicked() ),this, SLOT( removePhoto() ) );
+ boxLayout->addWidget( pb, 2, 1 );
+ boxLayout->addWidget( new QLabel( photoBox ), 3, 1 );
+
topLayout->addWidget( photoBox, 0, 0 );
QGroupBox *logoBox = new QGroupBox( 0, Qt::Vertical, i18n( "Logo" ), this );
- boxLayout = new QGridLayout( logoBox->layout(), 3, 2, KDialog::spacingHint() );
+ boxLayout = new QGridLayout( logoBox->layout(), 4, 2, KDialog::spacingHint() );
boxLayout->setRowStretch( 2, 1 );
mLogoLabel = new QLabel( logoBox );
mLogoLabel->setFixedSize( 50*9/fac, 70*9/fac );
mLogoLabel->setScaledContents( true );
mLogoLabel->setFrameStyle( QFrame::Panel | QFrame::Sunken );
- boxLayout->addMultiCellWidget( mLogoLabel, 0, 2, 0, 0 );
+ boxLayout->addMultiCellWidget( mLogoLabel, 0, 3, 0, 0 );
mLogoUrl = new KURLRequester( logoBox );
#ifndef KAB_EMBEDDED
mLogoUrl->setFilter( KImageIO::pattern() );
#else //KAB_EMBEDDED
//US qDebug("ImageWidget::ImageWidget KImageIO not defined 2");
@@ -100,12 +106,16 @@ ImageWidget::ImageWidget( QWidget *parent, const char *name )
boxLayout->addWidget( mLogoUrl, 0, 1 );
mUseLogoUrl = new QCheckBox( i18n( "Store as URL" ), logoBox );
mUseLogoUrl->setEnabled( false );
boxLayout->addWidget( mUseLogoUrl, 1, 1 );
+ pb = new QPushButton( i18n( "Remove" ), logoBox );
+ connect( pb, SIGNAL( clicked() ),this, SLOT( removeLogo() ) );
+ boxLayout->addWidget( pb, 2, 1 );
+ boxLayout->addWidget( new QLabel( logoBox ), 3, 1 );
topLayout->addWidget( logoBox, 1, 0 );
connect( mPhotoUrl, SIGNAL( textChanged( const QString& ) ),
SIGNAL( changed() ) );
connect( mPhotoUrl, SIGNAL( urlSelected( const QString& ) ),
SLOT( loadPhoto() ) );
@@ -235,15 +245,23 @@ KABC::Picture ImageWidget::logo() const
#endif //KAB_EMBEDDED
logo.setType( "PNG" );
}
}
-
return logo;
}
+void ImageWidget::removePhoto()
+{
+ setPhoto(KABC::Picture() );
+}
+
+void ImageWidget::removeLogo()
+{
+ setLogo(KABC::Picture() );
+}
void ImageWidget::loadPhoto()
{
mPhotoLabel->setPixmap( loadPixmap( mPhotoUrl->url() ) );
}