Harmony Packages Proposal ------------------------- Author: Dmitri Koulakov Date: 13.04.2000 Introduction ------------ Since Qt 2.x API has grown dramatically ( aprox. 234 classes and 387 files ) and it has sophisticated structure, the Harmopny sources also needs more organization. I think that the best way to organize sources is to put them into following two-level structure (that was taken from Qt 2.1 documentation with minor changes). The Qt 2.x sources itself have weaker structure ( kernel, moc, widgets, dialogs, tools ). Packages Description -------------------- Here is proposed "src" subdirs structure: components enviroment (various global services, such as event handling, access to system settings, internationalization, ...) main (everything for a typical modern main application window (menus, toolbars, workspace, ...)) dialogs (ready-made dialogs for file-, font-, color-selection and more) controls (the GUI primitives like buttons, combo-boxes, scrollbars, ...) advcontrols (advanced user interface controls like listviews, progressbars ...) organizers (GUI organizers like splitters, tab books, button groups, ...) help (classes providing for all forms of online-help) framework object (underlying meta object model) widgets (abstract widget classes available for subclassing) drawing (classes providing drawing and printing primitives) dragndrop (classes dealing with drag and drop and the necessary mime type encoding and decoding) geometry (casses handling automatic resizing and moving of widgets, the Qt way of composing complex dialogs) themes (appearance customization with styles, fonts, colors etc) util tools (generic collection classes like list, queue, stack, string, etc) image (digital image coding, decoding and manipulation) io (classes providing I/O, file and directory handling) sound (basic audio support) time (classes for handling date and time) etc (various other useful classes)