# Path: debugger/enums.py
# class ProcessState(Enum):
#     """
#     Represents the debugged process' state.
#     """
#     Attaching = 3
#     Connected = 2
#     Crashed = 8
#     Detached = 9
#     Exited = 10
#     Invalid = 0
#     Launching = 4
#     Running = 6
#     Stepping = 7
#     Stopped = 5
#     Suspended = 11
#     Unloaded = 1
# 
# Path: debugger/util.py
# class Logger(object):
#     """
#     Helper class for logging.
#     """
#     logger = None
# 
#     @staticmethod
#     def init_logger(level):
#         logging.basicConfig()
#         Logger.logger = logging.getLogger("debugger")
#         Logger.logger.setLevel(level)
# 
#     @staticmethod
#     def debug(message, *args, **kwargs):
#         Logger.logger.debug(message, *args, **kwargs)
# 
#     @staticmethod
#     def info(message, *args, **kwargs):
#         Logger.logger.info(message, *args, **kwargs)


from gi.repository import Gtk
from gi.repository import Gdk
from gi.repository import Pango
from debugger.enums import ProcessState
from debugger.util import Logger
from gui_util import require_gui_thread, run_on_gui
import select
import threading
import time
import traceback
        input_buffer = ""
        buffer = self.get_buffer()

        start_check = buffer.get_iter_at_mark(self.last_handled_char)

        char = self._handle_input_char(start_check)

        if char:
            input_buffer += char

        while start_check.forward_char():
            char = self._handle_input_char(start_check)

            if char:
                input_buffer += char

        buffer.move_mark(self.last_handled_char, start_check)

        return input_buffer

    @require_gui_thread
    def _emit_buffer(self):
        if not self.debugger.io_manager.stdin:
            return

        input_buffer = self._collect_buffer()

        try:
            self.debugger.io_manager.stdin.write(input_buffer)
        except:

# Path: debugger/enums.py
# class ProcessState(Enum):
#     """
#     Represents the debugged process' state.
#     """
#     Attaching = 3
#     Connected = 2
#     Crashed = 8
#     Detached = 9
#     Exited = 10
#     Invalid = 0
#     Launching = 4
#     Running = 6
#     Stepping = 7
#     Stopped = 5
#     Suspended = 11
#     Unloaded = 1
# 
# Path: debugger/util.py
# class Logger(object):
#     """
#     Helper class for logging.
#     """
#     logger = None
# 
#     @staticmethod
#     def init_logger(level):
#         logging.basicConfig()
#         Logger.logger = logging.getLogger("debugger")
#         Logger.logger.setLevel(level)
# 
#     @staticmethod
#     def debug(message, *args, **kwargs):
#         Logger.logger.debug(message, *args, **kwargs)
# 
#     @staticmethod
#     def info(message, *args, **kwargs):
#         Logger.logger.info(message, *args, **kwargs)


# Path: gui/console.py
from gi.repository import Gtk
from gi.repository import Gdk
from gi.repository import Pango
from debugger.enums import ProcessState
from debugger.util import Logger
from gui_util import require_gui_thread, run_on_gui
import select
import threading
import time
import traceback

        input_buffer = ""
        buffer = self.get_buffer()

        start_check = buffer.get_iter_at_mark(self.last_handled_char)

        char = self._handle_input_char(start_check)

        if char:
            input_buffer += char

        while start_check.forward_char():
            char = self._handle_input_char(start_check)

            if char:
                input_buffer += char

        buffer.move_mark(self.last_handled_char, start_check)

        return input_buffer

    @require_gui_thread
    def _emit_buffer(self):
        if not self.debugger.io_manager.stdin:
            return

        input_buffer = self._collect_buffer()

        try:
            self.debugger.io_manager.stdin.write(input_buffer)
        except:

            Logger.debug(traceback.format_exc())