//
+/// without harming the runtime.
+///
+#define ANTLR3_PRINTF printf
+#endif
+
+#ifndef ANTLR3_FPRINTF
+/// Default definition of fprintf, set this to something other than fprintf before including antlr3.h
+/// if your system does not have a fprintf. Note that you can define this to be //
+/// without harming the runtime.
+///
+#define ANTLR3_FPRINTF fprintf
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ANTLR3_API pANTLR3_INT_TRIE antlr3IntTrieNew (ANTLR3_UINT32 depth);
+
+ANTLR3_API pANTLR3_BITSET antlr3BitsetNew (ANTLR3_UINT32 numBits);
+ANTLR3_API pANTLR3_BITSET antlr3BitsetOf (ANTLR3_INT32 bit, ...);
+ANTLR3_API pANTLR3_BITSET antlr3BitsetList (pANTLR3_HASH_TABLE list);
+ANTLR3_API pANTLR3_BITSET antlr3BitsetCopy (pANTLR3_BITSET_LIST blist);
+ANTLR3_API pANTLR3_BITSET antlr3BitsetLoad (pANTLR3_BITSET_LIST blist);
+ANTLR3_API void antlr3BitsetSetAPI (pANTLR3_BITSET bitset);
+
+
+ANTLR3_API pANTLR3_BASE_RECOGNIZER antlr3BaseRecognizerNew (ANTLR3_UINT32 type, ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state);
+ANTLR3_API void antlr3RecognitionExceptionNew (pANTLR3_BASE_RECOGNIZER recognizer);
+ANTLR3_API void antlr3MTExceptionNew (pANTLR3_BASE_RECOGNIZER recognizer);
+ANTLR3_API void antlr3MTNExceptionNew (pANTLR3_BASE_RECOGNIZER recognizer);
+ANTLR3_API pANTLR3_HASH_TABLE antlr3HashTableNew (ANTLR3_UINT32 sizeHint);
+ANTLR3_API ANTLR3_UINT32 antlr3Hash (void * key, ANTLR3_UINT32 keylen);
+ANTLR3_API pANTLR3_HASH_ENUM antlr3EnumNew (pANTLR3_HASH_TABLE table);
+ANTLR3_API pANTLR3_LIST antlr3ListNew (ANTLR3_UINT32 sizeHint);
+ANTLR3_API pANTLR3_VECTOR_FACTORY antlr3VectorFactoryNew (ANTLR3_UINT32 sizeHint);
+ANTLR3_API pANTLR3_VECTOR antlr3VectorNew (ANTLR3_UINT32 sizeHint);
+ANTLR3_API pANTLR3_STACK antlr3StackNew (ANTLR3_UINT32 sizeHint);
+ANTLR3_API void antlr3SetVectorApi (pANTLR3_VECTOR vector, ANTLR3_UINT32 sizeHint);
+ANTLR3_API ANTLR3_UCHAR antlr3c8toAntlrc (ANTLR3_INT8 inc);
+ANTLR3_API pANTLR3_TOPO antlr3TopoNew();
+
+ANTLR3_API pANTLR3_EXCEPTION antlr3ExceptionNew (ANTLR3_UINT32 exception, void * name, void * message, ANTLR3_BOOLEAN freeMessage);
+
+
+ANTLR3_API pANTLR3_INPUT_STREAM antlr3FileStreamNew (pANTLR3_UINT8 fileName, ANTLR3_UINT32 encoding);
+ANTLR3_API pANTLR3_INPUT_STREAM antlr3StringStreamNew (pANTLR3_UINT8 data, ANTLR3_UINT32 encoding, ANTLR3_UINT32 size, pANTLR3_UINT8 name);
+
+ANTLR3_API pANTLR3_INT_STREAM antlr3IntStreamNew (void);
+
+ANTLR3_API pANTLR3_STRING_FACTORY antlr3StringFactoryNew (ANTLR3_UINT32 encoding);
+
+ANTLR3_API pANTLR3_COMMON_TOKEN antlr3CommonTokenNew (ANTLR3_UINT32 ttype);
+ANTLR3_API pANTLR3_TOKEN_FACTORY antlr3TokenFactoryNew (pANTLR3_INPUT_STREAM input);
+ANTLR3_API void antlr3SetTokenAPI (pANTLR3_COMMON_TOKEN token);
+
+ANTLR3_API pANTLR3_LEXER antlr3LexerNewStream (ANTLR3_UINT32 sizeHint, pANTLR3_INPUT_STREAM input, pANTLR3_RECOGNIZER_SHARED_STATE state);
+ANTLR3_API pANTLR3_LEXER antlr3LexerNew (ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state);
+ANTLR3_API pANTLR3_PARSER antlr3ParserNewStreamDbg (ANTLR3_UINT32 sizeHint, pANTLR3_TOKEN_STREAM tstream, pANTLR3_DEBUG_EVENT_LISTENER dbg, pANTLR3_RECOGNIZER_SHARED_STATE state);
+ANTLR3_API pANTLR3_PARSER antlr3ParserNewStream (ANTLR3_UINT32 sizeHint, pANTLR3_TOKEN_STREAM tstream, pANTLR3_RECOGNIZER_SHARED_STATE state);
+ANTLR3_API pANTLR3_PARSER antlr3ParserNew (ANTLR3_UINT32 sizeHint, pANTLR3_RECOGNIZER_SHARED_STATE state);
+
+ANTLR3_API pANTLR3_COMMON_TOKEN_STREAM antlr3CommonTokenStreamSourceNew (ANTLR3_UINT32 hint, pANTLR3_TOKEN_SOURCE source);
+ANTLR3_API pANTLR3_COMMON_TOKEN_STREAM antlr3CommonTokenStreamNew (ANTLR3_UINT32 hint);
+ANTLR3_API pANTLR3_COMMON_TOKEN_STREAM antlr3CommonTokenDebugStreamSourceNew (ANTLR3_UINT32 hint, pANTLR3_TOKEN_SOURCE source, pANTLR3_DEBUG_EVENT_LISTENER debugger);
+
+ANTLR3_API pANTLR3_BASE_TREE_ADAPTOR ANTLR3_TREE_ADAPTORNew (pANTLR3_STRING_FACTORY strFactory);
+ANTLR3_API pANTLR3_BASE_TREE_ADAPTOR ANTLR3_TREE_ADAPTORDebugNew (pANTLR3_STRING_FACTORY strFactory, pANTLR3_DEBUG_EVENT_LISTENER debugger);
+ANTLR3_API pANTLR3_COMMON_TREE antlr3CommonTreeNew (void);
+ANTLR3_API pANTLR3_COMMON_TREE antlr3CommonTreeNewFromTree (pANTLR3_COMMON_TREE tree);
+ANTLR3_API pANTLR3_COMMON_TREE antlr3CommonTreeNewFromToken (pANTLR3_COMMON_TOKEN tree);
+ANTLR3_API pANTLR3_ARBORETUM antlr3ArboretumNew (pANTLR3_STRING_FACTORY factory);
+ANTLR3_API void antlr3SetCTAPI (pANTLR3_COMMON_TREE tree);
+ANTLR3_API pANTLR3_BASE_TREE antlr3BaseTreeNew (pANTLR3_BASE_TREE tree);
+
+ANTLR3_API void antlr3BaseTreeAdaptorInit (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_DEBUG_EVENT_LISTENER debugger);
+
+ANTLR3_API pANTLR3_TREE_PARSER antlr3TreeParserNewStream (ANTLR3_UINT32 sizeHint, pANTLR3_COMMON_TREE_NODE_STREAM ctnstream, pANTLR3_RECOGNIZER_SHARED_STATE state);
+
+ANTLR3_API ANTLR3_INT32 antlr3dfaspecialTransition (void * ctx, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_INT_STREAM is, pANTLR3_CYCLIC_DFA dfa, ANTLR3_INT32 s);
+ANTLR3_API ANTLR3_INT32 antlr3dfaspecialStateTransition (void * ctx, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_INT_STREAM is, pANTLR3_CYCLIC_DFA dfa, ANTLR3_INT32 s);
+ANTLR3_API ANTLR3_INT32 antlr3dfapredict (void * ctx, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_INT_STREAM is, pANTLR3_CYCLIC_DFA cdfa);
+
+ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM antlr3CommonTreeNodeStreamNewTree (pANTLR3_BASE_TREE tree, ANTLR3_UINT32 hint);
+ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM antlr3CommonTreeNodeStreamNew (pANTLR3_STRING_FACTORY strFactory, ANTLR3_UINT32 hint);
+ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM antlr3UnbufTreeNodeStreamNewTree (pANTLR3_BASE_TREE tree, ANTLR3_UINT32 hint);
+ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM antlr3UnbufTreeNodeStreamNew (pANTLR3_STRING_FACTORY strFactory, ANTLR3_UINT32 hint);
+ANTLR3_API pANTLR3_COMMON_TREE_NODE_STREAM antlr3CommonTreeNodeStreamNewStream (pANTLR3_COMMON_TREE_NODE_STREAM inStream);
+ANTLR3_API pANTLR3_TREE_NODE_STREAM antlr3TreeNodeStreamNew ();
+ANTLR3_API void fillBufferExt (pANTLR3_COMMON_TOKEN_STREAM tokenStream);
+
+ANTLR3_API pANTLR3_REWRITE_RULE_TOKEN_STREAM
+ antlr3RewriteRuleTOKENStreamNewAE (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description);
+ANTLR3_API pANTLR3_REWRITE_RULE_TOKEN_STREAM
+ antlr3RewriteRuleTOKENStreamNewAEE (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, void * oneElement);
+ANTLR3_API pANTLR3_REWRITE_RULE_TOKEN_STREAM
+ antlr3RewriteRuleTOKENStreamNewAEV (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, pANTLR3_VECTOR vector);
+
+ANTLR3_API pANTLR3_REWRITE_RULE_NODE_STREAM
+ antlr3RewriteRuleNODEStreamNewAE (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description);
+ANTLR3_API pANTLR3_REWRITE_RULE_NODE_STREAM
+ antlr3RewriteRuleNODEStreamNewAEE (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, void * oneElement);
+ANTLR3_API pANTLR3_REWRITE_RULE_NODE_STREAM
+ antlr3RewriteRuleNODEStreamNewAEV (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, pANTLR3_VECTOR vector);
+
+ANTLR3_API pANTLR3_REWRITE_RULE_SUBTREE_STREAM
+ antlr3RewriteRuleSubtreeStreamNewAE (pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description);
+ANTLR3_API pANTLR3_REWRITE_RULE_SUBTREE_STREAM
+ antlr3RewriteRuleSubtreeStreamNewAEE(pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, void * oneElement);
+ANTLR3_API pANTLR3_REWRITE_RULE_SUBTREE_STREAM
+ antlr3RewriteRuleSubtreeStreamNewAEV(pANTLR3_BASE_TREE_ADAPTOR adaptor, pANTLR3_BASE_RECOGNIZER rec, pANTLR3_UINT8 description, pANTLR3_VECTOR vector);
+
+ANTLR3_API pANTLR3_DEBUG_EVENT_LISTENER antlr3DebugListenerNew();
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _ANTLR3DEFS_H */
diff --git a/depends/antlr3c/antlr3encodings.h b/depends/antlr3c/antlr3encodings.h
new file mode 100644
index 0000000..f706735
--- /dev/null
+++ b/depends/antlr3c/antlr3encodings.h
@@ -0,0 +1,38 @@
+#ifndef _ANTLR3_ENCODINGS_H
+#define _ANTLR3_ENCODINGS_H
+
+// [The "BSD licence"]
+// Copyright (c) 2005-2009 Jim Idle, Temporal Wave LLC
+// http://www.temporal-wave.com
+// http://www.linkedin.com/in/jimidle
+//
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions
+// are met:
+// 1. Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// 2. Redistributions in binary form must reproduce the above copyright
+// notice, this list of conditions and the following disclaimer in the
+// documentation and/or other materials provided with the distribution.
+// 3. The name of the author may not be used to endorse or promote products
+// derived from this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+#include Change Log
v0.3.0(Integrator)
+ +v0.3.1 (Integrator)
Common changes
-Now it made in tex format
There was possibility to make tool crashed, when working with tabs
SCg-editor
-Now if drag file on sc.g-node, then that file will be set as content
Sometimes it crashes tool
Now if you drag two sc.g-nodes with sc.g-pair into sc.g-contour, then sc.g-pair also will be added into sc.g-contour
Now you can clone selected objects by Shift + mouse dragging
For now there are two commands: select input/output sc.g-pairs, select subgraph
They moved into specified directory
They moved into separate directory, and class names was changed
Now it supports common types of objects
Now it draws with rounded corners
Now it draws with mark in left top corner
Disabled calling of context menu with keyboard
M4Scp editor
-SCg-editor
+SCs editor
-It also parse included files and add identifiers from them
v0.3.1 (Integrator)
+Common changes
+Now you can create projects like in VisualStudio, QtCreator and etc.
Now if file already opened, then it makes tab active
SCg-editor
+Now arcs/edges has no idents from nodes, and correctly draws when they output or input for other one
SCs editor
+Less lines changes in diff's
v0.3.0 (Integrator)
+Common changes
+Now it made in tex format
There was possibility to make tool crashed, when working with tabs
SCg-editor
+Now if drag file on sc.g-node, then that file will be set as content
Sometimes it crashes tool
Now if you drag two sc.g-nodes with sc.g-pair into sc.g-contour, then sc.g-pair also will be added into sc.g-contour
Now you can clone selected objects by Shift + mouse dragging
For now there are two commands: select input/output sc.g-pairs, select subgraph
They moved into specified directory
They moved into separate directory, and class names was changed
Now it supports common types of objects
Now it draws with rounded corners
Now it draws with mark in left top corner
Disabled calling of context menu with keyboard
M4Scp editor
+SCs editor
+It also parse included files and add identifiers from them
v0.2.1(Opener)
Common changes
-Now it works with windows 7
SCg-editor changes
-It allow to arrange any node, that have bus with output or input pairs
Now you can just drag fiel into window to create node with content of this file
Any object, that draged into contour will be added into it. Any object that dragged from contour will be removed from it
Now all supported formats showed, when you select image content with dialog
Added maximum and minimum ranges. Invalid values hightlight added.
Context menu opened each time, when user try to remove last point
When apply arranger (grid) not all pairs calculates normaly, when they starts (finished) from any line object like bus or other pair
Common changes
+Now it works with windows 7
SCg-editor changes
+It allow to arrange any node, that have bus with output or input pairs
Now you can just drag fiel into window to create node with content of this file
Any object, that draged into contour will be added into it. Any object that dragged from contour will be removed from it
Now all supported formats showed, when you select image content with dialog
Added maximum and minimum ranges. Invalid values hightlight added.
Context menu opened each time, when user try to remove last point
When apply arranger (grid) not all pairs calculates normaly, when they starts (finished) from any line object like bus or other pair
v0.2.0(Opener)
Common changes
-It wasn't possible to export into image before document saving
SCg-editor changes
-It wasn't possible to create bus from node, after another bus (from that node) deletion
Bus associated to node wans't delete
Common changes
+It wasn't possible to export into image before document saving
SCg-editor changes
+It wasn't possible to create bus from node, after another bus (from that node) deletion
Bus associated to node wans't delete
v0.2.0 rc1 (Opener)
Common changes
-SCg-editor changes
-Some of arcs wasn't work correctly in contours
Now type changing menu have hierarhy structure. That structure depends on possible types
Common changes
+SCg-editor changes
+Some of arcs wasn't work correctly in contours
Now type changing menu have hierarhy structure. That structure depends on possible types
v0.1.3 (Trailblazer)
Common changes
- -SCg-editor changes
-Content set every time, even on cancel button press
System asked to save file on window close, even it not changed since last save
Not it is impossible to add more that one bus for node
Common changes
+ +SCg-editor changes
+Content set every time, even on cancel button press
System asked to save file on window close, even it not changed since last save
Not it is impossible to add more that one bus for node
v0.1.2 (Trailblazer)
Common changes
-Now tool makes absolute path to media files based on relative paths on startup
For now name for tabs set correctly
SCg-editor changes
-Tool crashed when moved contour with identifier
For now selected object have fewer z-coordinate and draw above others
Common changes
+Now tool makes absolute path to media files based on relative paths on startup
For now name for tabs set correctly
SCg-editor changes
+Tool crashed when moved contour with identifier
For now selected object have fewer z-coordinate and draw above others
v0.1.1 (Trailblazer)
Common changes
-SCg-editor changes
-It is possible to change type for more than one selected element
Content boundings was wrong after content adding
Background doesn't draw into exported image.
Common changes
+SCg-editor changes
+It is possible to change type for more than one selected element
Content boundings was wrong after content adding
Background doesn't draw into exported image.
v0.1.0 rc1 (Trailblazer)
Common changes
-SCg-editor changes
-Common changes
+SCg-editor changes
+-#ifndef SCSWINDOW_H -#define SCSWINDOW_H +#pragma once + ... -#endif+
QPoint point()- instead of: +
QPoint getPoint()+ instead of: +
QPoint point()
+void MyClass::do(){ ... for (quint32 i = 0; i < 10; i++){ @@ -179,7 +179,7 @@ x += y;Code should not be like this: -+if (x == 0) x = 1; x = 2; x += y; @@ -192,7 +192,7 @@ x = y;Not this: -+Not like this: -if(something) x = y;@@ -203,7 +203,7 @@ an_object->callFunction(x, y, x);+an_object->callFunction (x, y, x);
+Not anything like these: -a = calculate( ( x + y ) * z );@@ -224,7 +224,7 @@ b = doSomething(a, x, y);
+rather than like this: -a = calculate((x+y)*z); b=doSomething(a,x , y);@@ -239,7 +239,7 @@ };
+
class SomeClass
{
public:
diff --git a/docs/license.html b/docs/license.html
index 879220c..ce21496 100644
--- a/docs/license.html
+++ b/docs/license.html
@@ -13,7 +13,7 @@
License Summary
Knowledge Base Editor is released under an open source license,
-specifically the GPL License.
+specifically the MIT License.
Licenses for used 3rd-party libraries
@@ -25,7 +25,7 @@ Qt
-Copyright © 2010 by The OSTIS Team
+
Copyright © 2010-2015 by The OSTIS Team