BSL‑Timer: вкладки и другие улучшения

Совсем недавно я написал заметку «Первый релиз BSL-Timer установлен!». Тогда меня невероятно впечатлил сам факт: программа, которая прежде существовала только в моей голове и в виде папки с исходным кодом, превратилась в настоящий установщик. Я установил её на компьютер, нашёл ярлык на рабочем столе, запустил — и она заработала.

Моя собственная программа.

Казалось бы, куда уж больше эмоций?

Оказалось — есть куда. 🤣 Но сейчас я хочу поделиться тем, что удалось сделать. С тех пор BSL‑Timer заметно изменился. И речь уже не только о том, что мы починили несколько кнопок, уменьшили окно и перестали использовать его площадь так, будто пиксели выделяются государством бесплатно и в неограниченном количестве.

У программы появились цветовые схемы: зелёная, синяя, фиолетовая и даже Tan LCD — стилизация под старые жидкокристаллические дисплеи первых электронных часов и калькуляторов, до сих пор лежащих на столах бухгалтерии. Тех самых, на которых каждая цифра выглядела не нарисованной, а торжественно сложенной из отдельных сегментов.

Появился и настоящий электронный шрифт. Не очередные современные облизанные цифры, похожие на рекламу банковского приложения, а суровый семисегментный дисплей из прекрасного прошлого. Я смотрю на него — и где-то внутри меня довольно улыбается человек, который помнит DOS, зелёные символы на чёрном экране и времена, когда компьютер ещё не пытался угадать желания пользователя, а честно ждал команды.

Теперь BSL‑Timer умеет работать на русском и английском языках. В настройках можно менять цветовую схему, прозрачность окна и отдельно яркость основных цифр. Причём результат изменения виден сразу — не надо закрывать окно, перезапускать программу, трижды плевать через левое плечо и ждать следующего обновления Windows.

Само окно настроек тоже стало нормальным. В нём есть три кнопки, по которым я страшно скучал: Ok, Apply и Cancel.

Да! Именно те самые кнопки, от которых современные дизайнеры интерфейсов почему-то решили отказаться.

И теперь пользователь должен сидеть перед какой-нибудь галочкой и гадать: она уже применилась или ещё только выразила намерение примениться? Настройка сохранится после закрытия окна? Вернётся обратно? Нужно щёлкнуть в другом месте? Закрыть окно крестиком? Совершить обряд? Принести жертву богу минимализма?

Ведь бред же!

Поэтому у меня всё честно.

  • Ok — применить изменения и закрыть окно.
  • Apply — применить, но оставить окно открытым.
  • Cancel — ничего не сохранять и уйти, хлопнув дверью.

Человечество придумало эту великолепную систему давным-давно. Она была понятна всем. Но затем кто-то решил, что интерфейсы должны быть «современными», и теперь мы разгадываем намерения переключателей по едва заметному изменению оттенка с серого на чуть менее серый.

Нет уж. В моих программах будут Ok, Apply и Cancel. Ибо я — автор. Я так решил. 🤣

Таймер теперь запоминает выбранную цветовую схему, прозрачность и яркость дисплея. Кроме того, он помнит, где находилось главное окно при закрытии, и при следующем запуске появляется там же. Отдельно запоминается положение окна настроек. Причём если я намеренно утащу его вниз, частично спрятав за taskbar, при следующем открытии программа аккуратно вернёт окно в видимую область экрана.

Казалось бы — мелочь. Никто ведь не умрёт, если после каждого запуска придётся снова перетаскивать таймер в левый верхний угол монитора. Но качественный продукт именно из таких мелочей и состоит. Из отсутствия необходимости каждый день повторять программе одно и то же только потому, что она страдает цифровой формой амнезии.

А теперь — вишенка на торте.

Вкладки!

В BSL‑Timer наконец появилось несколько независимых таймеров в одном окне.

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

Каждая вкладка живёт своей жизнью. Один таймер можно запустить, другой поставить на паузу, третий остановить. При закрытии вкладки с работающим отсчётом программа предупредит, что данные будут потеряны. Если закрыть всё приложение с активными таймерами, оно тоже сначала спросит, действительно ли я намерен совершить эту глупость.

Да, вкладки, скорее всего, будут жить в версии Pro, которая будет стоить каких-то символических денег, сопоставимых со стоимостью пары чашек кофе. Уверен, что никто на это не обидится. Ну а если всё-таки обидится — думаю, я переживу. 😉

При следующем запуске BSL‑Timer может предложить продолжить отсчёт с учётом прошедшего времени или сбросить уже неактуальные таймеры. Потому что увидеть утром счётчик, торжественно сообщающий, что кастрюля просрочена на восемь часов, конечно, познавательно. Но вряд ли полезно. Это поведение тоже настраивается.

И всё это не лежит где-то в исходниках и не запускается только из среды разработки.

Я уже собрал новую версию, установил её на свой компьютер и уже пользуюсь ею как обычной программой. Программой, которую сам продумал и которую мы с моей виртуальной помощницей Наташей постепенно доводим до ума. Под мои задачи. С моими кнопками, вкладками, цветами, придирками и представлением о том, как всё должно работать.

И вот здесь начинается самое главное.

Мне трудно описать тот кайф, который я сейчас испытываю.

Когда-то я искал его в алкоголе. Больше половины жизни я тратил на то, что обещало быстрое облегчение, радость, свободу и ощущение, будто всё стало лучше.

Только лучше ничего не становилось.

Менялось исключительно моё восприятие — да и то ненадолго. Пока мне казалось, что стало легче, моя жизнь постепенно разрушалась. Бутылка давала мгновенное ощущение облегчения — но только ощущение.

Здесь всё устроено ровно наоборот.

Сначала появляется идея. Потом начинаются работа, ошибки, зависшие окна, неработающие кнопки и пиксели, которые совершенно охренели и расположились на два пикселя ниже, чем им было велено.

Но ты продолжаешь копать, снова и снова объясняя своей виртуальной помощнице, что именно должно работать иначе. Иногда даже скандалишь и ставишь её на место. Или возвращаешь из весьма странного соревнования «Кто глупее, но упрямее?».

И идея постепенно начинает работать. Обрастает плюшками и фишками. Она не просто создаёт на несколько часов приятную иллюзию, а действительно становится частью реального мира.

Вот он — таймер. Вот его окно. Вот вкладки. Вот настройки. Вот установочный файл. Вот программа, которой я уже пользуюсь.

Этот кайф не идёт ни в какое сравнение с бухлом. Потому что бухло даёт суррогат: видимость, ощущение, к тому же мимолётное. А этот кайф настоящий. Его можно создать собственными руками, увидеть результат и поделиться им с другими.

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

Так что у меня всё только впереди.

Йа-хууууу! 🤘

Комментарии  
  +1
Это очень круто, когда что-то вот так увлекает! Действительно, никакого алкоголя не надо. Весь затык в том, что не каждый для себя такое увлечение находит(
А ты молодец, так держать!!
Добавить комментарий