WebView: Text-based Browser

...
  • Если перейти по ссылке, потом нажать кнопку назад и потом кнопку обновить ссылки перестают работать.
  • Хм... У меня ссылки остались рабочими, а вот кнопка назад перестала работать.
    Из хаоса в космос
  • Уточняю: один раз ещё перейти по ссылке можно но потом нельзя ни по ссылке ни назадю. Если поменять последовательность действий: 1. переход по ссылке; 2. кнопка обновить; 3. кнопка назад, то получаем тот же результат.
  • Спасибо. Буду разбираться...
    Из хаоса в космос
  • вот некоторая инфа по UTF-8. надеюсь, найдёт применение.
    Attachments
    utf-8_cp1251.zip (12.29 KiB)
    Downloaded 240 times
  • как предложение для парсинга страницы использовать RegExp. Не уверен что в данной реализации можно с легкостью его ввернуть и имеет смысл его вворачивать, но я всего-лишь предложил. ;)
  • Leency
    Как тебе такая страничка? (официальная страничка организации, где я работаю) Сможешь реализовать её отображение? :)
    Attachments
    iion.zip (3.94 KiB)
    Downloaded 261 times
  • HTML Viewer v0.45
    - поддержка кодировки KOI8-R(U) - активируется нажатием Ctrl+R. Спасибо Veliant'y за написаный код;
    - вывод какой-то win кодировки, где все символы отображаются, как &#1040 и т.д. (заработал файл, присланый Albom'ом);
    - исправлен очень серьёзный баг из-за которого страницы с большим количеством ссылок приводили к вылеталу программы;
    - кодировка DOS'a (CPP866) активируется нажатием Ctrl+D;
    - улучшен скролл;
    - исправлен баг кнопки "Обновить";
    - иконки тулбара выводится одним изображением с палитрой, как результат меньше перерисовка окна и размер программы.
    Attachments
    HTMLv_v0.45.zip (125.35 KiB)
    Downloaded 261 times
    Из хаоса в космос
  • Albom wrote:Leency
    Как тебе такая страничка? (официальная страничка организации, где я работаю) Сможешь реализовать её отображение? :)
    Как оказалось надо-то было всего две строчки:

    //например "#1072" преобразовываем в число, отнимаем 1040 и берём с масива соответствующий символ
    unsigned char win10_mas[] = "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя";
    bukva=win10_mas[StrToInt(#text+1)-1040];

    Но писал я их долго)) Сказывается малое количество опыта... Меня врохновила процедура koitodos(), написаная Veliant'ом. Даже не думал что всё получится настолько просто и аккуратно.
    Из хаоса в космос
  • Leency wrote:вывод какой-то win кодировки, где все символы отображаются, как &#1040 и т.д.
    Это не "какая-то win кодировка", это Unicode. Кстати, там ещё бывают буквы Ё и ё.
    Leency wrote:unsigned char win10_mas[] = "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя";
    bukva=win10_mas[StrToInt(#text+1)-1040];
    Тогда рекомендую помедитировать над вопросом: что будет, если браузер наткнётся на, скажем, "Ѐ" или "�"...
    Ушёл к умным, знающим и культурным людям.
  • diamond wrote:Это не "какая-то win кодировка", это Unicode. Кстати, там ещё бывают буквы Ё и ё.
    Я тоже так думал, но меня ввела в заблуждение строка "charset=windows-1252" на той странице. О Ё и ё я догадывался, потом прикручу.
    diamond wrote:Тогда рекомендую помедитировать над вопросом: что будет, если браузер наткнётся на, скажем, "Ѐ" или "�"...
    Ты обо мне слишком плохого мнения :) Во-первых, "�" такого быть не может, т.к. все такие теги меньше 7 символов. Далее, на самом деле, стоит проверка:
    IF (text[1]=='1') && (text[2]=='0') bukva=win10_mas[StrToInt(#text+1)-1040];
    И даже если будет "Ѐ" или "&#10h4;" всё равно прога не вылетит. Я проверял.
    Из хаоса в космос
  • Leency
    В хтмл может быть что угодно, ❿ очень даже запросто (да, смысла не имеет, но может быть), это все равно что требывание писать все атрибуты в двойных кавычках, чего многие не придерживаются как и многих других вещей. Пишеш хтмл просмотрщьк почитай хотя бы про него, &#****; - Unicode символ, без разници какая кодировка стоит, частенько используется например для символа копирайта и трейд марк.
  • Я меньше читаю, зато больше пишу. Всё познаётся сперва на практике ,потом уже можно и теорию глянуть, тогда хоть будет интересно что в ней.
    Если так посмотреть, этих юникеодовских кодировой дофига. На самом деле я реализовал ещё одну, но удалил код, т.к. порыскав в нэте понял что с ней не более 2000 страниц.
    Из хаоса в космос
  • На самом деле Unicode одно, остальное (UTF7/8/16/32, UC2, UC4) лишь подмножество, с некоторыми хитростями совместимое с юникодом.

    P.S. Вот вспомнил полезную тебе вещь, как в Битрикс сделано перекодирование из любой кодировки в любую. Там есть просто куча файлов с описание преобразований нужной кодировки в юникод и обратно (это самое полезное для тебя), и функция вида convert(что, из, в); ей говорится например $str866 = convert($str, "cp1251", "cp866"); она берет $str конвертит из "cp1251" в юникод, потом из юникода в "cp866", все гениальное просто ))))
  • Who is online

    Users browsing this forum: No registered users and 0 guests