Initial revision
[wmaker-crm.git] / WINGs / README
blobcf879a7825e76b5178e538b49dc0cb300318f044
2                       WINGs - WINGs Is Not GNUstep
4                                    by
6                           Alfredo Kengi Kojima 
7                         
8                           kojima@windowmaker.org
11    WINGs is a small widget set with the N*XTSTEP look and feel. It's API
12 is inspired in OpenStep and it's implementation borrows some ideas
13 from Tk. It has a reasonable set of widgets, sufficient for building
14 small applications (like a CDPlayer or hacking something like rxvt). It
15 also has other functions that are usefull for applications, like a
16 User Defaults like configuration manager and a notification system.
18    The library is limited and it's design is a little sloppy, 
19 so it's not intended to build large or complex applications, like 
20 anything more complex than a CDPlayer. GNUstep should be used for such
21 applications.
23    Since WINGs is written in C and is sort of low-level it is small
24 and faster than say, Motif or even Athena. Knowing Xlib will help you to 
25 workaround some of it's limitations, although you'll probably be able to 
26 write something like a trivial tic-tac-toe game without knowing much Xlib.
28    Some of it's functions are designed to support the WindowMaker window
29 manager (see http://windowmaker.org) In fact, it's primary role is to
30 support WindowMaker. All other uses of it are just an added bonus.
32    It will help you to understand the API if you read the ApplicationKit
33 reference manual, distributed as a PDF by Apple. The function names,
34 structs and most of the intrinsics are very close to OpenStep classes. 
37 Internationalization:
38 ---------------------
40    WINGs supports display of multibyte characters (kanji etc) without the
41 to specify any flags (ie: there is no way to disable i18n support).
42 Change ~/GNUstep/Defaults/WMGLOBAL to set the desired font set.
45 Widgets provided by WINGs:
46 --------------------------
48 - button (command button, radio, switch etc. - all buttons defined in OpenStep)
49 - label
50 - textfield
51 - frame
52 - window
53 - popup menu button
54 - scroller
55 - selection list
56 - browser
57 - slider
58 - scrollable view
59 - color well
60 - split view (only 2 subviews)
62 - input box
63 - file panel
64 - alert panel 
66 Planned:
67 --------
69 - selection (pasteboard like)
70 - drag&drop
72 If you think you can code the following, please do. They are needed by
73 WPrefs.app, but the number of other things I have to do is huge.
75 - color panel
76 - font panel (the UI part is done. Might require a rewrite of the font list
77   retrievel code. Might also require a WMFontManager)
78 - input method support (XIM). I have no idea of how to code it. People who use
79 different characters than ASCII will have trouble editing menus without it...
82 Wish list: (I don't have the know-how or time to do them)
83 ---------------------------------------------------------
85 - text (with support for RTF)
86 - matrix (like NSMatrix)
87 - splitviews with more than 2 subviews
88 - font manager (like NSFontManager)
89 - finish file panel, open/save
90 - finish other wigets
91 - optimize list scrolling (XCopyArea() the area that's already drawn)
92 - InterfaceMaker?
93 - use XSetWMName and XSetWMIconName for the window/icon title setting.
94   This requires transforming the received text to a text property with
95   the proper encoding.
97 Copyright
98 ---------
100 WINGs is copyright (c) Alfredo K. Kojima and is licensed through the GNU
101 Library General Public License (LGPL).