Некоторая информация по редактированию XML форм

Сделай свой Прогород уникальным!
Кастомизация интерфейса ПРОГОРОД, альтернативные скины, обсуждения

Модераторы: Dmitry, collaur

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 7th, 2011, 1:36 pm

DUK63 писал(а):И по памяти. Я так и не понял, какая память экономится и как?
Если контролька объявлена прозрачной (атрибут transparent), для неё заводится битмап, в котором хранится то, что рисуется под контролькой остальными частями программы. Этот битмап требует памяти.

DUK63 писал(а):И зачем ее экономить?
Потому что её не бесконечное количество.

DUK63 писал(а):Насколько я понимаю, нужная ХМЛ-ка и все картинки грузятся в память только во время вызова соответствующего окна (если они в отдельных файлах/папках). Затем окно закрывается и память, по идее, освобождается.
Извините за откровенность, но Вы мыслите ограниченно. По сути Вы правы. Но вот Вы открыли главное меню - закгрузилось всё, что для него надо. Выбрали некий поиск - загрузилось всё для поиска. Нашли точку и запустили построение маршрута... На каждом из этих шагов Вы можете вернуться назад, в прежнее состояние предыдущего шага, что означает - всё состояние предыдущих шагов еще живо. Вот Вы построили маршрут и нажали "поехали". Только в этот момент вся история забывается и память освобождается, т.к. кнопок "назад" уже нет. Но для построения маршрута как раз и нужна эта самая память!

Не надо воспринимать вышеизложенное, как то, что все картинки всё это время хранились, занимали память и т.п. и советовать, как "исправить". Это - не так, я изложил лишь грубую схему. Но вот битмапы под контрольками, объявленными прозрачными, действительно всё время жизни окна жрут память. А время жизни - это не только, пока окно видно, но и пока на него можно вернуться кнопкой в левом верхнем углу стандартного скина. А если прозрачными объявлены контрольки на главном окне с картой - эта память отжирается на всё время жизни программы.
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение VasAlex » Январь 7th, 2011, 2:17 pm

Попробовал сделать меню в стиле 1.2 , но столкнулся с некоторыми трудностями:

- при создании нового group возникает ошибка либо unknown либо переполнение памяти
- при создании дублирующего "TITLE_BAR" при нажатии на кнопки для быстрого перехода из внутреннего меню в корень другого меню ( к примеру из "системные настройки" в "личные" и т.п.) при нажатии на кнопки - кнопки кроме map и back залипают без выполнения.
- многие команды в некоторых подменю не работают.

Пока остановился на таком виде основного меню ;)

Screen03.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
«Внимание к мелочам рождает совершенство, а вот совершенство уже не мелочь.» (© Микеланджело)

Все мои скины тут
Аватара пользователя
VasAlex
Креативщик
 
Сообщения: 5726
Зарегистрирован: Июнь 10th, 2009, 12:30 pm
Благодарил (а): 402 раз.
Поблагодарили: 1173 раз.
Устройство: Samsung Note 3 N900 KitKat
Оператор: Мегафон, MTC

Re: Некоторая информация по редактированию XML форм

Сообщение DUK63 » Январь 7th, 2011, 2:27 pm

kis писал(а):Но зачем Вам детали устойства?

kis писал(а):Вы мыслите ограниченно

Вот именно, что бы начать мыслить "широко".
kis писал(а):время жизни - это не только, пока окно видно, но и пока на него можно вернуться кнопкой

Ну вот, пошли детали. Уже легче и понятней. Так все военные тайны и вытянем потихонечку :)
Да, (занимаясь 15 лет системами человеко-машинного интерфейса, системами визуализации и диагностики пром. оборудования) я наивно считал, что предыдущее окно уничтожается при вызове следующего и заново создается при возврате (это же не маленький мессадж-бокс, занимающий часть родительского окна). Оказывается это не так. Будем считать что осознал.
kis писал(а):
DUK63 писал(а):Ну а если ... сделать ...?
Сделайте :lol:

Кидайте исходники, попробую.
Аватара пользователя
DUK63
Местный
 
Сообщения: 85
Зарегистрирован: Август 30th, 2010, 7:05 am
Откуда: Тольятти
Благодарил (а): 7 раз.
Поблагодарили: 26 раз.
Устройство: Lenovo S60
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение Bond » Январь 7th, 2011, 4:56 pm

Да.... я давно понял, что скинами дело не закончится. :)
ПГ вер. 2.0.3336, карты 5.2016
Mobilis in mobili.
Аватара пользователя
Bond
Гуру
 
Сообщения: 2732
Зарегистрирован: Сентябрь 3rd, 2009, 9:56 am
Откуда: Москва
Благодарил (а): 38 раз.
Поблагодарили: 219 раз.
Устройство: Android,iOS,WinCE
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 7th, 2011, 6:03 pm

DUK63 писал(а):я наивно считал, что предыдущее окно уничтожается при вызове следующего и заново создается при возврате
А как же сохранение состояния? Вопрос риторический...

DUK63 писал(а):Кидайте исходники, попробую.
Пришлите резюме - рассмотрим. Вакансии С++ программистов есть.
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 7th, 2011, 6:04 pm

VasAlex писал(а):- при создании нового group возникает ошибка либо unknown либо переполнение памяти
Пытались делать вложенные группы?
VasAlex писал(а):- при создании дублирующего "TITLE_BAR"
Т.е. группы с одинаковыми id? И как же их прикажете различать?
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение DUK63 » Январь 7th, 2011, 7:31 pm

kis писал(а):А как же сохранение состояния? Вопрос риторический...
А так же, как при выходе на кару. Ответ риторический...
Я же спорю и не критикую. Раз так сделано, ну и пусть с ним. Теперь мы знаем, что память кушается и будем это учитывать и, по возможности, проверять.

kis писал(а):Пришлите резюме - рассмотрим...
Я и так на жизнь программированием зарабатываю, это уже лишка будет :)
Аватара пользователя
DUK63
Местный
 
Сообщения: 85
Зарегистрирован: Август 30th, 2010, 7:05 am
Откуда: Тольятти
Благодарил (а): 7 раз.
Поблагодарили: 26 раз.
Устройство: Lenovo S60
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение Bond » Январь 7th, 2011, 10:41 pm

DUK63 писал(а):Я и так на жизнь программированием зарабатываю, это уже лишка будет :)

Поддерживаю как сисадмин +программёр). Своего хватает. :salut:
ПГ вер. 2.0.3336, карты 5.2016
Mobilis in mobili.
Аватара пользователя
Bond
Гуру
 
Сообщения: 2732
Зарегистрирован: Сентябрь 3rd, 2009, 9:56 am
Откуда: Москва
Благодарил (а): 38 раз.
Поблагодарили: 219 раз.
Устройство: Android,iOS,WinCE
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 7th, 2011, 11:54 pm

DUK63 писал(а):Теперь мы знаем, что память кушается и будем это учитывать и, по возможности, проверять.
На всякий случай повторюсь: проблема с памятью стоит, в основном, под Windows Mobile (все версии) и Windows CE 5.0. Под Windows CE 6.0 можно считать, что проблемы нет, её практически всегда хватает.

Посмотрел ваше скинотворчество... Вам надо разные бэкграунды в разных окнах? Я планировал атрибуты у тега layout, но нужды не возникло, а сделать несложно.
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение DUK63 » Январь 8th, 2011, 6:24 am

kis писал(а): Вам надо разные бэкграунды в разных окнах? Я планировал атрибуты у тега layout, но нужды не возникло, а сделать несложно.

Да вроде как не надо, по крайней мере пока таких вопросов не возникало. Просто иногда хочется фон не в серую клеточку, а что то более веселенькое.
Аватара пользователя
DUK63
Местный
 
Сообщения: 85
Зарегистрирован: Август 30th, 2010, 7:05 am
Откуда: Тольятти
Благодарил (а): 7 раз.
Поблагодарили: 26 раз.
Устройство: Lenovo S60
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение DUK63 » Январь 8th, 2011, 11:31 pm

kis,
а куда идет привязка по горизонтали "верхнего" края маршрута?
Такое впечатление, что к центру физического экрана, а не слоя карты. Машинка двигается "боком"
(Это просто эксперимент ради эксперимента :) )
Screen12.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
DUK63
Местный
 
Сообщения: 85
Зарегистрирован: Август 30th, 2010, 7:05 am
Откуда: Тольятти
Благодарил (а): 7 раз.
Поблагодарили: 26 раз.
Устройство: Lenovo S60
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 9th, 2011, 1:46 pm

DUK63 писал(а):Такое впечатление, что к центру физического экрана, а не слоя карты.
Да, для простоты рассчетов считается, что карта с машиной занимает всю ширину экрана. Т.к. наш дизайн никогда не предусматривал ничего другого, не было нужды тратить на это время (в т.ч. процессорное).
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение DUK63 » Январь 9th, 2011, 2:21 pm

kis писал(а):Т.к. наш дизайн никогда не предусматривал ничего другого, не было нужды тратить на это время (в т.ч. процессорное).

Вы наверное опять будете "издеваться", но я не пойму, причем тут "тратить (процессорное) время", если в формулы надо (можно?) просто подставить ширину контрольки вместо ширины экрана.
Опять же - раз так сделано, буду знать и больше не ставить эксперименты со смещение карты право/влево.
Аватара пользователя
DUK63
Местный
 
Сообщения: 85
Зарегистрирован: Август 30th, 2010, 7:05 am
Откуда: Тольятти
Благодарил (а): 7 раз.
Поблагодарили: 26 раз.
Устройство: Lenovo S60
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 9th, 2011, 4:36 pm

DUK63 писал(а):Вы наверное опять будете "издеваться", но я не пойму, причем тут "тратить (процессорное) время", если в формулы надо (можно?) просто подставить ширину контрольки вместо ширины экрана.
Я не издеваюсь, я говорю, как есть, хоть это для Вас и горько слышать: это Вам так кажется. Ведь если не полная ширина экрана, то, значит, возможно и не от "нуля" координат, а это уже прибавление ненулевого начала к каждой точке при преобразовании координат в экранные, ну и вычитание - при обратном преобразовании... Причем, с учетом того, что делается проекция сферы на плоскость, а затем делается трансперспективного преобразования, т.е. два нелинейных преобразования, это не просто прибавить к результату, как может показаться на первый взгляд... Сейчас, например, матричные преобразования выполняются вместе с окончательным клиппингом в процессе рендеринга, в загрубленной точности, а для Вас их придется выносить в отдельную операцию... или переписывать движок рендерера...
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение DUK63 » Январь 9th, 2011, 4:52 pm

kis писал(а):...это уже прибавление ненулевого начала к каждой точке при преобразовании ...

А как же ненулевое начало при выборе цветового стиля карты? или там тоже карта "кривая", просто этого не видно, т.к. нет курсора и маршрута?
И что то мне подсказывает, что можно обойтись неким коэффициентом к углу поворота карты.
kis писал(а):или переписывать движок рендерера...

Это все равно придется когда то делать :)
Аватара пользователя
DUK63
Местный
 
Сообщения: 85
Зарегистрирован: Август 30th, 2010, 7:05 am
Откуда: Тольятти
Благодарил (а): 7 раз.
Поблагодарили: 26 раз.
Устройство: Lenovo S60
Оператор: Билайн

Re: Некоторая информация по редактированию XML форм

Сообщение VasAlex » Январь 9th, 2011, 8:25 pm

kis писал(а):
VasAlex писал(а):- при создании нового group возникает ошибка либо unknown либо переполнение памяти
Пытались делать вложенные группы?

пробовал, но не получилось. Может быть есть алгоритм названия group, которые не описаны в самой программе?

kis писал(а):
VasAlex писал(а):- при создании дублирующего "TITLE_BAR"
Т.е. группы с одинаковыми id? И как же их прикажете различать?

Я имел в виду не саму группу, а содержимое группы, которая встречается в других меню.
(Я про сквозное меню, скрин которого привел выше.).
Чтобы было понятно - измененный "причесанный" скин для всех разрешений можно посмотреть тут - http://4pda.ru/forum/index.php?s=&showt ... &p=6177266
«Внимание к мелочам рождает совершенство, а вот совершенство уже не мелочь.» (© Микеланджело)

Все мои скины тут
Аватара пользователя
VasAlex
Креативщик
 
Сообщения: 5726
Зарегистрирован: Июнь 10th, 2009, 12:30 pm
Благодарил (а): 402 раз.
Поблагодарили: 1173 раз.
Устройство: Samsung Note 3 N900 KitKat
Оператор: Мегафон, MTC

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 9th, 2011, 11:53 pm

VasAlex писал(а):пробовал, но не получилось. Может быть есть алгоритм названия group, которые не описаны в самой программе?
Не понимаю, но скорее нет, чем да.

Боюсь, полноценная реализация Вашей задумки вряд ли возможна без изменения текстов программы.
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение VasAlex » Январь 10th, 2011, 12:51 am

kis писал(а):Не понимаю, но скорее нет, чем да.

Боюсь, полноценная реализация Вашей задумки вряд ли возможна без изменения текстов программы.


Вы правы, без правки программы не получится, :cry:
Нужны командные константы.
Как еще вариант - использовать один xml файл
«Внимание к мелочам рождает совершенство, а вот совершенство уже не мелочь.» (© Микеланджело)

Все мои скины тут
Аватара пользователя
VasAlex
Креативщик
 
Сообщения: 5726
Зарегистрирован: Июнь 10th, 2009, 12:30 pm
Благодарил (а): 402 раз.
Поблагодарили: 1173 раз.
Устройство: Samsung Note 3 N900 KitKat
Оператор: Мегафон, MTC

Re: Некоторая информация по редактированию XML форм

Сообщение kis » Январь 13th, 2011, 7:43 pm

Для отслеживания разницы между версиями я бы посоветовал раскрутить сервер SVN, поставить к нему в качестве клиента TortoiseSVN. Тогда он будет показывать все изменения между версиями, и им лекго будет мержить ваши собственные правки... Ну или использовать TortoiseSVN просто в качестве diff... или найти подобный дружелюбный diff...

Всё это легко делается под виндами, и не настолько страшно, как звучит.
Ex-ПроГраммист ПроГорода
Аватара пользователя
kis
"ПРОГОРОД" Программист
 
Сообщения: 6979
Зарегистрирован: Апрель 23rd, 2010, 1:02 pm
Откуда: Москва, Зеленоград
Благодарил (а): 838 раз.
Поблагодарили: 872 раз.

Re: Некоторая информация по редактированию XML форм

Сообщение SynteZZZ » Январь 15th, 2011, 4:37 am

А group id="TIMEARRIVAL" это очередная хитрая группа? Пытаюсь вытащить из нее данные выше нижней плашки - на свою полупрозрачную над картой, а получается такая красота:
Img_20110115043256.png

Код: Выделить всё
<group type="map">
          <layer width="100%" height="100%">
            <control type="button" id="PGCID_MAP_TILTBAR" width="10" height="100%" align="left" frame="no" gap="0"/>
          </layer>
          <layer width="100%" height="100%">
            <control type="button" id="PGCID_MAP_HEADINGBAR" width="100%" height="10" valign="bottom" frame="no" gap="0"/>
            <control type="icon" valign="center" align="center">
              <image status="touched" name="map/icon_compass.png"/>
            </control>
          </layer>

          <!-- Right bar background -->
          <control type="static" width="64" height="100%" align="right">
            <color status="normal" background="#80000000"/>
          </control>

          <!-- Zoom in -->
          <layer width="64" height="30" align="right" >
            <control type="button" id="PGCID_MAP_ZOOMIN" width="30" height="30" align="left" valign="top" marginwidth="2"/>
            <control type="button" id="PGCID_MAP_ZOOMOUT" width="30" height="30" align="right" valign="top" marginwidth="2"/>
          </layer>
         
        </group>

        <!-- Right bar -->
        <layer width="100%" height="100%">
          <group width="64" height="100%" align="right">
            <layer width="100%" height="32" />
            <layer width="100%" height="30">
              <group id="GPS" width="30" height="30" valign="top">
                <control id="GPS_BUTTON" type="button" width="100%" height="100%" gap="0">
                  <color background="transparent"/>
                  <action event="call" id="GPS_INFOR"/>
                </control>
                <control id="GPS_ICON" type="static" width="14" valign="center" align="center" gap="0">
                  <image status="normal" name="indi_gps.2.png" index="0"/>
                </control>
              </group>
              <group id="CONNECT" width="30" height="30" valign="top">
                <control id="CONNECT_BUTTON" type="button" width="100%" height="100%" gap="0">
                  <color background="transparent"/>
                  <action event="call" id="TRACK_SETTINGS"/>
                </control>
                <control id="CONNECT_ICON" type="static" width="14" valign="center" align="center">
                  <image status="normal" name="indi_traffic.2.png" index="0"/>
                </control>
                <control type="static" id="YELLOW" width="14" valign="center" align="center" visible="false">
                  <image status="normal" name="indi_traffic.2.png" index="7"/>
                </control>
                <control type="static" id="RED" width="14" valign="center" align="center" visible="false">
                  <image status="normal" name="indi_traffic.2.png" index="8"/>
                </control>
              </group>
            </layer>
            <layer width="100%" height="30">
              <group id="SOUND" width="30" height="30"  valign="top">
                <control id="SOUND_BUTTON" type="button" width="100%" height="100%" gap="0">
                  <color background="transparent"/>
                  <action event="call" id="VOICENSOUND"/>
                </control>
                <control id="SOUND_ICON" type="static" width="14" valign="center" align="center" gap="0">
                  <image status="normal" name="indi_sound.2.png" index="0"/>
                </control>
              </group>
              <group id="BATTERY" width="30" height="30"  valign="top">
                <control id="BATTERY_ICON" type="static" width="10" valign="center" align="center" gap="0">
                  <image status="normal" name="indi_battery.2.png" index="4"/>
                </control>
              </group>
            </layer>



            <group id="TIMEARRIVAL" width="100%" height="20">
             
              <!-- Remain time -->
              <layer width="100%" height="100%">
                <control type="static" valign="center">
                  <image status="normal" name="icon_arrivetime.2.png" index="0"/>
                </control>
                <layer width="2" height="100%"/>
                <control id="REMAINTIME_HOUR" type="number" width="12" valign="center">
                  <image status="normal" name="num_s_n.2.png"/>
                </control>
                <control type="static" width="2" height="10" valign="center">
                  <image status="normal" name="num_s_time.2.png"/>
                </control>
                <control id="REMAINTIME_MIN" type="number" width="12" valign="center">
                  <image status="normal" name="num_s_n.2.png"/>
                </control>
              </layer>
              <!-- Remain distance -->
              <layer width="100%" height="100%">
                <control type="static" valign="center">
                  <image status="normal" name="icon_arrivetime.2.png" index="1"/>
                </control>
                <control id="REMAINDIST_NUM" type="number" width="24" valign="center">
                  <image status="normal" name="num_s_n.2.png"/>
                </control>
                <layer width="1" height="100%"/>
                <control id="REMAINDIST_METER" type="static" width="11" valign="center">
                  <image status="normal" name="num_m_km.2.png" index="0"/>
                </control>
              </layer>
              <!-- Arrival time -->
              <layer width="100%" height="100%">
                <control type="static" valign="center">
                  <image status="normal" name="icon_arrivetime.2.png" index="2"/>
                </control>
                <layer width="2" height="100%"/>
                <control id="TIMEARRIVAL_HOUR" type="number" width="12" valign="center">
                  <image status="normal" name="num_s_n.2.png"/>
                </control>
                <control type="static" width="2" valign="center">
                  <image status="normal" name="num_s_time.2.png"/>
                </control>
                <control id="TIMEARRIVAL_MIN" type="number" width="12" valign="center">
                  <image status="normal" name="num_s_n.2.png"/>
                </control>
              </layer>
            </group>





          </group>
        </layer>
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
SynteZZZ
Ветеран
 
Сообщения: 231
Зарегистрирован: Июнь 17th, 2009, 2:13 pm
Откуда: Москва
Благодарил (а): 14 раз.
Поблагодарили: 5 раз.
Устройство: LG Nexus 5
Оператор: Beeline

Пред.След.

Вернуться в Альтернативный дизайн программы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron