Sdílet prostřednictvím


Přizpůsobení a rozšíření jazyka specifického pro doménu

Visual Studio modelování a vizualizace SDK (VMSDK) obsahuje několik úrovní, v nichž můžete definovat nástroje modelování:

  1. Definujte specifické domény jazyk (DSL) pomocí diagramu definice DSL.DSL lze rychle vytvořit graficky notace, čitelné formě XML a základní nástroje, které jsou požadovány pro generování kódu a další artefakty.

    Další informace naleznete v tématu Jak se definuje jazyk specifický pro doménu.

  2. Modem DSL doladit pomocí rozšířené funkce definice DSL.Můžete například vytvořit další odkazy, které se zobrazí, když uživatel vytvoří element.Tyto techniky jsou většinou dosáhnout v definici DSL a některé vyžadují několik řádků kódu programu.

  3. Nástroje pro modelování lze rozšířit pomocí kódu programu.VMSDK je specificky navržen pro snadno integrovat vaše rozšíření s kódem, který je generován z definice DSL.Další informace naleznete v tématu Zápis kódu pro úpravu jazyka specifického pro doménu.

[!POZNÁMKA]

Při aktualizaci souboru definic DSL nezapomeňte klepněte na Transformace všechny šablony v panelu nástrojů aplikaci Solution Explorer před opětovné vytvoření řešení.

V tomto oddíle

K dosažení tohoto efektu

Naleznete v tomto tématu

Umožňuje nastavit barvu a styl vlastnosti obrazce.

Pravým tlačítkem myši na tvar nebo spojovací třídy, přejděte na Přidat vystavenia klepněte na položku.

Viz téma Přizpůsobení prezentace v diagramu.

Různé třídy prvku modelu vypadat podobně jako v diagramu, sdílení vlastnosti jako původní výšku a šířku, barvu, popisy tlačítek.

Pomocí dědičnosti mezi obrazce spojnice.Podrobnosti mapování z rodičů, dědí mapování mezi odvozené tvary a třídy odvozené domény.

Nebo mapovat do stejné třídy tvaru tříd v jiné doméně.

Třídy prvku modelu je zobrazen kontexty různých tvarů.

Více než jeden obrazec Třída mapovat do stejné třídy domény.Při vytváření řešení podle zprávy o chybách a poskytnout požadovaný kód rozhodnout, jaké obrazec.

Tvar, barvu nebo jiné funkce, jako je například písmo označují aktuální stav.

Viz téma Aktualizace obrazců a konektorů k vyjádření modelu.

Vytvořte pravidlo, že aktualizace vystavených vlastnosti.Viz téma Pravidla šířící změny v modelu.

Nebo pomocí OnAssociatedPropertyChanged()-vystaveny funkce, jako je například písmo nebo šipky propojení aktualizovat.

Ikona se změní obrazec označující stát.

Nastavte viditelnost decorator mapování v okně Detaily DSL.Vyhledejte sklenářské několik obrázků na stejné pozici.See Aktualizace obrazců a konektorů k vyjádření modelu.

Nebo přepsat ImageField.GetDisplayImage().Viz příklad v ImageField.

Nastavit obrázek pozadí na libovolný obrazec

InitializeInstanceResources() přidání ukotvených ImageField přepsat.Viz téma Přizpůsobení prezentace v diagramu.

Hnízdo obrazce do libovolné hloubky

Nastavte rekurzivní vkládání stromu.Definujte BoundsRules obsahovat obrazce.Viz téma Přizpůsobení prezentace v diagramu.

Připojte spojnice na pevné body na hranici prvku.

Definujte vložené terminálu prvky reprezentované malé porty v diagramu.Pomocí BoundsRules oprava porty na místě.Viz Diagram okruh vzorku v vizualizaci a modelování SDK.

Textové pole zobrazuje hodnoty získané z jiných hodnot.

Vypočítaná nebo skladování vlastní vlastnost domain mapovat text decorator.Další informace naleznete v tématu Vypočtené a vlastní vlastnosti úložiště.

Rozšířit změny mezi prvky modelu, nebo obrazce

Viz téma Ověřování v jazyce specifickém pro doménu.

Rozšířit změny na prostředky, například Další Visual Studio rozšíření mimo úložiště.

Viz téma Obslužné rutiny události šíří změny mimo model.

Zobrazí se okno Vlastnosti vlastností souvisejících prvků.

Nastavte vlastnost dál.Viz téma Přizpůsobení okna Vlastnosti.

Kategorie vlastností

Okno Vlastnosti rozdělen do oddílů názvem kategorie.Nastavit kategorie vlastnosti vaší domény.Vlastnosti se stejným názvem kategorie se zobrazí ve stejné části.Můžete také nastavit kategorie role vztahu.

Řízení přístupu uživatele k vlastnosti domény

Nastavit Je procházet hodnotu false, aby vlastnost domain zobrazování v okně Vlastnosti v době spuštění.Stále ji můžete mapovat na text sklenářské.

Je jen pro čtení uživatelského rozhraní zabraňuje uživatelům měnit vlastnosti domény.

Přístup k vlastnosti domény není ohrožena.

Změňte název, ikony a viditelnost uzly v Průzkumníku modelů vaše DSL.

Viz téma Přizpůsobení Průzkumníka modelů.

Povolit kopírování, vyjímání a vkládání

Nastavit Povolit kopírování, vkládání vlastnost Editor uzel v aplikaci Explorer DSL.

Při každém prvku zkopírováno kopírovat odkazy a jejich cíle.Například kopírovat poznámky připojené k položce.

Nastavit Šíří kopie vlastnost Zdroj role (představovaný řádku na jedné straně vztah domény v diagramu definice DSL).

Zápis kódu potlačit ProcessOnCopy k dosažení složitější efekty.

Viz téma Přizpůsobení chování kopírování.

Odstranit, reparent nebo znovu připojit související prvky při odstranění prvku.

Nastavit Šíří odstranit hodnotu role vztahu.Složitější efekty přepsat ShouldVisitRelationship a ShouldVisitRolePlayer metod MyDslDeleteClosure třídy definované vDomainModel.cs

VizPřizpůsobení chování odstranění

Zachovat tvar rozložení a vzhled na kopii a přetáhněte.

Přidat tvarů a spojovacích čar zkopírované ElementGroupPrototype.Je nejvhodnější metoda potlačeníElementOperations.CreateElementGroupPrototype()

Viz téma Přizpůsobení chování kopírování.

Vložení obrazců do zvoleného umístění, jako je například aktuální pozice kurzoru.

Přepsat ClipboardCommandSet.ProcessOnCopy() používat specifické umístění verzi ElementOperations.Merge(). viz Přizpůsobení chování kopírování.

Vytvořit další odkazy na vložení

Přepsat ClipboardCommandSet.ProcessOnPasteCommand()

Povolit přetahování a přetažení z jiných DSL, linky nebo UML diagramu diagramy a prvky systému Windows

VizPostupy: Přidání obslužné rutiny operace přetažení myší

Povolit nástroj přetáhnout na podřízený obrazec, jako například port, tvaru nebo, jako by byla přetažena na nadřazený.

Definujte direktivu sloučit Element, cílové třídy object, předá vyřazených objekt nadřazeného.Viz téma Přizpůsobení vytvoření a přesunutí elementu.

Povolte přetažení obrazce a mít další odkazy nebo objekty vytvořené nástrojem tvaru nebo.Chcete-li například povolit komentář, který má být přetažen na položku, na kterou je spojen.

Definovat direktivu sloučit prvek ve třídě cílové domény a definovat propojení generován.Ve složitých případech můžete přidat vlastní kód.Viz téma Přizpůsobení vytvoření a přesunutí elementu.

Vytvořte skupiny prvků s jeden nástroj.Například komponenta s pevnou sadu portů.

Přepište metodu inicializace nástrojů v ToolboxHelper.cs.Vytvoření prvek skupiny prototypu (EGP) obsahující prvky a jejich vztah vazby.Viz téma Přizpůsobení nástrojů a panelu nástrojů.

Zahrnout EGP obrazce hlavní a port, nebo definovat BoundsRules pro umístění obrazců port, když je vytvořena EGP.Viz téma Umístění a velikost obrazce omezení BoundsRules.

Pomocí jednoho nástroje připojení ke konkretizaci několik typů vztahů.

Tvůrce připojení, který je vyvolán nástroj přidáte odkaz připojit směrnic (LCD).Monitorů LCD určují typ relace z typů dva prvky.Chcete-li to závisí na státy prvků, můžete přidat vlastní kód.Viz téma Přizpůsobení nástrojů a panelu nástrojů.

Nástroje pro rychlé – uživatel poklepáním na libovolný nástroj postupně vytvořit mnoho obrazců nebo spojnice.

Vyberte v aplikaci Explorer DSL Editor uzel.V okně Vlastnosti nastavit Používá rychlé položky panelu nástrojů.

Definování příkazů nabídky

VizPostupy: Úprava příkazu standardní nabídky v jazyce specifickém pro doménu

Omezit model s ověřovací pravidla

VizOvěřování v jazyce specifickém pro doménu

Generování kódu, konfigurační soubory nebo dokumenty z DSL.

Vytváření kódu z jazyka specifického pro doménu

Přizpůsobit jak modely uloženo do souboru.

VizPřizpůsobení souborového úložiště a serializace XML

Modely uložte do databáze nebo jiné médium.

Přepsat YourLanguageDocData

VizPřizpůsobení souborového úložiště a serializace XML

Integrate několik DSL, linky fungují v rámci jedné aplikace.

Viz téma Integrace modelů pomocí Visual Studio Modelbus.

Povolit vaše DSL třetími stranami prodloužení a rozšíření řízení.

Rozšíření vašeho DSL pomocí MEF

Sdílení tříd mezi DSL pomocí knihovny DSL

Definování zásady zamykání pro vytváření segmentů jen pro čtení

Viz také

Koncepty

Jak se definuje jazyk specifický pro doménu

Sada Modeling SDK pro sadu Visual Studio – jazyky domény

Další zdroje

Zápis kódu pro úpravu jazyka specifického pro doménu