- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
int GUIFont::getTextSize (std::string::iterator &begin, std::string::iterator &end ) {
int size = 0;
while(begin != end ) {
uint32_t id = utf8::unchecked::next (begin );
CharDescriptor *cd = chars- >getChar(id);
size += cd- >xadvance;
}
return size;
}
int GUIFont::getTextSize (std::string &text ) {
return getTextSize (text.begin (), text.end ());
}
int GUIFont::getTextSize (std::wstring &text ) {
std::string utf8text;
utf8::utf16to8 (text.begin (), text.end (), back_inserter (utf8text ));
return getTextSize (utf8text.begin (), utf8text.end ());
}
Вот так я зафейлил...
И что самое главное - студия сожрала и даже ворнинга не кинула, а эклипс ни в какую.
Без добрых людей на гейдеве не допер бы что к чему.
someone 15.12.2014 09:09 # 0
Pythoner 15.12.2014 09:53 # 0
Так и весь прикол в том, что студии это пофиг.
А у гцц они обязаны быть const.
Вечер убил, пока понял, почему нормально собирающийся под пк код никак не хочет собираться под андроид.
ps мне простительно, я не проф программист)
someone 15.12.2014 09:58 # 0
Pythoner 15.12.2014 10:10 # 0
А здесь то не проверил.
std::wstring exit(L"Выход");
под студией работает, под эклипсом не хочет...
Не, ну это вообще пиздец.
someone 15.12.2014 15:33 # 0
Pythoner 15.12.2014 17:11 # 0
Soul_re@ver 15.12.2014 16:46 # +1
Pythoner 15.12.2014 17:16 # 0
kipar 15.12.2014 17:46 # +1
bormand 15.12.2014 18:31 # 0
Текст ошибки в студию.
Pythoner 15.12.2014 19:01 # 0
converting to execution character set: Illegal byte sequence
bormand 15.12.2014 19:06 # 0
Ну или -finput-charset=cp1251, что нежелательно.
Pythoner 15.12.2014 19:20 # 0
В эклипсе кодировку utf8 поставил, с -fshort-wchar мусор в конце строки рисовался. Без него норм.
Только теперь в студии проблемы - поставил тоже юникод кодировку, в редакторе все норм, а шрифт рисует кракозябры.
Пздц, хоть бери и сохраняй файлы с русским текстом в двух кодировках.
bormand 15.12.2014 19:24 # 0
Там поди ANSI'шные функции и литералы без L где-то юзаются?
Pythoner 15.12.2014 19:45 # 0
ANSI функции я то открыто не юзаю, но опять же SDL...
bormand 15.12.2014 20:19 # 0
Ну вот они все сейчас стали в utf-8, а код, скорее всего, продолжает думать, что там cp1251.
Pythoner 15.12.2014 20:50 # 0
Хоть так помирю студию с эклипсом.
Блин, ну пусть я прогаю для себя, у меня на работе свободного время полно, не жалко.
Но как с этой байдой пишут кросплатформенные приложения те, кто этим зарабатывает.
Хотя о чем это я, грузят наверно тоже с ресурсов, нафиг строки хардкодить.
kipar 15.12.2014 20:52 # +1
Pythoner 15.12.2014 20:54 # 0
Только мне devcpp вобще никак.
Как CodeBlock, можно им пользоваться?
bormand 15.12.2014 20:56 # +1
Когда последний раз их видел - было ёбаным говном, которое подвисало на несколько секунд если написать точку (даже внутри литерала!). Сейчас может быть и получше.
Из фришных ide стоит попробовать QtCreator.
Pythoner 17.12.2014 20:47 # 0
Code::Blocks - это неописуемо!
А теперь серьезно - QtCreator проиграл в моих глазах именно из за Qt - я с ним никогда не имел дела, а если ide предлагает удобные средства для формошлепства, то было бы глупо ими не воспользоваться. Но изучать Qt лень...
Поэтому Code::Blocks - wxWidgets мне знакомы по питону, много изучать не прийдется, а формошлепка может и пригодится.
Зря ты так негативно о ней отозвался - она летает даже на моем убогом селероне. Вот эклипс - это действительно тупое глюкавое говно.
Снес бы его нахрен, но нужен для комфортной отладки. А так то сборку под Андроид из под CodeBlocks настроил через вызов ndk-build - для проверки совместимости хватит, позже напишу какой то скрипт для полной сборки apk.
3.14159265 17.12.2014 21:30 # 0
Трудно не согласиться. Хотя старые версии эклипса (3.5+) если поотключать ненужное вроде не так много жрут, но это ж жаба.
А какой селерон? Случайно не 600?
Pythoner 17.12.2014 22:17 # 0
3.14159265 17.12.2014 23:40 # 0
Pythoner 18.12.2014 02:27 # 0
А в общем, похуй - 6 лет уже со мной, старичек, таскаю с собой на работу, я в охране работаю, ночи долгие, фильмы посмотреть можно, какую то игрушку детства, типа Master of Orion погамать, вспомнить школьные увлечения и покодить немного, в интернете пошастать... Вот и ночь проходит)
guest 18.12.2014 05:24 # 0
guest 20.12.2014 05:54 # 0
guest 20.12.2014 11:23 # 0
inkanus-gray 20.12.2014 11:29 # 0
bormand 17.12.2014 21:38 # 0
Оно само по себе очень шустро работало, но по нажатию на точку, походу, парсило сишку с нуля, из-за чего я просто не мог ее юзать (а ide без автодополнения ничем не лучше обычного редактора).
> QtCreator проиграл в моих глазах именно из за Qt
Ну и зря. Qt там совсем необязательно юзать. Плюс у него кошерный отладчик.
Pythoner 17.12.2014 22:22 # 0
Soul_re@ver 18.12.2014 17:40 # 0
В общем он подвешивает UI пока не получит искомое. А у меня MinGW находится на старом жёстком который отключается при простое.
bormand 15.12.2014 20:54 # 0
И это хорошее решение. Нефиг национальным символам делать в коде, если это не 1с.
3.14159265 17.12.2014 21:49 # +1
1024-- 17.12.2014 22:27 # +1
Lure Of Chaos 15.12.2014 09:45 # +1
someone 15.12.2014 09:54 # +1
Pythoner 15.12.2014 09:55 # +1
roman-kashitsyn 15.12.2014 11:27 # +3
А разработчикам ВС нужно в голову гвоздь забить за то, что они компиляют код, противоречащий стандарту.
Я мог бы рассказать, сколько боли принесла компиляция некоторых контейнеров TBB, авторы которых явно юзали ВС, кладущую на стандарт, но это слишком печальная и унылая история.
bormand 15.12.2014 12:19 # +1
Pythoner 15.12.2014 13:02 # 0
Так перфоманса захотелось, гуй же никак.
roman-kashitsyn 15.12.2014 13:26 # +6
Ну да, если один несчастный указатель передавать по указателю, а не по значению, пирфоманс вырастет многократно, и гуй сразу перестанет лагать.
sysctl 15.12.2014 13:56 # −1
У них там свои стандарты.
guest 16.12.2014 01:37 # −1