The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.
For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.
Just one user in GTK+ continues to use gdkkeysyms-compat.h, which is
the gtkimcontextsimple.c, since porting that requires porting more
custom Perl code.
This commit was created using a script that searched for all docstrings
containing a parameter and the string 'or %NULL'.
Gdk backends and demos excluded as they are not part of a public API
https://bugzilla.gnome.org/show_bug.cgi?id=610474
* gtk/gtkcalendar.c (gtk_calendar_class_init()): Limit the "year"
property to G_MAXINT >> 9, instead of G_MAXINT >> 8: year_to_days()
multiplies the year property with 365 and returns the result as
glong. Therefore ceil(log(365, 2)) = 9 bits must be available,
not just 8 bits.
svn path=/trunk/; revision=21150
2008-08-12 Michael Natterer <mitch@imendio.com>
* gtk/*.c: consistently chain up using
GTK_FOO_CLASS(parent_class)->bar(instance) instead of
(*GTK_FOO_CLASS(parent_class))->bar(instance).
svn path=/trunk/; revision=21085
2008-07-06 Matthias Clasen <mclasen@redhat.com>
Bug 539248 – gtk_calender_query_tooltip calls ->detail_func with
invalid dates
* gtk/gtkcalendar.c (gtk_calendar_query_tooltip):
Check that the cursor is over a valid date before retrieving
its details. Patch by Chris Wilson
svn path=/trunk/; revision=20789
2008-06-30 Cody Russell <bratsche@gnome.org>
* Practically everything changed.
Change all references of GIMP Toolkit (and variations of it)
to GTK+ Toolkit, showing no mercy at all to our beloved
ancestry. (#540529)
svn path=/trunk/; revision=20709
2008-06-18 Michael Natterer <mitch@imendio.com>
* gtk/gtkcalendar.c: set the maximum of the "year" property to
G_MAXINT >> 8 instead of G_MAXINT to fix overflows in internal
calculations which in turn caused writing beyond the boundaries of
the calendar->day_month[] and day[] arrays which in turn caused a
SEGV. This limits the lifetime of GTK+ to the year 8,388,608 ;)
svn path=/trunk/; revision=20452
2008-02-15 Matthias Clasen <mclasen@redhat.com>
* configure.in: Go back to 2.13.0 as version for now,
as there was no consensus to do the jump.
* many other places: Update Since: tags.
svn path=/trunk/; revision=19586
* configure.in: Require 1.19.3 for pango_layout_set_height().
* gtk/gtkcalendar.c: Use pango_layout_set_height() for details.
svn path=/trunk/; revision=19392
* gtk/gtkcalendar.c: Release the memory returned by the detail_func.
* gtk/gtkcalendar.h: Remove G_CONST_RETURN from GtkCalendarDetailFunc.
* tests/testcalendar.c: Duplicate calendar details before returning.
svn path=/trunk/; revision=19382
* gtk/gtkcalendar.c, gtk/gtkcalendar.h: Add "show-details" property
aka. GTK_CALENDAR_SHOW_DETAILS, and use it.
* tests/testcalendar.c: Test GTK_CALENDAR_SHOW_DETAILS. Reduce padding
in flags vbox.
svn path=/trunk/; revision=19267
* gtk/gtkcalendar.c: Add gtk_calendar_query_tooltip and chain it up.
Remember detail overflows in calendar_paint_day to show the tooltip
only when neccessary.
svn path=/trunk/; revision=19263
properties not only the widget has to be redrawn on certain
conditions, but also its size must be recalculated. (#339540)
* gtk/gtkcalendar.c: Add calendar_queue_refresh and call
that function instead of gtk_widget_queue_draw.
svn path=/trunk/; revision=19262
* gtk/gtkcalendar.c: Add gtk_calendar_get_detail and
is_color_attribute functions. Change gtk_calendar_size_request
and calendar_paint_day to consider and show calender details.
svn path=/trunk/; revision=19261
* gtk/gtkcalendar.c: Change week and year variable in
calendar_paint_week_numbers from gint to guint. Remove obsolete "#if
0" block from calendar_paint_day: The feature in question is handled
few lines above. Cast data returned by gtk_selection_data_get_text()
to (gchar*) in gtk_calendar_drag_data_received.
svn path=/trunk/; revision=19201
2007-11-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c: Fix a theming problem with colors
in GtkCalendar. (#499703, Michael Hofmann)
svn path=/trunk/; revision=19055
2007-01-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c: Fix problems with the initial
focus in GtkCalendar. (#397783, Vincent Untz)
svn path=/trunk/; revision=17190
2006-12-14 Carlos Garnacho <carlosg@gnome.org>
* gtk/gtkcalendar.c: draw arrows pointing to the right correctly
placed inside their GdkWindow. Bug #385672.
2006-10-11 Tor Lillqvist <tml@novell.com>
Merge from 2.10 branch:
* gtk/gtkmain.c (do_pre_parse_initialization): On Win32, if
environment variable LC_ALL or LANG is set, set the Win32 thread
locale to the corresponding locale. Then call the C library
setlocale() to set the C library locale accordingly. The
inconsistency mentioned below is gone. (#339756) Do some special
casing for Serbia and Montenegro. Handle the Latin and Cyrillic
scripts for Azeri, Uzbek and Serbian.
(enum_locale_proc): Helper function for the above functionality.
* gtk/gtkcalendar.c (gtk_calendar_init): No longer need to check
if the environment variables are set here, as they have already
been taken into account and the Win32 thread locale has been
set.
2006-10-07 Tor Lillqvist <tml@novell.com>
* gtk/gtkcalendar.c (gtk_calendar_init): Use the Win32 thread
locale's first day of week setting on Win32. (#339752, Bogdan
Nicula) Don't do this if one of the environment variables that
affect gettext is set, though. In that case use the week start day
from the corresponding message catalog.
Unfortunately the same logic isn't possible in the weekday and
month name lookup; there even if you have set one of the
aforementioned environment variables, you still get the weekday
and month names from the Win32 thread locale. Yes, this is
inconsistent.
Use only wide-character API in the Win32 code in this file, too.
2006-09-10 Matthias Clasen <mclasen@redhat.com>
* Commit a patch by Behdad to fix typos, omissions and other
errors in the symbol aliasing, and add checks for local PLT
entries. (#354687, Behdad Esfahbod)
2006-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (calendar_start_spinning, calendar_timer):
Use G_PRIORITY_DEFAULT_IDLE for the month/year-change timer,
so that the caller will have a chance to redraw/resize itself
between every change. (#348824, Federico Mena Quintero, patch
by Michael Meeks)
2006-07-17 Michael Natterer <mitch@imendio.com>
* gtk/gtkcalendar.c (calendar_timer): use 5 * gtk-timeout-repeat,
just as many other widgets. Makes the calendar arrow buttons
usable for quick month/year skipping (#142582).
2006-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_drag_motion): Don't produce
a stuck drag if shift is held. (#341734, Sebastien Bacher)
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
Use translated strings calendar:week:digits|%d and
calendar:day:digits|%d to let translators choose localized digits for
week and day numbers. (bug #317171, Hamed Malek)
2006-01-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
when losing the focus. (#326064, Andrew Conkling)
2005-11-28 Tor Lillqvist <tml@novell.com>
* gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
Windows to get the localized weekday and month names. strftime()
in the Microsoft C library returns strings in the default codepage
for the locale of the process, not the system codepage. Thus
g_locale_to_utf8() isn't useable on the return value from
strftime(). (#322603)
2005-11-22 Michael Natterer <mitch@imendio.com>
Made button-press timeouts which work like key repeat timeouts
configurable. Addresses bug #142582:
* gtk/gtksettings.c: added properties "gtk-timeout-initial" and
"gtk-timeout-repeat" which defalt to 200/20 (ms).
Use the values from GtkSettings instead of hardcoding them
(the repeat value is either taken as-is for fast repeat or
multiplied by 5 for slow repeat). Changed all places to use these
two standard initial/repeat timings:
* gtk/gtkcalendar.c (unchanged 200/20)
* gtk/gtknotebook.c (unchanged 200/100)
* gtk/gtkpathbar.c (changed from 300/150 to 200/100)
* gtk/gtkrange.c (changed from 250/100 to 200/100)
* gtk/gtkspinbutton.c (unchanged 200/20)
2005-10-04 Tor Lillqvist <tml@novell.com>
* gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
2005-09-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
to correct the calculations for the first week day. We may
just have to remove this code if too many locales turn out
to have broken data.
2005-09-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
(#314473, Stanislav Brabec)
2005-09-01 Matthias Clasen <mclasen@redhat.com>
* gdk/*.c: Intern some more strings.
* gtk/gtkintl.h:
* gtk/*.c: Define an I_() macro and use it instead of the
bulky g_intern_static_string().
2005-07-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (calendar_realize_arrows): Fix an
unintentional case of width-for-height... (#310133, Luis Villa)
2005-06-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (calendar_paint_header):
(gtk_calendar_size_request): Allow localization of the
format in which the year is displayed. (#135451, Paisa
Seeluangsawat)
2005-05-11 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
to draw the swatch in to avoid having an extraneous window.
* gtk/gtkcolorsel.c (color_sample_draw_sample): Actually se tthe
color when !has_opacity.
2005-05-10 Owen Taylor <otaylor@redhat.com>
* gdk/gdkcairo.[ch] gdk/gdkcolor.[ch] gdk/Makefile.am: Add source
files for Cairo convenience functionality.
* gdk/gdkcairo.h (gdk_cairo_rectangle, gdk_cairo_region): Add a
convenience functions to add GdkRectangle, GdkRegion to a cairo path.
* gdk/gdkwindow.c gdk/gdkgc.c gtk/gtkcolorsel.c gtk/gtkiconview.c
gtk/gtkstyle.c: Use gdk_cairo_rectangle/region().
* gdk/gdkcairo.[ch] gdk/gdkdrawable.h gdk/gdkdraw.c: Rename
gdk_drawable_create_cairo_context() to gdk_cairo_create().
* gdk/gdkcairo.c gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c:
Rename gdk_pixbuf_set_as_cairo_source() to
gdk_cairo_set_source_pixbuf().
* gdk/gdkdraw.c gdk/gdkpango.c gtk/gtkcolorsel.c gtk/gtkhruler.c
gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkstyle.c gtk/gtkvruler.c:
Adjust for renames.
* gdk/gdk.symbols: Update.
* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): Fix
coordinate system problem that was causing the wrong portions
to be invalidated.
* gtk/gtkcellrenderer.c (gtk_cell_renderer_render)
gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render)
gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render)
gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render)
gtk/gtkcellview.c (gtk_cell_view_expose)
gtk/gtkdnd.c (gtk_drag_highlight_expose)
gtk/gtkentry.c (gtk_entry_draw_text)
gtk/gtktextview.c (text_window_invalidate_rect): Some cairoization.
* gtk/gtkcalendar.[ch]: Beat into something roughly resembling
GTK+ style ... use instance-private data and standard names for
private structure, etc. Move function docs inline.
* gtk/gtkcalendar.[ch]: Switch to drawing everything in
expose. Switch drawing to Cairo.
* gtk/gtkcalendar.c (gtk_calendar_freeze): Deprecate
gtk_calendar_freeze/thaw
2005-03-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like
their G_ counterparts, but also mark the name, nick
and blurb as static.
* gtk/*.c: Mark param spec strings as static, using
the new macros.
2005-03-20 Matthias Clasen <mclasen@redhat.com>
Make PLT-reduction work with gcc4, and don't include
everything in gdkalias.h:
* gtk/grk.symbols: Group symbols by header and source file.
* gtk/makegtkalias.pl: Protect definitions by the same
preprocessor symbols used to guard the headers. Move
the alias declarations to a separate file which is
produced when calling makegtkalias.pl -def
* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
this file.
* gtk/*.c: Include gtkalias.h after the other headers,
include gtkaliasdef.c at the bottom.
* gtk/*.h: Small cleanups.
2005-01-14 Matthias Clasen <mclasen@redhat.com>
* configure.in: Check for _NL_TIME_FIRST_WEEKDAY too, since it
is an enum value, not a define. Pointed out by Tommi Komulainen.
* gtk/gtkcalendar.c (gtk_calendar_init): Adapt.