Prvek Components se používá k určení komponent, které tvoří jednu verzi modulu plug-in.
K určení komponent modulu plug-in lze použít více než jeden prvek Components; každý prvek Components může určovat jednu nebo více komponent. Informace o platformě a produktu pro prvek Components jsou definovány prvkem RuntimeRequirements.
Pokud jsou všechny komponenty definované v rámci prvku Components určeny pro stejnou platformu, není třeba přidávat prvek RuntimeRequirements pro každý jednotlivý prvek ComponentEntry.
Spolu s prvkem RuntimeRequirements může prvek Components obsahovat jeden nebo více následujících prvků.
Následující část uvádí základní vztah prvku Components a všech prvků, které může tento prvek obsahovat.
<Components> <RuntimeRequirements ... /> <RegistryEntries> <RegistryEntry ... /> </RegistryEntries> <SystemVariables> <SystemVariable ... /> </SystemVariables> <EnvironmentVariables> <EnvironmentVariable ... /> </EnvironmentVariables> <ComponentEntry ... > <RuntimeRequirements ... /> <AssemblyMappings> <AssemblyMapping ... /> <AssemblyMappingFolder ... /> </AssemblyMappings> <Commands ...> <Command ... /> </Commands> </ComponentEntry> <ComponentEntry ... /> </Components>
Prvek ComponentEntry je povinný a používá se k určení detailů každé jednotlivé komponenty v prvku Components.
Můžete zadat libovolný potřebný počet prvků ComponentEntry. Typy komponent mohou mít jeden z následujících formátů souborů:
Windows a Mac OS
Pouze Windows
Prvek ComponentEntry může obsahovat prvek Commands, pokud je atribut LoadReasons nastaven na hodnotu LoadOnCommandInvocation.
K prvku ComponentEntry mohou být připojeny kterékoli z následujících atributů:
Atribut |
Popis |
---|---|
AppName |
Volitelné pro jazyk AutoLISP; požadováno pro formát ObjectARX a .NET – název komponenty; stejné jako AppName v třídě API AcadAppInfo aplikace ObjectARX. |
AppDescription |
Popis komponenty; stejné jako AppDescription v třídě API AcadAppInfo aplikace ObjectARX. |
AppType |
Typ komponenty; přepíše typ odvozený z přípony souboru uvedeného v atributu ModuleName. Komponenta může být jednoho z následujících typů:
|
ModuleName |
Relativní cesta ke komponentě v rámci balíčku; stejné jako ModuleName v třídě API AcadAppInfo prostředí ObjectARX. Typ komponenty je určen podle přípony souboru:
Pokud bude vaše aplikace pracovat ve více jazycích, lze určit různé verze určité komponenty kombinací položky ModuleName a kódu národního prostředí. Úplný seznam kódů podporovaných národních prostředí najdete v části Kódy podporovaných národních prostředí – referenční seznam. Poznámka: Všechny specifikátory cesty jsou /, nikoli \, a cesty jsou relativní ke kořenové složce .bundle.
|
PerDocument |
Pouze jazyk AutoLISP – Pokud má hodnotu Pravda, načte se soubor jazyka AutoLISP jednou pro každý dokument. Výchozí nastavení je Pravda. |
LoadReasons |
Lze zadat více hodnot – definuje parametry chování při načítání komponenty s atributem LoadReasons a výjimku parametru LoadOnCommandInvocation. Ve výchozím nastavení platí, že jsou zapnuty položky LoadOnAutoCADStartup, LoadOnAppearance a LoadOnProxy (nastaveny na hodnotu Pravda), pokud není specifikována položka LoadReasons. Pokud je třeba tyto parametry vypnout (nastavit na hodnotu Nepravda), musí být současně s tímto nastavením zadán prvek LoadReasons. Ve výchozím nastavení je parametr LoadOnCommandInvocation vypnutý a v případě jeho zapnutí dojde k vypnutí parametrů LoadOnAutoCADStartup a LoadOnAppearance, pokud nejsou explicitně zapnuty. Pokud je jako součást prvku Components definován jeden nebo více prvků Command, je implicitně zapnutý parametr LoadOnCommandInvocation. Úplné podrobnosti o atributu LoadReasons v sekci AcadAppInfo naleznete v referenční příručce pro formát ObjectARX. Platné hodnoty parametrů:
Dostupné jsou následující parametry:
|
XamlType |
Typ XAML; v současné době je podporována pouze hodnota ContextualTabRule, která je povinná, pokud je k atributu ModuleName přiřazen soubor XAML. Soubor aplikace, který používá soubor XAML, by měl být uveden za prvkem ComponentEntry, který obsahuje soubor XAML. |
Prvek Commands je volitelný za předpokladu, že není zapnut parametr LoadOnCommandInvocation atributu LoadReasons. Slouží k určení, které příkazy se mají registrovat u parametru LoadOnCommandInvocation.
Podle potřeby můžete určit více než jeden prvek Command.
K prvku Command může být připojen následující atribut:
Atribut |
Popis |
---|---|
GroupName |
Název použitý k uspořádání souvisejících příkazů. |
Určuje globální a místní název pro každý příkaz.
K prvku Command mohou být připojeny kterékoli z následujících atributů:
Atribut |
Popis |
---|---|
Global |
Globální název příkazu. |
Local |
Lokální název příkazu. Příkazy lze definovat pro více jazyků kombinací položky Local a kódu národního prostředí. Úplný seznam kódů podporovaných národních prostředí najdete v části Kódy podporovaných národních prostředí – referenční seznam. |
HelpTopic |
Téma nápovědy, které se otevře, když je aktivní příkaz a stisknete klávesu F1. Poznámka: Aby se téma nápovědy zobrazilo, musí být k modulu plug-in přiřazen soubor nápovědy. Umístění souboru nápovědy pro modul plug-in je zadáno pomocí atributu HelpFile v prvku ApplicationPackage.
|
StartupCommand |
Spustí příkaz při spuštění, když je nastaven na hodnotu Pravda. |
Následující příklad přidá dva příkazy, které jsou definovány ve skupině s názvem ADSKCMDS:
<Commands GroupName="ADSKCMDS"> <Command Global="HELLOWORLD" Local="ADSKHELLOWORLD"/> <Command Global="DRAWLINE" Local="ADSKDRAWLINE"/> </Commands>
Prvek AssemblyMappings je volitelný a může obsahovat jeden nebo více prvků AssemblyMapping nebo AssemblyMappingFolder. Prvky AssemblyMapping a AssemblyMappingFolder se používají k přidání souborů sestav a cest ke složkám do interních seznamů, které aplikace AutoCAD používá k řešení sestav nenalezených v instalační složce produktu.
Atribut |
Popis |
---|---|
Name |
Název prvku ComponentEntry, ke kterému je sestava přidružena, a která by měla být načtena. |
Path |
Relativní cesta k sestavě v rámci balíčku. |
Atribut |
Popis |
---|---|
Path |
Relativní cesta k sestavám v rámci balíčku. |
Následující příklad přidá dvě složky, které obsahují sestavy používané komponentou:
<AssemblyMappings> <AssemblyMappingFolder Path="./Content/Assemblies" /> <AssemblyMappingFolder Path="./Content/MoreAssemblies" /> </AssemblyMappings>
Prvek RegistryEntries je volitelný a může obsahovat jeden nebo více prvků RegistryEntry. Prvek RegistryEntry obsahuje definici záznamu registru, kterou by měl modul plug-in vytvořit nebo upravit. Záznamy registru jsou uloženy v registru systému Windows nebo v souboru seznamu vlastností (PLIST) v systému Mac OS.
Atribut |
Popis |
---|---|
Name |
Název záznamu registru, který se má vytvořit nebo upravit. |
Value |
Hodnota, která se má přiřadit k záznamu registru. Hodnota může obsahovat jednu z volitelných předpon operátorů: +, -, & a |. Další informace naleznete v části Předpony operátorů pro hodnoty proměnných. Poznámka: Při použití hodnoty v záznamu registru není předpona operátoru zachována.
|
Type |
Typ dat, který se má přiřadit do záznamu registru. Volitelné při úpravách existujícího záznam registru. Platné hodnoty jsou:
Pokud je předpona operátoru používána jako součást hodnoty záznamu registru, musí být zadán odpovídající typ dat. Pokud není použit odpovídající typ dat, bude s operací zacházeno jako s řetězcovou operací. |
Flags |
Volitelné, příznaky vytváření a úprav. Může být zadáno více příznaků; k oddělení jednotlivých příznaků použijte znak svislé čáry. Podporovány jsou následující příznaky:
Poznámka: Příznak Open nebo OpenOnce je nutné použít při úpravě hodnoty záznamu registru.
|
Následující příklad vytvoří klíč registru MYREGKEY a přidá hodnoty STRING a NUMBER:
<RegistryEntries> <RegistryEntry Key="MYREGKEY" Name="STRING" Value="Example" Type="REG_SZ" /> <RegistryEntry Key="MYREGKEY" Name="NUMBER" Value="123" Type="REG_DWORD" /> </RegistryEntries>
Prvek SystemVariables je volitelný a může obsahovat jeden nebo více prvků SystemVariables. Prvek SystemVariable obsahuje definici systémové proměnné, kterou má modul plug-in vytvořit nebo upravit.
Atribut |
Popis |
---|---|
Name |
Název systémové proměnné, která se má vytvořit nebo upravit. |
Value |
Hodnota, která se má přiřadit k proměnné. Hodnota může obsahovat jednu z volitelných předpon operátorů: +, -, & a |. Další informace naleznete v části Předpony operátorů pro hodnoty proměnných. Poznámka: Při použití hodnoty v proměnné není předpona operátoru zachována.
|
PrimaryType |
Typ dat, který se má přiřadit k proměnné. Volitelné při úpravách existující systémové proměnné. Platné hodnoty jsou:
Pokud je předpona operátoru používána jako součást hodnoty proměnné, musí být zadán odpovídající typ dat. Pokud není použit odpovídající typ dat, bude s operací zacházeno jako s řetězcovou operací. |
StorageType |
Umístění úložiště pro hodnotu proměnné; pokud se uchovává. Volitelné při úpravách existující systémové proměnné. Platné hodnoty jsou:
|
Owner |
Volitelné, název služby AcRX. Používalo se k nastavení systémové proměnné pouze ke čtení a pouze s možností úprav pomocí aplikace, která registruje název služby pomocí acrxRegisterService(). |
Flags |
Volitelné, příznaky vytváření a úprav. Může být zadáno více příznaků; k oddělení jednotlivých příznaků použijte znak svislé čáry. Podporovány jsou následující příznaky:
Poznámka: Příznak Create nebo OpenOnce je nutné použít při úpravě hodnoty proměnné.
|
Následující příklad vytvoří systémovou proměnnou s názvem MYVARIABLE:
<SystemVariable Name="MYVARIABLE" PrimaryType="String" StorageType="User" Value="Example" Owner="" Flags="Create|DotIsEmpty|SpacesAllowed" />
Následující příklad změní při prvním načtení modulu plug-in hodnotu systémové proměnné CURSORSIZE na 100:
<SystemVariable Name="CURSORSIZE" Value="100" Flags="OpenOnce" />
Prvek EnvironmentVariables je volitelný a může obsahovat jeden nebo více prvků EnvironmentVariable. Prvek EnvironmentVariable obsahuje definici proměnné prostředí, kterou má modul plug-in vytvořit nebo upravit. Proměnné prostředí jsou uloženy v registru systému Windows nebo v souboru seznamu vlastností v systému Mac OS.
Atribut |
Popis |
---|---|
Name |
Název proměnné prostředí, která se má vytvořit nebo upravit. |
Value |
Hodnota, která se má přiřadit k proměnné. Hodnota může obsahovat jednu z volitelných předpon operátorů: +, -, & a |. Další informace naleznete v části Předpony operátorů pro hodnoty proměnných. Poznámka: Při použití hodnoty v proměnné není předpona operátoru zachována.
|
Type |
Volitelné, typ dat, který hodnota představuje. Platné hodnoty jsou:
Pokud je předpona operátoru používána jako součást hodnoty proměnné, musí být zadán odpovídající typ dat. Pokud není použit odpovídající typ dat, bude s operací zacházeno jako s řetězcovou operací. |
Flags |
Volitelné, příznaky vytváření a úprav. Může být zadáno více příznaků; k oddělení jednotlivých příznaků použijte znak svislé čáry. Podporovány jsou následující příznaky:
Poznámka: Příznak Create nebo OpenOnce je nutné použít při úpravě hodnoty proměnné.
|
Následuje příklad vytvoření dvou proměnných prostředí s názvy MYNUMVAR a MYSTRVAR:
<EnvironmentVariables> <EnvironmentVariable Name="MYNUMVAR" Value="123" /> <EnvironmentVariable Name="MYSTRVAR" Value="Example" /> </EnvironmentVariables>
Předpony operátorů se používají k úpravám aktuální hodnoty proměnné po načtení modulu plug-in. K atributu Value v prvku RegistryEntry, SystemVariable nebo EnvironmentVariable můžete přidat některou z předpon operátorů uvedených v následující tabulce.
Předpona |
Popis |
---|---|
+ (znaménko plus) |
Přidá nebo připojí hodnotu k existující hodnotě proměnné. Int16, Int32, Real: Přidá hodnotu k existující hodnotě proměnné. String: Připojí hodnotu k existující hodnotě proměnné. |
- (spojovník) |
Odečte nebo odebere hodnotu od existující hodnoty proměnné. Int16, Int32, Real: Odečte hodnotu od existující hodnoty proměnné. String: Odebere hodnotu od existující hodnoty proměnné. |
& (ampersand) |
Bitová operace AND s existující hodnotou proměnné; podporovány jsou pouze číselné hodnoty. |
| (znak svislé čáry) |
Bitová operace OR s existující hodnotou proměnné; podporovány jsou pouze číselné hodnoty. |
Následující kód vždy povoluje aktivní uchopení objektů KON, POL, STŘ, BOD, KVA a PRŮ a ponechá nastavení uchopení všech ostatních objektů v aktuálním stavu:
<SystemVariable Name="OSMODE" Value="|63" Flags="Open" />