summaryrefslogtreecommitdiffstats
path: root/sd-plugin/src/main/resources
diff options
context:
space:
mode:
Diffstat (limited to 'sd-plugin/src/main/resources')
-rw-r--r--sd-plugin/src/main/resources/META-INF/plugin.xml48
-rw-r--r--sd-plugin/src/main/resources/META-INF/pluginIcon.svg19
-rw-r--r--sd-plugin/src/main/resources/META-INF/pluginIcon_dark.svg19
-rw-r--r--sd-plugin/src/main/resources/flex/idea-flex.skeleton248
-rw-r--r--sd-plugin/src/main/resources/flex/jflex-1.7.0-2.jarbin0 -> 1301624 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/document_icon.pngbin0 -> 436 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/document_summary_icon.pngbin0 -> 426 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/first_phase_icon.pngbin0 -> 424 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/imported_field_icon.pngbin0 -> 538 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/macro_icon.pngbin0 -> 579 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/override_macro_icon.pngbin0 -> 394 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/sd_icon.pngbin0 -> 682 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/struct_field_icon.pngbin0 -> 627 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/struct_icon.pngbin0 -> 279 bytes
-rw-r--r--sd-plugin/src/main/resources/icons/summary_def_icon.pngbin0 -> 686 bytes
15 files changed, 334 insertions, 0 deletions
diff --git a/sd-plugin/src/main/resources/META-INF/plugin.xml b/sd-plugin/src/main/resources/META-INF/plugin.xml
new file mode 100644
index 00000000000..206b33144e2
--- /dev/null
+++ b/sd-plugin/src/main/resources/META-INF/plugin.xml
@@ -0,0 +1,48 @@
+<idea-plugin>
+ <id>org.intellij.sdk.language</id>
+ <name>SdPlugin</name>
+
+ <!-- Text to display as company information on Preferences/Settings | Plugin page -->
+ <vendor email="shahar.ariel@verizonmedia.com">VerizonMedia</vendor>
+
+ <!-- Product and plugin compatibility requirements -->
+ <depends>com.intellij.java</depends>
+
+ <!-- Text to display as description on Preferences/Settings | Plugin page -->
+ <description><![CDATA[
+ A plugin to recognize sd files and work with them through IntelliJ<br>
+ <em></em>
+ ]]></description>
+
+ <!-- please see https://plugins.jetbrains.com/docs/intellij/plugin-compatibility.html
+ on how to target different products -->
+ <depends>com.intellij.modules.platform</depends>
+ <depends>com.intellij.java</depends>
+
+ <extensions defaultExtensionNs="com.intellij">
+ <fileType name="Sd File" implementationClass="org.intellij.sdk.language.SdFileType" fieldName="INSTANCE"
+ language="Sd" extensions="sd"/>
+ <lang.parserDefinition language="Sd" implementationClass="org.intellij.sdk.language.parser.SdParserDefinition"/>
+ <lang.syntaxHighlighterFactory language="Sd" implementationClass="org.intellij.sdk.language.SdSyntaxHighlighterFactory"/>
+ <completion.contributor language="Sd" implementationClass="org.intellij.sdk.language.SdCompletionContributor"/>
+
+ <lang.findUsagesProvider language="Sd" implementationClass="org.intellij.sdk.language.findUsages.SdFindUsagesProvider"/>
+ <findUsagesHandlerFactory implementation="org.intellij.sdk.language.findUsages.SdFindUsagesHandlerFactory"/>
+ <fileStructureGroupRuleProvider implementation="org.intellij.sdk.language.findUsages.SdRankProfileGroupingRuleProvider"/>
+ <fileStructureGroupRuleProvider implementation="org.intellij.sdk.language.findUsages.SdDocumentSummaryGroupingRuleProvider"/>
+ <elementDescriptionProvider implementation="org.intellij.sdk.language.psi.SdElementDescriptionProvider"/>
+
+ <lang.psiStructureViewFactory language="Sd" implementationClass="org.intellij.sdk.language.structure.SdStructureViewFactory"/>
+ <lang.formatter language="Sd" implementationClass="org.intellij.sdk.language.SdFormattingModelBuilder"/>
+ <codeStyleSettingsProvider implementation="org.intellij.sdk.language.SdCodeStyleSettingsProvider"/>
+ <langCodeStyleSettingsProvider implementation="org.intellij.sdk.language.SdLanguageCodeStyleSettingsProvider"/>
+ <lang.commenter language="Sd" implementationClass="org.intellij.sdk.language.SdCommenter"/>
+ <lang.refactoringSupport language="Sd" implementationClass="org.intellij.sdk.language.SdRefactoringSupportProvider"/>
+ <gotoSymbolContributor implementation="org.intellij.sdk.language.SdChooseByNameContributor"/>
+ <callHierarchyProvider language="Sd" implementationClass="org.intellij.sdk.language.hierarchy.SdCallHierarchyProvider"/>
+ </extensions>
+
+ <actions>
+ <!-- Add your actions here -->
+ </actions>
+</idea-plugin> \ No newline at end of file
diff --git a/sd-plugin/src/main/resources/META-INF/pluginIcon.svg b/sd-plugin/src/main/resources/META-INF/pluginIcon.svg
new file mode 100644
index 00000000000..9babe4c4ef4
--- /dev/null
+++ b/sd-plugin/src/main/resources/META-INF/pluginIcon.svg
@@ -0,0 +1,19 @@
+<svg version="1.2" baseProfile="tiny-ps" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" width="40" height="40">
+ <title>pluginIcon</title>
+ <defs>
+ <image width="40" height="40" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAQMAAAC2MCouAAAAAXNSR0IB2cksfwAAAANQTFRFAAAAp3o92gAAAAF0Uk5TAEDm2GYAAAAMSURBVHicY2AYWQAAAPAAAQaUif0AAAAASUVORK5CYII="/>
+ <image width="36" height="36" id="img2" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkAQMAAADbzgrbAAAAAXNSR0IB2cksfwAAAANQTFRFuubnWfllrQAAAAxJREFUeJxjYBieAAAA2AABOXA/oAAAAABJRU5ErkJggg=="/>
+ <image width="34" height="34" id="img3" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiAQMAAAAAiZmBAAAAAXNSR0IB2cksfwAAAAZQTFRFAAAAP5aZJJgdHgAAAAJ0Uk5TAP9bkSK1AAAAWUlEQVR4nI3Ouw2AMAxF0YcoXGYERsloyWiMwhgUiIsTKxESDS5O49+T7JRXpgm7tMAhreANg0tK3Q3uNghhVfno+In/lum4kKfjY3plsJ4qEkZaX6uuefMBOOp0ufGf8MYAAAAASUVORK5CYII="/>
+ </defs>
+ <style>
+ tspan { white-space:pre }
+ .txt0 { font-size: 20px;fill: #efab00;font-weight: 400;font-family: "DejaVuSans", "DejaVu Sans" }
+ </style>
+ <use id="Background" href="#img1" x="0" y="0" />
+ <use id="Layer 1" style="opacity: 0.42" href="#img2" x="2" y="2" />
+ <use id="Layer 2" style="opacity: 0.769" href="#img3" x="3" y="3" />
+ <text id="SD" style="transform: matrix(1,0,0,1,7,27);paint-order:stroke fill markers;stroke: #826c34;stroke-width: 2;stroke-linejoin: round;" >
+ <tspan x="0" y="0" class="txt0">S</tspan><tspan y="0" class="txt0">D
+</tspan>
+ </text>
+</svg> \ No newline at end of file
diff --git a/sd-plugin/src/main/resources/META-INF/pluginIcon_dark.svg b/sd-plugin/src/main/resources/META-INF/pluginIcon_dark.svg
new file mode 100644
index 00000000000..9babe4c4ef4
--- /dev/null
+++ b/sd-plugin/src/main/resources/META-INF/pluginIcon_dark.svg
@@ -0,0 +1,19 @@
+<svg version="1.2" baseProfile="tiny-ps" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" width="40" height="40">
+ <title>pluginIcon</title>
+ <defs>
+ <image width="40" height="40" id="img1" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoAQMAAAC2MCouAAAAAXNSR0IB2cksfwAAAANQTFRFAAAAp3o92gAAAAF0Uk5TAEDm2GYAAAAMSURBVHicY2AYWQAAAPAAAQaUif0AAAAASUVORK5CYII="/>
+ <image width="36" height="36" id="img2" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkAQMAAADbzgrbAAAAAXNSR0IB2cksfwAAAANQTFRFuubnWfllrQAAAAxJREFUeJxjYBieAAAA2AABOXA/oAAAAABJRU5ErkJggg=="/>
+ <image width="34" height="34" id="img3" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAiAQMAAAAAiZmBAAAAAXNSR0IB2cksfwAAAAZQTFRFAAAAP5aZJJgdHgAAAAJ0Uk5TAP9bkSK1AAAAWUlEQVR4nI3Ouw2AMAxF0YcoXGYERsloyWiMwhgUiIsTKxESDS5O49+T7JRXpgm7tMAhreANg0tK3Q3uNghhVfno+In/lum4kKfjY3plsJ4qEkZaX6uuefMBOOp0ufGf8MYAAAAASUVORK5CYII="/>
+ </defs>
+ <style>
+ tspan { white-space:pre }
+ .txt0 { font-size: 20px;fill: #efab00;font-weight: 400;font-family: "DejaVuSans", "DejaVu Sans" }
+ </style>
+ <use id="Background" href="#img1" x="0" y="0" />
+ <use id="Layer 1" style="opacity: 0.42" href="#img2" x="2" y="2" />
+ <use id="Layer 2" style="opacity: 0.769" href="#img3" x="3" y="3" />
+ <text id="SD" style="transform: matrix(1,0,0,1,7,27);paint-order:stroke fill markers;stroke: #826c34;stroke-width: 2;stroke-linejoin: round;" >
+ <tspan x="0" y="0" class="txt0">S</tspan><tspan y="0" class="txt0">D
+</tspan>
+ </text>
+</svg> \ No newline at end of file
diff --git a/sd-plugin/src/main/resources/flex/idea-flex.skeleton b/sd-plugin/src/main/resources/flex/idea-flex.skeleton
new file mode 100644
index 00000000000..218399976ca
--- /dev/null
+++ b/sd-plugin/src/main/resources/flex/idea-flex.skeleton
@@ -0,0 +1,248 @@
+
+ /** This character denotes the end of file */
+ public static final int YYEOF = -1;
+
+ /** initial size of the lookahead buffer */
+--- private static final int ZZ_BUFFERSIZE = ...;
+
+ /** lexical states */
+--- lexical states, charmap
+
+ /* error codes */
+ private static final int ZZ_UNKNOWN_ERROR = 0;
+ private static final int ZZ_NO_MATCH = 1;
+ private static final int ZZ_PUSHBACK_2BIG = 2;
+
+ /* error messages for the codes above */
+ private static final String[] ZZ_ERROR_MSG = {
+ "Unknown internal scanner error",
+ "Error: could not match input",
+ "Error: pushback value was too large"
+ };
+
+--- isFinal list
+ /** the input device */
+ private java.io.Reader zzReader;
+
+ /** the current state of the DFA */
+ private int zzState;
+
+ /** the current lexical state */
+ private int zzLexicalState = YYINITIAL;
+
+ /** this buffer contains the current text to be matched and is
+ the source of the yytext() string */
+ private CharSequence zzBuffer = "";
+
+ /** the textposition at the last accepting state */
+ private int zzMarkedPos;
+
+ /** the current text position in the buffer */
+ private int zzCurrentPos;
+
+ /** startRead marks the beginning of the yytext() string in the buffer */
+ private int zzStartRead;
+
+ /** endRead marks the last character in the buffer, that has been read
+ from input */
+ private int zzEndRead;
+
+ /**
+ * zzAtBOL == true <=> the scanner is currently at the beginning of a line
+ */
+ private boolean zzAtBOL = true;
+
+ /** zzAtEOF == true <=> the scanner is at the EOF */
+ private boolean zzAtEOF;
+
+ /** denotes if the user-EOF-code has already been executed */
+ private boolean zzEOFDone;
+
+--- user class code
+
+--- constructor declaration
+
+ public final int getTokenStart() {
+ return zzStartRead;
+ }
+
+ public final int getTokenEnd() {
+ return getTokenStart() + yylength();
+ }
+
+ public void reset(CharSequence buffer, int start, int end, int initialState) {
+ zzBuffer = buffer;
+ zzCurrentPos = zzMarkedPos = zzStartRead = start;
+ zzAtEOF = false;
+ zzAtBOL = true;
+ zzEndRead = end;
+ yybegin(initialState);
+ }
+
+ /**
+ * Refills the input buffer.
+ *
+ * @return {@code false}, iff there was new input.
+ *
+ * @exception java.io.IOException if any I/O-Error occurs
+ */
+ private boolean zzRefill() throws java.io.IOException {
+ return true;
+ }
+
+
+ /**
+ * Returns the current lexical state.
+ */
+ public final int yystate() {
+ return zzLexicalState;
+ }
+
+
+ /**
+ * Enters a new lexical state
+ *
+ * @param newState the new lexical state
+ */
+ public final void yybegin(int newState) {
+ zzLexicalState = newState;
+ }
+
+
+ /**
+ * Returns the text matched by the current regular expression.
+ */
+ public final CharSequence yytext() {
+ return zzBuffer.subSequence(zzStartRead, zzMarkedPos);
+ }
+
+
+ /**
+ * Returns the character at position {@code pos} from the
+ * matched text.
+ *
+ * It is equivalent to yytext().charAt(pos), but faster
+ *
+ * @param pos the position of the character to fetch.
+ * A value from 0 to yylength()-1.
+ *
+ * @return the character at position pos
+ */
+ public final char yycharat(int pos) {
+ return zzBuffer.charAt(zzStartRead+pos);
+ }
+
+
+ /**
+ * Returns the length of the matched text region.
+ */
+ public final int yylength() {
+ return zzMarkedPos-zzStartRead;
+ }
+
+
+ /**
+ * Reports an error that occurred while scanning.
+ *
+ * In a wellformed scanner (no or only correct usage of
+ * yypushback(int) and a match-all fallback rule) this method
+ * will only be called with things that "Can't Possibly Happen".
+ * If this method is called, something is seriously wrong
+ * (e.g. a JFlex bug producing a faulty scanner etc.).
+ *
+ * Usual syntax/scanner level error handling should be done
+ * in error fallback rules.
+ *
+ * @param errorCode the code of the errormessage to display
+ */
+--- zzScanError declaration
+ String message;
+ try {
+ message = ZZ_ERROR_MSG[errorCode];
+ }
+ catch (ArrayIndexOutOfBoundsException e) {
+ message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
+ }
+
+--- throws clause
+ }
+
+
+ /**
+ * Pushes the specified amount of characters back into the input stream.
+ *
+ * They will be read again by then next call of the scanning method
+ *
+ * @param number the number of characters to be read again.
+ * This number must not be greater than yylength()!
+ */
+--- yypushback decl (contains zzScanError exception)
+ if ( number > yylength() )
+ zzScanError(ZZ_PUSHBACK_2BIG);
+
+ zzMarkedPos -= number;
+ }
+
+
+--- zzDoEOF
+ /**
+ * Resumes scanning until the next regular expression is matched,
+ * the end of input is encountered or an I/O-Error occurs.
+ *
+ * @return the next token
+ * @exception java.io.IOException if any I/O-Error occurs
+ */
+--- yylex declaration
+ int zzInput;
+ int zzAction;
+
+ // cached fields:
+ int zzCurrentPosL;
+ int zzMarkedPosL;
+ int zzEndReadL = zzEndRead;
+ CharSequence zzBufferL = zzBuffer;
+
+--- local declarations
+
+ while (true) {
+ zzMarkedPosL = zzMarkedPos;
+
+--- start admin (line, char, col count)
+ zzAction = -1;
+
+ zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
+
+--- start admin (lexstate etc)
+
+ zzForAction: {
+ while (true) {
+
+--- next input, line, col, char count, next transition, isFinal action
+ zzAction = zzState;
+ zzMarkedPosL = zzCurrentPosL;
+--- line count update
+ }
+
+ }
+ }
+
+ // store back cached position
+ zzMarkedPos = zzMarkedPosL;
+--- char count update
+
+ if (zzInput == YYEOF && zzStartRead == zzCurrentPos) {
+ zzAtEOF = true;
+--- eofvalue
+ }
+ else {
+--- actions
+ default:
+--- no match
+ }
+ }
+ }
+ }
+
+--- main
+
+}
diff --git a/sd-plugin/src/main/resources/flex/jflex-1.7.0-2.jar b/sd-plugin/src/main/resources/flex/jflex-1.7.0-2.jar
new file mode 100644
index 00000000000..c152c2c3384
--- /dev/null
+++ b/sd-plugin/src/main/resources/flex/jflex-1.7.0-2.jar
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/document_icon.png b/sd-plugin/src/main/resources/icons/document_icon.png
new file mode 100644
index 00000000000..497c218ab91
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/document_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/document_summary_icon.png b/sd-plugin/src/main/resources/icons/document_summary_icon.png
new file mode 100644
index 00000000000..72f42c68902
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/document_summary_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/first_phase_icon.png b/sd-plugin/src/main/resources/icons/first_phase_icon.png
new file mode 100644
index 00000000000..18f24e9e462
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/first_phase_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/imported_field_icon.png b/sd-plugin/src/main/resources/icons/imported_field_icon.png
new file mode 100644
index 00000000000..1ec9b1d6a96
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/imported_field_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/macro_icon.png b/sd-plugin/src/main/resources/icons/macro_icon.png
new file mode 100644
index 00000000000..736d8168119
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/macro_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/override_macro_icon.png b/sd-plugin/src/main/resources/icons/override_macro_icon.png
new file mode 100644
index 00000000000..ae9e2636798
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/override_macro_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/sd_icon.png b/sd-plugin/src/main/resources/icons/sd_icon.png
new file mode 100644
index 00000000000..1c96aaee633
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/sd_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/struct_field_icon.png b/sd-plugin/src/main/resources/icons/struct_field_icon.png
new file mode 100644
index 00000000000..7f5074630d4
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/struct_field_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/struct_icon.png b/sd-plugin/src/main/resources/icons/struct_icon.png
new file mode 100644
index 00000000000..c2f6fdc8440
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/struct_icon.png
Binary files differ
diff --git a/sd-plugin/src/main/resources/icons/summary_def_icon.png b/sd-plugin/src/main/resources/icons/summary_def_icon.png
new file mode 100644
index 00000000000..a8faf12601f
--- /dev/null
+++ b/sd-plugin/src/main/resources/icons/summary_def_icon.png
Binary files differ