예제 #1
0
void AnsiWidget::insetTextScreen(int x, int y, int w, int h) {
  if (_back == _screens[TEXT_SCREEN]) {
    _back = _screens[USER_SCREEN1];
  }
  TextScreen *textScreen = (TextScreen *)createScreen(TEXT_SCREEN);
  textScreen->inset(x, y, w, h, _front);
  _front = _back = textScreen;
  _front->_dirty = true;
  flush(true);
}
예제 #2
0
void AnsiWidget::insetMenuScreen(int x, int y, int w, int h) {
  if (_back == _screens[MENU_SCREEN]) {
    _back = _screens[USER_SCREEN1];
  }
  TextScreen *menuScreen = (TextScreen *)createScreen(MENU_SCREEN);
  menuScreen->_x = x;
  menuScreen->_y = y;
  menuScreen->_width = w;
  menuScreen->_height = h;
  menuScreen->setOver(_front);
  _front = _back = menuScreen;
  _front->_dirty = true;
}
예제 #3
0
int AnsiWidget::insetTextScreen(int x, int y, int w, int h) {
  int result = 0;
  for (int i = 0; i < MAX_SCREENS; i++) {
    if (_front == _screens[i]) {
      result = i;
      break;
    }
  }
  if (_back == _screens[TEXT_SCREEN]) {
    _back = _screens[USER_SCREEN1];
  }
  TextScreen *textScreen = (TextScreen *)createScreen(TEXT_SCREEN);
  textScreen->inset(x, y, w, h, _front);
  _front = _back = textScreen;
  _front->_dirty = true;
  flush(true);
  return result;
}
예제 #4
0
int AnsiWidget::insetMenuScreen(int x, int y, int w, int h) {
  int result = 0;
  for (int i = 0; i < MAX_SCREENS; i++) {
    if (_front == _screens[i]) {
      result = i;
      break;
    }
  }
  if (_back == _screens[MENU_SCREEN]) {
    _back = _screens[USER_SCREEN1];
  }
  TextScreen *menuScreen = (TextScreen *)createScreen(MENU_SCREEN);
  menuScreen->_x = x;
  menuScreen->_y = y;
  menuScreen->_width = w;
  menuScreen->_height = h;
  menuScreen->setOver(_front);
  _front = _back = menuScreen;
  _front->_dirty = true;
  return result;
}