=============================================== Technical guidelines for mindmap-tool prototype =============================================== :Author: Asko Soukka :Date: $Date: 2003/01/02 14:15:36 $ My goal for 2003 is to start building tool on GZZ for handling my personal notes on GZZ. At first I'll continue my earlier work on mapping mind maps into GZZ-structure and creating views or applitudes for manipulating them. The UI for manipulating mind maps will be base for my Master's Thesis. Mainly for my MT's experimental part I've to build working stand-alone prototype of mind map tool. This document is about technical guidelines for that prototype. GZZ's requirements ================== -------- The Core -------- The core of GZZ is truly platform independent written with such versions of Java (and Jython), which have free implementations available. The size of the core could also be diminished at least under one megabyte, probably into only few hundred kilobytes (older version of GZZ took about 600kb without extension modules). That'll probably be enough for every platform already. Known drawbacks --------------- - The Java Micro Edition don't have a float data type. This could be problem with the smallest devices like with mobile phones. Though, probably it could be emulated well enough. ------------------ Graphical frontend ------------------ The new version of GZZ will have two distinct ways for drawing the graphical frontend. Graphics could still be drawn using an rather old version Java's AWT-graphic library, which have free implementations available. Although, most of the GZZ's new graphical features (e.g. fisheye viewport and generated paper textures) need OpenGL support. Of course those features will be implemented also on AWT as well as it's reasonable. E.g. the fisheye in AWT could affect the size of objects, but don't distort their edges. Known drawbacks --------------- - The OpenGL side is developing fast and is difficult to estimate how its requirements change during year. Currently OpenGL side hardly runs with standard OpenGL and probably some extensions of card manufacturers' will come obligatory for running GZZ with OpenGL. - Currently the OpenGL side is develop under Linux environment and is hard to say how much work is needed to make it run in other platforms. Of course, the platform independecy has alredy taken into account, but because the developing process is still very unfinished, supporting other platforms is not yet current enough. --------------------- Special input devices --------------------- Currently GZZ is mainly used with keyboard and mouse, but it has also been tested with different input devices like joysticks and IR-remote controls. Even the current implementation supports directly only keyboard and mouse, support for other devices can be added. - GZZ can use platform independently all input devices that are supported in Java. - At least in Unix environments all input devices that are correctly configured can be used (because input data from them could be readable like any public file in the system). Although, in many cases there is no need for adding additional support for a new input device, because it replaces some known input device. Touchscreens, for example, can work like mouse when drawing and navigating, or like keyboard when recognizing handwriting. ============================= Mind map -method requirements ============================= - free drawing with pen - A4 most popular size - character recognition - marking associations (parallel, hierarchical, occasiona, clone) ================= Devices available ================= Workstation =========== - big screen - keyboard - mouse or trackball - Linux+OpenGL possible - needs additional digital tablet, but that's not a problem, because workplace is static Laptop computer =============== - big screen - keyboard - mouse replacement (touchscreen, trackball, tap) - probably Linux+OpenGl possible - needs additional digital tablet, which counts more items to carry Tablet PC ========= - touchscreen with pen - big screen - Windows XP for Tablet PC - Linux support unknown, but most probably working OpenGL PDA (Personal Digital Assistant) ================================ - touchscreen with pen - quite small screen - could need an additional digital A4 tablet ======== Examples ======== - prices count - but hard to see beyond a half year