Esempio n. 1
0
File: t.cpp Progetto: pedia/raidget
void LngSetAdd(const char *id, int lang, const char *txt, bool addid)
{
	CriticalSection::Lock __(slng);
	CharS ids;
	ids.s = PermanentCopy(id);
	String text = ToCharset(CHARSET_UTF8, txt, GetLNGCharset(lang));
	lang = SetLNGCharset(lang, CHARSET_UTF8);
	Array<LngModule>& ma = sMod();
	for(int i = 0; i < ma.GetCount(); i++) {
		LngModule& m = ma[i];
		int q = m.map.Find(ids);
		if(q >= 0) {
			char *t = PermanentCopy(text);
			Vector<LngRec>& r = m.map[q];
			for(int i = 0; i < r.GetCount(); i++)
				if(r[i].lang == lang) {
					r[i].text = t;
					return;
				}
			LngRec& rec = r.Add();
			rec.lang = lang;
			rec.text = t;
			return;
		}
	}
	if(addid) {
		if(ma.GetCount() == 0)
			ma.Add();
		LngRec& r = ma.Top().map.Add(ids).Add();
		char *t = PermanentCopy(text);
		strcpy(t, text);
		r.lang = lang;
		r.text = t;
	}
}
Esempio n. 2
0
const LanguageInfo& GetLanguageInfo(int lang)
{
	Mutex::Lock __(sLanguageInfoMutex);
	if(!lang)
		lang = GetCurrentLanguage();
	lang = SetLNGCharset(lang, 0);
	ArrayMap<int, LanguageInfo>& m = LangMap();
	int q = m.Find(lang);
	if(q >= 0)
		return m[q];
	LanguageInfo& f = m.Add(lang);
	f.Set(lang);
	return f;
}
Esempio n. 3
0
Threads::Threads()
	: threads(0)
	, area(-2.0,-1.1, 0.60, 1.1)
	, densityR (1)
	, densityC (1)
	, rows (1)
	, cols (1)
	, julia_c(Complex(-0.4,0.6))
	, posOnClick(0,0)
	, moveShift(0,0)
	, moving(false)
{
	SetLanguage(SetLNGCharset(GetSystemLNG(), CHARSET_UTF8));
	CtrlLayout(*this, t_("Threads"));
	inp_col.SetData(4);
	inp_row.SetData(3);
	inp_iter.SetData(500);
	inp_threads.SetData(3);
	edb_re.SetData(-0.4);
	edb_im.SetData(0.6);
	AddFrame(statusBar);
	
	statusBar.AddFrame(time.Right(140));
	
	BackPaint();
	Zoomable().Sizeable();
	picbox.onPaint = callback(this, &Threads::picbox_Paint);
	picbox.onLeftDown = callback(this, &Threads::picbox_LeftDown);
	picbox.onLeftUp = callback(this, &Threads::picbox_LeftUp);
	picbox.onMouseMove= callback(this, &Threads::picbox_MouseMove);
	
	cbx_fractal_set.Add( t_("Mandelbrot"));
	cbx_fractal_set.Add( t_("Qubic Mandelbrot"));
	cbx_fractal_set.Add( t_("Quadric Mandelbrot"));
	cbx_fractal_set.Add( t_("Julia Set"));
	cbx_fractal_set.Add( t_("Qubic Julia Set"));
	cbx_fractal_set.Add( t_("Quadric Julia Set"));
	cbx_fractal_set.Add( t_("Phoenix Set"));
	cbx_fractal_set.Add( t_("BacPhoenix Set"));
	cbx_fractal_set.Add( t_("Bać Set - my own :) discovered by mistake..."));
	
	cbx_fractal_set.WhenAction = THISBACK(SetSelected);
	btn_recalculate.WhenAction = THISBACK(DoJob);
	cbx_fractal_set.SetIndex(0);
}