summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Finnemann Jensen <jopsen@gmail.com>2010-10-28 23:59:35 +0200
committerJonas Finnemann Jensen <jopsen@gmail.com>2010-10-28 23:59:35 +0200
commit5ec8ccbee30e4e6277fb1df68ae8d648ea8bf64a (patch)
tree13fcd8ec58f3fbee5d4b5384ca5f8523ee742388
parent2a458260e4bc014b3be769fa75c5ed1886dcb360 (diff)
Updating todo-file for visual editor, and adding graph dump script
-rw-r--r--readme.md72
-rw-r--r--starmath/visual-editor-todo44
-rwxr-xr-xstarmath/workben/smath-dump-watch.sh26
3 files changed, 70 insertions, 72 deletions
diff --git a/readme.md b/readme.md
deleted file mode 100644
index 16301fc1b6..0000000000
--- a/readme.md
+++ /dev/null
@@ -1,72 +0,0 @@
-Visual Formula Editor for LibreOffice Math
-==========================================
-
-This repository facilitates development of a visual formula editor
-for LibreOffice/OpenOffice Math. This work was started by me (Jonas
- Finnemann Jensen) during GSoC 2010 with Go-OO. During development
-this repository will be merged with libreoffice/writer on a random
-basis, but will hopefully at some point be merged back into
-LibreOffice.
-
-Description of the GSoC project that started this, be found
-[here](http://www.freedesktop.org/wiki/Software/ooo-build/SummerOfCode/2010/Jonas).
-Please note that this page will not be updated futher, but it does
-contain relevant information about the project and discusses the
-implementation strategy. I might also post progress updates on
-[my blog](http://jopsen.dk/blog/category/computer/openoffice/).
-But the project status will be documented and updated in this file, see below.
-
-Videos of the patch in action can be found at:
-
- * [Development Preview 3 (13th of August)](http://www.youtube.com/watch?v=3foNqKYAlYY)
- * [Development Preview 2 (26th of July)](http://www.youtube.com/watch?v=tELPgJIC1sg)
- * [Development Preview 1 (21th of July)](http://www.youtube.com/watch?v=W8yXyDiIQPc)
-
-(All videos can also be found [here](http://jopsen.dk/downloads/GSoC2010/Videos/) better quality and various formats).
-
-If you're interested in more technical details the source (that I've
-written) is extensively documented with doxygen comments. You're also
-welcome to [contact me](http://jopsen.dk/blog/about/) with any
-questions, or wish to help hacking. My email is <jopsen@gmail.com>
-and I'm jopsen on #LibreOffice (if I'm online), there's also a finite
-set of [other options](http://jopsen.dk/blog/about/).
-
-Project Status
-==============
-*This is basically my todo list, so don't be surprised if things are not immediately obvious.*
-
-Easy
-----
-1. Draw a non-blinking line under the the visual line that the caret is in, in `SmCaretDrawingVisitor`.
-2. `SmGraphicWindow::KeyInput` relies on comparison of `sal_Char`, a better way must be available for CTRL+c
-3. Code style (missing spaces, linebreaks and a few renames)
-4. More documentation
-5. Replace `j_assert` with `DBG_ASSERT`
-
-Medium
-------
-1. `SmCursor::InsertCol()` method for added columns to matrices should be implemented.
-2. `SmCursor` should support deletion of lines, rows, cols and sub-/superscripts.
-3. `SmCursor::InsertSubSup()` should wrap the body in a `SmBraceNode` if the body is an `SmOperNode`, `SmBinVerNode`, etc.
-4. Make caret in visual editor blink.
-5. Don't draw visual editor caret, when `SmGraphicWindow` doesn't have focus.
-6. When OpenOffice Math runs in standalone mode it centers the current formula, this is not nice for visual editing.
-
-Complex
--------
-1. `SmAlignNode` and `SmFontNode` are ignored by visual editor, figure out how these should work.
-2. Solve the flickering issue when drawing formulas (See e-mail)
-3. Make " a shortcut for creating an `SmTextNode` with `FNT_TEXT`, also check that `SmNodeToTextVisitor` supports this.
-4. `parse.cxx` merges multiple blanks into one `SmBlankNode`, the visual editor doesn't...
-
-Complex and non-essential
--------------------------
-1. Global clipboard integration
-2. Support undo/redo with `UndoManager` integration
-3. Consider improving GUI for "Formula Elements"-dialog, most buttons work with visual editor
-4. Consider allowing users to enter commands in visual editor, by prefixing the command...
-5. Optimize things, for instance `SmCursor::AnnotateSelection()` is called way too many places...
-6. Improve handling of `MoveUp` and `MoveDown` in `SmCursor::Move`, `SmCaretPos2LineVisitor` might need improvement.
-
-Items are organized by complexity and importance, and I'm not sure everything needs to be addressed
-before release, but it constitutes a list of things I can work on.
diff --git a/starmath/visual-editor-todo b/starmath/visual-editor-todo
new file mode 100644
index 0000000000..027140f0e2
--- /dev/null
+++ b/starmath/visual-editor-todo
@@ -0,0 +1,44 @@
+Visual Formula Editor for LibreOffice Math
+==========================================
+
+This file contains a list of things to do for the visual formula editor.
+The visual formula editor hack was started by Jonas during GSoC...
+He is, as of writing this, still working on this features, but do by all
+means feel free to help out.
+
+Here is the list of things to be done. They are organized by complexity and necessity, note that
+some of the items are wishful thinking... If you have questions please feel free to ping me (Jonas)
+on IRC (jopsen) or e-mail me at jopsen@gmail.com.
+
+Easy
+----
+1. Draw a non-blinking line under the visual line that the caret is in, in SmCaretDrawingVisitor.
+2. SmGraphicWindow::KeyInput relies on comparison of sal_Char, a better way must be available for CTRL+c
+3. Code style (missing spaces, linebreaks and a few renames)
+4. More documentation
+5. Replace j_assert with DBG_ASSERT (don't do this yet).
+
+Medium
+------
+1. SmCursor::InsertCol() method for added columns to matrices should be implemented.
+2. SmCursor` should support deletion of lines, rows, cols and sub-/superscripts.
+3. SmCursor::InsertSubSup() should wrap the body in a SmBraceNode if the body is an SmOperNode, SmBinVerNode, etc.
+4. Make caret in visual editor blink.
+5. Don't draw visual editor caret, when SmGraphicWindow doesn't have focus.
+6. When OpenOffice Math runs in standalone mode it centers the current formula, this is not nice for visual editing.
+
+Complex
+-------
+1. SmAlignNode and SmFontNode are ignored by visual editor, figure out how these should work.
+2. Solve the flickering issue when drawing formulas (See dev@gsl.OpenOffice.org)
+3. Make " a shortcut for creating an SmTextNode with FNT_TEXT, also check that SmNodeToTextVisitor supports this.
+4. parse.cxx merges multiple blanks into one SmBlankNode, the visual editor doesn't...
+
+Complex and non-essential
+-------------------------
+1. Global clipboard integration
+2. Support undo/redo with UndoManager integration
+3. Consider improving GUI for "Formula Elements"-dialog, most buttons work with visual editor
+4. Consider allowing users to enter commands in visual editor, by prefixing the command...
+5. Optimize things, for instance SmCursor::AnnotateSelection() is called way too many places...
+6. Improve handling of MoveUp and MoveDown in SmCursor::Move, SmCaretPos2LineVisitor might need improvement.
diff --git a/starmath/workben/smath-dump-watch.sh b/starmath/workben/smath-dump-watch.sh
new file mode 100755
index 0000000000..6ca1b0c703
--- /dev/null
+++ b/starmath/workben/smath-dump-watch.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+
+# Watches for formula dumps by starmath and renders them
+# If starmath is compiled with the macro DEBUG_ENABLE_DUMPASDOT defined.
+# shift+enter, in the visual formula editor will make starmath dump a
+# graphviz graph of the formula tree structure. This is very useful when
+# debugging. The formula is dumped to /tmp/smath-dump.gv-
+# This script monitors this file and renders the graph when written,
+# after which the formula is displayed using feh.
+#
+# Usage: Let this script run in the background, e.g. start it in a terminal
+# (and don't close the terminal). Then compile starmath with DEBUG_ENABLE_DUMPASDOT
+# defined, use the visual formula editor to write something and hit shift+enter.
+#
+# Note: This won't work on Windows as the /tmp/ folder will be missing.
+#
+# Author: "Jonas Finnemann Jensen" <jopsen@gmail.com>
+
+touch /tmp/smath-dump.gv;
+while inotifywait -q -e close_write /tmp/smath-dump.gv;
+do
+ dot -Tpng < /tmp/smath-dump.gv > /tmp/smath-dump.png; > /dev/null
+ kill `pidof -s feh`; > /dev/null
+ feh /tmp/smath-dump.png & > /dev/null
+done