Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, c-smile, Вы писали:
CS>>Кстати sciter умеет грузить stuff из zip архивов.
А>Да, возможность хорошая, узелок на память сделал. Просто именно в том что я делаю есть пожелание добавлять патчи, плюс возможность хоть какой-то защиты данных от совсем уж дурака, ну хотя бы пароль на архив, если о zip'е говорить. Пока я у себя так сделал, есть единая функция LoadFile, есть функции CreateLoader, которые создают загрузчики (файлы на диске, файлы в архиве на диске, файлы в архиве в ресурсах exe) и ставят их в очередь. Когда программе нужен файл, она дергает LoadFile, та пробегает по загрузчикам, и отдает первый соответствующий. В такой схеме я могу указать базовый архив и несколько архивов-патчей, а в режиме разработки просто на папку с данными. Я не разбирался особо, но так понимаю что zip в sciter зашит глубоко и намертво, то есть сделать такую схему загрузчиков не получиться. Или все не так? Если бы была такая встроенная система очереди загрузчиков, с поддержкой zip, то было бы вообще здорово. Там и кода-то три-четыре сотни строк, может сделаете как-нибудь? Очень удобная штука, на самом деле, гибко и прозрачно.
zip вообще-то и так не сильно тривиален (вменямая адресация в URL имеется ввиду).
Поэтому думается придется тебе свой обработчик SC_LOAD_DATA писать.
CS>>By default — нет. Но ты можешь себе нарисовать вот такое:
А>Тут я, наверное, еще по-браузерному мыслю. Нужно мне просто подстроиться под sciter, всяко условия и особенности сред разные.
Да как-то особо никому не нужна была эта в общем-то спорная фича. Посчитал что если можно навесить со стороны то тому кто надо — сделает.
CS>>За стили своего окна Sciter сам по себе не отвечает. Приложение создает окно само.
CS>>Соотв. стили окна типа resizeable дело сугубо твое.
А>Вот чем Sciter из меня скупую мужскую слезу выдавил, так это вменяемой встраиваемостью. Безо всяких безумных прослоек с сотнями интерфейсов, просто и ясно.
Хотелось бы еще проще на самом деле. Ибо я сам в свое время наелся всяких вселенских принципах воплощенных в абстрактных интерфейсах.
CS>>Не ясно зачем там iframe. (Кстати лучше иcпользовать <frame> ...) Но это так...
А>Не знал что можно frame просто так положить. Отметил.
<frame> и <frameset> можно использовать как любые другие блочные элементы.
Например если нужен splitter то пишем
<frameset cols="200px,*">
<div>left</div>
<frame #right></frame>
<frameset>
CS>>В этом случае на 120dpi размеры будут расчитываться соответсвенно.
А>Тут опять специфика. Проект — игрушка, с возможным заходом в презентации/обучалки, или наоборот, пока не до конца ясно. Предполагается фиксированная графика, то есть размеры основных элементов худо-бедно известны. Одной из причин использования DirectDraw и есть желание развернуть контент на весь экран, но без особых изменений видимой структуры документа. Кстати, можно ли как-то в Sciter использовать transform: scale или что-то подобное? Одной строчкой стиля и onResize на body хочется растягивать #screen до размеров окна, но с сохранением aspect ratio, и желательно с красивой интерполяцией
А>Тут, кстати, возникает вопрос о шрифтах, есть ли возможность засунуть если не битмап шрифты, это вообще здорово было бы, хотя не знаю насколько тяжело в плане производительности будет для Sciter рендерить простыню текста из argb глифов, то что-то вроде cufon'а? Хочется иметь гарантированный стиль отображения текста. Желательно так вообще на любой машине, с разными настройками DPI, разными темами, разными шрифтами, иметь максимально одинаковый результат рендера. И если и менять шрифт на больший/меньший, то только внутренними средствами. Хотя это все скорее пожелание, чем требование проекта.
sciter v.2 на подходе. Используется Direct2D/Write — т.е. в конце концов DirectX.
transform: scale там боддерживатеся из коробки.
Можешь глянуть на preview:
http://www.terrainformatica.com/2011/04/sciter-v-2-preview-gradients/
http://www.terrainformatica.com/2011/03/sciter-v-2-technology-preview/
(ссылка на демо в документах)