zSea - полноценный графический просмотрщик

Processing, playback of audio and video
  • Leency
    Если не сложно, то проверь вот эту сборку Box_lib (бинарник того что залил на SVN ревизия 1227):
    box_lib.obj (5.79 KiB)
    Downloaded 248 times
    У меня на нетбуке RoverBook U800 визуально стало плавней выводить, когда курсор пересекает компонент OptionBox.
    Если не поможет, буду разбираться дальше.
  • Больше не моргает, респект.
    Из хаоса в космос
  • OpenDialog
    1. Я бы не заливал фон под полосой прокрутки (когда она есть). Мигает при перерисовке.
    2. Папки вида "!!!название" оказываются выше папки "..". Гы, я тож когда-то с этим боролся)
    3. Строка адреса на жёлтом фоне, может выходить за пределы жёлтой области.

    zSea
    1. Решил я значит посжимать изображения в программе прекрасной утилитой optipng.
    z_icons.png пережил это нормально и уменьшился с 6.30 Кб до 4.95.
    1.png тоже при отображении в программе никак не изменился, а вот 2.png и 3.png отображаются несколько не так, как задумывалось. И, знаете, возможно, так даже красивей :)
    2. А после программы pngout 2.png и 3.png вообще практически не отображаются (с z_icons.png и 1.png опять же всё нормально).
    3. Кстати, очень порадовало и удивило, что анимированые Gif-ы отображаются полностью правильно.
    4. Новая иконка музыки.
    5. В icons.ini можно указать, что .mkv, .wmv и .mov тоже видео-файлы...
    Attachments
    z_icons.png
    z_icons.png (4.95 KiB)
    Viewed 7080 times
    Обратите внимание на панель быстрых кнопок: изображения в программе и оригинальные
    Downloaded 240 times
    Из хаоса в космос
  • Leency
    1. Я бы не заливал фон под полосой прокрутки (когда она есть). Мигает при перерисовке.
    Мигает при перерисовке какой? А вообще ты уже знаешь способ как лучше всего объяснить. У меня нет твоего компьютера.
    2. Папки вида "!!!название" оказываются выше папки "..". Гы, я тож когда-то с этим боролся)
    Сортировка не моя, но попытаюсь побороть глюк.
    3. Строка адреса на жёлтом фоне, может выходить за пределы жёлтой области.
    Можно конечно вместо строки прикрутить EditBox, но тут же кто-нибудь полезет руками вбивать всякую хрень и доказывать какой плохой OpenDialog... придется еще код изобретать.

    Насчет вывода PNG на кнопки, буду разбираться. Если картинки кнопок открыть самой программой, они отображаются нормально.
    Однако Thumbs.db можно было перед архивацией удалить.
  • "Можно конечно вместо строки прикрутить EditBox, но тут же кто-нибудь полезет руками вбивать всякую хрень и доказывать какой плохой OpenDialog... придется еще код изобретать." - если не ошибаюсь, можно в коде не вызывать обработку эдитбокса при нажатии кнопок и событиях мыши, а только прорисовывать его.
    И мы уже давно не пешки,
    Мы пули, мы орлы, и решки!
    Война ютит бинарный код,
    Умри, или иди вперед!
  • Gluk
    если не ошибаюсь, можно в коде не вызывать обработку эдитбокса при нажатии кнопок и событиях мыши, а только прорисовывать его.
    Еще появятся те, кто ни понимает зачем это сделано и будет думать что это баг. В результате:
    Mario wrote:придется еще код изобретать.
    Ну, что-же назвался кузовковых дел мастером - получаешь по морде груздями...
  • ну там же не написано что это эдитбокс) может, просто похоже. Хозяин, конечно, барин, но я бы наверное так сделал
    И мы уже давно не пешки,
    Мы пули, мы орлы, и решки!
    Война ютит бинарный код,
    Умри, или иди вперед!
  • Глюк надо исправлять. Но такой вид тулбара мне нравится больше, а тебе?
    Из хаоса в космос
  • Gluk
    Хозяин, конечно, барин, но я бы наверное так сделал
    Я подумаю как это дело оформить. Если лепить EditBox то все равно надо предусматривать смену фокуса от компонента FileBrowser к компоненту EditBox, и не только с мышки, но и с клавиатуры (например по Tab).

    Leency
    Но такой вид тулбара мне нравится больше, а тебе?
    Вот уж в чем я не ограничивал никого - так это в смене картинок, наоборот я специально вынес их отдельно, чтобы не было как с пресловутым обновленным приложением End (где бинарник был с намертво вшитой RAW картинкой).
    Если человек хочет, он с легкостью может заменить рисунки для кнопок, но это не повод не исправлять. Только картинки должны быть такого же размера.
    А вот для OpenDialog иконки могут быть любого размера, главное чтобы они также вертикально располагались и соотношение длинны к ширине, для каждой отдельной иконки, было 1:1
    Правда делать их больше 16*16 особого смысла нету, потому что другие шрифты кроме системных пока отсутсвуют, а проекты по шрифтам далеки от конечного использования, пока во всяком случае.
    1. Я бы не заливал фон под полосой прокрутки (когда она есть). Мигает при перерисовке.
    Ну, так как, ты можешь предоставить 3gp файл? Мне понравились такие баг репорты. :mrgreen:
  • Leency
    Я разобрался с багом картинок в кнопках. Проблема возникла из-за того, что при проектировании DinamicButton я не учел случая, когда для каждого положения кнопки (пассивна, активна, нажата) своя область палитры для 8 битных картинок.

    Я могу сделать это быстро и просто, либо медленно и скучно. У каждого способа разумеется свои боковые грани:

    1) Быстро и просто (все мы любим быстро и чтобы при этом ничего не платить и ни чем не жертвовать) - все картинки для кнопок (активны, пассивные, нажатые) скидываются в один файл. При этом у них становится общая область палитры по любому. Мне остается внести небольшие поправки в zSea при распихивании данных в указателях на картинки кнопок. Все.

    2) Медленно и скучно (это мы не любим, потому что приходится сознательно жертвовать данной Богом свободой выбора и насильно делать то что надо, а не заниматься приятным поплевыванием в потолок, но иногда нам всем приходится так поступать) - я правлю структуру данных передаваемых к компоненту DinamicButton, два dword'а для указателей областей с дополнительными палитрами.

    Опционально еще можно добавить картинку отключенной кнопки, когда она не нужна и соответственно обработку этого случая, это еще 3 dword'а. Еще опционально ссылку на текст подсказки всплывающей по нажатию на ПКМ, но последнее задел на будущее (то самое, которое от меня когда-то требовал Gluk).
  • Чем плох первый вариант? Если он прост, то должен быть подвох.
    Вообще решать тебе.

    Кстати, (ещё до этого хотел написать, да забывал) - удаления файлов не хватает.
    Из хаоса в космос
  • Leency
    Если он прост, то должен быть подвох.
    Подвох в том что это затыкание дырки, без учета перспективы.
    Просто пока DinamicButton используется только в zSea (ну, еще пример использования на SVN), то нет лишних проблем с авторами, которые используют компонент. Не нужно им объяснять - зачем это было сделано (второй вариант) и как исправлять.
    удаления файлов не хватает
    Это реализовать несложно, но меня останавливает вырабатывающийся у людей рефлекс сразу после Delete нажимать Enter, а потом говорить Ой, а потом Бл... и конечно в этом виноват автор программы. :mrgreen:
  • Любое дальнейшее обсуждение программы OpenDialog предлагаю продолжать в теме:
    box_lib.obj - библиотека gui компонентов
    Поскольку прямого отношения к zSea он не имеет, а также исходники залиты на SVN, вместе с примером использования.
  • Стрелки курсора (на гл. и доп клав.) - сдвиг картинки, если она больше области отображения.
    Лучше сделать как Виндоус стандарт. просмотрщике. Стрелка вправо следующии файл и нааборот. Очень удобно. Особенно когда темно и дотянуться до мышки лень.
  • Who is online

    Users browsing this forum: No registered users and 8 guests