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