diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2019-05-20 17:58:00 -0400 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2019-05-20 17:58:00 -0400 |
| commit | c5f61733850d6737814041f645a009e1cc60a7ed (patch) | |
| tree | 99153344fa8ceeb4cd19745207977e36ce577acf /src | |
| parent | 00f8cbff05c3f548baba59b0cb525205cc1d80e3 (diff) | |
made expander use the full width
context menu for noconflict tree
Diffstat (limited to 'src')
| -rw-r--r-- | src/modinfodialog.cpp | 37 | ||||
| -rw-r--r-- | src/modinfodialog.h | 4 | ||||
| -rw-r--r-- | src/modinfodialog.ui | 54 |
3 files changed, 48 insertions, 47 deletions
diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp index 3f8b58a9..d32b112f 100644 --- a/src/modinfodialog.cpp +++ b/src/modinfodialog.cpp @@ -1732,7 +1732,6 @@ void ModInfoDialog::openOverwriteDataFile() void ModInfoDialog::previewOverwrittenDataFile() { - // the overwritten tree only supports single selection, but check just in case const auto selection = ui->overwrittenTree->selectedItems(); if (!selection.empty()) { previewDataFile(selection[0]); @@ -1741,13 +1740,28 @@ void ModInfoDialog::previewOverwrittenDataFile() void ModInfoDialog::openOverwrittenDataFile() { - // the overwritten tree only supports single selection, but check just in case const auto selection = ui->overwrittenTree->selectedItems(); if (!selection.empty()) { openDataFile(selection[0]); } } +void ModInfoDialog::previewNoConflictDataFile() +{ + const auto selection = ui->noConflictTree->selectedItems(); + if (!selection.empty()) { + previewDataFile(selection[0]); + } +} + +void ModInfoDialog::openNoConflictDataFile() +{ + const auto selection = ui->noConflictTree->selectedItems(); + if (!selection.empty()) { + openDataFile(selection[0]); + } +} + void ModInfoDialog::openDataFile(const QTreeWidgetItem* item) { if (!item) { @@ -1992,6 +2006,25 @@ void ModInfoDialog::on_overwrittenTree_customContextMenuRequested(const QPoint & } } +void ModInfoDialog::on_noConflictTree_customContextMenuRequested(const QPoint &pos) +{ + auto* item = ui->noConflictTree->itemAt(pos.x(), pos.y()); + + if (item != nullptr) { + if (!item->data(1, Qt::UserRole + 2).toBool()) { + QMenu menu; + + menu.addAction(tr("Open/Execute"), this, SLOT(openNoConflictDataFile())); + + if (canPreviewConflictItem(item)) { + menu.addAction(tr("Preview"), this, SLOT(previewNoConflictDataFile())); + } + + menu.exec(ui->noConflictTree->viewport()->mapToGlobal(pos)); + } + } +} + void ModInfoDialog::on_overwrittenTree_itemDoubleClicked(QTreeWidgetItem *item, int) { emit modOpen(item->data(1, Qt::UserRole).toString(), TAB_CONFLICTS); diff --git a/src/modinfodialog.h b/src/modinfodialog.h index 731611d2..32efa210 100644 --- a/src/modinfodialog.h +++ b/src/modinfodialog.h @@ -319,6 +319,9 @@ private slots: void previewOverwrittenDataFile();
void openOverwrittenDataFile();
+ void previewNoConflictDataFile();
+ void openNoConflictDataFile();
+
void thumbnailClicked(const QString &fileName);
void linkClicked(const QUrl &url);
void linkClicked(QString url);
@@ -355,6 +358,7 @@ private slots: void on_overwrittenTree_itemDoubleClicked(QTreeWidgetItem *item, int column);
void on_overwriteTree_customContextMenuRequested(const QPoint &pos);
void on_overwrittenTree_customContextMenuRequested(const QPoint &pos);
+ void on_noConflictTree_customContextMenuRequested(const QPoint &pos);
void on_fileTree_customContextMenuRequested(const QPoint &pos);
void on_refreshButton_clicked();
diff --git a/src/modinfodialog.ui b/src/modinfodialog.ui index 0d96f621..1187de87 100644 --- a/src/modinfodialog.ui +++ b/src/modinfodialog.ui @@ -407,7 +407,7 @@ Most mods do not have optional esps, so chances are good you are looking at an e <item>
<layout class="QVBoxLayout" name="overwriteRoot">
<item>
- <layout class="QHBoxLayout" name="overwriteHeader" stretch="0,0,0">
+ <layout class="QHBoxLayout" name="overwriteHeader" stretch="1,0">
<item>
<widget class="QToolButton" name="overwriteExpander">
<property name="sizePolicy">
@@ -417,7 +417,8 @@ Most mods do not have optional esps, so chances are good you are looking at an e </sizepolicy>
</property>
<property name="styleSheet">
- <string notr="true">border: none</string>
+ <string notr="true">border: none;
+text-align: left;</string>
</property>
<property name="text">
<string>The following conflicted files are provided by this mod</string>
@@ -425,19 +426,6 @@ Most mods do not have optional esps, so chances are good you are looking at an e </widget>
</item>
<item>
- <spacer name="overwriteSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
<widget class="QLCDNumber" name="overwriteCount">
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
@@ -501,7 +489,7 @@ Most mods do not have optional esps, so chances are good you are looking at an e <item>
<layout class="QVBoxLayout" name="overwrittenRoot">
<item>
- <layout class="QHBoxLayout" name="overwrittenHeader" stretch="0,0,0">
+ <layout class="QHBoxLayout" name="overwrittenHeader" stretch="1,0">
<item>
<widget class="QToolButton" name="overwrittenExpander">
<property name="sizePolicy">
@@ -511,7 +499,8 @@ Most mods do not have optional esps, so chances are good you are looking at an e </sizepolicy>
</property>
<property name="styleSheet">
- <string notr="true">border: none</string>
+ <string notr="true">border: none;
+text-align: left;</string>
</property>
<property name="text">
<string>The following conflicted files are provided by other mods</string>
@@ -519,19 +508,6 @@ Most mods do not have optional esps, so chances are good you are looking at an e </widget>
</item>
<item>
- <spacer name="overwrittenSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
<widget class="QLCDNumber" name="overwrittenCount">
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
@@ -583,7 +559,7 @@ Most mods do not have optional esps, so chances are good you are looking at an e <item>
<layout class="QVBoxLayout" name="noConflictRoot">
<item>
- <layout class="QHBoxLayout" name="noConflictHeader" stretch="0,0,0">
+ <layout class="QHBoxLayout" name="noConflictHeader" stretch="1,0">
<item>
<widget class="QToolButton" name="noConflictExpander">
<property name="sizePolicy">
@@ -593,7 +569,8 @@ Most mods do not have optional esps, so chances are good you are looking at an e </sizepolicy>
</property>
<property name="styleSheet">
- <string notr="true">border: none;</string>
+ <string notr="true">border: none;
+text-align: left;</string>
</property>
<property name="text">
<string>The following files have no conflicts</string>
@@ -601,19 +578,6 @@ Most mods do not have optional esps, so chances are good you are looking at an e </widget>
</item>
<item>
- <spacer name="noConflictSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
<widget class="QLCDNumber" name="noConflictCount">
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
|
