mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-20 08:51:24 +00:00
Make mime list to be sorted. Minor UI fixes.
svn path=/trunk/kdebase/kfind/; revision=37039
This commit is contained in:
parent
8f89fa854e
commit
88cd719eb5
|
@ -31,13 +31,13 @@
|
|||
#include <string.h>
|
||||
|
||||
#include <klocale.h>
|
||||
#include <kconfig.h>
|
||||
#include <kapp.h>
|
||||
|
||||
#include "kftypes.h"
|
||||
#include "kfarch.h"
|
||||
#include "kfoptions.h"
|
||||
#include "kfsave.h"
|
||||
|
||||
extern QList<KfFileType> *types;
|
||||
extern KfSaveOptions *saving;
|
||||
extern QList<KfArchiver> *archivers;
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ static QString quote(const QString);
|
|||
|
||||
#define SPECIAL_TYPES 7
|
||||
|
||||
extern QList<KfFileType> *types;
|
||||
extern KfFileTypeList *types;
|
||||
|
||||
KfindTabWidget::KfindTabWidget(QWidget *parent, const char *name,
|
||||
const char *searchPath)
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
#include <kglobal.h>
|
||||
#include <kdesktopfile.h>
|
||||
|
||||
QList<KfFileType> *types;
|
||||
KfFileTypeList *types;
|
||||
|
||||
void KfFileType::initFileTypes( const QString& _path )
|
||||
{
|
||||
|
@ -89,11 +89,13 @@ void KfFileType::initFileTypes( const QString& _path )
|
|||
|
||||
void KfFileType::init()
|
||||
{
|
||||
types = new QList<KfFileType>;
|
||||
types = new KfFileTypeList();
|
||||
|
||||
QStringList list = KGlobal::dirs()->resourceDirs("mime");
|
||||
for (QStringList::ConstIterator it = list.begin(); it != list.end(); it++)
|
||||
initFileTypes( *it );
|
||||
|
||||
types->sort();
|
||||
};
|
||||
|
||||
KfFileType* KfFileType::findByName( const QString& _name )
|
||||
|
|
|
@ -151,5 +151,25 @@ protected:
|
|||
/// Default pixmap for folders
|
||||
static char folderPixmap[ 1024 ];
|
||||
};
|
||||
|
||||
|
||||
class KfFileTypeList: public QList<KfFileType>
|
||||
{
|
||||
public:
|
||||
KfFileTypeList() {}
|
||||
~KfFileTypeList() { clear(); }
|
||||
|
||||
protected:
|
||||
int compareItems( Item s1, Item s2 ) {
|
||||
QString n1 = ((KfFileType*)s1)->getComment("");
|
||||
if(n1 == "")
|
||||
n1 = ((KfFileType*)s1)->getName();
|
||||
|
||||
QString n2 = ((KfFileType*)s2)->getComment("");
|
||||
if(n2 == "")
|
||||
n2 = ((KfFileType*)s2)->getName();
|
||||
|
||||
return n1.compare(n2);
|
||||
};
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -100,7 +100,6 @@ KfindWindow::KfindWindow( QWidget *parent, const char *name )
|
|||
: QListView( parent, name )
|
||||
{
|
||||
// topLevelWidget()->installEventFilter(lbx);
|
||||
setMultiSelection(TRUE);
|
||||
setSelectionMode( QListView::Extended );
|
||||
|
||||
addColumn(i18n("Name"));
|
||||
|
@ -473,7 +472,11 @@ void KfindWindow::resetColumns(bool init)
|
|||
if(init) {
|
||||
QFontMetrics fm = fontMetrics();
|
||||
setColumnWidth(2, QMAX(fm.width(columnText(2)), fm.width("0000000")) + 15);
|
||||
setColumnWidth(3, QMAX(fm.width(columnText(3)), fm.width("00/00/00 00:00:00")) + 15);
|
||||
QString sampleDate =
|
||||
KGlobal::locale()->formatDate(QDate::currentDate(), true) +
|
||||
" " +
|
||||
KGlobal::locale()->formatTime(QTime::currentTime(), true);
|
||||
setColumnWidth(3, QMAX(fm.width(columnText(3)), fm.width(sampleDate)) + 15);
|
||||
setColumnWidth(4, QMAX(fm.width(columnText(4)), fm.width(i18n(perm[RO]))) + 15);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue