2 - remove deprecated functions from *.[hc] files, especially the
6 * Widget redrawing when the window resizes sometimes messes up.
7 GtkLabels sometimes redraw without clearing up the underlying background on
10 * Change bitfields to guints from enums, or vice versa?
12 * MappingNotify events produce warnings.
14 * gtk_widget_set_uposition can't handle negative x,y coordinates!
16 * the type system (gtktypeutils.c) has to handle creations of fundamental
17 types seperatedly from derived types, so we don't screw foreign
18 fundamental types with an already extensively increased seqno.
20 * Expose events aren't being generated correctly for DND demo
22 * delay dnd settings to take effect once a widget is realized, this is
23 to avoid force realizations. i think this goes along with owens dnd
26 The way DND data types are set in GtkWidget really needs to be fixed.
27 This is pretty high on my priority list, and I'll get to it as soon as
28 the column list widget is done. The correct way dnd data needs to be set
29 is to have a additional keyed data type with GtkWidget, which is applied to
30 the widget's window upon realize.
31 There also needs to be a way to set dnd-data on widget windows which are
32 not the main window (for widgets that create more than one window).
34 DnD seems to work for me, but yes, there needs to be some sort of
35 gtk_widget layer that makes it easier... Also, adding support for drop
38 This one is reproducabel for me:
42 start up preview color
43 drag works but not dropping
46 start up prewiev color
51 * implement keyboard navigation in menus
53 * focus handling for GtkOptionMenu (needs the previous)
55 * GScanner: it might be good to ues stdio and getch() instead of 1-character
56 reads. so one can take advantage of buffering. Currently each read() takes
59 * implement gtk_default_draw_oval and other missing things in gtkstyle.c.
61 * Lists should scroll to center the recently selected item if it isn't
64 * enforce invariants on *_RESIZE* and *_REDRAW* flags.
66 * asure that child widgets are really get gtk_widget_destroy()ed in their
67 parents destroy handler, and not just unparented or somesuch.
70 allocate GtkTooltipsData from memchunks
71 look into incorporation of outdated/gtk-dairiki-971208-[01].patch.gz
73 * Change gtk_widget_propagate_default_style() mechanism to
74 void gtk_rc_string_export (const gchar *rc_additions,
75 gboolean override_rc_styles);
77 * Make all widget attributes configurable after the widget is created (timj).
79 * Widgets dervied from GtkButton need to be able to override
80 GtkButtonClass.paint. e.g. redrawing of GtkToggleButton with CAN_DEFAULT
81 is messed up otheriwse. This does in fact not only apply to (toggle)buttons,
82 we should introduce a common paint member for the GtkWidgetClass.
84 * Radio buttons need to display CAN/HAS_DEFAULT correctly.
86 * GtkCList improvements. (Jay Painter)
88 * Seperate GtkObject, type and signaling system from Gdk dependancies,
89 by moving them into a seperate libgtkobj.
90 * move *_input_add (wrappers for select(2)) mechanism into glib.
92 * Make sure a widget added to a list is a list item and a widget added
93 to a menu is a menu item, etc. GTK_BASIC was a first attempt at this,
94 but it fails with subsequent container_add()s. maybe have another
95 GTK_PARENT_BASIC (similar to GTK_PARENT_SENSITIVE) flag, to prevent
96 tree iterations upon every container addition.
98 * gdk_expose_compress: ala-Xt, this would really help for opaque moves and
101 * Entry should have a password mode (and it should show stars
104 * Entry should allow set_usize to work better, and should compute
105 a different width when a maximum length is used.
107 * More dialogs: Print, GtkFontSelector, maybe others...
109 * Multiple document interface (MDI)?
111 * Support another widget style? Should be possible using GtkStyle's, but
112 there may be some work needed to remove any style dependencies in widget
113 code. Maybe GtkStyle's should have 'draw_push_button', 'draw_check_button',
114 etc, functions to draw the various widgets.
115 This will be covered by upcoming themability, raster is working on it.
117 * make the gtk_main callbacks consistent in their add/remove behaviour.
119 * More work on Documentation
121 * Check return values on all calls to XIC[Get/Set]Values
123 * Rewrite the interface to the i18n stuff so GTK widgets don't need to
124 retrieve X values, and so they don't have to know the value of the
125 XNxxx character constants.
127 * The "--geometry" option should be supported
129 - Having gdk_init() parse the geometry option. (putting it into
130 GDK means you can use XParseGeometry() without wrapping it)
132 - Add a call gdk_get_geometry() that retrieves the results
133 in a form like that returned by XParseGeometry()
135 - The application then can modify the results (as would gemvt)
136 then call a routine gtk_window_set_geometry() on whatever
137 it considers to be its main window.
139 - Then in some manner GtkWindow takes that into account when
140 setting its hints. (Probably it uses the size and position
141 as the current uposition and usize, and modulates that
142 be the equivalents of the X flags
144 XValue, YValue, WidthValue, HeightValue, XNegative, or YNegative
146 ( You'd have to extend gdk_window_set_hints to accept the
147 window gravity option to get it right. )
149 ? Allow moving the separator for paned widgets by dragging
150 it directly instead of using the handle.
152 ? Mark public use of gtk_tree_remove_item as deprecated - it should be used
154 gtk_container_remove (GTK_CONTAINER(tree), widget);
156 * Standardize that all strings should be passed as gchar *, not
157 guchar *. But what about non-string data? (gdk_property_change,
158 gtk_selection_data_set) X makes these sort of things guchar...
160 * Check into XAddConnectionWatch - is this needed for XIM?
162 * Places where a _full variant is needed:
164 gtk_clist_set_row_data
167 gtk_toolbar_prepend_element
168 gtk_toolbar_insert_element
169 gtk_widget_dnd_data_set (should be guchar * with a copy?
170 shouldn't be there at all...)
171 ??? GtkDrawingarea.draw_data
173 * gtk_rc_add_[name/class]_style are broken for bg pixmaps, because
174 styles are broken for bg pixmaps, and RC styles only hack around
177 * Try to rationally deal with someone else deleting one of our
178 windows??? This would mean keeping track of our window heirarchy
179 ourselves, for one thing, and will never be safe, because of
182 * --g-fatal-warnings flag that does
183 g_set_warning_handler ((GWarningHandler)g_error);
185 * If a window spontaneously resizes itself N times before any
186 ConfigureNotify events are received, then due to the interaction
187 of the ConfigureNotify compression code in GDK and the resize
188 count used for the window, the window will be size_allocated
189 the next N-1 times it is moved.
191 Fix: Only send GDK_EVENT_CONFIGURE when the window is resized,
192 create a new event type for toplevel motion. (GDK_EVENT_REPOSITION?)
193 and eliminate the resize count in GtkWindow.
195 * Generic ScrolledWindow interface, which provide automatic scrollbar
196 capability to Viewport, Text, and CList widgets.
198 * GTK_POLICY_NEVER for scrolled windows.
200 * Consider caching more state in GdkWindowPrivate. Currently,
201 every widget realization involves a XGetGeometry and a
202 XGetWindowAttributes. And every GdkWindow destruction
203 involves a XQueryTree.
205 * Should all the default handlers really return FALSE? This can
206 cause confusing presses to be sent to containers that actually
207 want to get events on themselves.
209 * New signals to handle accelerators: accel_before and accel_after (or
210 somesuch) to pre and post process accelerator calls. [Yosh]
216 - Really big font (150 pt), plus lots of editing caused segfault
220 - Unify the key binding support in some fashion between the
221 Entry and Text widget widgets (???)
223 - Figure out a way not to recompute the geometry on insertions/deletions
224 which are large, but not a significant fraction of the
225 entire text. (e.g., compute the changes as when the widget
226 is not frozen, but without the actual scrolling)
228 - Prune the line start cache. But since it is only 68 bytes
229 per line, and it is a lot faster when lines are in the cache,
230 it may be better not to, at least for now.
232 - Show the non-editable state by changing colors. (Use the
233 style entries for insensitive?)
235 - Multibyte support for the Text widget.
237 - Unicode support to do the multi-byte right.
239 - Support an .inputrc. (The readline one doesn't really work,
240 unless it is extended because it can't represent X keysyms,
241 just terminal type input)
245 - Word wrap, instead of line folding. (Should the continuation
246 characters be shown?)
248 - Horizontal scrolling
250 - Disable pasting compound text
252 - When showing background pixmap (not editable) actually set
253 the background pixmap as the windows bg pixmap, to improve
254 appearance on exposes. But this would require using another
255 window to get the origins.
257 - In word wrap mode, break:
259 aaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
263 aaaaaaaaaaa bbbbbbbbbbb|
264 bbbbbbbbbbbbbbbbbbbbbbb|
270 bbbbbbbbbbbbbbbbbbbbbbb|
271 bbbbbbbbbbbbbbbbbbbb |
275 - API's : gtk_text_clear, gtk_text_delete_lines (gint start, gint end),
276 gtk_text_append/prepend, gtk_text_insert_at (gint row, gint column),
277 some function to get the row/column from the x/y-coordinates of a
278 mouse click, some function to get the word/line under the mouse pointer
279 [ From: Stefan Jeske <jeske@braunschweig.netsurf.de> ]
281 - "changed" emitted when doing deletes on empty Text widget.
283 - Delete IC in editable->unrealize, not editable->finalize?
287 - The widget should be nicely resizeable vertical to.
289 - CALENDAR_MARGIN should be removed, uses INNER_BORDER and
290 style->class->[xy]thickness insted.
292 - Flag to choose between using standard three letter abbreviated
293 weekday name or just the first character from it. It looks like
294 that is what most other calendar-widgets do.
296 - Arrows should resize with the header-font.
298 - The keyboard support has to be finished.