]> git.saurik.com Git - wxWidgets.git/blob - docs/motif/todo.txt
Small Motif bug fixes
[wxWidgets.git] / docs / motif / todo.txt
1 wxMotif TODO
2 ------------
3
4 Updated: 12/11/98
5
6 -------------------------------o-------------------------
7
8 General comment: see the following site for useful Motif widgets.
9 ftp://ftp.x.org/contrib/widgets/motif
10
11 Also, grep for TODO comments in source.
12
13 High Priority
14 -------------
15
16 - Work out why XFreeFont in font.cpp produces a segv. This is
17 currently commented out, which presumably causes a memory leak.
18
19 - Colour setting in widgets (almost done). Should scrollbars take
20 on the background colour? Not right for e.g. wxScrolledWindows,
21 so maybe have wxSystemSettings value for scrollbar colour, and/or
22 ability to set scrollbar colour independently.
23
24 - Optimize wxWindow OnPaint to avoid flicker, collapsing Expose events
25 as per flicker fix in 1.68. It will be tricky to avoid
26 interfering with non-wxScrolledWindow widgets except by
27 explicitly testing for wxScrolledWindow.
28
29 - Implementation of OnEraseBackground. How? Call OnEraseBackground
30 just before OnPaint? Will duplicate Xlib's own erase of the background.
31 However, this is usually OK, because the default wxWindow::OnEraseBackground
32 can do nothing (SetBackgroundColour will make the background look OK).
33 And if a custom OnEraseBackground uses the same colour as the window
34 background, no flicker will be seen. If it does something else, such as
35 painting a tiled bitmap, then a slight flicker might be seen unless
36 X can be persuaded not to repaint the window background by default.
37
38 - Finish wxNotebook.
39
40 - wxSpinButton
41
42 - Tidy dialogs such as the colour and font selectors.
43
44 - Use generic wxTreeCtrl, wxListCtrl: debug and enhance these.
45 wxTreeCtrl: crashes in wxImageList::Draw because it assumes
46 that wxBitmap == wxIcon, which is only true in wxGTK.
47 So add wxDC::DrawBitmap and use this instead.
48
49 - Find out why modal dialogs give a grab warning.
50
51 - wxSystemSettings. Eventually, should have control panel-like utility
52 to change colours/fonts but meanwhile should maybe read them
53 from a file.
54
55 - wxThread (hopefully, similar to wxGTK)
56
57 - wxGrid: scrollbars don't hide; problem with cell selection.
58
59 - MDI: seems to be broken for a more complex application I'm testing.
60 Frame decorations don't draw properly, and a child window doesn't
61 process events properly. So probably we should have an alternative
62 implementation that uses tabs, a la wxGTK. The system menu could
63 be implemented using a pop-up menu that applies to the currently
64 active window.
65
66 - Controls in a wxToolBar don't work. Probably due to form layout
67 problems; the workaround is to use a separate panel for controls.
68
69 - Miscellaneous events.
70
71 - Write makefiles for all samples and utilities.
72
73 - Create some samples for testing.
74
75 Low Priority
76 ------------
77
78 - Better makefile system that can put objects in different dirs.
79 Use wxGTK config system? It's really complex to debug and
80 doesn't offer a way of compiling apps outside the wxWin
81 hierarchy.
82
83 - Extra wxBitmap formats: PNG, BMP. Could use old wxWin 1.68
84 wxImage code (derived from XV) for BMP/GIF but it's very bloated. However,
85 when implemented as extra bitmap handlers, the code won't be linked
86 unless needed.
87
88 - Print/preview framework in print.cpp (see wxGTK).
89
90 - Enhance event handling such that you override e.g. left-click
91 and unless you call the base OnMouseEvent, the click won't be
92 sent to the button. Required for Dialog Editor.
93
94 - Get Dialog Editor working under Motif.
95
96 - New wxHelp version: try using the XmHTML widget at
97 http://www.xs4all.nl/~ripley/XmHTML/.
98
99 We need to:
100 - make a minimal distribution under wx/src/xmhtml, just enough
101 to compile the source.
102 - add XMHTML_C_SRC to src/motif/makefile.unx with the source files
103 listed.
104 - make sure we can compile the sources, passing the correct
105 flags for zlib/png compilation.
106 - make a wxHTMLWindow class from e.g. examples/example_2.c. Should
107 probably make the cache and history facilities part of the class.
108 - add the driver code to src/motif/helphtml.cpp (a frame, toolbar,
109 history list).
110
111 - Optimize screen refresh for non-native widgets, e.g. wxWindow
112 created with Create(), using technique in flicker patch for 1.68
113 (see JACS for latest patch).
114
115 - Copy and paste, drag and drop. Use a standard X drag
116 and drop standard - see http://www.cco.caltech.edu/~jafl/xdnd/
117 or use Motif drag and drop as described here:
118 http://www.motifzone.com/tmd/articles/DnD/dnd.html
119
120 - Optimize colour management so we don't get clashes when e.g.
121 Netscape is running. See:
122 http://www.motifzone.com/tmd/articles/John_Cwikla/index.html
123
124 - wxRCConfig (a config class using X .rc files). Could simply
125 implement it in terms of current wxGet/WriteResource functions.
126
127 - wxCheckBoxList
128
129 - wxBitmapCheckBox, wxBitmapRadioButton
130
131 - Reimplement combobox using Lesstif's widget (avoiding GPL'ed
132 widget currently used).
133
134 - Write generic wxDirDialog (directory selector)
135
136 - Use native Motif dialogs for wxMessageBox
137
138 - Miscellaneous classes e.g. wxJoystick (identical to GTK's one for
139 Linux)
140
141 - Blit scaling
142
143 - Could eventually alter the MDI widgets to be more Windows-like
144 -- currently it's half-hearted (menus are on children, whereas
145 they should replace the main parent frame menu).
146
147 - Get ODBC classes and sample working.
148