void KuickShow::slotHighlighted( const KFileItem *fi ) { KFileItem *item = const_cast<KFileItem *>( fi ); statusBar()->changeItem( item->getStatusBarInfo(), URL_ITEM ); bool image = FileWidget::isImage( fi ); QString meta; if ( image ) { KFileMetaInfo info = item->metaInfo(); if ( info.isValid() ) { meta = info.item( KFileMimeTypeInfo::Size ).string(); KFileMetaInfoGroup group = info.group( "Technical" ); if ( group.isValid() ) { QString bpp = group.item( "BitDepth" ).string(); if ( !bpp.isEmpty() ) meta.append( ", " ).append( bpp ); } } } statusBar()->changeItem( meta, META_ITEM ); fileWidget->actionCollection()->action("kuick_print")->setEnabled( image ); fileWidget->actionCollection()->action("kuick_showInSameWindow")->setEnabled( image ); fileWidget->actionCollection()->action("kuick_showInOtherWindow")->setEnabled( image ); fileWidget->actionCollection()->action("kuick_showFullscreen")->setEnabled( image ); }
void CelSplashScreen::setPixmap( const QString &filename ) { QPixmap _pixmap(filename); resize( _pixmap.size() ); // Set default values for status and version fields status.getRect().setX(20); status.getRect().setY(height() - 40); status.getRect().setWidth(width() - 200); status.getRect().setHeight(20); status.setFlags(Qt::AlignLeft | Qt::AlignTop); version.getRect().setX(width() - 180); version.getRect().setY(height() - 40); version.getRect().setWidth(150); version.getRect().setHeight(20); version.setFlags(Qt::AlignRight | Qt::AlignTop); version.setContent(VERSION); KFileMetaInfo info(filename); KFileMetaInfoGroup comments = info.group("Comment"); if (comments.isValid()) { status.set("status", comments); version.set("version", comments); int i = 0; char extraName[10]; sprintf(extraName, "extra%02d", i); while (i< 100 && comments.item(QString(extraName) + "_insert_before").isValid()) { TextItem extra; extra.set(extraName, comments); extraText.push_back(extra); i++; sprintf(extraName, "extra%02d", i); } } QRect desk = KGlobalSettings::splashScreenDesktopGeometry(); setGeometry( ( desk.width() / 2 ) - ( width() / 2 ) + desk.left(), ( desk.height() / 2 ) - ( height() / 2 ) + desk.top(), width(), height() ); if (_pixmap.hasAlphaChannel()) { QPixmap bg = QPixmap::grabWindow( qt_xrootwin(), x(), y(), width(), height() ); QPainter painter(&bg); painter.drawPixmap(0, 0, _pixmap); pixmap = bg; } else { pixmap = _pixmap; } QPainter painter( &pixmap, this ); version.draw(&painter); for(std::vector<TextItem>::const_iterator i = extraText.begin(); i != extraText.end(); ++i) (*i).draw(&painter); repaint(); }
bool FileProps::setValue( const TQString& group, const TQString& key, const TQString &value ) { KFileMetaInfoGroup g = m_info->group( group ); bool wasAdded = false; if ( !g.isValid() ) { if ( m_info->addGroup( group ) ) { wasAdded = true; g = m_info->group( group ); } else return false; } bool ok = g[key].setValue( value ); if ( !ok && wasAdded ) // remove the created group again (void) m_info->removeGroup( group ); m_dirty |= ok; return ok; }