3219 Commits

Author SHA1 Message Date
Ryan Lortie
cf73ba47f1 Deal with gtk-doc's insane sensitivty to spaces
...by inserting a few of them.
2010-09-17 13:14:59 -04:00
Ryan Lortie
6b0e31ce48 Clean-up/tweaking of GDateTime and GTimeZone 2010-09-17 11:40:10 -04:00
Emmanuele Bassi
909289c763 datetime: Fix hashing
Convert to the epoch, just like we do when checking for equality, so
that timezones are correctly handled.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
3e9fb52214 datetime: Rename g_date_time_printf() to g_date_time_format()
The function does not use any printf() modifiers, so using printf() is a
misnomer.

Prior art: strftime, g_ascii_formatd

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
4bac6613cf datetime: Update modifiers for DST changes
If a DateTime gets modified to cross the DST state from its previous
state then we want to update the DateTime to compensate for the new
offset.

In other words, if we have a DateTime defined as:

  DateTime({ y: 2009, m: 8, d: 15, hh: 3, mm: 0, tz: 'Europe/London' });

and we add six months to it, the hour must be changed to 60 minutes
behind, as the DST comes into effect.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
0746f74036 datetime: Allow setting fractionary seconds in new_full()
Otherwise we'll have to do:

  dt = g_date_time_new_full (Y, M, D, h, m, s, tz);
  tmp = g_date_time_add_usec (dt, usec);
  g_date_time_unref (dt);
  dt = tmp;

With its additional allocations.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Emmanuele Bassi
67f1e52ce2 datetime: Rework time zone support in constructors
Timezone handling is complicated. Really complicated.

In order to simplify it a little bit, we need to expose the GTimeZone
structure.

First of all, we allow creating time zone information directly from the
offset and the DST state, and then pass it to the g_date_time_new_full()
constructor. We also need to clean up the mess that is UTC-vs.-localtime
for the other constructors.

We also allow creating a GTimeZone from the Olson zoneinfo database
names; a time zone created like this will be "floating": it will just
reference the zoneinfo file - which are mmap()'ed, kept in a cache and
refcounted. Once the GTimeZone has been associated with a GDateTime, it
will be "anchored" to it: the offset will be resolved, as well as the
DST state.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-17 11:40:10 -04:00
Ryan Lortie
11f06115a4 Bug 629709 - Empty variants
Fix some GVariant bugs uncovered by calling g_variant_new_from_data with
invalid data (which it should be immune to).
2010-09-15 11:21:44 -04:00
Ryan Lortie
235820d0ef GVariant: Check for size == 0 in get_bytestring
And add a test from David that shows the problem.

Closes #629698
2010-09-14 14:56:38 -04:00
Matthias Clasen
0ecfc6e1f9 Better msgctxt for month and weekday names
The current msgctxt string 'GDateTime" lead to the unability to
differentiate between the full and abbreviated name for May.
Therefore, the msgctxt strings have been changed to
  'full month name'
  'abbreviated month name'
  'full weekday name'
  'abbreviated weekday name'
This is a string change, but all translations have been updated
using an sed script.

Bug 629429
2010-09-13 12:27:04 -04:00
Ryan Lortie
445f708b8f Const 'parser' arg to g_markup_parse_context_push
This is a vtable structure and very likely the user has allocated it in
static storage and wants it to be const.  Since we never modify it, no
harm is done to us to have it const.

Closes bug #629328.
2010-09-13 12:14:08 -04:00
Tomeu Vizoso
124023b06d Make g_variant_builder_end's return to be (allow none) because callers
need to add a ref to it in addition to sinking it.
2010-09-13 17:55:18 +02:00
Kristian Rietveld
8466ba8dc1 Include giochannel.c for G_IO_IN, etc.
Fixes build on OS X.
2010-09-13 16:52:51 +02:00
Tor Lillqvist
8a8cdd1d32 Add some more individual own header includes where required 2010-09-12 14:05:49 +03:00
Tomeu Vizoso
38a3b1730d Add annotation for g_variant_get_string 2010-09-11 17:01:10 +02:00
Tor Lillqvist
dc8dc56ddd dos2unix glib/win_iconv.c 2010-09-11 12:08:32 +03:00
Tor Lillqvist
548ddd5fe9 Fix build on Windows and possibly other non-Linux platforms
Include glibconfig.h in files that test G_OS_WIN32. Include headers
for GLib APIs used conditionally where needed.
2010-09-06 15:57:32 +03:00
Emmanuele Bassi
2aa135ee3d Whitespace fixes 2010-09-06 12:26:40 +01:00
Damien Lespiau
43098d0038 datetime: Rename shadowing variables
timezone and tzname shadow variables declared in time.h. Let's rename
them to time_zone and tz_name then.

https://bugzilla.gnome.org/show_bug.cgi?id=628839
2010-09-06 11:51:11 +01:00
Thiago Santos
875ad12345 gdatetime: Use proleptic gregorian
Use Proleptic Gregorian calendar instead of the Julian calendar
as the internal representation.

https://bugzilla.gnome.org/show_bug.cgi?id=50076

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2010-09-06 11:50:30 +01:00
Christian Hergert
6bb89501cf datetime: use g_utf8_next_char() to walk utf8 string
Previously, the format string was iterated many times by
walking to the given offset in the string repeatedly.
This patch instead walks the string using g_utf8_next_char().

Additionally, the character for lookups was a char and could
loose content.  This uses gunichar instead.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-06 11:50:30 +01:00
Christian Hergert
52e44ddec2 datetime: avoid using __year
These were left over from when the inline functions where implemented
as macros.  They are no longer needed and where clashing with the
global __year anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=50076
2010-09-06 11:50:30 +01:00
Emmanuele Bassi
64300c0cc4 datetime: Add get_week_of_year()
https://bugzilla.gnome.org/show_bug.cgi?id=628029

Based on a patch by: Joseph Pingenot

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2010-09-06 11:50:30 +01:00
Emmanuele Bassi
70ef2e3bf6 datetime: Rename internal method
Use add_ymd(), to reflect the order of the arguments.
2010-09-06 11:50:30 +01:00
Emmanuele Bassi
959886d95e build: Fix warnings caused by missing includes 2010-09-06 11:43:04 +01:00
Matthias Clasen
f13d561211 More header inclusion cleanup 2010-09-05 00:23:03 -04:00
Emmanuele Bassi
581e68b7d3 gmain: Define _GNU_SOURCE before including glibconfig.h
As it pulls in unistd.h from something else.
2010-09-04 18:15:15 +01:00
Emmanuele Bassi
ca7dee5949 Build fixes for the fall-out of the inclusion changes 2010-09-04 18:04:34 +01:00
Emmanuele Bassi
b1dbcc4023 gtimer: Fix a compilation warning 2010-09-04 18:03:33 +01:00
Emmanuele Bassi
82db1446b3 Add missing gstrfuncs.h include
For g_strdup() and friends.
2010-09-04 17:22:18 +01:00
Matthias Clasen
04077ff5c5 More include cleanups 2010-09-03 23:03:14 -04:00
Matthias Clasen
dc2e46b2aa Don't include glib.h in other headers 2010-09-03 21:24:40 -04:00
Matthias Clasen
2effb8d0ea Remove excessive header includes 2010-09-03 21:20:07 -04:00
Matthias Clasen
7c68050451 Remove excessive header includes 2010-09-03 21:15:45 -04:00
Matthias Clasen
aad1921651 Don't include glib.h in other headers 2010-09-03 21:12:03 -04:00
Matthias Clasen
349aec676c Remove excessive header inclusions 2010-09-03 20:57:05 -04:00
Matthias Clasen
633f438300 Remove excessive header inclusions 2010-09-03 20:55:17 -04:00
Matthias Clasen
7ddd2100c3 Remove excessive header inclusions 2010-09-03 20:53:37 -04:00
Matthias Clasen
5681809448 Remove excessive header inclusions 2010-09-03 20:51:08 -04:00
Matthias Clasen
a376d9f4c8 Remove some unneeded headers 2010-09-03 20:46:40 -04:00
Matthias Clasen
92c577eeff Remove eexcessive header inclusions 2010-09-03 20:44:59 -04:00
Matthias Clasen
0a9eb80798 Remove redundant header inclusions 2010-09-03 20:41:52 -04:00
Matthias Clasen
6e3b14e155 Remove redundant header inclusions 2010-09-03 20:38:30 -04:00
Matthias Clasen
c5049d86f9 Remove redundant header inclusions 2010-09-03 20:34:15 -04:00
Matthias Clasen
96d87da379 Remove redundant header inclusions 2010-09-03 20:30:54 -04:00
Matthias Clasen
3e2f1e3825 Remove redundant header inclusions
and some whitespace cleanup.
2010-09-03 20:27:45 -04:00
Matthias Clasen
8f81ee86ee Remove redundant header inclusions 2010-09-03 20:15:16 -04:00
Matthias Clasen
d95c6b8834 Remove redundant header inclusions 2010-09-03 20:12:09 -04:00
Matthias Clasen
1409bbab67 Remove redundant header inclusions 2010-09-03 20:05:27 -04:00
Matthias Clasen
9471902d4d Remove redundant header inclusions 2010-09-03 20:01:55 -04:00