]>
Commit | Line | Data |
---|---|---|
16c1f7f3 JS |
1 | wxMotif TODO |
2 | ------------ | |
3 | ||
8aa04e8b | 4 | Updated: 12/11/98 |
16c1f7f3 JS |
5 | |
6 | -------------------------------o------------------------- | |
7 | ||
e1822f70 JS |
8 | General comment: see the following site for useful Motif widgets. |
9 | ftp://ftp.x.org/contrib/widgets/motif | |
16c1f7f3 | 10 | |
e1822f70 | 11 | Also, grep for TODO comments in source. |
124e1738 | 12 | |
e1822f70 JS |
13 | High Priority |
14 | ------------- | |
16c1f7f3 | 15 | |
e97f20a0 JS |
16 | - Work out why XFreeFont in font.cpp produces a segv. This is |
17 | currently commented out, which presumably causes a memory leak. | |
18 | ||
ea57084d JS |
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. | |
16c1f7f3 | 23 | |
8aa04e8b JS |
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. | |
55acd85e | 28 | |
0d57be45 JS |
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. | |
124e1738 | 37 | |
8aa04e8b JS |
38 | - Finish wxNotebook. |
39 | ||
124e1738 JS |
40 | - wxSpinButton |
41 | ||
e1822f70 | 42 | - Tidy dialogs such as the colour and font selectors. |
16c1f7f3 | 43 | |
e1822f70 | 44 | - Use generic wxTreeCtrl, wxListCtrl: debug and enhance these. |
16c1f7f3 | 45 | |
0d57be45 JS |
46 | - Find out why modal dialogs give a grab warning. |
47 | ||
1a3ac83f JS |
48 | - wxSystemSettings. Eventually, should have control panel-like utility |
49 | to change colours/fonts but meanwhile should maybe read them | |
50 | from a file. | |
16c1f7f3 JS |
51 | |
52 | - wxThread (hopefully, similar to wxGTK) | |
53 | ||
8aa04e8b | 54 | - wxGrid: scrollbars don't hide; problem with cell selection. |
ea57084d | 55 | |
f57fe24c JS |
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 | ||
e1822f70 JS |
66 | - Miscellaneous events. |
67 | ||
68 | - Write makefiles for all samples and utilities. | |
16c1f7f3 | 69 | |
124e1738 JS |
70 | - Create some samples for testing. |
71 | ||
72 | Low Priority | |
73 | ------------ | |
74 | ||
e1822f70 JS |
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 | ||
124e1738 | 85 | - Print/preview framework in print.cpp (see wxGTK). |
16c1f7f3 JS |
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 | ||
16c1f7f3 | 91 | - Get Dialog Editor working under Motif. |
d0dc2fe8 JS |
92 | |
93 | - New wxHelp version: try using the XmHTML widget at | |
3dd4e4e0 JS |
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 | ||
124e1738 JS |
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. | |
89c7e962 JS |
118 | Netscape is running. See: |
119 | http://www.motifzone.com/tmd/articles/John_Cwikla/index.html | |
124e1738 | 120 | |
1a3ac83f JS |
121 | - wxRCConfig (a config class using X .rc files). Could simply |
122 | implement it in terms of current wxGet/WriteResource functions. | |
123 | ||
124e1738 JS |
124 | - wxCheckBoxList |
125 | ||
321db4b6 JS |
126 | - wxBitmapCheckBox, wxBitmapRadioButton |
127 | ||
1a3ac83f JS |
128 | - Reimplement combobox using Lesstif's widget (avoiding GPL'ed |
129 | widget currently used). | |
130 | ||
e1822f70 | 131 | - Write generic wxDirDialog (directory selector) |
124e1738 | 132 | |
e1822f70 | 133 | - Use native Motif dialogs for wxMessageBox |
124e1738 JS |
134 | |
135 | - Miscellaneous classes e.g. wxJoystick (identical to GTK's one for | |
136 | Linux) | |
137 | ||
e1822f70 | 138 | - Blit scaling |
1a3ac83f JS |
139 | |
140 | - Could eventually alter the MDI widgets to be more Windows-like | |
ea57084d JS |
141 | -- currently it's half-hearted (menus are on children, whereas |
142 | they should replace the main parent frame menu). | |
321db4b6 | 143 | |
5de9c45c JS |
144 | - Get ODBC classes and sample working. |
145 |