Topic: Бета версия 1.45

Скачать бета версию 1.45:
https://www.dropbox.com/s/88lx13h9cw5ro … 5.zip?dl=0


Что нового?


- Добавлена возможность множественного выбора компонентов в дизайнере форм (удерживая Shift) (28.09.2014)
а также их копирование и удаление.


- Добавлена функция для скрипта, позволяющая заменять произвольные символы в строке (28.09.2014)
ReplaceStr(const AText, AFromText, AToText: string): string


- Добавлена функция для скрипта (в отчетах), позволяющая преобразовать денежную сумму прописью (29.09.2014)
Проект с примером реализации: http://myvisualdatabase.com/forum/misc. … download=1


- Добавлена функция для скрипта SplitString (04.10.2014)
SplitString(const S, Delimiters: string): array of string


- Для компонента DBFile добавлено свойство CopyTo (04.10.2014)
Если у компонента в свойстве Type выбрано LinkFile, то свойство CopyTo позволяет указать, куда необходимо автоматически скопировать файл относительно пути расположения файла базы данных
Возможные значения свойство CopyTo:
\ - файл будет автоматически скопирован в папку с файлом базы данных

files - в папке расположения файла базы данных, будет создана папка files, куда файлы будут автоматически скопированы, допускается указать цепочку папок, например files\docs, данные папки будут созданы автоматически


- Добавлены новые функции для скрипта (08.10.2014)
function CopyFile(ExistingFileName, NewFileName: string;
function DeleteFile(const FileName: string): Boolean
function RenameFile(const OldName, NewName: string): Boolean
function ExtractFilePath(const FileName: string): string
function ExtractFileDir(const FileName: string): string
function ExtractFileDrive(const FileName: string): string
function ExtractFileName(const FileName: string): string
function ExtractFileExt(const FileName: string): string
function ToWords(value: real; currencyName: string = ''usd''): string
function ToWordsRu(value: real; currencyName: string = ''rub''): string



- Добавлены новые методы для ComboBox (09.10.2014)
dbAddRecord(id: integer; s: string);
dbEditRecord(id: integer; s: string);
dbDeleteRecord(id: integer);

Dmitry.

2 (edited by savage 2014-10-05 10:06:50)

Re: Бета версия 1.45

- Добавлена возможность множественного выбора компонентов в дизайнере форм (удерживая Shift) (28.09.2014)
а также их копирование и удаление.

DriveSoft, есть небольшая проблема:

  • когда через шифт выделяешь элементы в составе группы (GroupBox) - сначала входящий в группу контролл, следом - всей группы, то выскакивает окошко с предупреждением "Invalid pointer operation" и прога виснет. Аналогично, если сначала была выделена группа, а потом случайно тыкнул на поле вкладки

  • почему-то вставка после копирования происходит со смещением на +8 от левого края формы (вкладка базовая -> вкладка куда копирую). У меня группы и гриды на базовой вкладке идут с отступом в 8. Копирую и вставляю на следующей - отступ уже 16...

  • при работе необходимо учитывать тот факт, что ты сначала должен выделить 1 "жертву", а потом уже использовать shift (нет защиты от дурака). Например, если я работаю с контроллами на вкладке, то она по умолчанию выделена. Нажав сразу shift, я сразу начинаю выделать все объекты, включая уже выделенные до этого, с соответствующими последствиями... Имхо, было бы лучше, чтобы режим группового выделения начинал работать при его явном включении - нажал - включил режим и первый выбранный объект после нажатия должен быть, действительно, первым

  • по поводу выделения еще 1 нюанс - если нечаянно выделил лишний объект - как его опять сделать неактивным?Приходится переходить на другую вкладку, просто повторный клик на выделенный объект приводит к 2 выделению...

  • неплохо было бы предусмотреть доп. защиту от дурака  - когда у меня много контроллов, то часто я нечаянно выделяю всю форму (просто промахнувшись мимо). Возможно, лучше сделать так, чтобы нельзя было выделять формы и вкладки целиком


Сами операции копирования и вставки отрабатывают безупречно. спасибо за эту опцию. Очень нужный функционал.

с уважением,

savage

Re: Бета версия 1.45

savage wrote:
  • когда через шифт выделяешь элементы в составе группы (GroupBox) - сначала входящий в группу контролл, следом - всей группы, то выскакивает окошко с предупреждением "Invalid pointer operation" и прога виснет. Аналогично, если сначала была выделена группа, а потом случайно тыкнул на поле вкладки

к сожалению не смог добиться этого, либо неверно понял,
например в GroupBox есть две кнопки, выделяю эти две кнопки, затем и сам GroupBox, ошибки нет.


savage wrote:
  • почему-то вставка после копирования происходит со смещением на +8 от левого края формы (вкладка базовая -> вкладка куда копирую). У меня группы и гриды на базовой вкладке идут с отступом в 8. Копирую и вставляю на следующей - отступ уже 16...

это удобно если происходит копирование на туже самую форму, чтобы было видно компонент который вставили, но такое поведение лишнее если копируется на другую форму, пока не доделал, поправлю )


savage wrote:
  • при работе необходимо учитывать тот факт, что ты сначала должен выделить 1 "жертву", а потом уже использовать shift (нет защиты от дурака). Например, если я работаю с контроллами на вкладке, то она по умолчанию выделена. Нажав сразу shift, я сразу начинаю выделать все объекты, включая уже выделенные до этого, с соответствующими последствиями... Имхо, было бы лучше, чтобы режим группового выделения начинал работать при его явном включении - нажал - включил режим и первый выбранный объект после нажатия должен быть, действительно, первым

это стандартное поведение для таких операций, тоже самое в среде Delphi или даже в проводнике при выделении папок, думаю лучше не менять.


savage wrote:
  • по поводу выделения еще 1 нюанс - если нечаянно выделил лишний объект - как его опять сделать неактивным?Приходится переходить на другую вкладку, просто повторный клик на выделенный объект приводит к 2 выделению...

согласен, нужно доработать )


savage wrote:
  • неплохо было бы предусмотреть доп. защиту от дурака  - когда у меня много контроллов, то часто я нечаянно выделяю всю форму (просто промахнувшись мимо). Возможно, лучше сделать так, чтобы нельзя было выделять формы и вкладки целиком

это стандартное поведение для таких  операций, лучше оставить как все привыкли.

Dmitry.

Re: Бета версия 1.45

DriveSoft, по первому пункту забыл сказать - просто нажмите потом на delete

Re: Бета версия 1.45

savage
Спасибо, поправлю )

Dmitry.

Re: Бета версия 1.45

DriveSoft wrote:

- Для компонента DBFile добавлено свойство CopyTo (04.10.2014)
Если у компонента в свойстве Type выбрано LinkFile, то свойство CopyTo позволяет указать, куда необходимо автоматически скопировать файл относительно пути расположения файла базы данных
Возможные значения свойство CopyTo:
\ - файл будет автоматически скопирован в папку с файлом базы данных

files - в папке расположения файла базы данных, будет создана папка files, куда файлы будут автоматически скопированы, допускается указать цепочку папок, например files\docs, данные папки будут созданы автоматически

Подскажите теперь как быстро и безопасно применить это нововведение к решению моей проблемы с тормозами )

Re: Бета версия 1.45

zc13569
пришлите еще раз ваш проект с актуальной базой, теперь думаю должно получится.

Dmitry.

Re: Бета версия 1.45

DriveSoft wrote:

zc13569
пришлите еще раз ваш проект с актуальной базой, теперь думаю должно получится.

Выслал ссылку вам на почту.