You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@corinthia.apache.org by pm...@apache.org on 2015/04/24 18:18:09 UTC

[42/55] [abbrv] incubator-corinthia git commit: Desktop app: Basic infrastructure for Editor lib

Desktop app: Basic infrastructure for Editor lib

This commit sets up the basic architecture for a functional editor
implemented as a Qt app. While it currently does not have the necessary
facilities to actually edit documents, it lays the groundwork by
providing a web view injected with the javascript editing library, and a
C++ interface to interact with this library.

See JSInterface.h for information about how the interaction between the
two languages works. Essentially, this file contains a series of classes
containing methods which call through to the corresponding functions in
javascript. These methods handle marshalling of arguments from Qt types
to JSON types, and similarly in the other direction for return values.

A callback interface is also provided to allow JS code to cause C++
functions to be invoked in response to certain events occurring, like
the cursor moving (and thus requiring redisplay).

The user interface is very bare-bones and incomplete; it simply contains
a web view, loaded at startup with a sample document, and buttons to
invoke various functions in the editor library like inserting/deleting
characters and moving the cursor. These are intended not for actual
usage, but as demonstrations of how to invoke JS methods from Qt even
callbacks ("slots"). Functionality to open and save documents is also
absent.

Currently this only builds on OS X, but that's an issue with the CMake
config files which, once fixed, should enable building on Linux and
Windows as well.


Project: http://git-wip-us.apache.org/repos/asf/incubator-corinthia/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-corinthia/commit/23c028c7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-corinthia/tree/23c028c7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-corinthia/diff/23c028c7

Branch: refs/heads/stable
Commit: 23c028c72feb131aeee3629fb179eac8a900ad3f
Parents: 9714877
Author: Peter Kelly <pe...@uxproductivity.com>
Authored: Sun Apr 12 00:42:06 2015 +0700
Committer: Peter Kelly <pe...@uxproductivity.com>
Committed: Sun Apr 12 00:42:06 2015 +0700

----------------------------------------------------------------------
 consumers/corinthia/.gitignore          |    1 +
 consumers/corinthia/Doxyfile            | 2331 ++++++++++++++++++++++++++
 consumers/corinthia/res/sample.html     |  395 +++++
 consumers/corinthia/src/CMakeLists.txt  |   35 +-
 consumers/corinthia/src/Editor.cpp      |  296 ++++
 consumers/corinthia/src/Editor.h        |   35 +
 consumers/corinthia/src/JSInterface.cpp | 1307 +++++++++++++++
 consumers/corinthia/src/JSInterface.h   |  478 ++++++
 consumers/corinthia/src/MainWindow.cpp  |  101 ++
 consumers/corinthia/src/MainWindow.h    |   42 +
 consumers/corinthia/src/Toolbar.cpp     |   50 +
 consumers/corinthia/src/Toolbar.h       |   49 +
 consumers/corinthia/src/desktop.cpp     |   53 -
 consumers/corinthia/src/desktop.ui      |   72 -
 consumers/corinthia/src/editWindows.h   |   36 -
 consumers/corinthia/src/main.cpp        |   15 +-
 16 files changed, 5118 insertions(+), 178 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/23c028c7/consumers/corinthia/.gitignore
----------------------------------------------------------------------
diff --git a/consumers/corinthia/.gitignore b/consumers/corinthia/.gitignore
new file mode 100644
index 0000000..8e695ec
--- /dev/null
+++ b/consumers/corinthia/.gitignore
@@ -0,0 +1 @@
+doc