~ubuntu-branches/ubuntu/saucy/gaupol/saucy-proposed

« back to all changes in this revision

Viewing changes to gaupol/dialogs/debug.py

  • Committer: Bazaar Package Importer
  • Author(s): Piotr Ożarowski
  • Date: 2011-05-30 23:34:55 UTC
  • mfrom: (1.2.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20110530233455-dbhjajtn3tnz2r2e
Tags: 0.18-1
New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005-2008,2010 Osmo Salomaa
 
1
# Copyright (C) 2005-2008,2010-2011 Osmo Salomaa
2
2
#
3
3
# This file is part of Gaupol.
4
4
#
60
60
        text_buffer.create_tag("large", scale=pango.SCALE_LARGE)
61
61
        text_buffer.create_tag("monospace", family="monospace")
62
62
 
 
63
    def _insert_environment(self):
 
64
        """Insert environment information."""
 
65
        map(self._insert_text,
 
66
            ("Platform: %s\n" % platform.platform(True),
 
67
             "Locale: %s\n" % aeidon.locales.get_system_code(),
 
68
             "\n"))
 
69
 
63
70
    def _insert_link(self, path, lineno, *tags):
64
71
        """Insert `path` as a link into the text view."""
65
72
        text_buffer = self._text_view.get_buffer()
78
85
        tags = map(tag_table.lookup, tags + ("monospace",))
79
86
        text_buffer.insert_with_tags(itr, path, tag, *tags)
80
87
 
81
 
    def _insert_platform(self):
82
 
        """Insert platform information."""
83
 
        self._insert_text("%s\n\n" % platform.platform(True))
84
 
 
85
88
    def _insert_text(self, text, *tags):
86
89
        """Insert `text` with `tags` to the text view."""
87
90
        text_buffer = self._text_view.get_buffer()
109
112
            self._insert_text("Line: %s\n" % str(tb.tb_lineno))
110
113
            self._insert_text("In: %s\n\n" % code.co_name)
111
114
            if line.strip():
112
 
                self._insert_text("    %s\n\n" % line)
 
115
                indent = "\302\240" * 4
 
116
                self._insert_text("%s%s\n\n" % (indent, line))
113
117
            tb = tb.tb_next
114
118
        exception = traceback.format_exception_only(exctype, value)[0]
115
119
        exception, space, message = exception.partition(" ")
118
122
 
119
123
    def _insert_versions(self):
120
124
        """Insert version numbers of dependencies."""
121
 
        self._insert_text("Aeidon: %s\n" % aeidon.__version__)
122
 
        self._insert_text("Gaupol: %s\n" % gaupol.__version__)
123
 
        self._insert_text("Python: %d.%d.%d\n" % sys.version_info[:3])
124
 
        self._insert_text("GTK+: %d.%d.%d\n" % gtk.gtk_version)
125
 
        self._insert_text("PyGTK: %d.%d.%d\n" % gtk.pygtk_version)
126
 
        self._insert_text("PyEnchant: %s\n"
127
 
                          % aeidon.util.get_enchant_version() or "N/A")
128
 
 
129
 
        self._insert_text("Universal Encoding Detector: %s\n"
130
 
                          % aeidon.util.get_chardet_version() or "N/A")
 
125
        map(self._insert_text,
 
126
            ("aeidon: %s\n" % aeidon.__version__,
 
127
             "gaupol: %s\n" % gaupol.__version__,
 
128
             "python: %d.%d.%d\n" % sys.version_info[:3],
 
129
             "pygtk: %d.%d.%d\n" % gtk.pygtk_version,
 
130
             "gtk+: %d.%d.%d\n" % gtk.gtk_version,
 
131
             "pyenchant: %s\n" % aeidon.util.get_enchant_version(),
 
132
             "chardet: %s\n" % aeidon.util.get_chardet_version(),
 
133
             ))
131
134
 
132
135
    def _on_editor_exit(self, pid, return_value, command):
133
136
        """Print an error message if editor process failed."""
178
181
        """Set text from `tb` to the text view."""
179
182
        self._insert_title("Traceback")
180
183
        self._insert_traceback(exctype, value, tb)
181
 
        self._insert_title("Platform")
182
 
        self._insert_platform()
 
184
        self._insert_title("Environment")
 
185
        self._insert_environment()
183
186
        self._insert_title("Versions")
184
187
        self._insert_versions()
185
188
        gaupol.util.scale_to_content(self._text_view,
186
 
                                     min_nchar=10,
 
189
                                     min_nchar=20,
187
190
                                     min_nlines=5,
188
 
                                     max_nchar=85,
 
191
                                     max_nchar=100,
189
192
                                     max_nlines=35,
190
193
                                     font="monospace")