[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    kdelibs/kate
From:       Christoph Cullmann <cullmann () kde ! org>
Date:       2005-03-13 11:23:13
Message-ID: 20050313112313.C6F1D1487F () office ! kde ! org
[Download RAW message or body]

CVS commit by cullmann: 

update TODO, after hamishs mail, this is a much more reasonable start for the 3.x/4.x \
TODO list


  M +58 -29    TODO   1.24
  M +3 -0      part/katejscript.cpp   1.10


--- kdelibs/kate/TODO  #1.23:1.24
@@ -1,33 +1,62 @@
-TODO:
 
-For 3.2 and later:
-  - BiDi support !!!
-  - code completion : some keyboard handling fixes including undo
-  - export only selected text
-  - repaint after pending events finished
-
-BiDi implementation overview:
-- QTextLayout performs all of the geometry calculations and saves the information in \
                QTextItems
-- A layout item is assigned to each lineRange (memory management may need work here)
-- The layout object is told of all points where style changes and splits qtextitems \
                as required
-- The paint text line function iterates over qtextitems, sets the right style, draws \
                the text, and any additional decorations we wish for
-
-BiDi Status:
-- Layouting
-  - mostly implemented for word wrap mode, not started for non-wrap mode
-    - some problems with range() function?
-  - style breaking complete
-  - word wrap not playing nicely yet
-
-- Painting
-  - Basic text drawing and attributes done
-  - Bugs with wrapped text and attribute painting, esp. background (? offsets)
+**** Refactoring/Cleanups ****
 
-- Cursor movement and translation ported over to QText* methods
-  - some bugs with word wrapping and remembering x position
+* Rename KateTextCursor -> KateCursor (don't think the "text" adds anything, and
+  it's more consistent with KateRange)
 
-- Also added space symbol drawing, similar to tab symbol drawing
-  - make configurable
+* KateLineRange to become a proper class with methods etc.  Parts needed for
+  bidi.
 
-Short-term todo list:
-- repaint triggering rewrite
+* KateViewInternal to be completely hidden from view for almost everything but
+  the view itself.
+
+  -> in progress, almost done for most parts, viewinternal only visible to friends \
of KateView +
+* Separate more functionality from KateDocument (selections moving to KateView,
+  a plugin manager class, a config class, etc)
+
+  -> in progress, config classes already in place
+
+**** new features ****
+
+* Fix EOL whitespace cleaning finally by removing whitespace at load-time and
+  keeping the document consistent all the time
+
+* BiDi finally, using Scribe
+
+* Finally implement arbitrary highlighting and arbitrary input filtering
+
+* Switch internal highlighting to use arbitrary highlighting api and thus be
+  exposed (read-only)
+
+* Buffer locking (Per-line or per-group-of-lines) for multithreaded access
+
+* More robust history including cursor position history
+
+* More featureful code completion including syntax highlighted entries
+
+* Custom widgets in between lines interface (eg. so kcachegrind could use
+  katepart to display its cpu usage information etc)
+
+* KateFoldingTree* to use smart cursors
+
+* Splitting a view over multiple columns (I want to by a 30" apple display ;)
+
+* Modular input subsystem, to support emulation of other editors in a clean way
+
+* Improved input modes especially in block selection
+
+* Multiple selection support
+
+* Better support for information overlay (eg. documentation of a function -
+  switch between short / detailed descriptions)
+
+* Whatever else is needed for multiuser editing (and perhaps put most of it
+  inside the part, so eg. kate, kdevelop, quanta etc. could all use it)
+
+* Scripting (we don't have any yet do we?)
+
+  -> in progress, part gets kjs support, already working, but API needs to be
+     finished and a clever way to let scripts register for the katecmdline needs to
+     be implemented, with caching and all other cool things the world doesn'T or \
does +     need
\ No newline at end of file

--- kdelibs/kate/part/katejscript.cpp  #1.9:1.10
@@ -175,4 +175,7 @@ bool KateJScript::execute (KateDocument 
 /* Source for KateJSDocumentProtoTable.
 @begin KateJSDocumentProtoTable 15
+#
+# edit interface stuff + editBegin/End, this is nice start
+#
   fullText       KateJSDocument::FullText      DontDelete|Function 0
   text           KateJSDocument::Text          DontDelete|Function 4


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic