Exemplo n.º 1
0
void MapGridCtrl::AddMap(const wxString& mapname)
{
	assert(wxThread::IsMain());
	assert(!mapname.empty());

	if (!LSL::usync().MapExists(STD_STRING(mapname))) {
		//FIXME: offer download button on image instead?
		wxLogWarning(_("Map %s doesn't exist!"), mapname.wc_str());
		return;
	}

	// no duplicates (would crash because of dangling MapData pointers in m_grid)
	if (m_maps.find(mapname) == m_maps.end()) {
		MapData m;
		m.name = mapname.mb_str();
		m_maps[mapname] = m;
		m_pending_mapinfos.push_back(&m_maps[mapname]);
		m_pending_mapimages.push_back(&m_maps[mapname]);
		UpdateAsyncFetches();
	}

	if (IsInGrid(mapname)) {
		wxLogWarning(_("Map %s already in grid!"), mapname.wc_str());
		return;
	}

	m_grid.push_back(&m_maps[mapname]);
	UpdateGridSize();
}
Exemplo n.º 2
0
 void SetAlign(long align) { m_align = align; UpdateGridSize(); }
Exemplo n.º 3
0
 void SetPuzzle(puz::Puzzle * puz)
     { m_puz = puz; UpdateGridSize(); m_imageMap.clear(); }