summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/kaddressbook/germantranslation.txt12
-rw-r--r--kabc/addresseeview.cpp200
-rw-r--r--kabc/addresseeview.h5
3 files changed, 181 insertions, 36 deletions
diff --git a/bin/kdepim/kaddressbook/germantranslation.txt b/bin/kdepim/kaddressbook/germantranslation.txt
index 5e5ed4c..473aa0e 100644
--- a/bin/kdepim/kaddressbook/germantranslation.txt
+++ b/bin/kdepim/kaddressbook/germantranslation.txt
@@ -773,8 +773,20 @@
{ "<b>The backup copy command failed!</b>","<b>Das Backup Kopierkommando is fehlgeschlagen!</b>" },
{ "Choose action","Wähle Aktion" },
{ "&Configure KA/Pi...","Konfiguriere KA/Pi..." },
{ "Global Settings...","Globale Einstellungen..." },
+{ "Spouse","Ehegatte" },
+{ "Notes","Notizen" },
+{ "Messanger","Messanger" },
+{ "Assistant","Assistent" },
+{ "Manager","Manager" },
+{ "Secrecy","Sichtbar" },
+{ "male","männlich" },
+{ "female","weiblich" },
+{ "","" },
+{ "","" },
+{ "","" },
+{ "","" },
{ "","" },
{ "","" },
{ "","" },
{ "","" },
diff --git a/kabc/addresseeview.cpp b/kabc/addresseeview.cpp
index 667a5e2..202a718 100644
--- a/kabc/addresseeview.cpp
+++ b/kabc/addresseeview.cpp
@@ -55,8 +55,9 @@
//US static int kphoneInstalled = 0;
using namespace KABC;
+bool AddresseeView::sFullDetailsMode = false;
AddresseeView::AddresseeView( QWidget *parent, const char *name )
: QTextBrowser( parent, name )
@@ -99,31 +100,37 @@ void AddresseeView::printMe()
#endif
}
void AddresseeView::setSource(const QString& n)
{
- //qDebug("********AddresseeView::setSource %s", n.latin1());
-
- if ( n.left( 6 ) == "mailto" )
- ExternalAppHandler::instance()->mailToOneContact( n.mid(7) );
- else if ( n.left( 7 ) == "phoneto" )
- ExternalAppHandler::instance()->callByPhone( n.mid(8) );
- else if ( n.left( 5 ) == "faxto" )
- ExternalAppHandler::instance()->callByFax( n.mid(6) );
- else if ( n.left( 5 ) == "smsto" )
- ExternalAppHandler::instance()->callBySMS( n.mid(6) );
- else if ( n.left( 7 ) == "pagerto" )
- ExternalAppHandler::instance()->callByPager( n.mid(8) );
- else if ( n.left( 5 ) == "sipto" )
- ExternalAppHandler::instance()->callBySIP( n.mid(6) );
+ qDebug("********AddresseeView::setSource %s", n.latin1());
+
+ if ( n == "allDetails" ) {
+ sFullDetailsMode = true;
+ setAddressee( mCurrentContact );
+ } else if ( n == "notAllDetails" ) {
+ sFullDetailsMode = false;
+ setAddressee( mCurrentContact );
+ } else if ( n.left( 6 ) == "mailto" )
+ ExternalAppHandler::instance()->mailToOneContact( n.mid(7) );
+ else if ( n.left( 7 ) == "phoneto" )
+ ExternalAppHandler::instance()->callByPhone( n.mid(8) );
+ else if ( n.left( 5 ) == "faxto" )
+ ExternalAppHandler::instance()->callByFax( n.mid(6) );
+ else if ( n.left( 5 ) == "smsto" )
+ ExternalAppHandler::instance()->callBySMS( n.mid(6) );
+ else if ( n.left( 7 ) == "pagerto" )
+ ExternalAppHandler::instance()->callByPager( n.mid(8) );
+ else if ( n.left( 5 ) == "sipto" )
+ ExternalAppHandler::instance()->callBySIP( n.mid(6) );
}
void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
{
bool kemailAvail = ExternalAppHandler::instance()->isEmailAppAvailable();
// mAddressee = addr;
// clear view
//setText( QString::null );
-
+ mCurrentContact = mAddressee;
if ( mAddressee.isEmpty() ) {
setText( QString::null);
return;
}
@@ -186,17 +193,9 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
.arg( *emailIt );
}
}
- if ( !mAddressee.url().url().isEmpty() ) {
- dynamicPart += QString(
- "<tr><td align=\"right\"><b>%1</b></td>"
- "<td align=\"left\">%2</td></tr>" )
- .arg( i18n( "Homepage" ) )
-//US .arg( KStringHandler::tagURLs( mAddressee.url().url() ) );
- .arg( mAddressee.url().url() );
- //qDebug("AddresseeView::setAddressee has to be verified.");
- }
+
KABC::Address::List addresses = mAddressee.addresses();
KABC::Address::List::ConstIterator addrIt;
for ( addrIt = addresses.begin(); addrIt != addresses.end(); ++addrIt ) {
@@ -222,19 +221,152 @@ void AddresseeView::setAddressee( const KABC::Addressee& mAddressee )
.arg( (*addrIt).label() /*replace( QRegExp("\n"), "<br>" )*/ );
}
}
+
+
+ QString notes;
+ if ( sFullDetailsMode ) {
+ notes = QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\"><a href=\"notAllDetails\">%4</a></td></tr>" )
+ .arg( i18n("Details:") )
+ .arg( i18n("Click here to hide!") );
+
+ QString tempX = mAddressee.secrecy().asString();
+
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( "" )
+ .arg( tempX );
+
+
+ tempX = mAddressee.categories().join(" - ");
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Category" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-Profession" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Profession" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-Office" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Office" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-Department" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Department" ) )
+ .arg( tempX );
+ }
+
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-ManagersName" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Manager" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-AssistantsName" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Assistant" ) )
+ .arg( tempX );
+ }
+ if ( !mAddressee.url().url().isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Homepage" ) )
+ .arg( mAddressee.url().url() );
+ }
+ tempX = mAddressee.nickName();
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Nickname" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-IMAddress" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Messanger" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-Gender" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Gender" ) )
+ .arg( i18n(tempX) );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-Anniversary" );
+ if ( !tempX.isEmpty() ) {
+ QDate dt = KGlobal::locale()->readDate( tempX, "%Y-%m-%d");
+ tempX = KGlobal::locale()->formatDate(dt, true);
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Anniversary" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-SpousesName" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Spouse" ) )
+ .arg( tempX );
+ }
+ tempX = mAddressee.custom( "KADDRESSBOOK", "X-Children" );
+ if ( !tempX.isEmpty() ) {
+ notes += QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\">%2</td></tr>" )
+ .arg( i18n( "Children" ) )
+ .arg( tempX );
+ }
+
+ if ( !mAddressee.note().isEmpty() ) {
+ notes += QString(
+ "<tr>"
+ "<td align=\"right\" valign=\"top\"><b>%1</b></td>" // note label
+ "<td align=\"left\">%2</td>" // note
+ "</tr>" ).arg( i18n( "Notes" ) )
+ //US .arg( mAddressee.note().replace( '\n', "<br>" ) );
+ .arg( mAddressee.note().replace( QRegExp("\n"), "<br>" ) );
+ //qDebug("AddresseeView::setAddressee has to be verified.");
+ }
+ } else {
+ notes = QString(
+ "<tr><td align=\"right\"><b>%1</b></td>"
+ "<td align=\"left\"><a href=\"allDetails\">%4</a></td></tr>" )
+ .arg( i18n("Details:") )
+ .arg( i18n("Click here to show!") );
+
- QString notes;
- if ( !mAddressee.note().isEmpty() ) {
- notes = QString(
- "<tr>"
- "<td align=\"right\" valign=\"top\"><b>%1</b></td>" // note label
- "<td align=\"left\">%2</td>" // note
- "</tr>" ).arg( i18n( "Notes" ) )
-//US .arg( mAddressee.note().replace( '\n', "<br>" ) );
- .arg( mAddressee.note().replace( QRegExp("\n"), "<br>" ) );
- //qDebug("AddresseeView::setAddressee has to be verified.");
}
QString aRole = "";
QString aOrga = "";
diff --git a/kabc/addresseeview.h b/kabc/addresseeview.h
index e977d8f..a4de085 100644
--- a/kabc/addresseeview.h
+++ b/kabc/addresseeview.h
@@ -48,10 +48,11 @@ class AddresseeView : public QTextBrowser
Returns the current addressee object.
*/
//KABC::Addressee addressee() const;
void printMe();
-
- private:
+ static bool sFullDetailsMode;
+ private:
+ Addressee mCurrentContact;
//KABC::Addressee mAddressee;
QString mText;
QString getPhoneNumbers( KABC::PhoneNumber::List phones, bool preferred );
void addTag(const QString & tag,const QString & text);