Changeset View
Changeset View
Standalone View
Standalone View
src/Emulation.cpp
Show First 20 Lines • Show All 103 Lines • ▼ Show 20 Line(s) | |||||
104 | void Emulation::checkSelectedText() | 104 | void Emulation::checkSelectedText() | ||
105 | { | 105 | { | ||
106 | QString text = _currentScreen->selectedText(Screen::PreserveLineBreaks); | 106 | QString text = _currentScreen->selectedText(Screen::PreserveLineBreaks); | ||
107 | emit selectionChanged(text); | 107 | emit selectionChanged(text); | ||
108 | } | 108 | } | ||
109 | 109 | | |||
110 | Emulation::~Emulation() | 110 | Emulation::~Emulation() | ||
111 | { | 111 | { | ||
112 | foreach (ScreenWindow *window, _windows) { | 112 | qDeleteAll(_windows); | ||
113 | delete window; | | |||
114 | } | | |||
115 | 113 | | |||
116 | delete _screen[0]; | 114 | delete _screen[0]; | ||
117 | delete _screen[1]; | 115 | delete _screen[1]; | ||
118 | delete _decoder; | 116 | delete _decoder; | ||
119 | } | 117 | } | ||
120 | 118 | | |||
121 | void Emulation::setScreen(int index) | 119 | void Emulation::setScreen(int index) | ||
122 | { | 120 | { | ||
123 | Screen *oldScreen = _currentScreen; | 121 | Screen *oldScreen = _currentScreen; | ||
124 | _currentScreen = _screen[index & 1]; | 122 | _currentScreen = _screen[index & 1]; | ||
125 | if (_currentScreen != oldScreen) { | 123 | if (_currentScreen != oldScreen) { | ||
126 | // tell all windows onto this emulation to switch to the newly active screen | 124 | // tell all windows onto this emulation to switch to the newly active screen | ||
127 | foreach (ScreenWindow *window, _windows) { | 125 | for (auto *window : _windows) { | ||
128 | window->setScreen(_currentScreen); | 126 | window->setScreen(_currentScreen); | ||
129 | } | 127 | } | ||
130 | 128 | | |||
131 | checkScreenInUse(); | 129 | checkScreenInUse(); | ||
132 | checkSelectedText(); | 130 | checkSelectedText(); | ||
133 | } | 131 | } | ||
134 | } | 132 | } | ||
135 | 133 | | |||
▲ Show 20 Lines • Show All 211 Lines • Show Last 20 Lines |