summaryrefslogtreecommitdiff
path: root/portato/gui/gtk
diff options
context:
space:
mode:
authorNecoro <>2008-01-11 17:02:28 +0000
committerNecoro <>2008-01-11 17:02:28 +0000
commit933b7e68f19d6107bff06b29fbbce7f364fba74a (patch)
tree15b4052f870cf0814791debb1394d5bc2b07c781 /portato/gui/gtk
parent8be4bf021300b29e71a9d7a8dee4c41803581656 (diff)
downloadportato-933b7e68f19d6107bff06b29fbbce7f364fba74a.tar.gz
portato-933b7e68f19d6107bff06b29fbbce7f364fba74a.tar.bz2
portato-933b7e68f19d6107bff06b29fbbce7f364fba74a.zip
r598@Devoty: necoro | 2008-01-10 16:36:29 +0100
Handle the new useflag format correctly
Diffstat (limited to '')
-rw-r--r--portato/gui/gtk/windows.py24
1 files changed, 17 insertions, 7 deletions
diff --git a/portato/gui/gtk/windows.py b/portato/gui/gtk/windows.py
index fb9836c..7ab564c 100644
--- a/portato/gui/gtk/windows.py
+++ b/portato/gui/gtk/windows.py
@@ -472,8 +472,7 @@ class PackageTable:
def fill_use_list(self):
pkg = self.actual_package()
- pkg_flags = pkg.get_iuse_flags()
- pkg_flags.sort()
+ pkg_flags = flags.sort_use_flag_list(pkg.get_iuse_flags(keep = True))
actual_exp = None
actual_exp_it = None
@@ -484,6 +483,12 @@ class PackageTable:
store = self.useList.get_model()
for use in pkg_flags:
+ if use.startswith(("+","-")):
+ forced = (use[0] == "+")
+ use = use[1:]
+ else:
+ forced = None
+
exp = pkg.use_expanded(use, suggest = actual_exp)
if exp is not None:
if exp != actual_exp:
@@ -493,7 +498,7 @@ class PackageTable:
actual_exp_it = None
actual_exp = None
- enabled = use in euse
+ enabled = forced or use in euse
installed = use in instuse
store.append(actual_exp_it, [enabled, installed, use, system.get_use_desc(use, self.cp)])
@@ -1147,11 +1152,10 @@ class MainWindow (Window):
disabled = []
expanded = set()
- pkg_flags = pkg.get_iuse_flags()
+ pkg_flags = flags.sort_use_flag_list(pkg.get_iuse_flags(keep = True))
if not pkg_flags: # no flags - stop here
return None
- pkg_flags.sort()
actual = pkg.get_actual_use_flags()
if pkg.is_installed():
@@ -1164,15 +1168,21 @@ class MainWindow (Window):
installed = []
for use in pkg_flags:
+ if use.startswith(("+","-")):
+ forced = (use[0] == "+")
+ use = use[1:]
+ else:
+ forced = None
+
exp = pkg.use_expanded(use)
if exp:
expanded.add(exp)
else:
useStr = use
- if installed and ((use in actual) != (use in installed)):
+ if installed and ((use in actual) != (use in installed)) and not (forced == (use in installed)):
useStr += " %"
- if use in actual:
+ if use in actual or forced:
enabled.append(useStr)
else:
disabled.append(useStr)
0f1d9d547&follow=1'>Removed lxml version in error stringRené 'Necoro' Neumann1-3/+1 2008-07-04Ignore errors on plugin loadingRené 'Necoro' Neumann1-0/+6 2008-07-04Added ability to install missing plugin depsRené 'Necoro' Neumann3-95/+126 2008-07-04Fixed find_best_match for <portage-2.1.5René 'Necoro' Neumann1-2/+2 2008-07-04Some more dependency awarenessRené 'Necoro' Neumann5-23/+59 2008-07-03Some window refinementRené 'Necoro' Neumann1-109/+126 2008-07-03Removed XSD_LOCATION -- as there is no more xsd ;)René 'Necoro' Neumann2-5/+1 2008-07-03Updated setup.py to install the correct set of pluginsRené 'Necoro' Neumann1-3/+2 2008-07-03Ported etc-proposals pluginRené 'Necoro' Neumann3-50/+43 2008-07-03Ported gpytage pluginRené 'Necoro' Neumann2-16/+14 2008-07-03Ported Notify pluginRené 'Necoro' Neumann4-37/+51 2008-07-03Remove xsd and -x cmdline optionRené 'Necoro' Neumann2-107/+1 2008-07-03Ported completelyRené 'Necoro' Neumann3-548/+54 2008-07-03Should show dependencies nowRené 'Necoro' Neumann2-82/+128 2008-07-03Use __slots__ for the PkgData class to save memoryRené 'Necoro' Neumann1-2/+3 2008-07-03New plugin system - first hackRené 'Necoro' Neumann2-420/+683 2008-06-30Now the new design is able to do the same as the old oneRené 'Necoro' Neumann3-168/+182 2008-06-30First draft of the new plugin windowRené 'Necoro' Neumann1-8/+172 2008-06-30Added stuff to plugin.pyRené 'Necoro' Neumann1-2/+24 2008-06-30Beautified some dialogsRené 'Necoro' Neumann1-6/+8 2008-06-30Only add a package to mergequeue if everything went fineRené 'Necoro' Neumann1-1/+1 2008-06-26Removed '__find_resolved_unresolved' as it is quite useless.René 'Necoro' Neumann3-53/+29 2008-06-26Added very basic set queryingRené 'Necoro' Neumann3-0/+27 2008-06-25Now load 22 versions when running the correct portageRené 'Necoro' Neumann4-8/+18 2008-06-25Added Package_22 and System_22René 'Necoro' Neumann4-5/+63