@braitsch about min and max, they are there by deafult because it's a very frequently used feature but you can totally ignore it if you don't use it and just use set(name, value)
. in the future we might add other types of parameters like parameters that have a scale (linear log...) and we might separate the range if we find it's useful but by now ignoring min/max is totally fine.
to solve the int/float problem you would usually template your slider and then typedef to int/float slders. you probably want to do that anyway to avoid ambiguities and precission problems.
also you shouldn't disable depth testing inside the gui like that, depth testing will make 2d drawing fail but that's just how opengl works, push/pop style won't restore it to it's original value anyway and changing it is kind of heavy so it's better to let the user handle that.