Přizpůsobení a rozšíření domény specifické pro jazyk
Visual Studio modelování a vizualizace SDK (VMSDK) obsahuje několik úrovní, v nichž můžete definovat nástroje modelování:
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 definovat domény specifické pro jazyk.
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.
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 nastavit domény specifické pro jazyk.
[!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 spojnic odrážejí modelu. Vytvořte pravidlo, že aktualizace vystavených vlastnosti.Viz téma Pravidla rozšířit změny v rámci 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 spojnic odrážejí 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čítané a vlastních vlastností úložiště. |
Rozšířit změny mezi prvky modelu, nebo obrazce |
Viz téma Ověření domény specifické pro jazyk. |
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álostí rozšířit změny mimo modelu. |
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í kopie. |
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 |
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í kopie. |
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í kopie. |
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 |
|
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í prvku a pohyb. |
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í prvku a pohyb. |
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 Vlastní nastavení nástroje 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 BoundsRules omezit tvar umístění a velikost. |
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 Vlastní nastavení nástroje 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 |
VizJak: změna standardní příkaz v jazyce specifické pro doménu |
Omezit model s ověřovací pravidla |
|
Generování kódu, konfigurační soubory nebo dokumenty z DSL. |
|
Přizpůsobit jak modely uloženo do souboru. |
|
Modely uložte do databáze nebo jiné médium. |
Přepsat YourLanguageDocData |
Integrate několik DSL, linky fungují v rámci jedné aplikace. |
|
Povolit vaše DSL třetími stranami prodloužení a rozšíření řízení. |
Sdílení mezi DSL, linky DSL knihovny pomocí tříd Definování uzamčení zásad pro vytvoření segmentů jen pro čtení |
Viz také
Koncepty
Jak definovat domény specifické pro jazyk
Vizualizace a modelování SDK - jazyky specifické pro doménu