Перейти к содержимому


nanoCAD 4.5 Beta1. Список изменений в API

devclub beta api multicad.net

Сообщений в теме: 3

#1 ISL

    Клуб разработчиков

  • nanoSoft
  • PipPipPipPip
  • 364 сообщений
  • Пол:Мужчина
  • Город:Москва
  • Интересы:Разработка САПР

Отправлено 24 Ноябрь 2012 - 09:58

Выпущен nanoCAD 4.5 Beta1. Эта сборка доступна только членам Клуба разработчиков.

В версии 4.5 мы выпускаем альфа-версию нового вида API: MultiCAD.NET. Это .NET обёртка вокруг кроссплатформенного С++ MultiCAD API, главной особенностью которой является возможность создания пользовательских примитивов на .NET.

Пользовательские примитивы, созданные при помощи MultiCAD.NET, работают без перекомпиляции как в nanoCAD, так и в AutoCAD при помощи MultiCAD Enabler for AutoCAD, библиотека доступна для загрузки в Клубе разработчиков. Пример создания пользовательского примитива на MultiCAD.NET входит в состав дистрибутива nanoCAD 4.5 и расположен в папке SDK\samples\Mgd\CustomObjects.

Список изменений API:

Lisp
Добавлено:
EN29 Make command -BOUNDARY compatible with Lisp
EN41 Make command -INSERT compatible with Lisp
EN44 Make command -ERASE compatible with Lisp
EN45 Make command -TEXT compatible with Lisp
EN46 Make command -BLOCK compatible with Lisp
VLAX-CURVE*
VLAX-GET-OBJECT
VLAX-CREATE-OBJECT
VLAX-PUT
VLAX-GET
VLAX-INVOKE
VL-DIRECTORY-FILES
VL-CMDF

Исправлено:
APPLY
MAPCAR
VL-EVERY
VL-MEMBER-IF
VL-REMOVE-IF
VL-REMOVE-IF-NOT
VL-SOME
VLAX-GET-PROPERTY
VL-CATCH-ALL-APPLY
VL-CATCH-ALL-ERROR-MESSAGE
VLAX-VARIANT-VALUE
VLAX-INVOKE-METHOD
VLAX-MAP-COLLECTON

DCL
Добавлена поддержка fixed_width, fixed_height и alignment
Реализованы enable/disable для mode_tile
По умолчанию высота кнопки зафиксирована
Исправлено ActionTile: теперь старое действие замещается новым, а не только добавляется новое действие
Добавлено действие по умолчанию для new_dialog
Добавлена поддержка result в start_dialog
Добавлены надписи для popup_list и text. Исправлена надпись edit_box
Исправлены проблемы с высотой list_box
Добавлены связи между значениями и надписями для dialog и text
Добавлены связи для Window.Title и dialog.label
Окно появляется в центре окна приложения
Исправлены значения SizeToContent и ResizeMode в диалогах

NRX
RU36 Реализовать acedRegisterFilterWinMsg/acedRemoveFilterWinMsg
RU40 Не вызываются команды по локализованному имени
RU41 Не вызывается команда "_TV" при помощи acDocManager->sendStringToExecute();
RU42 acedGetAcadDwgView() возвращает не нужное окно, а его родителя
RU43 sendStringToExecute() отрезает "." и "_" от названия команды
EN18 Register NRX commands without a need to list them in nApp.cfg file

.NET
RU4 NETLOAD. Команды из сборки попадают в интерактивный список команд только после запуска любой команды
RU20 Реализовать SymbolUtilityServices.ValidateSymbolName()
RU21 Реализовать Document.TransactionManager
RU24 Реализовать SymbolUtilityServices.ValidateSymbolName
RU28 Обеспечить сохранение положения и размера форм между сессиями
RU48 Реализовать Application.ShowModalWindow
RU49 Реализовать Application.ShowModelessWindow
EN6 Implement Polyline.Length
EN7 Implement Hatch.Area
EN8 Implement Internal.Utils.SetFocusToDwgView
EN9 Implement Internal.Utils.PostCommandPrompt
EN10 Implement Editor.SwitchToPaperSpace, Editor.SwitchToModelSpace
EN11 NETLOAD does not initialize IExtensionApplication-s in referenced assemblies
EN13 HostApplicationServices.WorkingDatabase cause nanoCAD to crash
EN22 Implement .NET wrappers for nanoCAD annotation system
EN23 Implement Overrule classes
EN35 Autohide does not work with managed PaletteSet-s
EN58 Implement WorldGeometry.Polyline, ViewportGeometry.Polyline

COM
RU23 NCad.exe /register не восстанавливает регистрацию интерфейсов OdaX вида IAcad*
RU25 OdaX.AcadHatch.AppendOuterLoop() не поддерживает массивы объектов
RU26 OdaX.AcadHatch.AppendOuterLoop() не поддерживает вызов из VBScript
RU29 Utility.GetPoint не работает без "необязательных" параметров
RU32 Utility.InitializeUserInput не сбрасывает флаги после вызова Utility.GetPoint и т.п.
RU34 Сбрасывается PickfirstSelectionSet при вызове nsf команды
RU35 VBS. CreateTypedArray не преобразовывает массив, полученный при помощи CreateSafeArrayFromVector
RU39 InitializeUserInput не принимает строку, представленную переменной vbs
RU46 Исключение "Invalid ResBuf" при вызове SelectAtPoint() из JS
Пишешь приложения под САПР на С++, .NET, COM, Lisp? Вступай в Клуб разработчиков nanoCAD.

#2 Artem_R

    Активист

  • Пользователи
  • PipPipPipPip
  • 723 сообщений
  • Пол:Мужчина

Отправлено 24 Ноябрь 2012 - 11:12

Просмотр сообщенияISL (24 Ноябрь 2012 - 09:58) писал:

Пользовательские примитивы, созданные при помощи MultiCAD.NET, работают без перекомпиляции как в nanoCAD, так и в AutoCAD при помощи MultiCAD Enabler for AutoCAD, библиотека доступна для загрузки в Клубе разработчиков. Пример создания пользовательского примитива на MultiCAD.NET
А подскажите, пожалуйста, как человеку который всё это скачал, но ничего в ентом не понимает, посмотреть на пример пользовательского примитива в nanoCAD? :)

#3 ISL

    Клуб разработчиков

  • nanoSoft
  • PipPipPipPip
  • 364 сообщений
  • Пол:Мужчина
  • Город:Москва
  • Интересы:Разработка САПР

Отправлено 24 Ноябрь 2012 - 12:08

  • В Visual Studio 2008 открыть SDK\samples\NCadSDK.sln и собрать проект CustomObjects. В SDK\samples\bin-Win32\Debug MultiCAD появится модуль CustomObjects.dll.
  • Загрузить модуль в nanoCAD командой NETLOAD.
  • Запустить команду TextInBox.

Пишешь приложения под САПР на С++, .NET, COM, Lisp? Вступай в Клуб разработчиков nanoCAD.

#4 Artem_R

    Активист

  • Пользователи
  • PipPipPipPip
  • 723 сообщений
  • Пол:Мужчина

Отправлено 26 Ноябрь 2012 - 12:19

Спасибо.
Интересная штука. :)





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 скрытых пользователей