Procházet zdrojové kódy

add path:当窗口内没选中文件夹时,把当前路径加入到 search path

mrh před 3 roky
rodič
revize
72a2144be2
3 změnil soubory, kde provedl 13 přidání a 6 odebrání
  1. 1 0
      sub_windows.py
  2. 12 1
      ui/AddFile.py
  3. 0 5
      ui/Analyze.py

+ 1 - 0
sub_windows.py

@@ -112,6 +112,7 @@ class MultiFormWin(FormWindow):
         # mdiArea.currentSubWindow
         self.show()
 
+
 class TreeWidgetItem(QTreeWidgetItem):
     def __init__(self, parent: int, tree_row:GuiType._GuiTreeRow):
         super().__init__(parent)    

+ 12 - 1
ui/AddFile.py

@@ -37,6 +37,7 @@ class AddPathWindow(Ui_AddFileWindow, QDialog):
         # 表格随窗口适应大小
         self.fileTable.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
         self.fileTable.cellDoubleClicked.connect(self.double_click)
+        self.fileTable.mousePressEvent = self.click_table_widget
         self.address_bar = BreadcrumbsAddressBar(self)
         self.address_bar.path_selected.connect(self.open_folder)
         self.address_bar.path_error.connect(lambda path: self.address_error_connect("No such file or directory", path.name))
@@ -73,6 +74,16 @@ class AddPathWindow(Ui_AddFileWindow, QDialog):
         msg.move(self.x()+(self.width()-msg.width())/2,self.y()+(self.height()-msg.height())/2)
         msg.exec_()
 
+    # 点击空白处取消选择
+    def click_table_widget(self, event:QMouseEvent):
+        p = event.pos()
+        index = self.fileTable.indexAt(p)
+        if index.row() == -1:
+            self.fileTable.clearSelection()
+            self.fileTable.setCurrentIndex(QModelIndex())
+        else:
+            QTableWidget.mousePressEvent(self.fileTable, event)
+
     def double_click(self, row, column):
         if column != 0:
             return
@@ -88,7 +99,7 @@ class AddPathWindow(Ui_AddFileWindow, QDialog):
     def current_select_path(self):
         row = self.fileTable.currentRow()
         if row < 0:
-            return
+            return str(self.address_bar.path_)
         widg:FileWidget = self.fileTable.cellWidget(row, 0)
         filename = widg.get_text()
         abs_path = os.path.join(self.path_obj.pathtext, filename)

+ 0 - 5
ui/Analyze.py

@@ -19,17 +19,12 @@ class AnalyzeWindow(Ui_AnalyzeWindow, QDialog):
         self.bnt_Remove.clicked.connect(lambda: self.tableWidget.removeRow(self.tableWidget.currentRow()))
         self.bnt_RemoveAll.clicked.connect(self.remove_all)
         self.tableWidget.mousePressEvent = self.click_table_widget
-        # self.bnt_AddPath.clicked.connect(self.add_file_windows)
-        # self.bnt_Remove.clicked.connect(self.add_file_windows)
-        # self.bnt_RemoveAll.clicked.connect(self.add_file_windows)
         
         self.move(mainWindow.x()+(mainWindow.width()-self.width())/2,mainWindow.y()+(mainWindow.height()-self.height())/2)
         self.show()
     
     def init_tableWidget(self):
         self.tableWidget.itemSelectionChanged.connect(self.itemSelectionChanged)
-        # self.tableWidget.itemClicked.connect(self.itemClicked)
-        # self.tableWidget.clicked.connect(self.clicked)
         
         comBox = QComboBox()
         comBox.addItems(self.file_types)