1 from PyQt4
import QtGui
2 from PyQt4
.QtGui
import QClipboard
3 from PyQt4
.QtGui
import QFileDialog
4 from PyQt4
.QtGui
import QIcon
5 from PyQt4
.QtGui
import QListWidgetItem
6 from PyQt4
.QtGui
import QMessageBox
7 from PyQt4
.QtGui
import QPixmap
8 from views
import GitCommandDialog
10 def create_listwidget_item(text
, filename
):
11 icon
= QIcon(QPixmap(filename
))
12 item
= QListWidgetItem()
17 def information(parent
, title
, message
):
18 '''Launches a QMessageBox information with the
19 provided title and message.'''
20 QMessageBox
.information(parent
, title
, message
)
22 def get_selected_row(list_widget
):
23 '''Returns a(row_number, is_selected) tuple for a QListWidget.'''
24 row
= list_widget
.currentRow()
25 item
= list_widget
.item(row
)
26 selected
= item
is not None and item
.isSelected()
29 def get_selection_from_list(list_widget
, items
):
30 '''Returns an array of model items that correspond to
31 the selected QListWidget indices.'''
33 for idx
in range(list_widget
.count()):
34 item
= list_widget
.item(idx
)
36 selected
.append(items
[idx
])
39 def open_dialog(parent
, title
, filename
=None):
40 qstr
= QFileDialog
.getOpenFileName(
41 parent
, title
, filename
)
44 def save_dialog(parent
, title
, filename
=None):
45 qstr
= QFileDialog
.getSaveFileName(
46 parent
, title
, filename
)
49 def dir_dialog(parent
, title
, directory
):
50 directory
= QFileDialog
.getExistingDirectory(
51 parent
, title
, directory
)
54 def qapp(): return QtGui
.qApp
56 def question(parent
, title
, message
, default
=True):
57 '''Launches a QMessageBox question with the provided title and message.
58 Passing "default=False" will make "No" the default choice.'''
68 result
= QMessageBox
.question(parent
,
69 title
, message
, buttons
, default
)
70 return result
== QMessageBox
.Yes
72 def set_clipboard(text
):
73 qapp().clipboard().setText(text
, QClipboard
.Clipboard
)
74 qapp().clipboard().setText(text
, QClipboard
.Selection
)
76 def show_command(parent
, output
):
78 dialog
= GitCommandDialog(parent
, output
=output
)