]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/motif/todo.txt
disabled DeleteAll()
[wxWidgets.git] / docs / motif / todo.txt
index 67b0a0e3cb7f2dc589ecbfe4e527c2c59ad2640f..1043abd94ccab518335776b818b75d0772ea17c7 100644 (file)
@@ -1,68 +1,87 @@
 wxMotif TODO
 ------------
 
-Updated: 16/10/98
+Updated: 12/11/98
 
          -------------------------------o-------------------------
 
-High Priority
--------------
+General comment: see the following site for useful Motif widgets.
+ftp://ftp.x.org/contrib/widgets/motif
 
-- wxScreenDC
+Also, grep for TODO comments in source.
 
-- Extra wxBitmap formats. What about XPMs, can we assume
-  libxpm exists and use that?
+High Priority
+-------------
 
 - Work out why XFreeFont in font.cpp produces a segv. This is
   currently commented out, which presumably causes a memory leak.
 
-- Bitmap versions of widgets (wxBitmapButton etc.)
+- Colour setting in widgets (almost done). Should scrollbars take
+  on the background colour? Not right for e.g. wxScrolledWindows,
+  so maybe have wxSystemSettings value for scrollbar colour, and/or
+  ability to set scrollbar colour independently.
 
-- wxRadioBox
+- Optimize wxWindow OnPaint to avoid flicker, collapsing Expose events
+  as per flicker fix in 1.68. It will be tricky to avoid
+  interfering with non-wxScrolledWindow widgets except by
+  explicitly testing for wxScrolledWindow.
 
-- wxRadioButton
+- Implementation of OnEraseBackground. How? Call OnEraseBackground
+  just before OnPaint? Will duplicate Xlib's own erase of the background.
+  However, this is usually OK, because the default wxWindow::OnEraseBackground
+  can do nothing (SetBackgroundColour will make the background look OK).
+  And if a custom OnEraseBackground uses the same colour as the window
+  background, no flicker will be seen. If it does something else, such as
+  painting a tiled bitmap, then a slight flicker might be seen unless
+  X can be persuaded not to repaint the window background by default.
 
-- wxComboBox: use combobox.c code as bundled in wxWin 1.68
-
-- wxGauge: use xmgauge as per wxWin 1.68
+- Finish wxNotebook.
 
 - wxSpinButton
 
-- wxSlider
-
-- wxTextCtrl text file loading and saving.
+- Tidy dialogs such as the colour and font selectors.
 
-- A generic version of wxNotebook that can be used in wxMotif and
-  other toolkits that don't have a native control. Perhaps use wxTab as a
-  starting point.
+- Use generic wxTreeCtrl, wxListCtrl: debug and enhance these.
 
-- MDI classes: use existing Motif widgets for this.
+- Find out why modal dialogs give a grab warning.
 
-- Dialogs e.g. wxFileSelector.
-  Some others need tidying, such as the colour and font selectors.
+- wxSystemSettings. Eventually, should have control panel-like utility
+  to change colours/fonts but meanwhile should maybe read them
+  from a file.
 
-- Use generic wxTreeCtrl, wxListCtrl: enhance these.
-
-- Write a better generic wxToolBar class than wxToolBarSimple.
-  Alternatively, write a toolbar using Motif as described here:
-  http://www.motifzone.com/tmd/articles/Kurt_Huhner/jun96.html.
-  This article also explains how to implement tooltips.
+- wxThread (hopefully, similar to wxGTK)
 
-- Colour and font setting in widgets.
+- wxGrid: scrollbars don't hide; problem with cell selection.
 
-- wxSystemSettings
+- MDI: seems to be broken for a more complex application I'm testing.
+  Frame decorations don't draw properly, and a child window doesn't
+  process events properly. So probably we should have an alternative
+  implementation that uses tabs, a la wxGTK. The system menu could
+  be implemented using a pop-up menu that applies to the currently
+  active window.
 
-- wxTimer
+- Controls in a wxToolBar don't work. Probably due to form layout
+  problems; the workaround is to use a separate panel for controls.
 
-- wxThread (hopefully, similar to wxGTK)
+- Miscellaneous events.
 
-- Write makefiles for all samples.
+- Write makefiles for all samples and utilities.
 
 - Create some samples for testing.
 
 Low Priority
 ------------
 
+- Better makefile system that can put objects in different dirs.
+  Use wxGTK config system? It's really complex to debug and
+  doesn't offer a way of compiling apps outside the wxWin
+  hierarchy.
+
+- Extra wxBitmap formats: PNG, BMP. Could use old wxWin 1.68
+  wxImage code (derived from XV) for BMP/GIF but it's very bloated. However,
+  when implemented as extra bitmap handlers, the code won't be linked
+  unless needed.
+
 - Print/preview framework in print.cpp (see wxGTK).
 
 - Enhance event handling such that you override e.g. left-click
@@ -72,7 +91,19 @@ Low Priority
 - Get Dialog Editor working under Motif.
 
 - New wxHelp version: try using the XmHTML widget at
-  http://www.xs4all.nl/~ripley/XmHTML/
+  http://www.xs4all.nl/~ripley/XmHTML/.
+
+  We need to:
+  - make a minimal distribution under wx/src/xmhtml, just enough
+    to compile the source.
+  - add XMHTML_C_SRC to src/motif/makefile.unx with the source files
+    listed.
+  - make sure we can compile the sources, passing the correct
+    flags for zlib/png compilation.
+  - make a wxHTMLWindow class from e.g. examples/example_2.c. Should
+    probably make the cache and history facilities part of the class.
+  - add the driver code to src/motif/helphtml.cpp (a frame, toolbar,
+    history list).
 
 - Optimize screen refresh for non-native widgets, e.g. wxWindow
   created with Create(), using technique in flicker patch for 1.68
@@ -84,15 +115,31 @@ Low Priority
   http://www.motifzone.com/tmd/articles/DnD/dnd.html
 
 - Optimize colour management so we don't get clashes when e.g.
-  Netscape is running.
+  Netscape is running. See:
+  http://www.motifzone.com/tmd/articles/John_Cwikla/index.html
+
+- wxRCConfig (a config class using X .rc files). Could simply
+  implement it in terms of current wxGet/WriteResource functions.
 
 - wxCheckBoxList
 
-- Write generic wxDirDialog (directory selector).
+- wxBitmapCheckBox, wxBitmapRadioButton
 
-- Use native Motif dialogs for wxMessageBox.
+- Reimplement combobox using Lesstif's widget (avoiding GPL'ed
+  widget currently used).
+
+- Write generic wxDirDialog (directory selector)
+
+- Use native Motif dialogs for wxMessageBox
 
 - Miscellaneous classes e.g. wxJoystick (identical to GTK's one for
   Linux)
 
+- Blit scaling
+
+- Could eventually alter the MDI widgets to be more Windows-like
+  -- currently it's half-hearted (menus are on children, whereas
+  they should replace the main parent frame menu).
+
+- Get ODBC classes and sample working.