]>
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. |
45d49251 JS |
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. | |
16c1f7f3 | 48 | |
0d57be45 JS |
49 | - Find out why modal dialogs give a grab warning. |
50 | ||
1a3ac83f JS |
51 | - wxSystemSettings. Eventually, should have control panel-like utility |
52 | to change colours/fonts but meanwhile should maybe read them | |
53 | from a file. | |
16c1f7f3 JS |
54 | |
55 | - wxThread (hopefully, similar to wxGTK) | |
56 | ||
8aa04e8b | 57 | - wxGrid: scrollbars don't hide; problem with cell selection. |
ea57084d | 58 | |
f57fe24c JS |
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 | ||
e1822f70 JS |
69 | - Miscellaneous events. |
70 | ||
71 | - Write makefiles for all samples and utilities. | |
16c1f7f3 | 72 | |
124e1738 JS |
73 | - Create some samples for testing. |
74 | ||
75 | Low Priority | |
76 | ------------ | |
77 | ||
e1822f70 JS |
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 | ||
124e1738 | 88 | - Print/preview framework in print.cpp (see wxGTK). |
16c1f7f3 JS |
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 | ||
16c1f7f3 | 94 | - Get Dialog Editor working under Motif. |
d0dc2fe8 JS |
95 | |
96 | - New wxHelp version: try using the XmHTML widget at | |
3dd4e4e0 JS |
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 | ||
124e1738 JS |
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. | |
89c7e962 JS |
121 | Netscape is running. See: |
122 | http://www.motifzone.com/tmd/articles/John_Cwikla/index.html | |
124e1738 | 123 | |
1a3ac83f JS |
124 | - wxRCConfig (a config class using X .rc files). Could simply |
125 | implement it in terms of current wxGet/WriteResource functions. | |
126 | ||
124e1738 JS |
127 | - wxCheckBoxList |
128 | ||
321db4b6 JS |
129 | - wxBitmapCheckBox, wxBitmapRadioButton |
130 | ||
1a3ac83f JS |
131 | - Reimplement combobox using Lesstif's widget (avoiding GPL'ed |
132 | widget currently used). | |
133 | ||
e1822f70 | 134 | - Write generic wxDirDialog (directory selector) |
124e1738 | 135 | |
e1822f70 | 136 | - Use native Motif dialogs for wxMessageBox |
124e1738 JS |
137 | |
138 | - Miscellaneous classes e.g. wxJoystick (identical to GTK's one for | |
139 | Linux) | |
140 | ||
e1822f70 | 141 | - Blit scaling |
1a3ac83f JS |
142 | |
143 | - Could eventually alter the MDI widgets to be more Windows-like | |
ea57084d JS |
144 | -- currently it's half-hearted (menus are on children, whereas |
145 | they should replace the main parent frame menu). | |
321db4b6 | 146 | |
5de9c45c JS |
147 | - Get ODBC classes and sample working. |
148 |