40 #define YUILogComponent "qt-pkg"
42 #include <yui/Libyui_config.h>
47 #include "YQPkgSelDescriptionView.h"
72 _selectable = selectable;
82 QString description = fromUTF8( selectable->theObj()->description() );
84 if ( ! description.contains(
"<!-- DT:Rich -->" ) )
87 html_text += description;
98 ZyppObj zyppObj = selectable->theObj();
99 ZyppPattern pattern = tryCastToZyppPattern ( zyppObj );
104 QString summary = fromUTF8( zyppObj->summary() );
105 bool useBigFont = ( summary.length() <= 40 );
107 if ( summary.isEmpty() )
108 summary = fromUTF8( zyppObj->name() );
110 QString icon = pattern ? pattern->icon().asString().c_str() :
"";
112 if ( icon.isEmpty() )
114 icon = zyppObj->name().c_str();
115 icon.replace(
' ',
'_' );
118 if ( ! icon.isEmpty() )
120 if ( icon.startsWith(
"./" ) )
121 icon.replace( QRegExp(
"^\\./" ),
"" );
123 if ( ! icon.endsWith(
".png", Qt::CaseInsensitive ) &&
124 ! icon.endsWith(
".jpg", Qt::CaseInsensitive ) )
127 QString origIconName = icon;
129 if ( ! icon.contains(
"/" ) )
136 QString iconBaseName = icon;
137 icon =
findIcon( QString( THEMEDIR ) +
"/icons/32x32/apps/" + iconBaseName );
139 if ( icon.isEmpty() )
140 icon =
findIcon( QString( THEMEDIR ) +
"/icons/48x48/apps/" + iconBaseName );
142 else if ( ! icon.startsWith(
"/" ) )
148 icon =
findIcon( QString( THEMEDIR ) +
"/" + icon );
151 if ( pattern && icon.isEmpty() )
152 yuiWarning() <<
"No icon for pattern " << zyppObj->name()
153 <<
" - icon name: " << origIconName
158 QString html =
"<table width='100%'";
160 if ( ! YQUI::ui()->usingVisionImpairedPalette() )
162 + QApplication::palette().color( QPalette::Active, QPalette::Base).name()
166 + ( useBigFont ? QString(
"<h2>" ) : QString(
"<b>" ) )
168 + ( useBigFont ? QString(
"</h2>" ) : QString(
"</b>" ) )
172 if ( ! icon.isEmpty() )
174 html = QString(
"<table width='100%'><tr>" )
175 +
"<td><img src=\"" + icon +
"\"></td>"
176 +
"<td width='100%'>" + html +
"</td>"
188 if ( access( qPrintable( icon ), R_OK ) == 0 )
190 yuiDebug() <<
"Found icon " << icon << endl;
195 yuiDebug() <<
"No icon " << icon << endl;
201 #include "YQPkgSelDescriptionView.moc"