|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
>>осталось со структурой в инспекторе разобраться
Логично, но пока я небуду этого делать. На данный момент то что в инспекторе показывается по умолчанию - просто перечень системных переменных зкада. Добавил переменную в коде - она появилась в инспекторе автоматом, никакой "лишней" оформительской работы. Структурирование подразумевает либо появление "лишнего" кода, который нужно в дальнейшем поддерживать в актуальном состоянии, либо повышение сложности типов переменных (появление record`ов с большой вложенностью) - тоже нехотелось бы, т.к. я надеюсь когданибудь всетаки появится более-менее полноценный внутренний скриптовый язык, вместо самодельного огрызка который есть сейчас - чем проще переменная, тем ее легче туда будет экспортировать. В дальнейшем планирую оставить в "умолчательном" инспекторе самый минимум, а для всего остального стелать "обертки" по типу как сейчас с привязками сделано. |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
Добавил возможность привязки шорткатов к "быстрым" кнопкам, раньше привязка была только к командам. Соответственно в 631 ревизии заработали F3, F7, F9, F10
Теперь можно сказать что интерфейс в зкаде полностью настраиваемый, ну и собственно пара слов о его настройке: Докинг окон программы базируется на лазаревском пакете anchordocking, этот пакет еще сыроватый, но заниимением лучшего приходится использовать. Окошки стыкуются при таскании за дополнительный "заголовок". Опции стыковки вызываются правым щелчком на допзаголовках или сплитерерах. Можно натроить вид как душе угодно и сохранить его в меню настройка\сохранить разбивку окон по умолчанию. Разбивка сохраняется в файл components\defaultlayout.xml. Все присутствующие в папке components иксмл файлы являются разными вариантами настроек стыковки, в дальнейшем переключение между вариантами будет осуществляться налету (комбобокс в правом-верхнем углу главного окна) но пока изза упомянутой сырости эта возможность глючит. Привязка шорткатов к командам программы сделана через так называемые "action" в файле menu\actions.acn, файл состоит из строк вида action ACN_ИМЯ,команда,иконка.bmp,название для меню,хинт,шорткат например Код:
Структура меню и панели определены в файле menu\mainmenu.mn Панели определяются ключевым словом Panel, именем панели и перечнем экшенов (из actions.acn) расположенных на этой панели. Примерно так: Код:
Вместо экшенов на панель можно ставить кнопки для быстрого доступа к переменным, например: Код:
variable имяпеременной,иконка.bmp,хинт,шорткат Элемент меню программы задается ключевым словом MainMenuItem, именем и перечнем экшенов: Код:
Код:
Один и тотже экшен может фигурировать в разных меню и панелях много раз. Заставить зкад включить новую панель инструментов определенную в mainmenu.mn можно командой Код:
|
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
Выложил zcad_v0.9_svn631.7z где учел замечание gomer по поводу диалога закрытия несохраненного чертежа.
+В инспекторе появилась удобная функция переключения буленовских параметров чекбоксом за один клик (старый комбобокс тоже сохранен) Offtop: з.ы. как обычно "списочек" выполняется с конца)) |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
zamtmn, можно сделать прорисовку линии от последней точки полилинии до курсора, как при рисовании отрезков? Кстати почему при включенной системной графике часть объектов становятся серыми?
зы насчет меню все это интересно конечно, но имхо лучше ориентироваться на акадовский формат cui зызы я так понимаю, шрифты, которые используются в блоках, вы не включаете в дистрибутив + это непонятное мне слияние блоков, отчего в текстовом окне настоящий кавардак. Кстати почему разные шрифты использовали в сходных по назначению блоках? |
|||
|
|||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
Цитата:
Цитата:
Цитата:
Цитата:
Слияние блоков это про DEVICE_имяблока? я так эмулирую атрибуты + добавляю некоторую долю "динамичности" блокам. Это всегда вызывает вопросы, хотя имхо очень простой и гибкий механизм вписывающийся в рамки древнего dxf2000 выложил ревизию 657 - мелкие исправления\добавления в интерфейсе |
||||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Возможно это от того, что системная графика прорисовывается поверх примитивов...
У меня на работе монитор девятнашка, сколько зкад ни запускал, командная строка где-то прячется, дома 20ка широкоэкранная и ком строка на месте... и еще зкад не запоминает состояние главного окна, приходится разворачивать постоянно... |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
Цитата:
Цитата:
В этом случае нужно запустить зкад с ключем комстроки nll (No Load Layout) например zcad nll - разбивка окон по умолчанию загружена не будет, сформировать нужную конфигурацию и размер окна руками и выполнить команду SaveLayout (или пункт меню настройка\сохранить разбивку окон по умолчанию). При последующих запусках будет использована созданная конфигурация >>и еще зкад не запоминает состояние главного окна, приходится разворачивать постоянно... запоминает, только нужно не забывать делать SaveLayout как в абзаце выше. |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
666 ревизия
Добавил в первом приблтжении создание-удаление слоев. Вскрылся целый пласт проблем системы undo-redo - многое в нее не завернуто по разным причинам - такчто при отмене создания слоя пока на нем могут остаться примитивы(( |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Цитата:
И еще хотелось бы режим орто... зы со слоями уже намного веселее |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
>>Таким образом можно запоминать только величину окна.
С докингом всё несколько сложнее. Без него примерно так и есть. Насчет орто хз. Я вообще планировал только трассировки и привязки, но с миру по нитке и набралось уже и сетка и шаг)) Словлю вдохновление - зделаю, сейчас это уже несложно будет - чтото вроде упрощенной трассировки. |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Согласен, а можно убрать из меню вид пункт вид, а его содержимое добавить в меню вид (сори за каламбур), т.е. уменьшить вложенность меню?
И еще добавить на главную панель инструментов меню масштабирование, хотя нет, для этого нужно реализовать команду Zoom с опцией Window. Ой, zoom вообще не работает с командной строки... Кстати, насчет кс. Можно сделать так, чтоб при нажатии пробела вызывалась последняя команда, а не просто добавлялся пробел?.. |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
>>Согласен, а можно убрать из меню вид пункт вид, а его содержимое добавить в меню вид (сори за каламбур), т.е. уменьшить вложенность меню?
Можно, но т.к. на всех не угодишь, я с чистой совестью приделал механизм из #163 - каждый сам делает как ему надо. (с оглядкой что парсер всего этого дела пока толком не тестировался, нужно быть аккуратнее) Кстати по командам камеры еще замечание - они все забиндены на хоткеи (типа home, up, pgup), но изза "бага" http://bugs.freepascal.org/view.php?id=23082 этот биндинг работает только в английской версии. Разрабы лазаря вроде баг приняли, но никаких рекомендаций или исправлений пока небыло >> для этого нужно реализовать команду Zoom с опцией Window. ок. >>Ой, zoom вообще не работает с командной строки... работает в виде zoom(in) zoom(out) pan(left) и т.д. >>Кстати, насчет кс. Можно сделать так, чтоб при нажатии пробела вызывалась последняя команда, а не просто добавлялся пробел?.. Погляжу. пока повтор есть по ентеру Последний раз редактировалось zamtmn, 22.09.2013 в 18:08. |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Цитата:
Кстати насчет инспектора, текущий listbox при перетягивании разделителя название/значение не растягивается, только постфактум... Да и вообще нужен ли он, если есть тогл... |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
У меня версии из репозиториев разработчиков, fpc я обновляю довольно редко - только когда есть серъезные изменения, а lazarus почти каждый день, т.к. последнее время часто шлю багрепорты и они вроде активно исправляются (это в основном касается linux qt версии). Как в большинстве опенсурсных проектов в лазаре и фпц стабильные версии четные, нестабильные нечетные. Соответственно последние стабильные версии фпц - 2.6.2, лазарус 1.0.10 (или 1.0.12 - не слежу за этим) а в репозиториях 2.7.1 и 1.1
В стабильных версиях всё компилируется и работает, но могут быть небольшие различия - последнее что помню в фпц 2.6.х нужно руками скомпилировать пакет fpc-stl. Такчто если есть желание покопаться в потрохах - лучше поставить версии из репозиториев. >>Кстати насчет инспектора, текущий listbox при перетягивании разделителя название/значение не растягивается, только постфактум... да, там требуется хирургия)) Починил >>Да и вообще нужен ли он, если есть тогл... Выпиливать фичи - нетрудно, пусть пока так и останется до лучших времен update: >> для этого нужно реализовать команду Zoom с опцией Window. Приделал, но в виде отдельной команды - ZoomWindow . Заодно приделал Zoom(sel) - смасштабироваться до текущего выбора выложил rev. 692 update: Появилась панелька "быстрой" настройки привязок налету Последний раз редактировалось zamtmn, 27.09.2013 в 08:59. |
|||
|
||||
КИПиА Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
|
+наконец осилил типы линий для криволинейных объектов, т.е. для окружностей, дуг и сплайнов.
-никак не догоню как работает параметр "генерация типов линий" для замкнутых полилиний (окружности и замкнутые сплайны сюда тоже подпадают). Чтоб ровно вписать паттерн типа лини в замкнутый объект его нужно смасштабировать. Автокад не масштабирует и вписывает... чудеса(( |
|||
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,095
|
Почему не масштабирует? Просто следит, чтобы масштабирование было в разумных пределах, после выхода за которые надо добавлять/исключать один повтор паттерна. Попробуйте нарисовать несколько концентрических окружностей с малым шагом и назначить им какой-нибудь крупный штрих-пунктир.
|
|||