summaryrefslogtreecommitdiffstats
path: root/glances/outputs/glances_curses.py
diff options
context:
space:
mode:
Diffstat (limited to 'glances/outputs/glances_curses.py')
-rw-r--r--glances/outputs/glances_curses.py54
1 files changed, 28 insertions, 26 deletions
diff --git a/glances/outputs/glances_curses.py b/glances/outputs/glances_curses.py
index 9f6d6a05..a5b0e295 100644
--- a/glances/outputs/glances_curses.py
+++ b/glances/outputs/glances_curses.py
@@ -157,7 +157,6 @@ class _GlancesCurses(object):
logger.critical("Cannot init the curses library ({})".format(e))
sys.exit(1)
-
# Load configuration file
self.load_config(config)
@@ -205,7 +204,6 @@ class _GlancesCurses(object):
'left_menu',
default=self._left_sidebar)
-
def _init_history(self):
"""Init the history option."""
@@ -439,7 +437,6 @@ class _GlancesCurses(object):
else:
self.enable_top()
-
def _handle_process_extended(self):
self.args.enable_process_extended = not self.args.enable_process_extended
if not self.args.enable_process_extended:
@@ -620,6 +617,33 @@ class _GlancesCurses(object):
return ret
+ def set_number_of_processes(self, stat_display):
+ """Set the number of processes to display
+ The value is dynamicaly computed."""
+ max_processes_displayed = (
+ self.term_window.getmaxyx()[0]
+ - 11
+ - (0 if 'containers' not in stat_display else self.get_stats_display_height(stat_display["containers"]))
+ - (
+ 0
+ if 'processcount' not in stat_display
+ else self.get_stats_display_height(stat_display["processcount"])
+ )
+ - (0 if 'amps' not in stat_display else self.get_stats_display_height(stat_display["amps"]))
+ - (0 if 'alert' not in stat_display else self.get_stats_display_height(stat_display["alert"]))
+ )
+
+ try:
+ if self.args.enable_process_extended:
+ max_processes_displayed -= 4
+ except AttributeError:
+ pass
+ if max_processes_displayed < 0:
+ max_processes_displayed = 0
+ if glances_processes.max_processes is None or glances_processes.max_processes != max_processes_displayed:
+ logger.debug("Set number of displayed processes to {}".format(max_processes_displayed))
+ glances_processes.max_processes = max_processes_displayed
+
def display(self, stats, cs_status=None):
"""Display stats on the screen.
@@ -643,29 +667,7 @@ class _GlancesCurses(object):
__stat_display = self.__get_stat_display(stats, layer=cs_status)
# Adapt number of processes to the available space
- max_processes_displayed = (
- self.term_window.getmaxyx()[0]
- - 11
- - (0 if 'containers' not in __stat_display else self.get_stats_display_height(__stat_display["containers"]))
- - (
- 0
- if 'processcount' not in __stat_display
- else self.get_stats_display_height(__stat_display["processcount"])
- )
- - (0 if 'amps' not in __stat_display else self.get_stats_display_height(__stat_display["amps"]))
- - (0 if 'alert' not in __stat_display else self.get_stats_display_height(__stat_display["alert"]))
- )
-
- try:
- if self.args.enable_process_extended:
- max_processes_displayed -= 4
- except AttributeError:
- pass
- if max_processes_displayed < 0:
- max_processes_displayed = 0
- if glances_processes.max_processes is None or glances_processes.max_processes != max_processes_displayed:
- logger.debug("Set number of displayed processes to {}".format(max_processes_displayed))
- glances_processes.max_processes = max_processes_displayed
+ self.set_number_of_processes(__stat_display)
# Get the processlist
__stat_display["processlist"] = stats.get_plugin('processlist').get_stats_display(args=self.args)