Katoob status report (Tuesday March 18, 2003) No, Katoob is neither dead nor the development is slow. Katoob has undergone a serious and Major rewrite for the core, document handlers, GUI handlers. The CVS now contains the new code. The new code is mainly based upon the GtkObject system, The main window -> KatoobWindow: which contains a Normal tool bar, a normal menu bar, And a KatoobStatusbar The katoob status bar is divided into 4 parts The rightmost one is the document save indicator, Then a wide area to display hints, Followed by an area to display the encoding, and lastly a gtkstatusbar to display the current cursor position. The document is handled by a special widget -> KatoobDocument: it takes care of everything related to editing the buffer, undo/redo, All the document components are private and the rest of the application knows nothing about it, It is handled by the functions in KatoobDocument.c ONLY. KatoobDocument manipulates KatoobLabel which contains the labels for the notebook page, Notebook menu & Documents menu. It communicates with the rest of the applications using GSignals, Thus leading to efficiency "the old model was calling the functions directly, So sometimes it ends calling a function more than once". The emulator: An infra structure which enables the addition of new emulator layouts easily. Simply place any emulator file in "$(prefix)/share/katoob/emulator", Restart katoob and voila! The file is added to the emulator menu, which is now combined with the xkeyboard extension menu, the later is not limited to the Arabic and English layout only, It detects all the key maps you have configured the Xserver to use The BiDi support: Almost complete, Right click in the text editing area and either choose the text direction, Or choose automatic to let Katoob apply its BiDi algorithm. No way to disable the BiDi support "removed --disable-bidi", Choose a fixed text direction instead. I can say that the new code worth looking at it ;). It'll probably simplify the future developments, Help implementing new options. Things to be done before the next version: * The emulator is non functional * The interface isn't updated when switching documents * All the status bar components is non functional * The encodings menu has an unknown state!!!!!! * Implement the way to get the default encoding * Some internal functions in KatoobWindow, KatoobStatusbar & KatoobDocument are not implemented * The ability to read from the standard input is non functional/ * The document isn't marked as modified though katoob knows that it is * The spell checker is non functional * The preferences dialog is non functional, Needs a new implementation. * Probably more than i can't remember... * Represent an opened dialog when the user tries to reopen it again * No way to select or modify the default encoding * Move both the HTML numerical reference and the Iran system encoding to an import/export menu "probably they are non functional now", perhaps implement them as plug ins * Re implement the spell checker into the KatoobDocument object * Searching problem "scroll to the match" Things implemented & Bug fixing: * The GtkObject infrastructure "big!", The emulator infrastructure. * Documents line numbers * Combined the core of save, save_as, save_copy into 1 function. * Fixed some memory leaks "probably there are many now due to the rewrite ;)" * Save as adds file to recent menu * Save as changes the document menu label in the documents menu * Fixed choosing not to save on exit doesn't save for that time only! Bugs to be verified: * segfault when opening a non UTF-8 document from the command line * recent menu is saving/loading the files correctly ? Things that may be done before the next version * A plug in interface * Perhaps CVS support * Perhaps syntax highlighting * Font selection dialog * perhaps DnD -- ---------------- -- Katoob Main Developer Linux registered user # 224950 ICQ # 58475622 FIRST make it run, THEN make it run fast "Brian Kernighan".
Attachment:
pgp00005.pgp
Description: PGP signature