示例#1
0
const char* PSText::Filter (const char* string, int len) {
    TextBuffer stext(sbuf, 0, SBUFSIZE);

    for (int dot = 0; len--; string++) {
	char c = *string;

	if (!isascii(c) || iscntrl(c)) {
	    char buf[5];
	    octal(c, &buf[sizeof(buf) - 1]);
	    dot += stext.Insert(dot, buf, sizeof(buf) - 1);

	} else {
	    switch (c) {
	    case '(':
	    case ')':
	    case '\\':
		dot += stext.Insert(dot, "\\", 1);
		// fall through
	    default:
		dot += stext.Insert(dot, string, 1);
	    }
	}
    }
    stext.Insert(dot, "", 1);

    return stext.Text();
}
示例#2
0
void NoiseGen::drawSliders()
{
    for(int i = 0; i < int(sliders.size()); i++)
    {
        std::stringstream slids;
        slids << sliders[i]->getName() << " : " << sliders[i]->convertSliderPosition();

        sf::Text stext(slids.str(), font, 12);
        stext.setPosition( sliders[i]->getPosition().x, sliders[i]->getPosition().y-20);
        sliders[i]->draw();
        screen->draw(stext);
    }

    terSlider->draw();
}