OBS/Adminhilfe/MMX

Aus OBS Wiki
Zur Navigation springen Zur Suche springen
Für diese Seite wurde eine Zugriffsbeschränkung eingerichtet. Falls du diese Nachricht siehst, bist du nicht berechtigt, diese Seite einzusehen.

Dies ist eine zugriffsgeschützte Seite.


Admin-Hilfe

OBS-Administration / Installation
kundenspezifische Anpassungen
OBS Protokolle
Shop-Administration

MMX (ModelMaker Code Explorer)

MMX ist Teil der Delphi 10.X Installationen.

Dieses Wiki dient als Lexikon für nützliche Funktionen, deren Erläuterung und Nutzungsweise.

Alle Tastenkombinationen beziehen sich auf die der Standardeinstellung.


Source Indexer

Source indexer.png

Der Source Indexer erstellt, basierend auf vom Nutzer festgelegten Pfaden, einen Index des dort verfügbaren Quellcodes inklusive aller Schlüsselwörter, Variablen, Funktionen und bei Bedarf auch aller Strings und Kommentare. Dieser Index kann nach Erstellung durchsucht werden um bspw. sofort jegliches vorkommen eines bestimmten Objektes herauszufinden.

Funktionen und Shortcuts

Funktion Shortcut Beschreibung
Search At Cursor Strg + Umsch + Alt + S Sucht den Begriff auf welchem der Cursor im Editor momentan steht
Collapse All Strg + <- Alle Ergebniszweige einklappen.
Expand All Strg + -> Alle Ergebniszweige aufklappen.
Options Umsch + F5 Öffnet den Dialog um die Optionen für den Indexer zu ändern.
Refresh Index F5 Erneuert den gesamten Index mit den aktuellen Einstellungen.
Refresh Matches Erneuert die Übereinstimmungen in allen Tabs. Dies erstellt keinen neuen Index.
Nicht indizierte Dateien könne nicht mit einbezogen werden.
Clear Strg + Entf Bereinigt die Suche im aktiven Tab.
Open Öffnet die ausgewählte Übereinstimmung im Editor und fokussiert diesen.
Report Strg + P Erstellt einen Report der Übereinstimmungen.
Ermöglicht diesen in Form einer Datei zu exportieren, zu Drucken,
in die Zwischenablage zu kopieren oder eine Vorschau der Ergebnisse anzuzeigen.
New Tab Strg + T Öffnet einen neuen Tab im Indexer.
Close Tab Strg + F4 Schließt den aktiven Tab.
Close Other Tabs Schließt alle Tabs außer dem momentan aktiven Tab.

Optionen

Source-indexer options.png


Root Paths

Bspw.

 C:\Bergau\OBS\dev\projekte\OBS
 C:\Bergau\OBS\dev\projekte\obs_kasse
 C:\Bergau\OBS\dev\projekte\OBS_LIB
 C:\Bergau\OBS\dev\projekte\paslib

Include Subdirectories

Exclude Paths

 C:\Bergau\OBS\dev\projekte\OBS\__history
 C:\Bergau\OBS\dev\projekte\OBS\__recovery
 C:\Bergau\OBS\dev\projekte\obs_kasse\__history
 C:\Bergau\OBS\dev\projekte\obs_kasse\__recovery
 C:\Bergau\OBS\dev\projekte\OBS\Imp_Macro
 C:\Bergau\OBS\dev\projekte\OBS\Imp_PAX

File Types

 *.pas;*.inc;*.int;*.dpr;*.pax;*.inx

Scan Mode

 Plain Text (include comments and strings)

oder

 Pascal identifiers (skip comments and strings)

Navigation and Move

Shortcuts für das Navigieren durch und Bewegen von Code Segmenten.

 Strg + Umsch + Alt + X -> V

Navigate Up

 Strg + Umsch + Alt + X -> V -> N
 Strg + Umsch + Auf

Navigate Down

 Strg + Umsch + Alt + X -> V -> A
 Strg + Umsch + Ab

Previous Entity

 Strg + Umsch + Alt + X -> V -> P
 Strg + Alt + Auf

Next Entity

 Strg + Umsch + Alt + X -> V -> E
 Strg + Alt + Ab

Move Entity Up

Findet die Entity in der sich momentan der Cursor befindet ( Methoden, Events, etc. ) und bewegt diese oberhalb der vorangehenden Entity ( Methode, Event, etc. ) Für OBS: Die Funktion respektiert auch unsere eigenen Header und deren Abstände.

 Strg + Umsch + Alt + X -> V -> M

Move Entity Down

Findet die Entity in der sich momentan der Cursor befindet ( Methoden, Events, etc. ) und bewegt diese unterhalb der nachgehenden Entity ( Methode, Event, etc. ) Für OBS: Die Funktion respektiert auch unsere eigenen Header und deren Abstände.

 Strg + Umsch + Alt + X -> V -> O

(Bei dieser und der vorigen Funktion kann es bei Benutzung zu marginalen unterschieden in Leerzeilen kommen)

Move Selection Up

 Strg + Umsch + Alt + X -> V -> V

Move Selection Down

 Strg + Umsch + Alt + X -> V -> S

Find Next/Previeous Occurence

Sucht den Identifier an der momentanen Cursorposition und springt zum nächsten/vorherigen Vorkommen dieses Identifiers.
Find Occurence.png

Next

 Strg + Umsch + Alt + X -> V -> F

Previous

 Strg + Umsch + Alt + X -> V -> I

Custom Identifier Search

Öffnet ein Fenster um specifische Identifier/Schlüsselwörter ausfindig zu machen und zu deren ersten, von der Cursorposition gesehen, Vorkommen zu springen.

 Strg + Umsch + Alt + X -> V -> C
 Umsch + Alt + Pos1

Custom identifier search.png

History

Öffnet ein Kontextmenü dessen Einträge aus vorigen Navigationspunkten besteht.

 Strg + Umsch + Alt + X -> V -> R
 Umsch + Ö


Text Tools

Beinhaltet Tools und Funktionen um Texte auszuwählen, zu editieren und auszuwählen.

 Strg + Umsch + Alt + X -> X

Comment Member(s)

Kommentiert das Selektierte Feld aus und erstellt einen TODO Kommentar darüber.

 Strg + Umsch + Alt + X -> X -> C
 Strg + Umsch + Q

Toggle Comment Selection

Schaltet zwischen Kommentierung und nicht Kommentierung der fokussierten Zeile im Quellcode.

 Strg + Umsch + Alt + X -> X -> T

Select Method Body

Selektiert den gesamten Körper der fokussierten Methode. Alles zwischen Begin und End.

 Strg + Umsch + Alt + X -> X -> S

Reverse Assignment

Kehrt die Zuweisung von zwei Variablen um.

 Strg + Umsch + Alt + X -> X -> R
 Umsch + Alt + R

Bspw. aus x := y; wird y := x;

Insert Component Name

 Strg + Umsch + Alt + X -> X -> I
 Strg + Umsch + Alt + I

Sync Edit Method

 Strg + Umsch + Alt + X -> X -> Y
 Strg + Umsch + Alt + J

Duplicate Lines

Dupliziert die ausgewählten Zeilen, bzw. die Zeile auf welcher der Cursor steht.

 Strg + Umsch + Alt + X -> X -> D
 Strg + Umsch + Alt + D

Reverse Lines

Kehrt die Reihenfolge der ausgewählten Zeilen um.

 Strg + Umsch + Alt + X -> X -> E

Align Code

Öffnet ein Fenster welches Einstellungen zum Ausrichten von Quellcode Zeilen bietet.

 Strg + Umsch + Alt + X -> X -> A

Align Code.png

Format Reserved Words

Formatiert die reservierten Schlüsselwörter.

 Strg + Umsch + Alt + X -> X -> F

Format reserved words.png

Untabify

Formatiert die aktive Unit und tauscht alle Tabs mit entsprechenden Mengen an Leerzeichen.

 Strg + Umsch + Alt + X -> X -> U

Tabify

Formatiert die aktive Unit und tauscht alle Leerzeichen mit entsprechenden Tabs.

 Strg + Umsch + Alt + X -> X -> B

Trim white space

 Strg + Umsch + Alt + X -> X -> M

Convert code to string

 Strg + Umsch + Alt + X -> X -> O


Code Generierung & Refactoring

Apply Class Template

Findet die Klasse in der sich der Cursor momentan befindet und schlägt eine Anzahl an Voreinstellungen/Strukturen an welche auf diese Klasse angewendet werden können.

 Strg + Umsch + Alt + X -> N

Class Templates.png


Add & Edit

MMX stellt eine Vielzahl an Masken zum Hinzufügen und Editieren von Strukturen. Hier eine Übersicht der verfügbaren Masken und deren Aufrufe. Alle Masken können auch über das MMX Menü geöffnet werden.


Edit Entity

Mit diesem Befehl kann jegliche Entität im Quellcode durch eine entsprechende Maske editiert werden. Hierbei werden für Events, Prozeduren, Funktionen und Delegaten die Maske für Methoden verwendet.

 Strg + Umsch + Alt + X -> N
 Strg + E


Class

Erlaubt das Hinzufügen von Klassen via Maske.

 Strg + Umsch + Alt + X -> D -> D

Edit class.png


Interface

Erlaubt das Hinzufügen von Interfaces via Maske.

 Strg + Umsch + Alt + X -> D -> I

Edit interface.png


Record

Erlaubt das Hinzufügen von Records via Maske.

 Strg + Umsch + Alt + X -> D -> R

Edit record.png


Field

Erlaubt das Hinzufügen von Feldern via Maske.

 Strg + Umsch + Alt + X -> D -> F
 Strg + Alt + F

Edit field.png

Method

Erlaubt das Hinzufügen von Methoden via Maske.

 Strg + Umsch + Alt + X -> D -> M

Edit method.png

Property

Erlaubt das Hinzufügen von Properties via Maske.

 Strg + Umsch + Alt + X -> D -> P
 Strg + Alt + P

Edit property.png

Indexer

Erlaubt das Hinzufügen von Indexern via Maske.

 Strg + Umsch + Alt + X -> D -> N
 Strg + Alt + I

Edit indexer.png

Event

Erlaubt das Hinzufügen von Events via Maske.

 Strg + Umsch + Alt + X -> D -> V
 Strg + Alt + E

Edit event.png

Operator

 Strg + Umsch + Alt + X -> D -> O

Edit operator.png

Procedure

 Strg + Umsch + Alt + X -> D -> C
 Strg + Alt + M

Edit procedure.png


Delegate

 Strg + Umsch + Alt + X -> D -> G
 Strg + Alt + D

Edit delegate.png


Local Variable

 Strg + Umsch + Alt + X -> D -> A
 Strg + L

Edit local var.png


Explaining Variable

 Strg + Umsch + Alt + X -> D -> X
 Umsch + Alt + L

Edit explaining variable.png


Parameter

 Strg + Umsch + Alt + X -> D -> T
 Umsch + Alt + P

Edit parameter.png


Clipboard

Beinhaltet Funktionen um Entitäten in die Zwischenablage zu legen oder aus dieser heraus im aktiven Modul hinzuzufügen.

 Strg + Umsch + Alt + X -> B -> C


Cut Entity

Schneidet die fokussierte Entität aus dem Modul und fügt Sie der Zwischenablage hinzu. Warnt den Nutzer wenn die Entität z.B. zu einer Eventverknüpfung gehört.

 Strg + Umsch + Alt + X -> B -> C
 Strg + Alt + X


Copy Entity

Kopiert die fokussierte Entität von dem Modul und fügt Sie der Zwischenablage hinzu.

 Strg + Umsch + Alt + X -> B -> O
 Strg + Alt + C


Paste Entity

Fügt die Entität aus der Zwischenablage dem Modul am Ende des Moduls hinzu.

 Strg + Umsch + Alt + X -> B -> P
 Strg + Alt + V


Paste Prototype

Fügt die Entität aus und fügt Sie der Zwischenablage hinzu. Warnt den Nutzer wenn die Entität z.B. zu einer Eventverknüpfung gehört.

 Strg + Umsch + Alt + X -> B -> P
 Strg + Alt + V

Formatierungshilfe

Conversion

Beinhaltet Funktionen um Entitäten in einem Modul schnell in andere Entitäten zu konvertieren.

 Strg + Umsch + Alt + X -> C


Convert To Field

Konvertiert eine Methode vom Typen Funktion in eine Variable von dem entsprechenden Typen. Zusätzlich können Komponenten und verknüpfte Event Handler nicht konvertiert werden.

 Strg + Umsch + Alt + X -> C -> C


Convert To Method

Konvertiert ein Feld in eine Methode und Generiert einen Standardkörper für diese.

 Strg + Umsch + Alt + X -> C -> O


Convert To Property

Konvertiert ein Feld in eine Property und Generiert einen Standardkörper für diese.

 Strg + Umsch + Alt + X -> C -> N

Convert to Property.png

Convert To Constant

Konvertiert ein Feld oder eine Methode vom Typ String oder Numerisch in eine Konstante.

 Strg + Umsch + Alt + X -> C -> V

Convert to Constant.png


Convert To Resourrcestring

Konvertiert einen String in einen Delphi Resourcestring mit Hilfe einer Maske.

 Strg + Umsch + Alt + X -> C -> S
 Strg + Alt + R

Edit resourcestring.png


Module String Wizard

Öffnet einen Wizard um Operationen und Konvertierungen an allen Strings in einem Modul anzuwenden.

 Strg + Umsch + Alt + X -> C -> M

Convert strings2.png

Funktion Shortcut Beschreibung
Make Resourcestring R Den gewählten String als Resourcestring kennzeichnen.
Make Constant C Den gewählten String als Constant kennzeichnen.
Mark Unlocalized U Den gewählten String als nicht lokalisiert kennzeichnen.
Mark Custom M Den gewählten String als Custom kennzeichnen.
Rename F2 Die Kennung des gewählten Strings umbenennen.
Exclude Entf Den gewählten String von der Konvertierung ausschließen.
Scroll Editor Up Strg + Alt + Auf Im Editor hochscrollen.
Scroll Editor Dowwn Strg + Alt + Ab Im Editor herunterscrollen.
Options... Einstellungen bezüglich des Scannens und Konvertieren von Strings.
Ermöglicht das definieren von Kommentaren für Custom und Unlocalized Strings etc.

Multi File Wizard

Öffnet einen Wizard um Operationen und Konvertierungen an Strings in allen Modulen im Projekt anzuwenden.

 Strg + Umsch + Alt + X -> C -> U
Funktion Shortcut Beschreibung
Make Resourcestring R Den gewählten String als Resourcestring kennzeichnen.
Make Constant C Den gewählten String als Constant kennzeichnen.
Mark Unlocalized U Den gewählten String als nicht lokalisiert kennzeichnen.
Mark Custom M Den gewählten String als Custom kennzeichnen.
Rename F2 Die Kennung des gewählten Strings umbenennen.
Exclude Entf Den gewählten String von der Konvertierung ausschließen.
Scroll Editor Up Strg + Alt + Auf Im Editor hochscrollen.
Scroll Editor Dowwn Strg + Alt + Ab Im Editor herunterscrollen.
Options... Einstellungen bezüglich des Scannens und Konvertieren von Strings.
Ermöglicht das definieren von Kommentaren für Custom und Unlocalized Strings etc.

Tools

Beinhaltet Funktionen die eher generelle Aufgaben übernehmen oder anscheinend nicht einer der anderen Kategorien angehören.

 Strg + Umsch + Alt + X ->  T

Close all other files

Schließt alle Dateien außer der momentan fokussierten.

 Strg + Umsch + Alt + X ->  T -> C


Unit Dependencies

Öffnet ein Fenster welches eine Übersicht aller Units und deren Abhängigkeiten bietet.

 Strg + Umsch + Alt + X ->  T -> U

Uses

Die Standard Ansicht ist die "Uses" Ansicht in der alle deklarierten Use Klauseln in der momentan gewählten Unit angezeigt werden.

 Alt + U 

Unit dependency Analyzer.png

Used By

Die nächste Ansicht ist die "Used By" Ansicht in der alle Units angezeigt werden in welchen die momentan gewählte Unit verwendet wird.

 Alt + B 

Cycles

Die nächste Ansicht ist die "Cycles" Ansicht in der, wie bei der "Uses" Ansicht, alle Use Klauseln angezeigt werden.

 Alt + C 

Unit dependency Analyzer Cycles.png

Cycles DSM

Die nächste Ansicht ist die "Cycles" Ansicht in der, wie bei der "Uses" Ansicht, alle Use Klauseln aller Units als Relationen in Form einer Matrix angezeigt werden. Kann Hilfreich sein bei der Analyse von weitreichenden Auswirkungen durch Namensänderungen von Units im Projekt.

 Alt + D 

Unit dependency Analyzer Cycles DSM.png

Errors

Die letzte Ansicht ist die "Errors" Ansicht in welcher Fehler in den Uses Klauseln der momentan gewählten Unit angezeigt werden.

 Alt + E

Module Analyzer

Öffnet ein Fenster das der Analyse der verwendeten Module, Suchpfade und Resourcen des Projekts dient.

 Strg + Umsch + Alt + X ->  T -> T

Modules

Module Analyzer Modules.png

Search Paths

Module Analyzer Search Path.png

Resources

Module Analyzer Resources.png


Use Unit

Erlaubt das Hinzufügen von Units zu den Uses Klauseln des Interface oder Implementation

 Strg + Umsch + Alt + X ->  T -> S
 Strg + U 

Use unit.png


Locate Type

Öffnet ein Fenster, welches einem Erlaubt nach einem Typen zu suchen und das Modul in welchem er definiert wurde zu finden und zu öffnen.

 Strg + Umsch + Alt + X ->  T -> A
 Umsch + Alt + T

Locate Type.png


Accelerator Key Wizard

Öffnet einen Wizard mit dem man die Shortcuts für Controls in einer Unit schnell editieren kann.

 Strg + Umsch + Alt + X ->  T -> E

Shortcut Wizard.png


ActionList Schortcut Wizard

Öffnet einen Wizard zum Editieren von ActionList Shortcuts im aktiven Designer.

 Strg + Umsch + Alt + X ->  T -> T

ActionList Shortcut Wizard.png


Editor Search Bar

Fokussiert die MMX Suchleiste im Editor.

 Strg + Umsch + Alt + X ->  T -> D

Muss u.U. in den Einstellungen unter

 General -> Delphi Editor -> Editor Toolbars 

aktiviert werden.


Convert "with" Statement

Öffnet einen Wizard zum Editieren des selektierten With-Statements

 Strg + Umsch + Alt + X ->  T -> N
 Umsch + Alt + W

Use unit.png


Insert Attributes

Öffnet ein Kontextmenü mit welchem man Attribute zu Classenn, Methoden, Properties und Feldern hinzufügen kann.

 Strg + Umsch + Alt + X ->  T -> I

Insert Attributes.png

Hier werden einem direkt DUnitX Attribute zur Verfügung getsellt.

Insert Attributes DUnitX.png


Creational Wizard

Öffnet einen Wizard mit welchem man den De- und Constructor einer Klasse definieren kann. Dieser erlaubt einem außerdem De- und Constructor Code für die jeweiligen Felder der Klasse zu generieren.

 Strg + Umsch + Alt + X ->  T -> R

Creational Wizard.png

Zusätzlich wird einem die Möglichkeit geboten mit der Schaltfläche Customize Creational Wizard eine Text Datei zu öffnen in welcher man die Standardwerte, welche man den Feldern mit Hilfe des Wizards zuweist, festlegen kann.

Creational Wizard Params.png


Event Handler View

Öffnet ein Fenster welches eine Übersicht über alle Event Handlers in einem Modul bietet.

 Strg + Umsch + Alt + X ->  T -> V

Event Handlers.png