work on display sizes

This commit is contained in:
guinux
2013-03-26 11:02:17 +01:00
parent a2221d7605
commit b331df8394
4 changed files with 375 additions and 342 deletions

View File

@@ -51,7 +51,8 @@ ProgressCancelButton = interface.get_object('ProgressCancelButton')
interface.add_from_file('/usr/share/pamac/gui/updater.glade')
UpdaterWindow = interface.get_object("UpdaterWindow")
update_listore = interface.get_object('update_list')
update_label = interface.get_object('update_label')
update_top_label = interface.get_object('update_top_label')
update_bottom_label = interface.get_object('update_bottom_label')
def action_signal_handler(action):
if action:
@@ -79,9 +80,6 @@ bus.add_signal_receiver(icon_signal_handler, dbus_interface = "org.manjaro.pamac
bus.add_signal_receiver(target_signal_handler, dbus_interface = "org.manjaro.pamac", signal_name = "EmitTarget")
bus.add_signal_receiver(percent_signal_handler, dbus_interface = "org.manjaro.pamac", signal_name = "EmitPercent")
installed_column.set_sort_column_id(1)
name_column.set_sort_column_id(0)
installed_icon = Pixbuf.new_from_file('/usr/share/pamac/icons/22x22/status/package-installed.png')
uninstalled_icon = Pixbuf.new_from_file('/usr/share/pamac/icons/22x22/status/package-available.png')
to_install_icon = Pixbuf.new_from_file('/usr/share/pamac/icons/22x22/status/package-add.png')
@@ -101,6 +99,7 @@ for state in states:
state_list.append([state])
def get_groups():
groups_list.clear()
tmp_list = []
for repo in transaction.handle.get_syncdbs():
for name, pkgs in repo.grpcache:
@@ -111,6 +110,7 @@ def get_groups():
groups_list.append([name])
def get_repos():
repos_list.clear()
for repo in transaction.handle.get_syncdbs():
repos_list.append([repo.name])
repos_list.append(['local'])
@@ -276,33 +276,32 @@ def set_list_dict_repos(repo):
def refresh_packages_list():
packages_list.clear()
if not pkg_name_list:
packages_list.append(["No package found", False, False, False, search_icon])
packages_list.append(["No package found", False, False, False, search_icon, '', 0])
else:
for name in pkg_name_list:
if name in config.holdpkg:
packages_list.append([name, True, False, True, locked_icon])
packages_list.append([name, True, False, True, locked_icon, '', 0])
elif transaction_type is "install":
if pkg_installed_dict[name] is True:
packages_list.append([name, True, False, True, installed_icon])
if transaction.localpkgs.__contains__(name):
packages_list.append([name, True, False, True, installed_icon, common.format_size(transaction.localpkgs[name].isize), transaction.localpkgs[name].isize])
elif name in transaction_dict.keys():
packages_list.append([name, False, True, True, to_install_icon])
packages_list.append([name, False, True, True, to_install_icon, common.format_size(transaction.syncpkgs[name].size), transaction.syncpkgs[name].size])
else:
packages_list.append([name, False, True, False, uninstalled_icon])
packages_list.append([name, False, True, False, uninstalled_icon, common.format_size(transaction.syncpkgs[name].size), transaction.syncpkgs[name].size])
elif transaction_type is "remove":
if pkg_installed_dict[name] is False:
packages_list.append([name, False, False, False, uninstalled_icon])
if not transaction.localpkgs.__contains__(name):
packages_list.append([name, False, False, False, uninstalled_icon, common.format_size(transaction.syncpkgs[name].size), transaction.syncpkgs[name].size])
elif name in transaction_dict.keys():
packages_list.append([name, True, True, False, to_remove_icon])
packages_list.append([name, True, True, False, to_remove_icon, common.format_size(transaction.localpkgs[name].isize), transaction.localpkgs[name].isize])
else:
packages_list.append([name, True, True, True, installed_icon])
elif pkg_installed_dict[name] is True:
packages_list.append([name, True, True, True, installed_icon])
packages_list.append([name, True, True, True, installed_icon, common.format_size(transaction.localpkgs[name].isize), transaction.localpkgs[name].isize])
elif transaction.localpkgs.__contains__(name):
packages_list.append([name, True, True, True, installed_icon, common.format_size(transaction.localpkgs[name].isize), transaction.localpkgs[name].isize])
else:
packages_list.append([name, False, True, False, uninstalled_icon])
packages_list.append([name, False, True, False, uninstalled_icon, common.format_size(transaction.syncpkgs[name].size), transaction.syncpkgs[name].size])
def set_packages_list():
if current_filter[0] == 'search':
print(current_filter[1])
set_list_dict_search(*current_filter[1])
if current_filter[0] == 'group':
set_list_dict_group(current_filter[1])
@@ -412,8 +411,10 @@ def set_transaction_sum():
while i < len(transaction.to_update):
transaction_sum.append([' ', transaction.to_update[i]])
i += 1
sum_bottom_label.set_markup('')
#sum_bottom_label.set_markup('<b>Total Download size: </b>'+common.format_size(totaldlcb))
dsize = 0
for name in transaction.to_add:
dsize += transaction.syncpkgs[name].download_size
sum_bottom_label.set_markup('<b>Total Download size: </b>'+common.format_size(dsize))
sum_top_label.set_markup('<big><b>Transaction Summary</b></big>')
def handle_error(error):
@@ -493,16 +494,20 @@ def do_refresh():
def have_updates():
do_syncfirst, updates = transaction.get_updates()
update_listore.clear()
update_label.set_justify(Gtk.Justification.CENTER)
update_top_label.set_justify(Gtk.Justification.CENTER)
if not updates:
update_listore.append(["", ""])
update_label.set_markup("<big><b>No update available</b></big>")
update_listore.append(['', ''])
update_bottom_label.set_markup('')
update_top_label.set_markup('<big><b>No update available</b></big>')
return False
else:
dsize = 0
for pkg in updates:
pkgname = pkg.name+" "+pkg.version
update_listore.append([pkgname, common.format_size(pkg.size)])
update_label.set_markup("<big><b>Available updates</b></big>")
dsize += pkg.download_size
update_bottom_label.set_markup('<b>Total Download size: </b>'+common.format_size(dsize))
update_top_label.set_markup('<big><b>Available updates</b></big>')
return True
def do_sysupgrade():
@@ -907,12 +912,6 @@ class Handler:
current_filter = ('repo', repos_list[line][0])
set_packages_list()
def on_installed_column_clicked(self, widget):
installed_column.set_sort_column_id(1)
def on_name_column_clicked(self, widget):
name_column.set_sort_column_id(0)
def on_cellrenderertoggle1_toggled(self, widget, line):
global transaction_type
global transaction_dict
@@ -1013,7 +1012,8 @@ def main(_mode):
if mode == 'manager':
ManagerWindow.show_all()
if mode == 'updater':
update_label.set_markup("<big><b>Available updates</b></big>")
update_top_label.set_markup('<big><b>Available updates</b></big>')
update_bottom_label.set_markup('')
UpdaterWindow.show_all()
while Gtk.events_pending():
Gtk.main_iteration()