Ejemplo n.º 1
0
void WinListe::showMod()
{
  int Id = selectedId();
  if (Id < 0) return;

  _frm[_opt.mediaType()]->setVals(Id);
  showAdd();
}
Ejemplo n.º 2
0
void WinListe::showAddTo()
{
  const int Id = selectedId();
  if (Id < 0) return;

  _frm[_opt.mediaType()]->addTo(Id);
  showAdd();
}
Ejemplo n.º 3
0
void WinListe::delMedia()
{
  int Id = selectedId();
  if (Id >= 0)
  {
    _listes.remove(Id);
    refreshLst();
  }
  save();
}
Ejemplo n.º 4
0
	bool ComboBox::onEvent(const Event &ev) {
		if(ev.type == Event::window_closed && ev.source == m_popup.get()) {
			m_dummy->selectEntry(m_popup->selectedId());
			m_popup = nullptr;
			updateButton();
			
			if(ev.value)
				sendEvent(this, Event::element_selected, m_dummy->selectedId());
		}
		else if(ev.type == Event::button_clicked && ev.source == m_button.get()) {
			DASSERT(!m_popup);

			if(m_drop_size > 0 && size()) {
				int popup_size = min(m_drop_size, m_dummy->size() * m_dummy->lineHeight());
				IRect clip_rect = clippedRect();
				IRect rect(clip_rect.min, int2(clip_rect.max.x, clip_rect.min.y + popup_size));

				m_popup = make_shared<ListBox>(rect, WindowStyle::gui_popup);
				for(int n = 0; n < size(); n++) {
					const ListBox::Entry &entry = (*m_dummy)[n];
					m_popup->addEntry(entry.text.c_str(), entry.color);
				}
				m_popup->selectEntry(m_dummy->selectedId());
				m_popup->setInnerOffset(int2(0, m_dummy->selectedId() * m_dummy->lineHeight()));
				mainWindow()->attach(m_popup, true);
			}
			else if(size() > 1) {
				int next_id = (selectedId() + 1) % size();
				selectEntry(next_id);
				sendEvent(this, Event::element_selected, next_id);
			}
		}
		else
			return false;

		return true;
	}
Ejemplo n.º 5
0
bool WinListe::canAddToItem() const
{
  if (selectedId() < 0 || selectedId() >= _listes.size())
    return false;
  return ((1<<_listes[selectedId()]->type()) & ((1<<Media::eMTZik) | (1<<Media::eMTBook)));
}