1998-04-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
* eventedit.c (ee_init_recurrence_page): New function that creates
the recurrence page in the toplevel notebook.
(ee_store_recur_values_to_ical): Now we can also store the recurrences.
svn path=/trunk/; revision=151
Large number of updates. Recurrence basically works now in most
of its forms (daily, weekly, month-by-position).
Miguel.
svn path=/trunk/; revision=148
1998-04-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
* eventedit.c (ee_store_alarm): Use menu_shell->children, not
menu->children. Why does GtkMenu have a children field in the
object structure?
(check_dates): New function that insures that start_date < end_date.
(check_times): In addition to checking whether the event spans the
whole day, now it insures that start_time < end_time.
* gncal-full-day.c (child_set_size): Now children get bigger
temporarily while they are focused. This allows the handles not
to "overlap" the rows used by the child and thus allow editing of
very thin events.
(recompute_motion): Fix for new child coordinates.
(gncal_full_day_expose): Make it use find_child_by_window()
instead of looking for it by hand.
svn path=/trunk/; revision=145
1998-04-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
* bell.xpm recur.xpm: XPM files for events with alarm and
recurrence, respectively.
1998-04-15 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-full-day.c (button_1): Preserve the up/down cursor while dragging.
svn path=/trunk/; revision=143
1998-04-15 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-full-day.c (child_draw): Now children have a vertical
handle as well. This can be used to move the child anytime, not
only when it is focused.
(recompute_motion): Modified for new drag behavior.
svn path=/trunk/; revision=142
1998-04-15 Federico Mena Quintero <federico@nuclecu.unam.mx>
* eventedit.c (ee_init_general_page): The general_owner may be
null. Do the proper thing when creating the label.
(ee_ok): Update the gnome calendar appropriately.
* timeutil.h:
* gncal-year-view.h: Add some missing prototypes.
* gncal-full-day.c (child_popup_menu): Set the sensitivity of menu
items according to whether the ical object is being edited or not.
* eventedit.c (event_editor_new): Set the "being edited" flag on
the ical object (stored as the ical object's user data).
(event_editor_destroy): Release the flag.
* calobj.h: The iCalObject structure now has a generic user_data pointer.
* calobj.c (ical_object_set_user_data ical_object_get_user_data):
Functions to set this data.
svn path=/trunk/; revision=140
Year view marks ranges of new dates (on update view).
Recurrence iterator functions are here now (clap, clap, clap).
Microsoft Outlook's days are counted.
Miguel.
svn path=/trunk/; revision=139
1998-04-15 Arturo Espinosa Aldama <arturo@nuclecu.unam.mx>
* gncal-year-view.[hc]: Now using time_t for new and set.
Random fixes, as well.
svn path=/trunk/; revision=137
1998-04-15 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gncal-full-day.c (layout_kill_rows): Routine to destory rows
array properly.
* gncal-year-view.c (gncal_year_view_new): Add missing year in
call to strftime.
* calobj.c (ical_object_create_from_vobject): Fixed memory leaks
from the return values of versit's fakeCString.
svn path=/trunk/; revision=136
1998-04-14 Arturo Espinosa Aldama <arturo@nuclecu.unam.mx>
* gncal-year-view.[hc]: New widget for the year view.
* Makefile.am: added required compilation of the new files.
svn path=/trunk/; revision=134
1998-04-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-week-view.c (gncal_week_view_update): Now takes object and
flags parameters.
* gncal-day-view.c (gncal_day_view_update): Likewise.
* gncal-full-day.c (gncal_full_day_update): Likewise.
(child_focus_in): New function. In conjunction with
child_focus_out(), these only display the handles in the child
when it is focused. The result is that the user can see more of
the child's text when nothing is focused, and we can also display
fatter and nicer drag handles.
* gnome-cal.c (gnome_calendar_object_changed): Now takes an
additional flags parameter
(gnome_calendar_update_all): Made function static. Now takes
changed object and flags parameters as well.
(gnome_calendar_object_changed): Now takes additional flags
parameter to indicate what changed in the specified object.
* calobj.h (CalObjectChange): New enum with flags to describe what
has been changed in an object.
svn path=/trunk/; revision=132
1998-04-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-full-day.h:
* gncal-full-day.c (gncal_full_day_focus_child): New function to
let the outside world decide which child to focus.
(gncal_full_day_focus_child): Bleah. We have to synthesize a
click because GtkText will not set the cursor when you focus it.
* gnome-cal.c (day_view_range_activated): Focus the new child in
the full day widget.
svn path=/trunk/; revision=131
1998-04-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gnome-cal.c (day_view_range_activated): Create new object and
add it to the calendar. You can now select a range in the
full-day view, hit Return, and a new event will be added at the
selected range. I still have to figure out how to focus this new child.
* gncal-full-day.c (paint_back): Rewrote function to avoid
painting an area more than once -- eliminate flicker.
(paint_back_rows): New function that calls paint_back() only for
the area of the specified rows.
(gncal_full_day_button_press):
(gncal_full_day_button_release):
(gncal_full_day_motion): Made these functions use
paint_back_rows() instead of paint_back(), to eliminate flicker. Wheee!
svn path=/trunk/; revision=129
1998-04-12 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gnome-cal.c (setup_day_view): We now connect to the
range_activated signal of the fullday widget instead of catching
key presses ourselves.
(day_view_range_activated): New function that creates a new
iCalObject and inserts it into the calendar, not finished yet.
1998-04-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-full-day.c (get_time_from_rows): New function, calculates
a pair of time_t values from the specified start and number of rows.
* gncal-full-day.h (GncalFullDayClass): New signal
"range_activated". It is emitted when a range is selected and the
user hits Return.
(gncal_full_day_selection_range): New function, returns the
selected range.
* gncal-full-day.c (struct drag_info): Moved selection information
to their own fields instead of sharing the child's drag fields.
This allows us to keep the selection when a child is moved.
(recompute_motion): Made the case when (row < di->sel_click_row)
work correctly.
svn path=/trunk/; revision=128
1998-04-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-full-day.c (recompute_motion): Now we support selecting a
range in the main window (by clicking+dragging). It flickers
horribly and is not perfect, but it is a start.
svn path=/trunk/; revision=125
1998-04-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gncal-full-day.c (child_map): Show instead of just map the child
widget (otherwise the text widget gets confused and will not focus).
* calobj.c (ical_object_to_vobject): Quote chars as 'x', not "x".
* calobj.h: Added prototype for ical_object_to_vobject().
* gnome-cal.c (gnome_calendar_object_changed): New function. This
should be called when a calendar object is changed.
* gncal-full-day.c (update_from_drag_info): Call
gnome_calendar_object_changed() instead of updating manually.
* calendar.c (calendar_add_object):
(calendar_remove_object): Set the modified flag to true.
* gncal-full-day.c (gncal_full_day_draw): Finished implementing
this function.
svn path=/trunk/; revision=120
1998-04-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
* eventedit.c: Removed unused global variable parent_class.
* eventedit.h: Renamed gtk_window field to window.
Made the parent_class field in the EventEditorClass structure be a
GtkWindowClass, not a gnome property box class.
Added prototype for event_editor_get_type().
svn path=/trunk/; revision=110