[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [kdiff3] src: Actually add QTreeWidgetItem to QTreeWidget.
From: Michael Reeves <null () kde ! org>
Date: 2018-09-03 15:05:00
Message-ID: E1fwqPU-0004Nv-8N () code ! kde ! org
[Download RAW message or body]
Git commit 31b8537d767add5cda3b39eec9dd9015302cfacb by Michael Reeves.
Committed on 02/09/2018 at 17:02.
Pushed by mreeves into branch 'master'.
Actually add QTreeWidgetItem to QTreeWidget.
Don't just leak memmory when creating QTreeWidgetItems in
DirectoryMergeInfo::addListViewItem. Acually do something with the
returned object. Like add it to the QTreeWidget.
M +16 -20 src/directorymergewindow.cpp
M +7 -5 src/directorymergewindow.h
https://commits.kde.org/kdiff3/31b8537d767add5cda3b39eec9dd9015302cfacb
diff --git a/src/directorymergewindow.cpp b/src/directorymergewindow.cpp
index 7cd8a67..1f2698f 100644
--- a/src/directorymergewindow.cpp
+++ b/src/directorymergewindow.cpp
@@ -3352,8 +3352,7 @@ bool DirectoryMergeInfo::eventFilter(QObject* o, QEvent* e)
return false;
}
-static void addListViewItem(QTreeWidget* pListView, const QString& dir,
- const QString& basePath, FileAccess* fi)
+void DirectoryMergeInfo::addListViewItem(const QString& dir, const QString& basePath, \
FileAccess* fi) {
if(basePath.isEmpty())
{
@@ -3365,26 +3364,23 @@ static void addListViewItem(QTreeWidget* pListView, const QString& dir,
{
QString dateString = fi->lastModified().toString("yyyy-MM-dd hh:mm:ss");
//TODO: Move logic to FileAccess
- new QTreeWidgetItem(
- pListView,
- QStringList() << dir << QString(fi->isDir() ? i18n("Dir") : i18n("File")) + \
(fi->isSymLink() ? i18n("-Link") : "") << QString::number(fi->size()) << \
QLatin1String(fi->isReadable() ? "r" : " ") + QLatin1String(fi->isWritable() ? \
"w" : " ")
-#ifdef Q_OS_WIN
- /*Future: Use GetFileAttributes()*/
- <<
-#else
- \
+ QLatin1String((fi->isExecutable() ? "x" : " "))
- <<
-#endif
- dateString << QString(fi->isSymLink() ? (" -> " + fi->readLink()) : \
QString(""))); + m_pInfoList->addTopLevelItem( new QTreeWidgetItem(
+ m_pInfoList,
+ QStringList() << dir <<
+ QString(fi->isDir() ? i18n("Dir") : i18n("File")) + (fi->isSymLink() ? \
i18n("-Link") : "") << QString::number(fi->size()) << QLatin1String(fi->isReadable() ? "r" : " \
") + + QLatin1String(fi->isWritable() ? "w" : " ")
+ + QLatin1String((fi->isExecutable() ? "x" : " ")) <<
+ dateString << QString(fi->isSymLink() ? (" -> " + fi->readLink()) : \
QString(""))) + );
}
else
{
- new QTreeWidgetItem(
- pListView,
+ m_pInfoList->addTopLevelItem(new QTreeWidgetItem(
+ m_pInfoList,
QStringList() << dir << i18n("not available") << ""
<< ""
<< ""
- << "");
+ << ""));
}
}
}
@@ -3449,13 +3445,13 @@ void DirectoryMergeInfo::setInfo(
}
m_pInfoList->clear();
- addListViewItem(m_pInfoList, i18n("A"), dirA.prettyAbsPath(), mfi.m_pFileInfoA);
- addListViewItem(m_pInfoList, i18n("B"), dirB.prettyAbsPath(), mfi.m_pFileInfoB);
- addListViewItem(m_pInfoList, i18n("C"), dirC.prettyAbsPath(), mfi.m_pFileInfoC);
+ addListViewItem(i18n("A"), dirA.prettyAbsPath(), mfi.m_pFileInfoA);
+ addListViewItem(i18n("B"), dirB.prettyAbsPath(), mfi.m_pFileInfoB);
+ addListViewItem(i18n("C"), dirC.prettyAbsPath(), mfi.m_pFileInfoC);
if(!bHideDest)
{
FileAccess fiDest(dirDest.prettyAbsPath() + "/" + mfi.subPath(), true);
- addListViewItem(m_pInfoList, i18n("Dest"), dirDest.prettyAbsPath(), &fiDest);
+ addListViewItem(i18n("Dest"), dirDest.prettyAbsPath(), &fiDest);
}
for(int i = 0; i < m_pInfoList->columnCount(); ++i)
m_pInfoList->resizeColumnToContents(i);
diff --git a/src/directorymergewindow.h b/src/directorymergewindow.h
index a997ff5..b9a5669 100644
--- a/src/directorymergewindow.h
+++ b/src/directorymergewindow.h
@@ -147,11 +147,11 @@ protected Q_SLOTS:
void onExpanded();
void currentChanged( const QModelIndex & current, const QModelIndex & previous ) override; \
// override private:
- class Data;
- friend class Data;
- Data* d;
- class DirMergeItemDelegate;
- friend class DirMergeItemDelegate;
+ class Data;
+ friend class Data;
+ Data* d;
+ class DirMergeItemDelegate;
+ friend class DirMergeItemDelegate;
};
class DirectoryMergeInfo : public QFrame
@@ -170,6 +170,8 @@ public:
Q_SIGNALS:
void gotFocus();
private:
+ void addListViewItem(const QString& dir, const QString& basePath, FileAccess* fi);
+
QLabel* m_pInfoA;
QLabel* m_pInfoB;
QLabel* m_pInfoC;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic