]>
Commit | Line | Data |
---|---|---|
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 | ||
46 | - Find out why modal dialogs give a grab warning. | |
47 | ||
48 | - wxSystemSettings. Eventually, should have control panel-like utility | |
49 | to change colours/fonts but meanwhile should maybe read them | |
50 | from a file. | |
51 | ||
52 | - wxThread (hopefully, similar to wxGTK) | |
53 | ||
54 | - wxGrid: scrollbars don't hide; problem with cell selection. | |
55 | ||
56 | - MDI: seems to be broken for a more complex application I'm testing. | |
57 | Frame decorations don't draw properly, and a child window doesn't | |
58 | process events properly. So probably we should have an alternative | |
59 | implementation that uses tabs, a la wxGTK. The system menu could | |
60 | be implemented using a pop-up menu that applies to the currently | |
61 | active window. | |
62 | ||
63 | - Controls in a wxToolBar don't work. Probably due to form layout | |
64 | problems; the workaround is to use a separate panel for controls. | |
65 | ||
66 | - Miscellaneous events. | |
67 | ||
68 | - Write makefiles for all samples and utilities. | |
69 | ||
70 | - Create some samples for testing. | |
71 | ||
72 | Low Priority | |
73 | ------------ | |
74 | ||
75 | - Better makefile system that can put objects in different dirs. | |
76 | Use wxGTK config system? It's really complex to debug and | |
77 | doesn't offer a way of compiling apps outside the wxWin | |
78 | hierarchy. | |
79 | ||
80 | - Extra wxBitmap formats: PNG, BMP. Could use old wxWin 1.68 | |
81 | wxImage code (derived from XV) for BMP/GIF but it's very bloated. However, | |
82 | when implemented as extra bitmap handlers, the code won't be linked | |
83 | unless needed. | |
84 | ||
85 | - Print/preview framework in print.cpp (see wxGTK). | |
86 | ||
87 | - Enhance event handling such that you override e.g. left-click | |
88 | and unless you call the base OnMouseEvent, the click won't be | |
89 | sent to the button. Required for Dialog Editor. | |
90 | ||
91 | - Get Dialog Editor working under Motif. | |
92 | ||
93 | - New wxHelp version: try using the XmHTML widget at | |
94 | http://www.xs4all.nl/~ripley/XmHTML/. | |
95 | ||
96 | We need to: | |
97 | - make a minimal distribution under wx/src/xmhtml, just enough | |
98 | to compile the source. | |
99 | - add XMHTML_C_SRC to src/motif/makefile.unx with the source files | |
100 | listed. | |
101 | - make sure we can compile the sources, passing the correct | |
102 | flags for zlib/png compilation. | |
103 | - make a wxHTMLWindow class from e.g. examples/example_2.c. Should | |
104 | probably make the cache and history facilities part of the class. | |
105 | - add the driver code to src/motif/helphtml.cpp (a frame, toolbar, | |
106 | history list). | |
107 | ||
108 | - Optimize screen refresh for non-native widgets, e.g. wxWindow | |
109 | created with Create(), using technique in flicker patch for 1.68 | |
110 | (see JACS for latest patch). | |
111 | ||
112 | - Copy and paste, drag and drop. Use a standard X drag | |
113 | and drop standard - see http://www.cco.caltech.edu/~jafl/xdnd/ | |
114 | or use Motif drag and drop as described here: | |
115 | http://www.motifzone.com/tmd/articles/DnD/dnd.html | |
116 | ||
117 | - Optimize colour management so we don't get clashes when e.g. | |
118 | Netscape is running. See: | |
119 | http://www.motifzone.com/tmd/articles/John_Cwikla/index.html | |
120 | ||
121 | - wxRCConfig (a config class using X .rc files). Could simply | |
122 | implement it in terms of current wxGet/WriteResource functions. | |
123 | ||
124 | - wxCheckBoxList | |
125 | ||
126 | - wxBitmapCheckBox, wxBitmapRadioButton | |
127 | ||
128 | - Reimplement combobox using Lesstif's widget (avoiding GPL'ed | |
129 | widget currently used). | |
130 | ||
131 | - Write generic wxDirDialog (directory selector) | |
132 | ||
133 | - Use native Motif dialogs for wxMessageBox | |
134 | ||
135 | - Miscellaneous classes e.g. wxJoystick (identical to GTK's one for | |
136 | Linux) | |
137 | ||
138 | - Blit scaling | |
139 | ||
140 | - Could eventually alter the MDI widgets to be more Windows-like | |
141 | -- currently it's half-hearted (menus are on children, whereas | |
142 | they should replace the main parent frame menu). | |
143 | ||
144 | - Get ODBC classes and sample working. | |
145 |