Ejemplo n.º 1
0
 def on_double_click(self, index):
     item = self.model().itemFromIndex(index)
     name = self.model().item(item.row(), 0).text()
     if name in self.gateway.magic_folders:
         open_path(self.gateway.magic_folders[name]['directory'])
     elif self.gateway.remote_magic_folder_exists(name):
         self.select_download_location([name])
Ejemplo n.º 2
0
 def open_folders(self, folders):
     for folder in folders:
         folder_info = self.gateway.magic_folders.get(folder)
         if folder_info:
             try:
                 open_path(folder_info["directory"])
             except KeyError:
                 pass
Ejemplo n.º 3
0
 def on_right_click(self, position):
     if not position:
         position = self.viewport().mapFromGlobal(QCursor().pos())
     item = self.itemAt(position)
     if not item:
         return
     widget = self.itemWidget(item)
     menu = QMenu(self)
     open_file_action = QAction("Open file")
     open_file_action.triggered.connect(lambda: open_path(widget.path))
     menu.addAction(open_file_action)
     open_folder_action = QAction("Open enclosing folder")
     open_folder_action.triggered.connect(
         lambda: self.on_double_click(item))
     menu.addAction(open_folder_action)
     menu.exec_(self.viewport().mapToGlobal(position))
Ejemplo n.º 4
0
def test_open_path_win32(monkeypatch):
    m = MagicMock()
    monkeypatch.setattr('os.startfile', m, raising=False)
    monkeypatch.setattr('sys.platform', 'win32')
    open_path('/test/path/file.txt')
    assert m.mock_calls == [call('/test/path/file.txt')]
Ejemplo n.º 5
0
def test_open_path(platform, args, monkeypatch):
    m = MagicMock()
    monkeypatch.setattr('subprocess.Popen', m)
    monkeypatch.setattr('sys.platform', platform)
    open_path('/test/path/file.txt')
    assert m.mock_calls == [call(args)]
Ejemplo n.º 6
0
def test_open_path(platform, mocked_call, args, monkeypatch):
    m = MagicMock()
    monkeypatch.setattr(mocked_call, m, raising=False)
    monkeypatch.setattr('sys.platform', platform)
    open_path('/test/path/file.txt')
    assert m.mock_calls == [call(args)]
Ejemplo n.º 7
0
 def open_folders(self, folders):
     for folder in folders:
         folder_info = self.gateway.magic_folders.get(folder)
         if folder_info:
             open_path(folder_info['directory'])