aboutsummaryrefslogtreecommitdiff
path: root/modules/commands/outs.py
blob: fb3c29ef09ef20b5357a9663225b6009db3984c1 (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import re
from src import IRCLine, utils

class StdOut(object):
    def __init__(self, prefix):
        self.prefix = prefix
        self._lines = []
        self.tags = {}
        self._assured = False

    def assure(self):
        self._assured = True

    def write(self, text):
        self.write_lines(
            text.replace("\r", "").replace("\n\n", "\n").split("\n"))
    def write_lines(self, lines):
        self._lines += list(filter(None, lines))

    def get_all(self):
        return self._lines.copy()
    def pop(self):
        return self._lines.pop(0)
    def insert(self, text):
        self._lines.insert(0, text)

    def has_text(self):
        return bool(self._lines)