• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • libkonq
 

libkonq

  • libkonq
tdefileivi.cpp
1/* This file is part of the KDE project
2 Copyright (C) 1999, 2000, 2001, 2002 David Faure <faure@kde.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 Boston, MA 02110-1301, USA.
18*/
19
20#include "tdefileivi.h"
21#include "kivdirectoryoverlay.h"
22#include "kivfreespaceoverlay.h"
23#include "konq_iconviewwidget.h"
24#include "konq_operations.h"
25#include "konq_settings.h"
26
27#include <tqpainter.h>
28
29#include <kurldrag.h>
30#include <kiconeffect.h>
31#include <tdefileitem.h>
32#include <kdebug.h>
33#include <krun.h>
34#include <kservice.h>
35#include <kmimetype.h> // for KDEDesktopMimeType
36#include <tdestandarddirs.h>
37
38#undef Bool
39
43struct KFileIVI::Private
44{
45 TQIconSet icons; // Icon states (cached to prevent re-applying icon effects
46 // every time)
47 TQPixmap thumb; // Raw unprocessed thumbnail
48 TQString m_animatedIcon; // Name of animation
49 bool m_animated; // Animation currently running ?
50 KIVDirectoryOverlay* m_directoryOverlay;
51 KIVFreeSpaceOverlay* m_freeSpaceOverlay;
52 TQPixmap m_overlay;
53 TQString m_overlayName;
54 int m_progress;
55};
56
57KFileIVI::KFileIVI( KonqIconViewWidget *iconview, KFileItem* fileitem, int size )
58 : TDEIconViewItem( iconview, fileitem->text() ),
59 m_size( size ), m_state( TDEIcon::DefaultState ),
60 m_bDisabled( false ), m_bThumbnail( false ), m_fileitem( fileitem )
61{
62 d = new KFileIVI::Private;
63
64 updatePixmapSize();
65 setPixmap( m_fileitem->pixmap( m_size, m_state ) );
66 setDropEnabled( S_ISDIR( m_fileitem->mode() ) );
67
68 // Cache entry for the icon effects
69 d->icons.reset( *pixmap(), TQIconSet::Large );
70 d->m_animated = false;
71
72 // iconName() requires the mimetype to be known
73 if ( fileitem->isMimeTypeKnown() )
74 {
75 TQString icon = fileitem->iconName();
76 if ( !icon.isEmpty() )
77 setMouseOverAnimation( icon );
78 else
79 setMouseOverAnimation( "unknown" );
80 }
81 d->m_progress = -1;
82 d->m_directoryOverlay = 0;
83 d->m_freeSpaceOverlay = 0;
84}
85
86KFileIVI::~KFileIVI()
87{
88 delete d->m_directoryOverlay;
89 delete d->m_freeSpaceOverlay;
90 delete d;
91}
92
93void KFileIVI::invalidateThumb( int state, bool redraw )
94{
95 TQIconSet::Mode mode;
96 switch( state )
97 {
98 case TDEIcon::DisabledState:
99 mode = TQIconSet::Disabled;
100 break;
101 case TDEIcon::ActiveState:
102 mode = TQIconSet::Active;
103 break;
104 case TDEIcon::DefaultState:
105 default:
106 mode = TQIconSet::Normal;
107 break;
108 }
109 d->icons = TQIconSet();
110 d->icons.setPixmap( TDEGlobal::iconLoader()->iconEffect()->
111 apply( d->thumb, TDEIcon::Desktop, state ),
112 TQIconSet::Large, mode );
113 m_state = state;
114
115 TQIconViewItem::setPixmap( d->icons.pixmap( TQIconSet::Large, mode ),
116 false, redraw );
117}
118
119void KFileIVI::setIcon( int size, int state, bool recalc, bool redraw )
120{
121 m_size = size;
122 m_bThumbnail = false;
123 if ( m_bDisabled )
124 m_state = TDEIcon::DisabledState;
125 else
126 m_state = state;
127
128 if ( d->m_overlayName.isNull() )
129 d->m_overlay = TQPixmap();
130 else {
131 int halfSize;
132 if (m_size == 0) {
133 halfSize = IconSize(TDEIcon::Desktop) / 2;
134 } else {
135 halfSize = m_size / 2;
136 }
137 d->m_overlay = DesktopIcon(d->m_overlayName, halfSize);
138 }
139
140 setPixmapDirect(m_fileitem->pixmap( m_size, m_state ) , recalc, redraw );
141}
142
143void KFileIVI::setOverlay( const TQString& iconName )
144{
145 d->m_overlayName = iconName;
146
147 refreshIcon(true);
148}
149
150void KFileIVI::setOverlayProgressBar( const int progress )
151{
152 d->m_progress = progress;
153
154 refreshIcon(true);
155}
156
157KIVDirectoryOverlay* KFileIVI::setShowDirectoryOverlay( bool show )
158{
159 if ( !m_fileitem->isDir() || m_fileitem->iconName() != "folder" )
160 return 0;
161
162 if (show) {
163 if (!d->m_directoryOverlay)
164 d->m_directoryOverlay = new KIVDirectoryOverlay(this);
165 return d->m_directoryOverlay;
166 } else {
167 delete d->m_directoryOverlay;
168 d->m_directoryOverlay = 0;
169 setOverlay(TQString());
170 return 0;
171 }
172}
173
174bool KFileIVI::showDirectoryOverlay( )
175{
176 return (bool)d->m_directoryOverlay;
177}
178
179KIVFreeSpaceOverlay* KFileIVI::setShowFreeSpaceOverlay( bool show )
180{
181 if ( !m_fileitem->mimetype().startsWith("media/") ) {
182 return 0;
183 }
184
185 if (show) {
186 if (!d->m_freeSpaceOverlay)
187 d->m_freeSpaceOverlay = new KIVFreeSpaceOverlay(this);
188 return d->m_freeSpaceOverlay;
189 } else {
190 delete d->m_freeSpaceOverlay;
191 d->m_freeSpaceOverlay = 0;
192 setOverlayProgressBar(-1);
193 return 0;
194 }
195}
196
197bool KFileIVI::showFreeSpaceOverlay( )
198{
199 return (bool)d->m_freeSpaceOverlay;
200}
201
202void KFileIVI::setPixmapDirect( const TQPixmap& pixmap, bool recalc, bool redraw )
203{
204 TQIconSet::Mode mode;
205 switch( m_state )
206 {
207 case TDEIcon::DisabledState:
208 mode = TQIconSet::Disabled;
209 break;
210 case TDEIcon::ActiveState:
211 mode = TQIconSet::Active;
212 break;
213 case TDEIcon::DefaultState:
214 default:
215 mode = TQIconSet::Normal;
216 break;
217 }
218
219 // We cannot just reset() the iconset here, because setIcon can be
220 // called with any state and not just normal state. So we just
221 // create a dummy empty iconset as base object.
222 d->icons = TQIconSet();
223 d->icons.setPixmap( pixmap, TQIconSet::Large, mode );
224
225 updatePixmapSize();
226 TQIconViewItem::setPixmap( d->icons.pixmap( TQIconSet::Large, mode ),
227 recalc, redraw );
228}
229
230void KFileIVI::setDisabled( bool disabled )
231{
232 if ( m_bDisabled != disabled )
233 {
234 m_bDisabled = disabled;
235 bool active = ( m_state == TDEIcon::ActiveState );
236 setEffect( m_bDisabled ? TDEIcon::DisabledState :
237 ( active ? TDEIcon::ActiveState : TDEIcon::DefaultState ) );
238 }
239}
240
241void KFileIVI::setThumbnailPixmap( const TQPixmap & pixmap )
242{
243 m_bThumbnail = true;
244 d->thumb = pixmap;
245 // TQIconSet::reset() doesn't seem to clear the other generated pixmaps,
246 // so we just create a blank TQIconSet here
247 d->icons = TQIconSet();
248 d->icons.setPixmap( TDEGlobal::iconLoader()->iconEffect()->
249 apply( pixmap, TDEIcon::Desktop, TDEIcon::DefaultState ),
250 TQIconSet::Large, TQIconSet::Normal );
251
252 m_state = TDEIcon::DefaultState;
253
254 // Recalc when setting this pixmap!
255 updatePixmapSize();
256 TQIconViewItem::setPixmap( d->icons.pixmap( TQIconSet::Large,
257 TQIconSet::Normal ), true );
258}
259
260void KFileIVI::setActive( bool active )
261{
262 if ( active )
263 setEffect( TDEIcon::ActiveState );
264 else
265 setEffect( m_bDisabled ? TDEIcon::DisabledState : TDEIcon::DefaultState );
266}
267
268void KFileIVI::setEffect( int state )
269{
270 TQIconSet::Mode mode;
271 switch( state )
272 {
273 case TDEIcon::DisabledState:
274 mode = TQIconSet::Disabled;
275 break;
276 case TDEIcon::ActiveState:
277 mode = TQIconSet::Active;
278 break;
279 case TDEIcon::DefaultState:
280 default:
281 mode = TQIconSet::Normal;
282 break;
283 }
284 // Do not update if the fingerprint is identical (prevents flicker)!
285
286 TDEIconEffect *effect = TDEGlobal::iconLoader()->iconEffect();
287
288 bool haveEffect = effect->hasEffect( TDEIcon::Desktop, m_state ) !=
289 effect->hasEffect( TDEIcon::Desktop, state );
290
291 //kdDebug(1203) << "desktop;defaultstate=" <<
292 // effect->fingerprint(TDEIcon::Desktop, TDEIcon::DefaultState) <<
293 // endl;
294 //kdDebug(1203) << "desktop;activestate=" <<
295 // effect->fingerprint(TDEIcon::Desktop, TDEIcon::ActiveState) <<
296 // endl;
297
298 if( haveEffect &&
299 effect->fingerprint( TDEIcon::Desktop, m_state ) !=
300 effect->fingerprint( TDEIcon::Desktop, state ) )
301 {
302 // Effects on are not applied until they are first accessed to
303 // save memory. Do this now when needed
304 if( m_bThumbnail )
305 {
306 if( d->icons.isGenerated( TQIconSet::Large, mode ) )
307 d->icons.setPixmap( effect->apply( d->thumb, TDEIcon::Desktop, state ),
308 TQIconSet::Large, mode );
309 }
310 else
311 {
312 if( d->icons.isGenerated( TQIconSet::Large, mode ) )
313 d->icons.setPixmap( m_fileitem->pixmap( m_size, state ),
314 TQIconSet::Large, mode );
315 }
316 TQIconViewItem::setPixmap( d->icons.pixmap( TQIconSet::Large, mode ) );
317 }
318 m_state = state;
319}
320
321void KFileIVI::refreshIcon( bool redraw )
322{
323 if (!isThumbnail()) {
324 setIcon( m_size, m_state, true, redraw );
325 }
326}
327
328void KFileIVI::invalidateThumbnail()
329{
330 d->thumb = TQPixmap();
331}
332
333bool KFileIVI::isThumbnailInvalid() const
334{
335 return d->thumb.isNull();
336}
337
338bool KFileIVI::acceptDrop( const TQMimeSource *mime ) const
339{
340 if ( mime->provides( "text/uri-list" ) ) // We're dragging URLs
341 {
342 if ( m_fileitem->acceptsDrops() ) // Directory, executables, ...
343 return true;
344
345 // Use cache
346 KURL::List uris = ( static_cast<KonqIconViewWidget*>(iconView()) )->dragURLs();
347
348 // Check if we want to drop something on itself
349 // (Nothing will happen, but it's a convenient way to move icons)
350 KURL::List::Iterator it = uris.begin();
351 for ( ; it != uris.end() ; it++ )
352 {
353 if ( m_fileitem->url().equals( *it, true /*ignore trailing slashes*/ ) )
354 return true;
355 }
356 }
357 return TQIconViewItem::acceptDrop( mime );
358}
359
360void KFileIVI::setKey( const TQString &key )
361{
362 TQString theKey = key;
363
364 TQVariant sortDirProp = iconView()->property( "sortDirectoriesFirst" );
365
366 bool isdir = ( S_ISDIR( m_fileitem->mode() ) && ( !sortDirProp.isValid() || ( sortDirProp.type() == TQVariant::Bool && sortDirProp.toBool() ) ) );
367
368 // The order is: .dir (0), dir (1), .file (2), file (3)
369 int sortChar = isdir ? 1 : 3;
370 if ( m_fileitem->text()[0] == '.' )
371 --sortChar;
372
373 if ( !iconView()->sortDirection() ) // reverse sorting
374 sortChar = 3 - sortChar;
375
376 theKey.prepend( TQChar( sortChar + '0' ) );
377
378 TQIconViewItem::setKey( theKey );
379}
380
381void KFileIVI::dropped( TQDropEvent *e, const TQValueList<TQIconDragItem> & )
382{
383 KonqOperations::doDrop( item(), item()->url(), e, iconView() );
384}
385
386void KFileIVI::returnPressed()
387{
388 if ( static_cast<KonqIconViewWidget*>(iconView())->isDesktop() ) {
389 KURL url = m_fileitem->url();
390 if (url.protocol() == "media") {
391 TQString mimetype = m_fileitem->mimetype();
392 TQString lockingAction = TQString::null;
393 if (mimetype.contains("encrypted_locked")) {
394 lockingAction = "konqueror/servicemenus/media_unlock.desktop";
395 }
396 else if (mimetype.contains("encrypted_unlocked")) {
397 lockingAction = "konqueror/servicemenus/media_lock.desktop";
398 }
399 if (!lockingAction.isEmpty()) {
400 TQString lockingService = TDEGlobal::dirs()->findResource("data", lockingAction);
401 if (!lockingService.isEmpty()) {
402 TQValueList<KDEDesktopMimeType::Service> serviceList = KDEDesktopMimeType::userDefinedServices(lockingService, m_fileitem->isLocalFile());
403 if (serviceList.count() == 1) {
404 KURL::List m_lstURLs;
405 m_lstURLs.append(m_fileitem->url());
406 KDEDesktopMimeType::executeService(m_lstURLs, serviceList[0]);
407 }
408 }
409 }
410 else {
411 (void) new KRun( url, m_fileitem->mode(), m_fileitem->isLocalFile() );
412 }
413 }
414 else {
415 // When clicking on a link to e.g. $HOME from the desktop, we want to open $HOME
416 // Symlink resolution must only happen on the desktop though (#63014)
417 if ( m_fileitem->isLink() && url.isLocalFile() ) {
418 url = KURL( url, m_fileitem->linkDest() );
419 }
420
421 (void) new KRun( url, m_fileitem->mode(), m_fileitem->isLocalFile() );
422 }
423 }
424 else {
425 m_fileitem->run();
426 }
427}
428
429
430void KFileIVI::paintItem( TQPainter *p, const TQColorGroup &c )
431{
432 TQColorGroup cg = updateColors(c);
433 paintFontUpdate( p );
434
435 //*** TEMPORARY CODE - MUST BE MADE CONFIGURABLE FIRST - Martijn
436 // SET UNDERLINE ON HOVER ONLY
437 /*if ( ( ( KonqIconViewWidget* ) iconView() )->m_pActiveItem == this )
438 {
439 TQFont f( p->font() );
440 f.setUnderline( TRUE );
441 p->setFont( f );
442 }*/
443
444 TDEIconViewItem::paintItem( p, cg );
445 paintOverlay(p);
446 paintOverlayProgressBar(p);
447
448}
449
450void KFileIVI::paintOverlay( TQPainter *p ) const
451{
452 if ( !d->m_overlay.isNull() ) {
453 TQRect rect = pixmapRect(true);
454 p->drawPixmap(x() + rect.x() , y() + pixmapRect().height() - d->m_overlay.height(), d->m_overlay);
455 }
456}
457
458void KFileIVI::paintOverlayProgressBar( TQPainter *p ) const
459{
460 if (d->m_progress != -1) {
461// // Pie chart
462// TQRect rect = pixmapRect(true);
463// rect.setX(x() + rect.x());
464// rect.setY(y() + rect.y() + ((pixmapRect().height()*3)/4));
465// rect.setWidth(pixmapRect().width()/4);
466// rect.setHeight(pixmapRect().height()/4);
467//
468// p->save();
469//
470// p->setPen(TQPen::NoPen);
471// p->setBrush(TQt::red);
472// p->drawEllipse(rect);
473// p->setBrush(TQt::green);
474// p->drawPie(rect, 1440, (((100-d->m_progress)*5760)/100));
475
476// // Horizontal progress bar
477// TQRect rect = pixmapRect(true);
478// int verticalOffset = 0;
479// int usedBarWidth = ((d->m_progress*pixmapRect().width())/100);
480// int endPosition = x() + rect.x() + usedBarWidth;
481//
482// p->save();
483//
484// p->setPen(TQPen::NoPen);
485// p->setBrush(TQt::red);
486// p->drawRect(TQRect(x() + rect.x(), y() + rect.y() + (pixmapRect().height() - verticalOffset), usedBarWidth, 1));
487// p->setBrush(TQt::green);
488// p->drawRect(TQRect(endPosition, y() + rect.y() + (pixmapRect().height() - verticalOffset), pixmapRect().width() - usedBarWidth, 1));
489
490 // Vertical progress bar
491 TQRect rect = pixmapRect(true);
492 int horizontalOffset = 0;
493 int usedBarHeight = (((100-d->m_progress)*pixmapRect().height())/100);
494 int endPosition = y() + rect.y() + usedBarHeight;
495
496 p->save();
497
498 p->setPen(TQPen::NoPen);
499 p->setBrush(TQt::green);
500 p->drawRect(TQRect(x() + rect.x() + (pixmapRect().width() - horizontalOffset), y() + rect.y(), 1, usedBarHeight));
501 p->setBrush(TQt::red);
502 p->drawRect(TQRect(x() + rect.x() + (pixmapRect().width() - horizontalOffset), endPosition, 1, pixmapRect().height() - usedBarHeight));
503
504 p->restore();
505 }
506}
507
508void KFileIVI::paintFontUpdate( TQPainter *p ) const
509{
510 if ( m_fileitem->isLink() )
511 {
512 TQFont f( p->font() );
513 f.setItalic( TRUE );
514 p->setFont( f );
515 }
516}
517
518TQColorGroup KFileIVI::updateColors( const TQColorGroup &c ) const
519{
520 TQColorGroup cg( c );
521 cg.setColor( TQColorGroup::Text, static_cast<KonqIconViewWidget*>(iconView())->itemColor() );
522 return cg;
523}
524
525bool KFileIVI::move( int x, int y )
526{
527 if ( static_cast<KonqIconViewWidget*>(iconView())->isDesktop() ) {
528 if ( x < 5 )
529 x = 5;
530 if ( x > iconView()->viewport()->width() - ( width() + 5 ) )
531 x = iconView()->viewport()->width() - ( width() + 5 );
532 if ( y < 5 )
533 y = 5;
534 if ( y > iconView()->viewport()->height() - ( height() + 5 ) )
535 y = iconView()->viewport()->height() - ( height() + 5 );
536 }
537 return TQIconViewItem::move( x, y );
538}
539
540bool KFileIVI::hasAnimation() const
541{
542 return !d->m_animatedIcon.isEmpty() && !m_bThumbnail;
543}
544
545void KFileIVI::setMouseOverAnimation( const TQString& movieFileName )
546{
547 if ( !movieFileName.isEmpty() )
548 {
549 //kdDebug(1203) << "TDEIconViewItem::setMouseOverAnimation " << movieFileName << endl;
550 d->m_animatedIcon = movieFileName;
551 }
552}
553
554TQString KFileIVI::mouseOverAnimation() const
555{
556 return d->m_animatedIcon;
557}
558
559bool KFileIVI::isAnimated() const
560{
561 return d->m_animated;
562}
563
564void KFileIVI::setAnimated( bool a )
565{
566 d->m_animated = a;
567}
568
569int KFileIVI::compare( TQIconViewItem *i ) const
570{
571 KonqIconViewWidget* view = static_cast<KonqIconViewWidget*>(iconView());
572 if ( view->caseInsensitiveSort() )
573 return key().localeAwareCompare( i->key() );
574 else
575 return view->m_pSettings->caseSensitiveCompare( key(), i->key() );
576}
577
578void KFileIVI::updatePixmapSize()
579{
580 int size = m_size ? m_size :
581 TDEGlobal::iconLoader()->currentSize( TDEIcon::Desktop );
582
583 KonqIconViewWidget* view = static_cast<KonqIconViewWidget*>( iconView() );
584
585 bool mimeDetermined = false;
586 if ( m_fileitem->isMimeTypeKnown() ) {
587 mimeDetermined = true;
588 }
589
590 if (mimeDetermined) {
591 bool changed = false;
592 if ( view && view->canPreview( item() ) ) {
593 int previewSize = view->previewIconSize( size );
594 if (previewSize != size) {
595 setPixmapSize( TQSize( previewSize, previewSize ) );
596 changed = true;
597 }
598 }
599 else {
600 TQSize pixSize = TQSize( size, size );
601 if ( pixSize != pixmapSize() ) {
602 setPixmapSize( pixSize );
603 changed = true;
604 }
605 }
606 if (changed) {
607 view->adjustItems();
608 }
609 }
610 else {
611 TQSize pixSize = TQSize( size, size );
612 if ( pixSize != pixmapSize() ) {
613 setPixmapSize( pixSize );
614 }
615 }
616}
617
618void KFileIVI::mimeTypeAndIconDetermined()
619{
620 updatePixmapSize();
621}
KFileIVI::returnPressed
virtual void returnPressed()
Handler for return (or single/double click) on ONE icon.
Definition: tdefileivi.cpp:386
KFileIVI::setIcon
virtual void setIcon(int size, int state=TDEIcon::DefaultState, bool recalc=false, bool redraw=false)
Changes the icon for this item.
Definition: tdefileivi.cpp:119
KFileIVI::setEffect
void setEffect(int state)
Set the icon to use the specified TDEIconEffect See the docs for TDEIconEffect for details.
Definition: tdefileivi.cpp:268
KFileIVI::invalidateThumb
void invalidateThumb(int state, bool redraw=false)
Notifies that all icon effects on thumbs should be invalidated, e.g.
Definition: tdefileivi.cpp:93
KFileIVI::setShowDirectoryOverlay
KIVDirectoryOverlay * setShowDirectoryOverlay(bool)
Sets showing of directory overlays.
Definition: tdefileivi.cpp:157
KFileIVI::item
KFileItem * item() const
Definition: tdefileivi.h:60
KFileIVI::KFileIVI
KFileIVI(KonqIconViewWidget *iconview, KFileItem *fileitem, int size)
Create an icon, within a qlistview, representing a file.
Definition: tdefileivi.cpp:57
KFileIVI::paintFontUpdate
void paintFontUpdate(TQPainter *p) const
Contains the logic and code for painting links.
Definition: tdefileivi.cpp:508
KFileIVI::setOverlayProgressBar
void setOverlayProgressBar(const int progress)
Sets a progress bar to be shown on the right side of the icon.
Definition: tdefileivi.cpp:150
KFileIVI::updateColors
TQColorGroup updateColors(const TQColorGroup &c) const
Updates the colorgroup.
Definition: tdefileivi.cpp:518
KFileIVI::invalidateThumbnail
void invalidateThumbnail()
Our current thumbnail is not longer "current".
Definition: tdefileivi.cpp:328
KFileIVI::state
int state() const
Return the current state of the icon (TDEIcon::DefaultState, TDEIcon::ActiveState etc....
Definition: tdefileivi.h:114
KFileIVI::setOverlay
void setOverlay(const TQString &iconName)
Sets an icon to be shown over the bottom left corner of the icon.
Definition: tdefileivi.cpp:143
KFileIVI::setActive
void setActive(bool active)
Called when the mouse is over the icon.
Definition: tdefileivi.cpp:260
KFileIVI::acceptDrop
virtual bool acceptDrop(const TQMimeSource *mime) const
Definition: tdefileivi.cpp:338
KFileIVI::refreshIcon
virtual void refreshIcon(bool redraw)
Redetermines the icon (useful if KFileItem might return another icon).
Definition: tdefileivi.cpp:321
KFileIVI::setThumbnailPixmap
void setThumbnailPixmap(const TQPixmap &pixmap)
Set this when the thumbnail was loaded.
Definition: tdefileivi.cpp:241
KFileIVI::isAnimated
bool isAnimated() const
Return true if we are currently animating this icon.
Definition: tdefileivi.cpp:559
KFileIVI::setMouseOverAnimation
void setMouseOverAnimation(const TQString &movieFileName)
Enable an animation on mouseover, if there is an available mng.
Definition: tdefileivi.cpp:545
KFileIVI::setDisabled
void setDisabled(bool disabled)
Set to true when this icon is 'cut'.
Definition: tdefileivi.cpp:230
KFileIVI::isThumbnail
bool isThumbnail() const
Definition: tdefileivi.h:140
KFileIVI::hasAnimation
bool hasAnimation() const
Return true if the icon might have an animation available.
Definition: tdefileivi.cpp:540
KFileIVI::setShowFreeSpaceOverlay
KIVFreeSpaceOverlay * setShowFreeSpaceOverlay(bool)
Sets showing of free space overlays.
Definition: tdefileivi.cpp:179
KFileIVI::setPixmapDirect
void setPixmapDirect(const TQPixmap &pixmap, bool recalc=false, bool redraw=false)
Bypass setIcon.
Definition: tdefileivi.cpp:202
KFileIVI::paintOverlayProgressBar
void paintOverlayProgressBar(TQPainter *p) const
Contains the logic and code for painting the overlay progress bar.
Definition: tdefileivi.cpp:458
KFileIVI::paintItem
virtual void paintItem(TQPainter *p, const TQColorGroup &cg)
Paints this item.
Definition: tdefileivi.cpp:430
KFileIVI::paintOverlay
void paintOverlay(TQPainter *p) const
Contains the logic and code for painting the overlay pixmap.
Definition: tdefileivi.cpp:450
KonqIconViewWidget
A file-aware icon view, implementing drag'n'drop, KDE icon sizes, user settings, animated icons....
Definition: konq_iconviewwidget.h:43
KonqOperations::doDrop
static void doDrop(const KFileItem *destItem, const KURL &destURL, TQDropEvent *ev, TQWidget *parent)
Drop.
Definition: konq_operations.cpp:315

libkonq

Skip menu "libkonq"
  • Main Page
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members
  • Related Pages

libkonq

Skip menu "libkonq"
  • kate
  • libkonq
  • twin
  •   lib
Generated for libkonq by doxygen 1.9.4
This website is maintained by Timothy Pearson.