06:24 < wvjoker> hello 17:30 < swick> can someone tell me why is GetVideoModes threaded? 17:31 < swick> …but things like Minimize are not? 17:39 < heinrich5991> swick: I don't know who implemented threaded rendering 17:41 < swick> mh, whatever. I'm not going to make GetNumScreens threaded. 17:41 < heinrich5991> swick: you implemented multi-monitor support? 17:41 < swick> yes 17:42 < heinrich5991> great! 17:42 < swick> reimplementing it now, based on the new sdl2 branch 17:43 < heinrich5991> swick: do you know waht cinaera ment with that? https://github.com/teeworlds/teeworlds/pull/1246#discussion-diff-14331121 17:44 < swick> heinrich5991: I know what it does but I don't know why it's needed on windows 17:45 < swick> heinrich5991: removed it by accident anyway 17:45 < spok_loh> я лох 17:48 < BotoX> xaxaxaxaxa 17:48 < PsychoGod> D: 17:49 < spok_loh> привет ботокс 17:50 < BotoX> hello mate 17:50 < heinrich5991> spok_loh: this is an english channel, I guess most here don't understand you 17:50 < BotoX> >2014 17:50 < spok_loh> sorry for me 17:50 < BotoX> >not understanding russian 18:03 < swick> so anyone in here who can test this https://github.com/teeworlds/teeworlds/pull/1246 on windows and/or mac osx? 18:09 < PsychoGod> struct concept_empty { template static void check(T &t) { if(0) t.empty(); }; }; 18:09 < PsychoGod> what is if(o) using for ? D: 18:11 <@minus> it's if(0) 18:11 < PsychoGod> if it's if(0) then it always = true ? D: so why you need this ? 18:12 < EastByte> ^ it's not 18:12 <@minus> always false 18:12 < heinrich5991> probably debug code 18:12 <@minus> you usually do that to make the compiler remove code when using macros 18:13 < heinrich5991> nothing is wrong with false though 18:13 < heinrich5991> (except in C) 18:14 <@minus> huh" 18:14 <@minus> huh? 18:15 < PsychoGod> but here in base/tl/range.h there are struct's that have functions in each of them there is if(0) somefunc(); so this somefunc doesn't load at all ? D: 18:18 < heinrich5991> minus: in C++ you could use false 18:18 <@minus> 500% longer 18:18 <@minus> 400 actually but you get the idea 18:20 < heinrich5991> yes :) 18:20 < heinrich5991> minus: btw, have you looked into rust already? 18:20 <@minus> i have looked into me not having time 18:20 <@minus> and other things to do 18:20 < heinrich5991> hehe 18:21 <@minus> like writing a mail address admin interface 18:21 < PsychoGod> ah, man, i don't understand anything xDDD can you explain? what macros ? why if(0) ? 18:21 <@minus> and work, ofc 18:21 <@minus> PsychoGod: well, to summarize: black compiler magic 18:21 <@minus> i guess 18:21 <@minus> we do not know either 18:22 <@minus> matricks probably knows what those if(0) in base/tl/range.h are for 18:24 < heinrich5991> those are type bounds I think 18:24 < heinrich5991> PsychoGod: ^ 18:25 < heinrich5991> if you have concept_empty::check(x) in template code 18:25 < heinrich5991> you know that x has a method empty() 18:25 < heinrich5991> minus: ^ 18:26 < PsychoGod> http://ft.trillian.im/f70a98cf8069509b94b68be0bf6d9f6a9f52c7be/6qILNyt0thJfF6w6Dqtz9geZcfO49.jpg 18:27 < PsychoGod> wtf ? D: if(0) 18:27 < heinrich5991> PsychoGod: you shouldn't save screenshots as jpg, rather use png 18:28 < heinrich5991> I tried to explain it 18:28 < heinrich5991> if you invoke concept_empty::check(x) 18:28 < heinrich5991> on an x in template 18:29 < PsychoGod> if(0) identical if(t!=0) ? 18:29 < heinrich5991> you know that it has a check method 18:29 < heinrich5991> no 18:29 < heinrich5991> if(0) means the code will not be evaluated 18:29 < heinrich5991> it's a noop function during runtime 18:29 < heinrich5991> it's used at compile time for type chcking 18:34 < PsychoGod> ok, i think i understand, it just check has that template this function or not, right ? 18:35 < heinrich5991> there are two verbs in your sentence 18:35 < heinrich5991> I don't understand it, can you rephrase it? 18:36 < PsychoGod> it check if variable of that template has function that used after if(0) ? 18:42 <@minus> heinrich5991: templates are duck typing for C++ 18:42 < heinrich5991> duck typing at compile time 18:43 * minus quacks 18:43 < PsychoGod> xD 19:05 * PsychoGod quack quack 19:36 < PsychoGod> bool operator ==(const vector2_base &v) const { return x == v.x && y == v.y; } //TODO: do this with an eps instead bad in english, what meens "with an eps" ? 19:36 <@minus> good question 19:37 < heinrich5991> PsychoGod: epsilon 19:37 < heinrich5991> whcih means that he wants a fuzzy compare 19:37 < heinrich5991> like 19:38 < heinrich5991> abs(x - v.x) < 0.0001 19:38 < heinrich5991> (just better) 19:52 < PsychoGod> why not to floor(f_temp * 1000.0f)/1000.0f ? 19:52 < PsychoGod> easiest way 20:01 < Matodor> PsychoGod hello :) 20:02 < PsychoGod> i don't know you D: 20:02 < Matodor> you lie 20:03 < PsychoGod> you lie that lie I 20:03 < Matodor> you lie that's i lie that you lie 20:08 < PsychoGod> double ceil(double v, int p) { v *= pow(10, p); v = ceil(v); v /= pow(10, p); } 20:11 < PsychoGod> http://ft.trillian.im/f70a98cf8069509b94b68be0bf6d9f6a9f52c7be/6qISFCcBwtHD8PfWiyGHgL6zN2R8O.jpg 20:11 < PsychoGod> found something 21:18 < BeaR_> swick: fullscreen mode works at windows 21:26 < swick> \o/ 21:27 < swick> now we only have to deal with windows not wanting to create a window with the correct size 21:27 < BeaR_> tested that windowed bug with my own framework, same issue, boils down to what window style it uses .. 21:28 < BeaR_> Fetching the actual window size after creation should fix this 21:29 < swick> yeah, adding SDL_GetWindowSize(m_pWindow, Width, Height); after window creation doesn't seem to affect proper systems 21:29 < swick> if you could test if it fixes the bug that would be great 21:30 < BeaR_> Yeah, clipping is correct now 21:31 < swick> greating, pushing now 21:32 < BeaR_> nice (: 22:06 < PsychoGod> guys, i'm fired my brain 22:06 < PsychoGod> what means do{}while(0) ? XD 22:06 <@minus> lrn2C 22:07 < BotoX> >do {} while(0); 22:07 < PsychoGod> it runs 1 time, so why need cycle ? 22:07 < BotoX> wow, I don't even 22:07 < BotoX> I don't understand it either why you would wanna do that 22:07 < PsychoGod> i'm not, check system.h str_utf8_decode func 22:07 < BotoX> maybe to use break; 22:08 < BotoX> ya, to use break I guess, lol 22:08 < PsychoGod> loled too 22:09 <@minus> why use break 22:09 <@minus> when you can use goto 22:09 * minus rushes off 22:09 < PsychoGod> yeah, it's strange 22:09 < BotoX> Is there any advantage in doing that? 22:10 < PsychoGod> nope xD 22:10 <@minus> BotoX: yozakura quartet: hana no uta BDs. go getthem while they're fresh! 22:10 < BotoX> not watching anything right now :( 22:10 < BotoX> Not in the mood for animu lately 22:11 < BotoX> coalgirls pls finish monogatari 2, I guess I would wanna watch that 22:20 <@matricks> PsychoGod: the if(0) is there to make sure that the code doesn't run 22:21 < PsychoGod> omg, and what it is for in this structs ? D: 22:21 <@matricks> PsychoGod: to make sure that the templated argument has a function called empty 22:23 < PsychoGod> ok, thx ;)