А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Изменения в главном функционале программы

 

Работа снова течет. И сегодня я работал над различным функционалом. И снова сегодня команды главного окна претерпели изменения. Не знаю, какой раз - сотый, двухсотый... Но сейчас команд ровно 105. Это не так красиво, как 100, но всё же. Пришлось кое-что добавить и вернуть на своё законное место. Но сначала о том, что я вчера выкинул из функционала, ибо задолбало уже иметь дело с путаницей и не имеющей особого смысла сложностью. А выкинул я использование временных баз данных и шифрование файлов баз данных. Без этого пока что можно обойтись. Потому как это всё вносило путаницу и делало программу менее надежной в плане таящихся в ней багов. В перспективе это можно реализовать. А сейчас все создаваемые в программе проекты будут работать с существующими локальными файлами.

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

0 + 0 -

Работа над функциями открытия проектов

 

Ну вот и дошел я наконец-то до функций открытия проектов и установки соединения с базой данных. Да, возни тут оказалось немало. Стоило только копнуть. Теперь вот как. Теперь все создаваемые подключения к базе данных - это подключения в памяти. Создается memory-подключение, а затем вкладывается локальный файл БД. Из него в текущее подключение в памяти копируется всё содержимое базы данных - таблицы, индексы, триггеры и представления. Довольно ресурсоемкая операция. Для того, чтобы получить выигрыш потом - выигрыш в скорости работы с БД. Ведь в данном случае не нужно при каждом изменении в БД сохранять всё в файл. Ну а само сохранение в файл вызывается отдельной командой. Так что вот так...

0 + 0 -

Реализация диалога для настройки внешних связей между таблицами

 

Сегодняшний день ознаменовался созданием (копипастом из СВП в новую версию) диалогового окна для редактирования внешних связей между таблицами в базе данных SQLite. Ну а кроме этого были добавлены обработчики событий класса для работы с базой данных и класса для работы с проектами. Добавлены в главную модель-представления. В общем, работа неспеша едет вперед. В очередной раз, по очередному кругу глобального переделывания...

0 + 0 -

Реализация контрола для отображения дерева объектов базы данных

 

Вот и очередной раз, когда я перенес этот контрол из старой версии программы в новую. Снова. Который раз. Поначалу показалось, что перенесу его быстро. Но как вспомнил, что там нужно писать функции для создания контекстных меню элементов и производить множество поправок, то стало ясно, что не о какой "быстрости" тут не может быть речи. Ну и вот, растянулась эта работа на весь день. Работа шла не в лучшем своём темпе. Темпы пока что не возрастают. Иначе эту работу можно было бы проделать и менее чем за день...

0 + 0 -

Реализация компоновки главного окна и журнала события

 

Ну вот, сей день закончился и он принес наконец-то заметные глазу продвижения по созданию новой версии программы. Да, вот она, компоновка главного окна. На этот раз только нужные элементы и ни грамма лишнего, как говориться. Снизу - панель с уже реализованным журналом событий. Журнал этот, разумеется, я перенес из старой версии программы. Но тут пришлось в него добавить новый элемент - выпадающий список с дополнительной информацией. Если есть эта дополнительная информация. Она будет в записях - отчетах по выполненным SQL-запросам в базу данных. Раньше до этого у меня было два раздельных журнала событий. Один - для системы, второй - для базы данных. Тут я компактности и простоты ради режил объединить эти два журнала событий и не париться. Так что вот так...

0 + 0 -

Возня с диаграммами и снова проблемы прОклятым контролом - ListEditor

 

Как я надеялся, большой возни с контролом для отображения диаграмм не будет. Реализую окно для настроек диаграмм и на этом с ними будут окончено. Конечно, с окном настроек пришлось немного повозиться. И тут у меня снова большую часть времени заняла работа рутина по переносу языковых локализаций из старой версии программы в новую. Всё спешил перенести эти локализации, чтобы поскорее проверить, как работает редактирование данных по диаграммам в контроле ContentBox. Было предчувствие, что тут я столкнусь с какими-то косяками. И предчувствие меня не обмануло: с косяками в контроле диаграмм я действительно столкнулся. Так что вот так. Сразу три косяка там было. Один пустяшный, дизайнерский. С ним я легко справился. Два других - с ними было сложнее...

0 + 0 -

Реализация контрола компоновки

 

Вот и добрался я до реализации контрола компоновки в одну стопку. Да, именно РЕАЛИЗАЦИИ, а не копипаста! Сегодня я практически ничего не копипастил из старой версии программы, а делал этот контрол с нуля. Да, такая работа интереснее. Не переделыванием заниматься а именно деланием чего-то нового, хоть и уже в прошлом реализуемого. Рутина выматывает до невозможного, требуется новизна. А сам контрол получился довольно компактным, легковесным и не навороченным. Да, тут надо заметить, что все навороты с этой компоновкой не имели большого смысла. Я тут пока что не стал даже реализовывать механизма drag-and-drop. Это всё можно будет сделать в будущем при необходимости. А пока особой необходимости нет. Потому как сложная система компоновки сейчас без надобности и все навороты в СВП были не такими нужными...

0 + 0 -

Завершение контрола ContentBox.axaml и начало работы над Diagram.axaml

 

Ну вот, работа над контролом ContentBox в принципе завершена. Но не совсем до конца. Потому что я остановился на переносе из СВП контрола для отображения диаграмм. Это очень не простой контрол. И даже без копошения над его изменением, а только просто перенос, возни там много, так как он задействует много функций и дополнительных контролов. Мне пришлось перекопировать целую кучу контролов из СВП, для того, чтобы сделать окно для настроек секций диаграмм. И особое внимание уделяется языковым локализациям. если перекопипастить контрол - это минутное дело, то перенос локализаций - дело очень рутинное и длительное. Потому как локализаций десятки и сотни, и каждую приходиться по отдельности копипастить из СВП, что я уже проделывал кучу раз. Лишь небольшая часть локализационных констант сгруппирована по имени. В этом случае их можно разом экспортировать из СВП в CSV-файл, а затем уже в новой версии программы импортировать из  CSV-файла. Но увы, так бывает редко. А локализаций всего буквально тысячи. Просто великую кучу раз. Так что вот так. Просто убийство времени на это...

0 + 0 -

Продолжение работы над контролом ContentBox

 

Ну вот, ещё один день работы с контролом ContentBox. Да, за день, как оказалось, его не сделаешь. То есть не то что "сделаешь", а перенесешь из СВП в текущую программу с исправлениями. А всё-такие некоторые исправления мне тут пришлось вносить. А точнее не исправления, а дополнения. Да, чего вот ранее не хватало в этом расширенном редакторе. Да, выбора даты и времени. Ну и я добавил парочку, или тройку элементов в контекстное меню поля контрола, который принесли ему новый функционал по выбору даты и времени в соответствующих палитрах. И работа над этим не была очень короткой. Когда ты создаешь новый функционал, а не просто переносишь из СВП, пусть и с корректировками, работа над ним всегда долгая...

0 + 0 -

Перенос контролов из СВП и начало работы над ContentBox.axaml

 

Сегодняшний день не обозначился великими свершениями, но хоть какие-то продвижения есть. И сегодня была работа по переносу контролов из старой версии программы (СВП) в новую. Перенес оттуда практически без изменений контролы аккордеона, поля текстового с поисковой функцией, селектора для базы данных таблиц и столбцов. Ну и ещё пару мелких контролов. Работа проходила почти на автопилоте. Это так всегда, когда переносишь какой-либо функционал из СВП в текущую версию. Поправки приходиться только делать (как всегда) в переименовании свойств и методов C# классов. Как обычно. Без этого ни одно переделывание не обходиться...

0 + 0 -
  • Яндекс.Метрика