Сайт | Скачать | Видео | Wiki

Автор Тема: StopwatchTimer (PureBasic)  (Прочитано 204 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
StopwatchTimer (PureBasic)
« : 10 Январь 2021, 17:02:33 »
StopwatchTimer

Скачать



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

Использование
1. Жмём "Добавить"
2. Указываем интервал времени или задать по дате
3. Указываем сигнал и проверяем что он работает
4. Если таймер понадобится в будущем, то сохраняем его (избавление от настроек, просто кликаем сохранённый пункт)
5. Таймер запускается автоматически и сработает в заданное время.


sfs
Обновил StopwatchTimer (ссылка та же), в ini добавил имя шрифта, размер шрифта, ширина и высота списка. Не знаю дефолтный шрифт Linux, пока взял Noto.

Ещё обновил, устранил ресайз по ширине.
« Последнее редактирование: 14 Январь 2021, 22:48:29 от AZJIO »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 30211
  • Репутация: +204/-0
    • PuppyRus-A
Re: StopwatchTimer (PureBasic)
« Ответ #1 : 11 Январь 2021, 12:32:47 »
Не знаю дефолтный шрифт Linux
Sans
устранил ресайз по ширине.
У меня размер окна узменяется, но содершимое окна без изменений. так задумано?

Хорошо бы прогу в трей сворачивать
По окончании таймера хорошо бы сообщение. Можно через notify-send, но лучше просто окно

Попробовал скомпилить исходник - норм
Спасибо +
Очень была бы интересна тематика самодельного ПО. Если нужно - сделаю отдельный раздел под пб
Может и разрабы подтянутся...

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
Re: StopwatchTimer (PureBasic)
« Ответ #2 : 11 Январь 2021, 22:09:31 »
По окончании таймера хорошо бы сообщение.
надеялся что будет использоваться запуск медиафайла mp3, ogg. Но можно будет подумать как вариант если не установлен запуск файла.
У меня размер окна узменяется, но содершимое окна без изменений. так задумано?
ширина не должна меняться, высота допустимо, но при этом изменяется только высота списков, кнопки думаю нет смысла растягивать или двигать. А ширина и начальная высота списков задаётся в ini. Можно было сделать расширение списков, но тогда добавиться размер проги, ведь на каждый элемент окна нужно описывать вычисление размеров, это не сложно, 11 элементов в GUI - 11 строк на рассчёты масштабирования. опять же логически навязыватеся мысль что нужно сохранить этот размер для последующих запусков, добавление флага изменения размера, чтобы сохранять только если фейс изменён, а не всякий раз. Да вполне реализуемо. Просто вчера я думал что мне придётся получать размер окна и из него вычислять размеры элементов, а если они не делятся кратно на 3 (корректировать), а если размер будет уплывать, как это было с одной моей прогой, когда размер при каждом запуске увеличивается на пиксель и не замечаешь, пока прогу уже закрыть невозможно, так как кнопка закрытия нестандартная снизу и она за экраном.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 30211
  • Репутация: +204/-0
    • PuppyRus-A
Re: StopwatchTimer (PureBasic)
« Ответ #3 : 12 Январь 2021, 09:50:40 »
надеялся что будет использоваться запуск медиафайла mp3, ogg.
А если юзер в это время отходил от пк?
B в пакетах, в  *.desktop у вас нет Categories=

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
Re: StopwatchTimer (PureBasic)
« Ответ #4 : 13 Январь 2021, 02:17:47 »
А если юзер в это время отходил от пк?
B в пакетах, в  *.desktop у вас нет Categories=
Обновил.
Окно масштабируется и сохраняется размер. Добавил флаги message и notify, если есть желание получить мессагу и/или уведомление попутно с запуском файла (но если файл не задан, то ничего не будет, эти вещи не разделял пока).

Использовал команды
Код
zenity --info --title="Таймер" --text="Завершено"
notify-send 'Сигнал' 'Завершено'
чтобы не блокировали окно таймера

Указал Categories=Misc. Читал что если категория не указана, то попадает в "Прочее", то есть Misc
« Последнее редактирование: 13 Январь 2021, 02:36:08 от AZJIO »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 30211
  • Репутация: +204/-0
    • PuppyRus-A
Re: StopwatchTimer (PureBasic)
« Ответ #5 : 13 Январь 2021, 11:45:47 »
Окно масштабируется
Так лучше, но при сжатии окна текст в кучу - см скрин
если есть желание получить мессагу и/или уведомление попутно с запуском файла (но если файл не задан, то ничего не будет, эти вещи не разделял пока).
Не понял
Использовал команды
У меня ни одна не сработала по итогу конца таймера. Звукового файла нет
С приведенными ключами в консоле проги работают
zenity - а средствами pb почему не вывести окно? Зачем лишние зависимости
По итогу должен быть звук + zenity + notify ?
Categories=Misc.
Нет такого. Utility

Вместо "Добавить" логичнее "Редактировать"
Исходник не интернационализирован  :'( Если уж совсем по взрослому делать
Текст Описание.txt логично вывести на кнопку "Справка" (добавить)

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
Re: StopwatchTimer (PureBasic)
« Ответ #6 : 13 Январь 2021, 15:46:27 »
По итогу должен быть звук + zenity + notify ?
да. Если переделывать, то пока не знаю как с виндой быть, там надо будет придумывать как создавать мессагу не блокирующую окно, теоретически можно не делать его дочерним по отношению к родительскому, но в таких случаях это окно закрытое другими окнами потом не даст закрыть программу нажатием крестика-закрытия.
при сжатии окна
надо будет вернуть WindowBounds, просто задать другие параметры, это легко

Нет такого. Utility
ясно... в инструкции создания deb есть Misc для /DEBIAN/control есть "Section: misc", у меня в меню есть "прочие", и также было сказано что если категории нет, то попадают в "прочее". Вот я и решил пусть сам туда делает. Ладно добавлю в Utility.

Исходник не интернационализирован
подучу вариант Linux, я бы мог встроить язык в исполняемый или выбор внешнего файла, но знаю что языки в Linux в "/usr/share/locale", надо будет изучать формат запроса строк языка.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 30211
  • Репутация: +204/-0
    • PuppyRus-A
Re: StopwatchTimer (PureBasic)
« Ответ #7 : 13 Январь 2021, 15:52:03 »
zenity + notify
Явный перебор. Без всплывающего можно обойтись. А результативное сообщение можно и в окне проги вывести (если вы ее в трей не уберете)
если категории нет, то попадают в "прочее"
Да, но это как-то не очень
языки в Linux в "/usr/share/locale"
Да. В нашей вики все описано. Это лучше оставить на самый конец. Чтобы часто не переделывать

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
Re: StopwatchTimer (PureBasic)
« Ответ #8 : 13 Январь 2021, 16:02:32 »
Без всплывающего можно обойтись.
так там флаг в 0 поставить, кстати, по-простому можно сделать флаг Executable=0 и тогда игнор музыки. Подумаю...

если разделить исходники винда/линукс, тогда можно не думая о совместимости с виндой сделать вывод мессаги... вот как раз пример как одна вещь не даёт возможность быстро переделать один исходник в другой, сразу куча подводных камней.

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
Re: StopwatchTimer (PureBasic)
« Ответ #9 : 14 Январь 2021, 15:49:12 »
sfs
Минимальный размер окна восстановил
Добавил в список выбора медиафайлов пункт "Сообщение", теперь он самостоятельный.

Поддержку мультиязыков сделать пока не удалось, не нашёл волшебную функцию, которая делает это автоматически, а по питону или скриптам терминала это не очевидно, там поддержка может быть встроена. Позже займусь, пока коррекцию текста сделаю. Про прогу в трей тоже помню.
« Последнее редактирование: 14 Январь 2021, 16:05:34 от AZJIO »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 30211
  • Репутация: +204/-0
    • PuppyRus-A
Re: StopwatchTimer (PureBasic)
« Ответ #10 : 14 Январь 2021, 16:43:25 »
Минимальный размер окна восстановил
А в шапке перезаливали? Что-то у меня без улучшений. Кстати по кнопке "Справка" не помешала бы и версия

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 30211
  • Репутация: +204/-0
    • PuppyRus-A
Re: StopwatchTimer (PureBasic)
« Ответ #11 : 14 Январь 2021, 16:54:34 »
Разобрался -  свежий в арчпакете . В Linux - вчерашний
Размер -норм.
ни одна не сработала по итогу конца таймера
Без улучшений

Оффлайн AZJIO

  • Модератор
  • Пользователь
  • ****
  • Сообщений: 32
  • Репутация: +2/-0
  • Автор темы
Re: StopwatchTimer (PureBasic)
« Ответ #12 : 14 Январь 2021, 22:57:08 »
sfs
На всякий случай перезалил, чтобы старых версий не было. Ничего не изменял. У меня всё работает. Флаги теперь не действуют, надо оставить по умолчанию (в раскрывающемся списке должно быть "Сообщение"), ставим таймер например 2 секунды, жмём ОК и через 2 сек появится мессага с метками таймера. Мессага и при тесте сигнала тоже должна сработать, только без меток.

Вспомнил предложение вместо "Добавить" сделать "Изменить", но это не изменяет, а именно добавляет таймер. Их можно добавить десяток. Один например через 6 часов на работу, другой через час в магазин, третий - выключить набор воды в ванну через 5 минут. И все они сработают в нужное время.

Обновил, иконка в трее теперь.
Добавил справку в папку, но не делал это через /usr/share/help/ru
« Последнее редактирование: Вчера в 17:24:56 от AZJIO »