diff options
98 files changed, 4041 insertions, 3541 deletions
@@ -1,3 +1,41 @@ +2008-12-10 Suman Manjunath <msuman@novell.com> + + * configure.in: Build the weather calendar setup plugin unless + explicitly requested not to, thereby making the libgweather + dependency optional. + +2008-12-01 Srinivasa Ragavan <sragavan@novell.com> + + * NEWS: Evolution 2.25.2 release changes. + +2008-11-28 Felix Riemann <friemann@svn.gnome.org> + + ** Part of fix for bug #554464 + + * configure.in: Bump gtk+ minimum version to 2.14.0 which pulls in a + recent enough Pango version. + +2008-11-12 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #524377 + + * configure.in: Bump eds minimum version to 2.25.2 because of + camel's int camel_header_param_encode_filenames_in_rfc_2047. + +2008-11-07 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #557581 + + * configure.in: + Break up the version definitions such that we can calculate the + latest stable version and pass a STABLE_VERSION definition to + shell/main.c. + +2008-11-07 Sankar P <psankar@novell.com> + + * Makefile.am: + Ship COPYING.OPENLDAP also + 2008-11-03 Srinivasa Ragavan <sragavan@novell.com> * configure.in, NEWS: Evolution 2.25.1 release and version bump @@ -1,3 +1,52 @@ +Evolution 2.25.2 2008-12-01 +--------------------------- + +New in 2.25.2: + Added a "Dismiss" button to the alarm notification dialog to be able to dismiss only some of the alarms shown in the dialog (Milan Crha) + Show attendees' status in the tooltip if available (Milan Crha) + Support for evolution-mapi support (Suman Manjunath) + +Bug Fixes: + #332729: Disconnect handlers on the widget before freeing the structure it is using (Milan Crha) + #359745: Show CalDAV options under all the other standard options (Milan Crha) + #386036: Added new option "Sender or Recipients" which filters on From/To/Cc/Bcc headers (Milan Crha) + #434320: (Novell Bugzilla) When the popup is clicked close the status icon (Srinivasa Ragavan) + #437226: (Novell Bugzilla) Proper message to hint the mail is being sent by delegatee (Bharath Acharya) + #440007: (Novell Bugzilla) Print Preview of Calendar Event Shows Blank Page Before Data fixed (Bharath Acharya) + #440646: (Novell Bugzilla) Set the ESource color-spec for proxy accounts in the correct format (Suman Manjunath) + #443190: (Novell Bugzilla) Block signals from attachment-bar while still filling the widgets (Suman Manjunath) + #446286: (Novell Bugzilla) Remove the header check as we do a e_gw_connection_get_item for tracking the status (Bharath Acharya) + #490503: Show summary of unaccepted meetings as bold in calendar views (Suman Manjunath) + #503662: Set NULL properly to protect against using already freed memory (Milan Crha) + #524377: Declare, be able to change and listen to changes on new key, '/apps/evolution/mail/composer/outlook_filenames' to encode file names header in camel based on the RFC 2047, instead of the correct RFC 2231 (Milan Crha) + #541121: Itip-formatter: don't allow sending a response to meeting invitation replies (Patrick Ohly) + #552583: Strip the attributes out of both URLs and just do a simple string comparison. Try to match a URL to an account (Matthew Barnes) + #552850: Prefer the term "side bar" over "folder tree" (Matthew Barnes) + #554450: Get drag-and-drop to the attachment bar working again (Matthew Barnes) + #554464: Bump gtk+ minimum version to 2.14.0 which pulls in a recent enough Pango version (Felix Riemann) + #555276: Don't load vfolder as subfolder (Srinivasa Ragavan) + #556224: Run always 'update_todo_view' in a separate thread and guard its body with a mutex (Milan Crha) + #557246: Pop up the "Unsubscribe Folder" option only for the subscribed folders and not to the Other's folder hierarchy (Bharath Acharya) + #557581: Break up the version definitions such that we can calculate the latest stable version and pass a STABLE_VERSION definition (Matthew Barnes) + #557726: Destroy the widgets created by the google contacts group (Bharath Acharya) + #557818: ESourceSelector now handles most of the drag-and-drop signals. We just have to listen for the new "data-dropped" signal and deal with it (Matthew Barnes) + #558322: New "Rename" item in the source selector pop-up menu calls the recently added e_source_selector_edit_primary_selection (Matthew Barnes) + #558354: Changed "Close" button to "Dismiss all" and added a "Dismiss" button to the alarm notification dialog to be able to dismiss only some of the alarms shown in the dialog (Milan Crha) + #559371: Opening _either_ Preferences or a new composer window with no spell checking language chosen will pick a default language for you (Matthew Barnes) + #559518: Desensitizes the button when the username field is blank for the google source (Matthew Barnes) + #559604: Show attendees' status in the tooltip if available (Milan Crha) + #559701: Edit Preferences crashes when there are no spell checking dictionaries added. Don't save when its NULL (Srinivasa Ragavan) + #559810: Do not localize empty label names, also localize them only first time (Milan Crha) + #560138: Let wrap description text in a tooltip (Milan Crha) + #560329: Fix the signature of the 'children-changed' signal emission (Li Yuan) + #560882: Left-align header labels instead of centering them, and adjust the header padding so they look purdy (Matthew Barnes) + #561467: some changes in the core code needed for evolution-mapi (Suman Manjunath) + +Updated Translations: + Jorge Gonzalez (es) + Petr Kovar (cs) + Nickolay V. Shmyrev (ru) + Evolution 2.25.1 2008-11-03 --------------------------- diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index adb36417bd..8fb965960d 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,3 +1,51 @@ +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563669 + + * gui/component/ldap-config.glade: + * printing/e-contact-print.glade: + Use zero GtkSpinButton's PageSize, as Gtk+ requires. + +2008-12-08 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #270376 + + * gui/contact-editor/e-contact-editor.c: (im_service []), + (non_string_fields[]): + * gui/widgets/eab-contact-display.c: (render_contact): + Support Skype field in a contact. + + * gui/contact-editor/e-contact-editor-im.c: + Changes here too, but file doesn't seem to be used. + +2008-12-08 Jennifer Newman <jennifer.newman@tufts.edu> + + ** Fix for bug #549964 + + * gui/widgets/eab-gui-util.c (eab_load_error_dialog), + (eab_search_result_dialog): Fix for a few erroneous strings. + +2008-12-05 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #332629 + + * gui/widgets/addresstypes.xml: + Use dynamically created list of categories in the option's widget. + +2008-12-04 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #263268 + + * gui/widgets/e-addressbook-view.c: (search_activated), + (make_suboptions): Be able to search for contacts without category. + +2008-12-02 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #348299 + + * gui/contact-editor/e-contact-editor.c (e_contact_editor_init): + Use category completion in the Categories field. + 2008-11-17 Matthew Barnes <mbarnes@redhat.com> ** Fixes part of bug #557818 diff --git a/addressbook/gui/component/ldap-config.glade b/addressbook/gui/component/ldap-config.glade index 58ffba43bf..2cf886b914 100644 --- a/addressbook/gui/component/ldap-config.glade +++ b/addressbook/gui/component/ldap-config.glade @@ -1394,7 +1394,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 1000 1 10 10</property> + <property name="adjustment">0 0 1000 1 10 0</property> </widget> <packing> <property name="left_attach">1</property> @@ -2942,7 +2942,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 1000 1 10 10</property> + <property name="adjustment">0 0 1000 1 10 0</property> </widget> <packing> <property name="left_attach">1</property> diff --git a/addressbook/gui/contact-editor/e-contact-editor-im.c b/addressbook/gui/contact-editor/e-contact-editor-im.c index 7facb68b45..cc4fcc5d05 100644 --- a/addressbook/gui/contact-editor/e-contact-editor-im.c +++ b/addressbook/gui/contact-editor/e-contact-editor-im.c @@ -47,8 +47,8 @@ enum { PROP_EDITABLE }; -#define FIRST_IM_TYPE E_CONTACT_IM_AIM -#define LAST_IM_TYPE E_CONTACT_IM_ICQ +/*#define FIRST_IM_TYPE E_CONTACT_IM_AIM +#define LAST_IM_TYPE E_CONTACT_IM_ICQ*/ static const char *im_labels[] = { N_("AOL Instant Messenger"), @@ -57,7 +57,8 @@ static const char *im_labels[] = { N_("Yahoo Messenger"), N_("Gadu-Gadu Messenger"), N_("MSN Messenger"), - N_("ICQ") + N_("ICQ"), + N_("Skype") }; static const char *im_images[] = { @@ -67,9 +68,47 @@ static const char *im_images[] = { "im-yahoo", "im-gadugadu", "im-msn", - "im-icq" + "im-icq", + "stock_people" }; +/** + * Decodes from service (E_CONTACT_IM_ value to the index in the above + * fields and back, depending on the second parameter. + * @param val Value to decode + * @param val_is_service TRUE, if val is E_CONTACT_IM_ value, otherwise it's an index number. + **/ +static int +decode_service (int val, gboolean val_is_service) +{ + static const int fields[] = { + E_CONTACT_IM_AIM, + E_CONTACT_IM_GROUPWISE, + E_CONTACT_IM_JABBER, + E_CONTACT_IM_YAHOO, + E_CONTACT_IM_GADUGADU, + E_CONTACT_IM_MSN, + E_CONTACT_IM_ICQ, + E_CONTACT_IM_SKYPE + }; + + int i, sz = G_N_ELEMENTS (fields); + if (val_is_service) { + for (i = 0; i < sz; i++) { + if (val == fields[i]) + break; + } + if (i >= sz) + i = 0; + } else if (val >= 0 && val < sz) { + i = fields [val]; + } else { + i = fields [0]; + } + + return i; +} + GType e_contact_editor_im_get_type (void) { @@ -111,9 +150,9 @@ e_contact_editor_im_class_init (EContactEditorImClass *klass) g_param_spec_int ("service", _("Service"), /*_( */"XXX blurb" /*)*/, - FIRST_IM_TYPE, - LAST_IM_TYPE, - FIRST_IM_TYPE, + E_CONTACT_IM_AIM, + E_CONTACT_IM_SKYPE, + E_CONTACT_IM_AIM, G_PARAM_READWRITE)); g_object_class_install_property (object_class, PROP_LOCATION, @@ -141,7 +180,7 @@ e_contact_editor_im_class_init (EContactEditorImClass *klass) static void service_changed_cb(GtkWidget *optmenu, EContactEditorIm *editor) { - editor->service = gtk_option_menu_get_history(GTK_OPTION_MENU(optmenu)) + FIRST_IM_TYPE; + editor->service = decode_service (gtk_option_menu_get_history(GTK_OPTION_MENU(optmenu)), FALSE); } static void @@ -254,7 +293,7 @@ e_contact_editor_im_init (EContactEditorIm *e_contact_editor_im) gtk_window_set_resizable(GTK_WINDOW(e_contact_editor_im), TRUE); - e_contact_editor_im->service = FIRST_IM_TYPE; + e_contact_editor_im->service = decode_service (0, FALSE); e_contact_editor_im->location = g_strdup("HOME"); e_contact_editor_im->username = NULL; @@ -440,7 +479,7 @@ fill_in_info(EContactEditorIm *editor) optmenu = glade_xml_get_widget(editor->gui, "optmenu-service"); if (optmenu != NULL) - gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu), editor->service - FIRST_IM_TYPE); + gtk_option_menu_set_history(GTK_OPTION_MENU(optmenu), decode_service (editor->service, TRUE)); optmenu = glade_xml_get_widget(editor->gui, "optmenu-location"); diff --git a/addressbook/gui/contact-editor/e-contact-editor.c b/addressbook/gui/contact-editor/e-contact-editor.c index 30d672161a..e5686d3f76 100644 --- a/addressbook/gui/contact-editor/e-contact-editor.c +++ b/addressbook/gui/contact-editor/e-contact-editor.c @@ -36,6 +36,7 @@ #include <misc/e-gui-utils.h> #include <libebook/e-address-western.h> +#include <libedataserverui/e-category-completion.h> #include <libedataserverui/e-source-combo-box.h> #include <camel/camel.h> @@ -176,7 +177,8 @@ im_service [] = { E_CONTACT_IM_GADUGADU, N_ ("Gadu-Gadu") }, { E_CONTACT_IM_MSN, N_ ("MSN") }, { E_CONTACT_IM_ICQ, N_ ("ICQ") }, - { E_CONTACT_IM_GROUPWISE, N_ ("GroupWise") } + { E_CONTACT_IM_GROUPWISE, N_ ("GroupWise") }, + { E_CONTACT_IM_SKYPE, N_ ("Skype") } }; /* Defaults from the table above */ @@ -3102,6 +3104,7 @@ static const EContactField non_string_fields [] = { E_CONTACT_IM_GADUGADU, E_CONTACT_IM_MSN, E_CONTACT_IM_ICQ, + E_CONTACT_IM_SKYPE, E_CONTACT_PHOTO, E_CONTACT_LOGO, E_CONTACT_X509_CERT, @@ -3357,6 +3360,7 @@ e_contact_editor_init (EContactEditor *e_contact_editor) { GladeXML *gui; GtkWidget *widget, *label; + GtkEntryCompletion *completion; char *gladefile; e_contact_editor->name = e_contact_name_new(); @@ -3417,6 +3421,11 @@ e_contact_editor_init (EContactEditor *e_contact_editor) if (widget) gtk_widget_grab_focus (widget); + widget = glade_xml_get_widget (e_contact_editor->gui, "entry-categories"); + completion = e_category_completion_new (); + gtk_entry_set_completion (GTK_ENTRY (widget), completion); + g_object_unref (completion); + /* Connect to the deletion of the dialog */ g_signal_connect (e_contact_editor->app, "delete_event", diff --git a/addressbook/gui/widgets/addresstypes.xml b/addressbook/gui/widgets/addresstypes.xml index 813bf1c0ac..c93f9cac19 100644 --- a/addressbook/gui/widgets/addresstypes.xml +++ b/addressbook/gui/widgets/addresstypes.xml @@ -74,72 +74,7 @@ </option> </input> <input type="optionlist" name="category"> - <option value="Anniversary"> - <title>Anniversary</title> - </option> - <option value="Holiday"> - <title>Holiday</title> - </option> - <option value="Ideas"> - <title>Ideas</title> - </option> - <option value="Status"> - <title>Status</title> - </option> - <option value="Holiday Cards"> - <title>Holiday Cards</title> - </option> - <option value="Hot Contacts"> - <title>Hot Contacts</title> - </option> - <option value="International"> - <title>International</title> - </option> - <option value="Birthday"> - <title>Birthday</title> - </option> - <option value="VIP"> - <title>VIP</title> - </option> - <option value="Gifts"> - <title>Gifts</title> - </option> - <option value="Waiting"> - <title>Waiting</title> - </option> - <option value="Key Customer"> - <title>Key Customer</title> - </option> - <option value="Time & Expenses"> - <title>Time & Expenses </title> - </option> - <option value="Miscellaneous"> - <title>Miscellaneous</title> - </option> - <option value="Business"> - <title>Business</title> - </option> - <option value="Personal"> - <title>Personal</title> - </option> - <option value="Suppliers"> - <title>Suppliers</title> - </option> - <option value="Goals/Objectives"> - <title>Goals/Objectives</title> - </option> - <option value="Strategies"> - <title>Strategies</title> - </option> - <option value="Competition"> - <title>Competition</title> - </option> - <option value="Favourites"> - <title>Favourites</title> - </option> - <option value="Phone Calls"> - <title>Phone Calls</title> - </option> + <dynamic func="e_util_get_category_filter_options"/> </input> </part> <part name="sexp"> diff --git a/addressbook/gui/widgets/eab-contact-display.c b/addressbook/gui/widgets/eab-contact-display.c index 1d22f3ea70..0208c4fd0f 100644 --- a/addressbook/gui/widgets/eab-contact-display.c +++ b/addressbook/gui/widgets/eab-contact-display.c @@ -91,6 +91,7 @@ common_location [] = #define MSN_ICON "im-msn" #define YAHOO_ICON "im-yahoo" #define GADUGADU_ICON "im-gadugadu" +#define SKYPE_ICON "stock_people" #define VIDEOCONF_ICON "stock_video-conferencing" #define MAX_COMPACT_IMAGE_DIMENSION 48 @@ -617,6 +618,7 @@ render_contact (GtkHTMLStream *html_stream, EContact *contact) accum_multival_attribute (accum, contact, _("MSN"), E_CONTACT_IM_MSN, MSN_ICON, 0); accum_multival_attribute (accum, contact, _("Yahoo"), E_CONTACT_IM_YAHOO, YAHOO_ICON, 0); accum_multival_attribute (accum, contact, _("Gadu-Gadu"), E_CONTACT_IM_GADUGADU, GADUGADU_ICON, 0); + accum_multival_attribute (accum, contact, _("Skype"), E_CONTACT_IM_SKYPE, SKYPE_ICON, 0); if (accum->len > 0) gtk_html_stream_printf (html_stream, "%s", accum->str); diff --git a/addressbook/gui/widgets/eab-gui-util.c b/addressbook/gui/widgets/eab-gui-util.c index d3c0910827..9db9630b72 100644 --- a/addressbook/gui/widgets/eab-gui-util.c +++ b/addressbook/gui/widgets/eab-gui-util.c @@ -101,46 +101,45 @@ eab_load_error_dialog (GtkWidget *parent, ESource *source, EBookStatus status) if (status == E_BOOK_ERROR_OFFLINE_UNAVAILABLE) { can_detail_error = FALSE; - label_string = _("We were unable to open this address book. This either means " - "this book is not marked for offline usage or not yet downloaded " + label_string = _("This address book cannot be opened. This either means this " + "book is not marked for offline usage or not yet downloaded " "for offline usage. Please load the address book once in online mode " - "to download its contents"); + "to download its contents."); } else if (!strncmp (uri, "file:", 5)) { char *path = g_filename_from_uri (uri, NULL, NULL); label = g_strdup_printf ( - _("We were unable to open this address book. Please check that the " - "path %s exists and that you have permission to access it."), path); + _("This address book cannot be opened. Please check that the " + "path %s exists and that permissions are set to access it."), path); g_free (path); label_string = label; } + +#ifndef HAVE_LDAP else if (!strncmp (uri, "ldap:", 5)) { /* special case for ldap: contact folders so we can tell the user about openldap */ -#ifdef HAVE_LDAP - label_string = - _("We were unable to open this address book. This either " - "means you have entered an incorrect URI, or the LDAP server " - "is unreachable."); -#else + can_detail_error = FALSE; label_string = _("This version of Evolution does not have LDAP support " - "compiled in to it. If you want to use LDAP in Evolution, " - "you must install an LDAP-enabled Evolution package."); + "compiled in to it. To use LDAP in Evolution " + "an LDAP-enabled Evolution package must be installed."); + + } #endif - } else { - /* other network folders */ + else { + /* other network folders (or if ldap is enabled and server is unreachable) */ label_string = - _("We were unable to open this address book. This either " - "means you have entered an incorrect URI, or the server " + _("This address book cannot be opened. This either " + "means that an incorrect URI was entered, or the server " "is unreachable."); } if (can_detail_error) { /* do not show repository offline message, it's kind of generic error */ if (status != E_BOOK_ERROR_REPOSITORY_OFFLINE && status > 0 && status < G_N_ELEMENTS (status_to_string) && status_to_string [status]) { - label = g_strconcat (label_string, "\n\n", _("Detailed error:"), " ", _(status_to_string [status]), NULL); + label = g_strconcat (label_string, "\n\n", _("Detailed error message:"), " ", _(status_to_string [status]), NULL); label_string = label; } } @@ -170,7 +169,7 @@ eab_search_result_dialog (GtkWidget *parent, break; case E_BOOK_VIEW_STATUS_TIME_LIMIT_EXCEEDED: str = _("The time to execute this query exceeded the server limit or the limit\n" - "you have configured for this address book. Please make your search\n" + "configured for this address book. Please make your search\n" "more specific or raise the time limit in the directory server\n" "preferences for this address book."); break; diff --git a/addressbook/printing/e-contact-print.glade b/addressbook/printing/e-contact-print.glade index c65d23ae21..22e54c849d 100644 --- a/addressbook/printing/e-contact-print.glade +++ b/addressbook/printing/e-contact-print.glade @@ -406,7 +406,7 @@ <property name="wrap">no</property> <property name="snap_to_ticks">no</property> <property name="visible">yes</property> - <property name="adjustment">2 0 100 1 10 10</property> + <property name="adjustment">2 0 100 1 10 0</property> </widget> </child> </widget> @@ -441,7 +441,7 @@ <property name="width-request">45</property> <property name="snap_to_ticks">no</property> <property name="visible">yes</property> - <property name="adjustment">1 0 100 1 10 10</property> + <property name="adjustment">1 0 100 1 10 0</property> </widget> </child> </widget> diff --git a/calendar/ChangeLog b/calendar/ChangeLog index a28754ad15..4ba7876416 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,112 @@ +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #333224 + + * gui/e-day-view.c: (e_day_view_on_text_item_event): Sanitize returned + values from 'e_day_view_convert_position_in_main_canvas', because it + can let the 'event_num' or 'day' set to -1, which means invalid value. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563669 + + * gui/dialogs/recurrence-page.glade: + * gui/dialogs/alarm-dialog.glade: + * gui/dialogs/event-page.glade: + * gui/dialogs/task-details-page.glade: + * gui/dialogs/cal-prefs-dialog.glade: + * gui/alarm-notify/alarm-notify.glade: + * gui/goto-dialog.glade: + Use zero GtkSpinButton's PageSize, as Gtk+ requires. + +2008-12-08 Jeff Cai <jeff.cai@sun.com> + + ** Fix for bug #563633 + + * gui/e-cal-model.c: Add an unused member for _ECalModelComponentPrivate + +2008-12-08 Jennifer Newman <jennifer.newman@tufts.edu> + + ** Fix for bug #555371 + + * gui/dialogs/comp-editor.c: Added print menu option to task, memo and + event editors. + +2008-12-08 Hiroyuki Ikezoe <poincare@ikezoe.net> + + ** Fix for bug #350725 + + * gui/e-calendar-view.c (e_calendar_view_class_init), + (clipboard_clear_calendar_cb), (clipboard_get_calendar_cb), + (e_calendar_view_copy_clipboard), (clipboard_get_calendar_data), + (e_calendar_view_paste_text), (clipboard_paste_received_cb), + (e_calendar_view_paste_clipboard): + * gui/e-calendar-view.h: + * gui/e-day-view.c (e_day_view_class_init), + (e_day_view_add_new_event_in_selected_range), + (e_day_view_do_key_press), (e_day_view_get_num_events_selected), + (e_day_view_paste_text): + * gui/e-week-view.c (e_week_view_class_init), + (e_week_view_add_new_event_in_selected_range), + (e_week_view_do_key_press), (e_week_view_is_jump_button_visible), + (e_week_view_paste_text): + + Copy/Paste support in day/week views. + +2008-12-08 Paul Bolle <pebolle@tiscali.nl> + + ** Fix for bug #551599 + + * gui/dialogs/alarm-dialog.c: (populate_widgets_from_alarm): + Do not fallback to default 15 minutes alarm offset if alarm is + triggered at start (or end) of appointment. + +2008-12-05 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #332629 + + * gui/caltypes.xml: + * gui/memotypes.xml: + * gui/tasktypes.xml: + Use dynamically created list of categories in the option's widget. + +2008-12-03 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #352287 + + * gui/e-day-view-top-item.c: (e_day_view_top_item_draw_long_event): + Draw top icons in full detail/color depth (for weather, for example). + +2008-12-02 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #348299 + + * gui/dialogs/event-page.c (get_widgets): + * gui/dialogs/memo-page.c (get_widgets): + * gui/dialogs/task-page.c (get_widgets): + Use category completion in the Categories field. + + * gui/dialogs/event-editor.c: + * gui/dialogs/memo-editor.c: + * gui/dialogs/task-editor.c: + Fix some reference count leaks. + +2008-11-28 Suman Manjunath <msuman@novell.com> + + ** Fix for bug #561467 + + * gui/dialogs/comp-editor.c (real_send_comp): Don't replace + attachment list if backend can CREATE_MESSAGES + * gui/itip-utils.c (itip_send_comp): Check whether backend + could handle sending requests/updates. + +2008-11-25 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #560138 + + * gui/e-calendar-table.c: (query_tooltip_cb): + Let wrap description text in a tooltip. + 2008-11-19 Milan Crha <mcrha@redhat.com> ** Fix for bug #556224 diff --git a/calendar/gui/alarm-notify/alarm-notify.glade b/calendar/gui/alarm-notify/alarm-notify.glade index df1b1f92a2..9c2993d474 100644 --- a/calendar/gui/alarm-notify/alarm-notify.glade +++ b/calendar/gui/alarm-notify/alarm-notify.glade @@ -269,7 +269,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 12 1 5 5</property> + <property name="adjustment">0 0 12 1 5 0</property> </widget> <packing> <property name="padding">0</property> @@ -313,7 +313,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">5 0 59 1 10 10</property> + <property name="adjustment">5 0 59 1 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/calendar/gui/caltypes.xml b/calendar/gui/caltypes.xml index 16dc19c333..c1997a4fb0 100644 --- a/calendar/gui/caltypes.xml +++ b/calendar/gui/caltypes.xml @@ -129,75 +129,7 @@ </option> </input> <input type="optionlist" name="category"> - <option value="Anniversary"> - <_title>Anniversary</_title> - </option> - <option value="Holiday"> - <_title>Holiday</_title> - </option> - <option value="Ideas"> - <_title>Ideas</_title> - </option> - <option value="Status"> - <_title>Status</_title> - </option> - <option value="Holiday Cards"> - <_title>Holiday Cards</_title> - </option> - <option value="Hot Contacts"> - <_title>Hot Contacts</_title> - </option> - <option value="International"> - <_title>International</_title> - </option> - <option value="Next 7 Days"> - <_title>Next 7 Days</_title> - </option> - <option value="Birthday"> - <_title>Birthday</_title> - </option> - <option value="VIP"> - <_title>VIP</_title> - </option> - <option value="Gifts"> - <_title>Gifts</_title> - </option> - <option value="Waiting"> - <_title>Waiting</_title> - </option> - <option value="Key Customer"> - <_title>Key Customer</_title> - </option> - <option value="Time & Expenses"> - <_title>Time & Expenses </_title> - </option> - <option value="Miscellaneous"> - <_title>Miscellaneous</_title> - </option> - <option value="Business"> - <_title>Business</_title> - </option> - <option value="Personal"> - <_title>Personal</_title> - </option> - <option value="Suppliers"> - <_title>Suppliers</_title> - </option> - <option value="Goals/Objectives"> - <_title>Goals/Objectives</_title> - </option> - <option value="Strategies"> - <_title>Strategies</_title> - </option> - <option value="Competition"> - <_title>Competition</_title> - </option> - <option value="Favourites"> - <_title>Favourites</_title> - </option> - <option value="Phone Calls"> - <_title>Phone Calls</_title> - </option> + <dynamic func="e_util_get_category_filter_options"/> </input> </part> diff --git a/calendar/gui/dialogs/alarm-dialog.c b/calendar/gui/dialogs/alarm-dialog.c index a5f13ccb51..7e429a28b2 100644 --- a/calendar/gui/dialogs/alarm-dialog.c +++ b/calendar/gui/dialogs/alarm-dialog.c @@ -623,19 +623,18 @@ populate_widgets_from_alarm (Dialog *dialog) break; } - if ( trigger->u.rel_duration.hours ) { + if ( trigger->u.rel_duration.days ) { + e_dialog_option_menu_set (dialog->value_units, DAYS, value_map); + e_dialog_spin_set (dialog->interval_value, trigger->u.rel_duration.days); + } else if ( trigger->u.rel_duration.hours ) { e_dialog_option_menu_set (dialog->value_units, HOURS, value_map); e_dialog_spin_set (dialog->interval_value, trigger->u.rel_duration.hours); - } - - if ( trigger->u.rel_duration.minutes ){ + } else if ( trigger->u.rel_duration.minutes ) { e_dialog_option_menu_set (dialog->value_units, MINUTES, value_map); e_dialog_spin_set (dialog->interval_value, trigger->u.rel_duration.minutes); - } - - if ( trigger->u.rel_duration.days ){ - e_dialog_option_menu_set (dialog->value_units, DAYS, value_map); - e_dialog_spin_set (dialog->interval_value, trigger->u.rel_duration.days); + } else { + e_dialog_option_menu_set (dialog->value_units, MINUTES, value_map); + e_dialog_spin_set (dialog->interval_value, 0); } /* Repeat options */ diff --git a/calendar/gui/dialogs/alarm-dialog.glade b/calendar/gui/dialogs/alarm-dialog.glade index 4e32374928..5a5d4ef291 100644 --- a/calendar/gui/dialogs/alarm-dialog.glade +++ b/calendar/gui/dialogs/alarm-dialog.glade @@ -197,7 +197,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1 0 999 1 10 10</property> + <property name="adjustment">1 0 999 1 10 0</property> </widget> <packing> <property name="padding">0</property> @@ -431,7 +431,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1 1 999 1 10 10</property> + <property name="adjustment">1 1 999 1 10 0</property> </widget> <packing> <property name="padding">0</property> @@ -475,7 +475,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">5 0 999 1 10 10</property> + <property name="adjustment">5 0 999 1 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/calendar/gui/dialogs/cal-prefs-dialog.glade b/calendar/gui/dialogs/cal-prefs-dialog.glade index c24321e0a2..d3003bdb6f 100644 --- a/calendar/gui/dialogs/cal-prefs-dialog.glade +++ b/calendar/gui/dialogs/cal-prefs-dialog.glade @@ -808,7 +808,7 @@ Sunday</property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 9999 1 10 10</property> + <property name="adjustment">0 0 9999 1 10 0</property> </widget> <packing> <property name="padding">0</property> @@ -1312,7 +1312,7 @@ Days</property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1 0 9999 1 10 10</property> + <property name="adjustment">1 0 9999 1 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c index 41e245ceef..f3d9eb7b34 100644 --- a/calendar/gui/dialogs/comp-editor.c +++ b/calendar/gui/dialogs/comp-editor.c @@ -137,6 +137,7 @@ static const gchar *ui = " <menubar action='main-menu'>" " <menu action='file-menu'>" " <menuitem action='save'/>" +" <menuitem action='print'/>" " <menuitem action='close'/>" " </menu>" " <menu action='edit-menu'>" @@ -158,6 +159,7 @@ static const gchar *ui = " </menubar>" " <toolbar name='main-toolbar'>" " <toolitem action='save'/>" +" <toolitem action='print'/>" " <toolitem action='close'/>" " <separator/>" " <toolitem action='attach'/>" @@ -1306,7 +1308,7 @@ static GtkActionEntry core_entries[] = { { "print", GTK_STOCK_PRINT, NULL, - NULL, + "<Control>p", NULL, G_CALLBACK (action_print_cb) }, @@ -3080,7 +3082,8 @@ real_send_comp (CompEditor *editor, ECalComponentItipMethod method) set_attendees_for_delegation (send_comp, address, method); } - if (!e_cal_component_has_attachments (priv->comp)) { + if (!e_cal_component_has_attachments (priv->comp) + || e_cal_get_static_capability (priv->client, CAL_STATIC_CAPABILITY_CREATE_MESSAGES)) { if (itip_send_comp (method, send_comp, priv->client, NULL, NULL, users)) { g_object_unref (send_comp); diff --git a/calendar/gui/dialogs/event-editor.c b/calendar/gui/dialogs/event-editor.c index c4393b0174..2a4883cdfd 100644 --- a/calendar/gui/dialogs/event-editor.c +++ b/calendar/gui/dialogs/event-editor.c @@ -123,7 +123,6 @@ create_schedule_page (CompEditor *editor) priv->sched_page = schedule_page_new (priv->model, editor); page = COMP_EDITOR_PAGE (priv->sched_page); - g_object_ref_sink (priv->sched_page); gtk_container_add ( GTK_CONTAINER (GTK_DIALOG (priv->sched_window)->vbox), comp_editor_page_get_widget (page)); @@ -289,7 +288,6 @@ event_editor_constructor (GType type, gtk_action_group_set_visible (action_group, is_meeting); priv->event_page = event_page_new (priv->model, editor); - g_object_ref_sink (priv->event_page); comp_editor_append_page ( editor, COMP_EDITOR_PAGE (priv->event_page), _("Appoint_ment"), TRUE); @@ -306,7 +304,6 @@ event_editor_constructor (GType type, priv->recur_page = recurrence_page_new (editor); page = COMP_EDITOR_PAGE (priv->recur_page); - g_object_ref_sink (priv->recur_page); gtk_container_add ( GTK_CONTAINER ((GTK_DIALOG (priv->recur_window)->vbox)), comp_editor_page_get_widget (page)); diff --git a/calendar/gui/dialogs/event-page.c b/calendar/gui/dialogs/event-page.c index 2855113e92..53707432d9 100644 --- a/calendar/gui/dialogs/event-page.c +++ b/calendar/gui/dialogs/event-page.c @@ -34,6 +34,7 @@ #include <glib/gi18n.h> #include <glade/glade.h> #include <gdk/gdkkeysyms.h> +#include <libedataserverui/e-category-completion.h> #include <libedataserverui/e-source-combo-box.h> #include "common/authentication.h" #include "e-util/e-categories-config.h" @@ -2152,6 +2153,7 @@ static gboolean get_widgets (EventPage *epage) { CompEditorPage *page = COMP_EDITOR_PAGE (epage); + GtkEntryCompletion *completion; EventPagePrivate *priv; GSList *accel_groups; GtkWidget *toplevel; @@ -2245,6 +2247,10 @@ get_widgets (EventPage *epage) #undef GW + completion = e_category_completion_new (); + gtk_entry_set_completion (GTK_ENTRY (priv->categories), completion); + g_object_unref (completion); + return (priv->summary && priv->location && priv->start_time diff --git a/calendar/gui/dialogs/event-page.glade b/calendar/gui/dialogs/event-page.glade index f0f1d2e090..c7d00dda94 100644 --- a/calendar/gui/dialogs/event-page.glade +++ b/calendar/gui/dialogs/event-page.glade @@ -451,7 +451,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1 0 0 1 1 1</property> + <property name="adjustment">1 0 0 1 1 0</property> </widget> <packing> <property name="padding">0</property> @@ -495,7 +495,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 59 5 10 10</property> + <property name="adjustment">0 0 59 5 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/calendar/gui/dialogs/memo-editor.c b/calendar/gui/dialogs/memo-editor.c index 377cceef84..c76c96b94c 100644 --- a/calendar/gui/dialogs/memo-editor.c +++ b/calendar/gui/dialogs/memo-editor.c @@ -133,7 +133,6 @@ memo_editor_init (MemoEditor *me) } me->priv->memo_page = memo_page_new (editor); - g_object_ref_sink (me->priv->memo_page); comp_editor_append_page ( COMP_EDITOR (me), COMP_EDITOR_PAGE (me->priv->memo_page), diff --git a/calendar/gui/dialogs/memo-page.c b/calendar/gui/dialogs/memo-page.c index 421fdcf56b..362a8b0e9a 100644 --- a/calendar/gui/dialogs/memo-page.c +++ b/calendar/gui/dialogs/memo-page.c @@ -34,6 +34,7 @@ #include <gtk/gtk.h> #include <glib/gi18n.h> #include <glade/glade.h> +#include <libedataserverui/e-category-completion.h> #include <libedataserverui/e-source-combo-box.h> #include <libedataserverui/e-name-selector.h> #include <libedataserverui/e-name-selector-entry.h> @@ -746,6 +747,7 @@ static gboolean get_widgets (MemoPage *mpage) { CompEditorPage *page = COMP_EDITOR_PAGE (mpage); + GtkEntryCompletion *completion; MemoPagePrivate *priv; GSList *accel_groups; GtkWidget *toplevel; @@ -795,6 +797,10 @@ get_widgets (MemoPage *mpage) #undef GW + completion = e_category_completion_new (); + gtk_entry_set_completion (GTK_ENTRY (priv->categories), completion); + g_object_unref (completion); + return (priv->memo_content && priv->categories_btn && priv->categories diff --git a/calendar/gui/dialogs/recurrence-page.glade b/calendar/gui/dialogs/recurrence-page.glade index 62654322b0..14d6c2fa04 100644 --- a/calendar/gui/dialogs/recurrence-page.glade +++ b/calendar/gui/dialogs/recurrence-page.glade @@ -141,7 +141,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1 1 10000 1 10 10</property> + <property name="adjustment">1 1 10000 1 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/calendar/gui/dialogs/task-details-page.glade b/calendar/gui/dialogs/task-details-page.glade index bca7da4a08..aac90876ed 100644 --- a/calendar/gui/dialogs/task-details-page.glade +++ b/calendar/gui/dialogs/task-details-page.glade @@ -297,7 +297,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 100 1 10 10</property> + <property name="adjustment">0 0 100 1 10 0</property> </widget> <packing> <property name="left_attach">1</property> diff --git a/calendar/gui/dialogs/task-editor.c b/calendar/gui/dialogs/task-editor.c index 57a4063755..3ef5b4bcf2 100644 --- a/calendar/gui/dialogs/task-editor.c +++ b/calendar/gui/dialogs/task-editor.c @@ -311,7 +311,6 @@ task_editor_init (TaskEditor *te) te->priv->updating = FALSE; te->priv->task_page = task_page_new (te->priv->model, editor); - g_object_ref_sink (te->priv->task_page); comp_editor_append_page ( editor, COMP_EDITOR_PAGE (te->priv->task_page), _("_Task"), TRUE); @@ -327,7 +326,6 @@ task_editor_init (TaskEditor *te) G_CALLBACK(gtk_widget_hide), NULL); te->priv->task_details_page = task_details_page_new (editor); - g_object_ref_sink (te->priv->task_details_page); gtk_container_add ( GTK_CONTAINER (GTK_DIALOG (te->priv->task_details_window)->vbox), comp_editor_page_get_widget ((CompEditorPage *) te->priv->task_details_page)); diff --git a/calendar/gui/dialogs/task-page.c b/calendar/gui/dialogs/task-page.c index a4bc4816a3..7d674d20a0 100644 --- a/calendar/gui/dialogs/task-page.c +++ b/calendar/gui/dialogs/task-page.c @@ -34,6 +34,7 @@ #include <glib/gi18n.h> #include <glade/glade.h> #include <gdk/gdkkeysyms.h> +#include <libedataserverui/e-category-completion.h> #include <libedataserverui/e-source-combo-box.h> #include <misc/e-dateedit.h> #include <e-util/e-dialog-utils.h> @@ -1372,6 +1373,7 @@ static gboolean get_widgets (TaskPage *tpage) { CompEditorPage *page = COMP_EDITOR_PAGE (tpage); + GtkEntryCompletion *completion; TaskPagePrivate *priv; GSList *accel_groups; GtkWidget *toplevel; @@ -1444,6 +1446,10 @@ get_widgets (TaskPage *tpage) #undef GW + completion = e_category_completion_new (); + gtk_entry_set_completion (GTK_ENTRY (priv->categories), completion); + g_object_unref (completion); + return (priv->summary && priv->summary_label && priv->due_date diff --git a/calendar/gui/e-cal-model.c b/calendar/gui/e-cal-model.c index 47922c0ba9..9074c7e0ed 100644 --- a/calendar/gui/e-cal-model.c +++ b/calendar/gui/e-cal-model.c @@ -2226,6 +2226,7 @@ copy_ecdv (ECellDateEditValue *ecdv) struct _ECalModelComponentPrivate { + char nouse; }; static void e_cal_model_component_finalize (GObject *object); diff --git a/calendar/gui/e-calendar-table.c b/calendar/gui/e-calendar-table.c index 0189813af9..3e9dae9f78 100644 --- a/calendar/gui/e-calendar-table.c +++ b/calendar/gui/e-calendar-table.c @@ -469,6 +469,7 @@ calendar_table_query_tooltip_cb (ECalendarTable *cal_table, if (tmp2->len) { l = gtk_label_new (tmp2->str); + gtk_label_set_line_wrap (GTK_LABEL (l), TRUE); gtk_misc_set_alignment (GTK_MISC (l), 0.0, 0.5); gtk_box_pack_start (GTK_BOX (box), l, FALSE, FALSE, 0); } diff --git a/calendar/gui/e-calendar-view.c b/calendar/gui/e-calendar-view.c index 594527aee8..d8d517c9d9 100644 --- a/calendar/gui/e-calendar-view.c +++ b/calendar/gui/e-calendar-view.c @@ -74,7 +74,6 @@ static void e_calendar_view_set_property (GObject *object, guint property_id, co static void e_calendar_view_destroy (GtkObject *object); static void open_event_with_flags (ECalendarView *cal_view, ECal *client, icalcomponent *icalcomp, guint32 flags); -static GdkAtom clipboard_atom = GDK_NONE; /* Property IDs */ enum props { @@ -99,6 +98,17 @@ static guint e_calendar_view_signals[LAST_SIGNAL] = { 0 }; G_DEFINE_TYPE (ECalendarView, e_calendar_view, GTK_TYPE_TABLE) +enum TargetType{ + TARGET_TYPE_VCALENDAR +}; + +static GtkTargetEntry target_types[] = { + { "text/x-calendar", 0, TARGET_TYPE_VCALENDAR }, + { "text/calendar", 0, TARGET_TYPE_VCALENDAR } +}; + +static guint n_target_types = G_N_ELEMENTS (target_types); + static void e_calendar_view_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec) { @@ -158,6 +168,7 @@ e_calendar_view_class_init (ECalendarViewClass *klass) klass->get_visible_time_range = NULL; klass->update_query = NULL; klass->open_event = e_calendar_view_open_event; + klass->paste_text = NULL; g_object_class_install_property (gobject_class, PROP_MODEL, g_param_spec_object ("model", NULL, NULL, E_TYPE_CAL_MODEL, @@ -227,11 +238,6 @@ e_calendar_view_class_init (ECalendarViewClass *klass) g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - /* clipboard atom */ - if (!clipboard_atom) - clipboard_atom = gdk_atom_intern ("CLIPBOARD", FALSE); - - /* * Key bindings */ @@ -663,6 +669,34 @@ e_calendar_view_cut_clipboard (ECalendarView *cal_view) g_list_free (selected); } +static void +clipboard_clear_calendar_cb (GtkClipboard *clipboard, + gpointer data) +{ + g_free (data); +} + +static void +clipboard_get_calendar_cb (GtkClipboard *clipboard, + GtkSelectionData *selection_data, + guint info, + gpointer data) +{ + gchar *comp_str = (gchar *) data; + + switch (info) { + case TARGET_TYPE_VCALENDAR: + gtk_selection_data_set (selection_data, + selection_data->target, + 8, + (const guchar *) comp_str, + (gint) strlen (comp_str)); + break; + default: + break; + } +} + void e_calendar_view_copy_clipboard (ECalendarView *cal_view) { @@ -671,6 +705,7 @@ e_calendar_view_copy_clipboard (ECalendarView *cal_view) icalcomponent *vcal_comp; icalcomponent *new_icalcomp; ECalendarViewEvent *event; + GtkClipboard *clipboard; g_return_if_fail (E_IS_CALENDAR_VIEW (cal_view)); @@ -704,19 +739,25 @@ e_calendar_view_copy_clipboard (ECalendarView *cal_view) } /* copy the VCALENDAR to the clipboard */ + clipboard = gtk_widget_get_clipboard (GTK_WIDGET (cal_view), GDK_SELECTION_CLIPBOARD); comp_str = icalcomponent_as_ical_string (vcal_comp); - gtk_clipboard_set_text (gtk_widget_get_clipboard (GTK_WIDGET (cal_view), clipboard_atom), - (const gchar *) comp_str, - strlen (comp_str)); + + if (!gtk_clipboard_set_with_data (clipboard, target_types, n_target_types, + clipboard_get_calendar_cb, + clipboard_clear_calendar_cb, + comp_str)) { + g_free (comp_str); + } else { + gtk_clipboard_set_can_store (clipboard, target_types + 1, n_target_types - 1); + } /* free memory */ icalcomponent_free (vcal_comp); - g_free (comp_str); g_list_free (selected); } static void -clipboard_get_text_cb (GtkClipboard *clipboard, const gchar *text, ECalendarView *cal_view) +clipboard_get_calendar_data (ECalendarView *cal_view, const gchar *text) { icalcomponent *icalcomp; icalcomponent_kind kind; @@ -796,13 +837,48 @@ clipboard_get_text_cb (GtkClipboard *clipboard, const gchar *text, ECalendarView #endif } +static void +e_calendar_view_paste_text (ECalendarView *cal_view) +{ + g_return_if_fail (E_IS_CALENDAR_VIEW (cal_view)); + + if (E_CALENDAR_VIEW_CLASS (G_OBJECT_GET_CLASS (cal_view))->paste_text) + E_CALENDAR_VIEW_CLASS (G_OBJECT_GET_CLASS (cal_view))->paste_text (cal_view); +} + +static void +clipboard_paste_received_cb (GtkClipboard *clipboard, + GtkSelectionData *selection_data, + gpointer data) +{ + if (gtk_clipboard_wait_is_text_available (clipboard)) { + e_calendar_view_paste_text (E_CALENDAR_VIEW (data)); + } else { + GdkAtom type = selection_data->type; + if (type == gdk_atom_intern (target_types[TARGET_TYPE_VCALENDAR].target, TRUE)) { + gchar *result = NULL; + result = g_strndup ((const gchar *) selection_data->data, + selection_data->length); + clipboard_get_calendar_data (E_CALENDAR_VIEW (data), result); + g_free (result); + } + } + g_object_unref (data); +} + void e_calendar_view_paste_clipboard (ECalendarView *cal_view) { + GtkClipboard *clipboard; + g_return_if_fail (E_IS_CALENDAR_VIEW (cal_view)); - gtk_clipboard_request_text (gtk_widget_get_clipboard (GTK_WIDGET (cal_view), clipboard_atom), - (GtkClipboardTextReceivedFunc) clipboard_get_text_cb, cal_view); + clipboard = gtk_widget_get_clipboard (GTK_WIDGET (cal_view), GDK_SELECTION_CLIPBOARD); + g_object_ref (cal_view); + + gtk_clipboard_request_contents (clipboard, + gdk_atom_intern (target_types[TARGET_TYPE_VCALENDAR].target, FALSE), + clipboard_paste_received_cb, cal_view); } static void diff --git a/calendar/gui/e-calendar-view.h b/calendar/gui/e-calendar-view.h index 16a5548249..0d577a9f24 100644 --- a/calendar/gui/e-calendar-view.h +++ b/calendar/gui/e-calendar-view.h @@ -111,6 +111,7 @@ struct _ECalendarViewClass { gboolean (* get_visible_time_range) (ECalendarView *cal_view, time_t *start_time, time_t *end_time); void (* update_query) (ECalendarView *cal_view); void (* open_event) (ECalendarView *cal_view); + void (* paste_text) (ECalendarView *cal_view); }; GType e_calendar_view_get_type (void); diff --git a/calendar/gui/e-day-view-top-item.c b/calendar/gui/e-day-view-top-item.c index 4523fa6978..2f9bbf00fb 100644 --- a/calendar/gui/e-day-view-top-item.c +++ b/calendar/gui/e-day-view-top-item.c @@ -33,6 +33,7 @@ #include "e-util/e-categories-config.h" #include <libecal/e-cal-time-util.h> #include <libedataserver/e-data-server-util.h> +#include <libedataserver/e-categories.h> #include "e-calendar-view.h" #include "e-day-view-top-item.h" @@ -687,29 +688,28 @@ e_day_view_top_item_draw_long_event (EDayViewTopItem *dvtitem, e_cal_component_get_categories_list (comp, &categories_list); for (elem = categories_list; elem; elem = elem->next) { char *category; - GdkPixmap *pixmap = NULL; - GdkBitmap *mask = NULL; + const char *file; + GdkPixbuf *pixbuf; category = (char *) elem->data; - e_categories_config_get_icon_for (category, &pixmap, &mask); - if (pixmap == NULL) + file = e_categories_get_icon_file_for (category); + if (!file) + continue; + + pixbuf = gdk_pixbuf_new_from_file (file, NULL); + if (pixbuf == NULL) continue; if (icon_x <= max_icon_x) { gdk_gc_set_clip_origin (gc, icon_x, icon_y); - if (mask != NULL) - gdk_gc_set_clip_mask (gc, mask); - gdk_draw_drawable (drawable, gc, - pixmap, + gdk_draw_pixbuf (drawable, gc, + pixbuf, 0, 0, icon_x, icon_y, E_DAY_VIEW_ICON_WIDTH, - E_DAY_VIEW_ICON_HEIGHT); + E_DAY_VIEW_ICON_HEIGHT, + GDK_RGB_DITHER_NORMAL, 0, 0); icon_x -= icon_x_inc; } - - g_object_unref (pixmap); - if (mask != NULL) - g_object_unref (mask); } e_cal_component_free_categories_list (categories_list); diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c index 150e72e6c1..7235c8dc58 100644 --- a/calendar/gui/e-day-view.c +++ b/calendar/gui/e-day-view.c @@ -152,6 +152,7 @@ static GList *e_day_view_get_selected_events (ECalendarView *cal_view); static gboolean e_day_view_get_selected_time_range (ECalendarView *cal_view, time_t *start_time, time_t *end_time); static void e_day_view_set_selected_time_range (ECalendarView *cal_view, time_t start_time, time_t end_time); static gboolean e_day_view_get_visible_time_range (ECalendarView *cal_view, time_t *start_time, time_t *end_time); +static void e_day_view_paste_text (ECalendarView *day_view); static void e_day_view_update_query (EDayView *day_view); static void e_day_view_goto_start_of_work_day (EDayView *day_view); static void e_day_view_goto_end_of_work_day (EDayView *day_view); @@ -466,6 +467,7 @@ e_day_view_class_init (EDayViewClass *class) view_class->get_selected_time_range = e_day_view_get_selected_time_range; view_class->set_selected_time_range = e_day_view_set_selected_time_range; view_class->get_visible_time_range = e_day_view_get_visible_time_range; + view_class->paste_text = e_day_view_paste_text; #if 0 /* KILL-BONOBO */ /* init the accessibility support for e_day_view */ @@ -4725,16 +4727,13 @@ e_day_view_event_sort_func (const void *arg1, } static gboolean -e_day_view_do_key_press (GtkWidget *widget, GdkEventKey *event) +e_day_view_add_new_event_in_selected_range (EDayView *day_view, GdkEventKey *key_event) { - EDayView *day_view; icalcomponent *icalcomp; ECal *ecal; ECalModel *model; ECalComponent *comp; gint day, event_num; - guint keyval; - gboolean stop_emission; time_t dtstart, dtend; ECalComponentDateTime start_dt, end_dt; struct icaltimetype start_tt, end_tt; @@ -4742,6 +4741,80 @@ e_day_view_do_key_press (GtkWidget *widget, GdkEventKey *event) AddEventData add_event_data; gboolean read_only = TRUE; + /* Check if the client is read only */ + model = e_calendar_view_get_model (E_CALENDAR_VIEW (day_view)); + ecal = e_cal_model_get_default_client (model); + if (!e_cal_is_read_only (ecal, &read_only, NULL) || read_only) + return FALSE; + + icalcomp = e_cal_model_create_component_with_defaults (model); + if (!icalcomp) + return FALSE; + + uid = icalcomponent_get_uid (icalcomp); + + comp = e_cal_component_new (); + e_cal_component_set_icalcomponent (comp, icalcomp); + + e_day_view_get_selected_time_range ((ECalendarView *) day_view, &dtstart, &dtend); + + start_tt = icaltime_from_timet_with_zone (dtstart, FALSE, + e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); + + end_tt = icaltime_from_timet_with_zone (dtend, FALSE, + e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); + + if (day_view->selection_in_top_canvas) { + start_dt.tzid = NULL; + start_tt.is_date = 1; + end_tt.is_date = 1; + + /* Editor default in day/work-week view - top canvas */ + e_cal_component_set_transparency (comp, E_CAL_COMPONENT_TRANSP_TRANSPARENT); + } else { + start_dt.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); + + /* Editor default in day/work-week view - main canvas */ + e_cal_component_set_transparency (comp, E_CAL_COMPONENT_TRANSP_OPAQUE); + } + + start_dt.value = &start_tt; + end_dt.value = &end_tt; + end_dt.tzid = start_dt.tzid; + e_cal_component_set_dtstart (comp, &start_dt); + e_cal_component_set_dtend (comp, &end_dt); + + e_cal_component_set_categories ( + comp, e_calendar_view_get_default_category (E_CALENDAR_VIEW (day_view))); + + /* We add the event locally and start editing it. We don't send it + to the server until the user finishes editing it. */ + add_event_data.day_view = day_view; + add_event_data.comp_data = NULL; + e_day_view_add_event (comp, dtstart, dtend, &add_event_data); + e_day_view_check_layout (day_view); + gtk_widget_queue_draw (day_view->top_canvas); + gtk_widget_queue_draw (day_view->main_canvas); + + if (!e_day_view_find_event_from_uid (day_view, ecal, uid, NULL, &day, &event_num)) { + g_warning ("Couldn't find event to start editing.\n"); + g_object_unref (comp); + return FALSE; + } + + e_day_view_start_editing_event (day_view, day, event_num, key_event); + + g_object_unref (comp); + return TRUE; +} + +static gboolean +e_day_view_do_key_press (GtkWidget *widget, GdkEventKey *event) +{ + EDayView *day_view; + guint keyval; + gboolean stop_emission; + g_return_val_if_fail (widget != NULL, FALSE); g_return_val_if_fail (E_IS_DAY_VIEW (widget), FALSE); g_return_val_if_fail (event != NULL, FALSE); @@ -4865,12 +4938,6 @@ e_day_view_do_key_press (GtkWidget *widget, GdkEventKey *event) return FALSE; } - /* Check if the client is read only */ - model = e_calendar_view_get_model (E_CALENDAR_VIEW (day_view)); - ecal = e_cal_model_get_default_client (model); - if (!e_cal_is_read_only (ecal, &read_only, NULL) || read_only) - return FALSE; - /* We only want to start an edit with a return key or a simple character. */ if ((keyval != GDK_Return) && @@ -4881,64 +4948,7 @@ e_day_view_do_key_press (GtkWidget *widget, GdkEventKey *event) return FALSE; } - /* Add a new event covering the selected range */ - icalcomp = e_cal_model_create_component_with_defaults (model); - if (!icalcomp) - return FALSE; - uid = icalcomponent_get_uid (icalcomp); - - comp = e_cal_component_new (); - e_cal_component_set_icalcomponent (comp, icalcomp); - - e_day_view_get_selected_time_range ((ECalendarView *) day_view, &dtstart, &dtend); - - start_tt = icaltime_from_timet_with_zone (dtstart, FALSE, - e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); - - end_tt = icaltime_from_timet_with_zone (dtend, FALSE, - e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); - - if (day_view->selection_in_top_canvas) { - start_dt.tzid = NULL; - start_tt.is_date = 1; - end_tt.is_date = 1; - - /* Editor default in day/work-week view - top canvas */ - e_cal_component_set_transparency (comp, E_CAL_COMPONENT_TRANSP_TRANSPARENT); - } else { - start_dt.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (day_view))); - - /* Editor default in day/work-week view - main canvas */ - e_cal_component_set_transparency (comp, E_CAL_COMPONENT_TRANSP_OPAQUE); - } - - start_dt.value = &start_tt; - end_dt.value = &end_tt; - end_dt.tzid = start_dt.tzid; - e_cal_component_set_dtstart (comp, &start_dt); - e_cal_component_set_dtend (comp, &end_dt); - - e_cal_component_set_categories ( - comp, e_calendar_view_get_default_category (E_CALENDAR_VIEW (day_view))); - - /* We add the event locally and start editing it. We don't send it - to the server until the user finishes editing it. */ - add_event_data.day_view = day_view; - add_event_data.comp_data = NULL; - e_day_view_add_event (comp, dtstart, dtend, &add_event_data); - e_day_view_check_layout (day_view); - gtk_widget_queue_draw (day_view->top_canvas); - gtk_widget_queue_draw (day_view->main_canvas); - - if (e_day_view_find_event_from_uid (day_view, ecal, uid, NULL, &day, &event_num)) { - e_day_view_start_editing_event (day_view, day, event_num, event); - } else { - g_warning ("Couldn't find event to start editing.\n"); - } - - g_object_unref (comp); - - return TRUE; + return e_day_view_add_new_event_in_selected_range (day_view, event); } static gboolean @@ -5861,6 +5871,15 @@ e_day_view_on_text_item_event (GnomeCanvasItem *item, ECalendarViewPosition pos; gboolean main_canvas = TRUE; + if (day_view->editing_event_num != -1) + break; + + if (day_view->resize_event_num != -1) + break; + + if (day_view->drag_event_num != -1) + break; + /* Convert the coords to the main canvas window, or return if the window is not found. */ if (!e_day_view_convert_event_coords (day_view, (GdkEvent*) event, @@ -5889,15 +5908,11 @@ e_day_view_on_text_item_event (GnomeCanvasItem *item, } if (pos == E_CALENDAR_VIEW_POS_OUTSIDE) - return FALSE; - - if (day_view->editing_event_num != -1) - break; - - if (day_view->resize_event_num != -1) break; - if (day_view->drag_event_num != -1) + /* even when returns position inside, or other, then the day and/or event_num + can be unknown, thus check for this here, otherwise it will crash later */ + if (day == -1 || event_num == -1) break; pevent = tooltip_get_view_event (day_view, day, event_num); @@ -7848,3 +7863,34 @@ e_day_view_get_num_events_selected (EDayView *day_view) return (day_view->editing_event_day != -1) ? 1 : 0; } + +static void +e_day_view_paste_text (ECalendarView *cal_view) +{ + EDayView *day_view; + EDayViewEvent *event; + + g_return_if_fail (E_IS_DAY_VIEW (cal_view)); + + day_view = E_DAY_VIEW (cal_view); + + if (day_view->editing_event_num == -1 && + !e_day_view_add_new_event_in_selected_range (day_view, NULL)) + return; + + if (day_view->editing_event_day == E_DAY_VIEW_LONG_EVENT) { + event = &g_array_index (day_view->long_events, + EDayViewEvent, + day_view->editing_event_num); + } else { + event = &g_array_index (day_view->events[day_view->editing_event_day], + EDayViewEvent, + day_view->editing_event_num); + } + + if (event->canvas_item && + E_IS_TEXT (event->canvas_item) && + E_TEXT (event->canvas_item)->editing) { + e_text_paste_clipboard (E_TEXT (event->canvas_item)); + } +} diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c index 2ac77a7be6..427511b044 100644 --- a/calendar/gui/e-week-view.c +++ b/calendar/gui/e-week-view.c @@ -113,6 +113,7 @@ static GList *e_week_view_get_selected_events (ECalendarView *cal_view); static gboolean e_week_view_get_selected_time_range (ECalendarView *cal_view, time_t *start_time, time_t *end_time); static void e_week_view_set_selected_time_range (ECalendarView *cal_view, time_t start_time, time_t end_time); static gboolean e_week_view_get_visible_time_range (ECalendarView *cal_view, time_t *start_time, time_t *end_time); +static void e_week_view_paste_text (ECalendarView *week_view); static void e_week_view_update_query (EWeekView *week_view); static void e_week_view_draw_shadow (EWeekView *week_view); @@ -224,6 +225,7 @@ e_week_view_class_init (EWeekViewClass *class) view_class->get_selected_time_range = e_week_view_get_selected_time_range; view_class->set_selected_time_range = e_week_view_set_selected_time_range; view_class->get_visible_time_range = e_week_view_get_visible_time_range; + view_class->paste_text = e_week_view_paste_text; #if 0 /* KILL-BONOBO */ /* init the accessibility support for e_week_view */ @@ -3929,7 +3931,7 @@ e_week_view_cursor_key_right (EWeekView *week_view, GnomeCalendarViewType view_t } static gboolean -e_week_view_do_key_press (GtkWidget *widget, GdkEventKey *event) +e_week_view_add_new_event_in_selected_range (EWeekView *week_view, const gchar *initial_text) { #if 0 /* KILL-BONOBO */ EWeekView *week_view; @@ -3938,15 +3940,96 @@ e_week_view_do_key_press (GtkWidget *widget, GdkEventKey *event) ECalComponent *comp; icalcomponent *icalcomp; gint event_num; - gchar *initial_text; ECalComponentDateTime date; struct icaltimetype itt; time_t dtstart, dtend; const char *uid; AddEventData add_event_data; - guint keyval; gboolean read_only = TRUE; + EWeekViewEvent *wvevent; + EWeekViewEventSpan *span; + + /* Check if the client is read only */ + model = e_calendar_view_get_model (E_CALENDAR_VIEW (week_view)); + ecal = e_cal_model_get_default_client (model); + if (!e_cal_is_read_only (ecal, &read_only, NULL) || read_only) + return FALSE; + + /* Add a new event covering the selected range. */ + icalcomp = e_cal_model_create_component_with_defaults (e_calendar_view_get_model (E_CALENDAR_VIEW (week_view))); + if (!icalcomp) + return FALSE; + uid = icalcomponent_get_uid (icalcomp); + + comp = e_cal_component_new (); + e_cal_component_set_icalcomponent (comp, icalcomp); + + dtstart = week_view->day_starts[week_view->selection_start_day]; + dtend = week_view->day_starts[week_view->selection_end_day + 1]; + + date.value = &itt; + date.tzid = NULL; + + /* We use DATE values now, so we don't need the timezone. */ + /*date.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view)));*/ + + *date.value = icaltime_from_timet_with_zone (dtstart, TRUE, + e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view))); + e_cal_component_set_dtstart (comp, &date); + + *date.value = icaltime_from_timet_with_zone (dtend, TRUE, + e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view))); + e_cal_component_set_dtend (comp, &date); + + /* Editor default in week/month view */ + e_cal_component_set_transparency (comp, E_CAL_COMPONENT_TRANSP_TRANSPARENT); + + e_cal_component_set_categories ( + comp, e_calendar_view_get_default_category (E_CALENDAR_VIEW (week_view))); + + /* We add the event locally and start editing it. We don't send it + to the server until the user finishes editing it. */ + add_event_data.week_view = week_view; + add_event_data.comp_data = NULL; + e_week_view_add_event (comp, dtstart, dtend, TRUE, &add_event_data); + e_week_view_check_layout (week_view); + gtk_widget_queue_draw (week_view->main_canvas); + + if (!e_week_view_find_event_from_uid (week_view, ecal, uid, NULL, &event_num)) { + g_warning ("Couldn't find event to start editing.\n"); + g_object_unref (comp); + return FALSE; + } + + wvevent = &g_array_index (week_view->events, EWeekViewEvent, + event_num); + span = &g_array_index (week_view->spans, EWeekViewEventSpan, + wvevent->spans_index + 0); + + /* If the event can't be fit on the screen, don't try to edit it. */ + if (!span->text_item) { + e_week_view_foreach_event_with_uid (week_view, uid, + e_week_view_remove_event_cb, NULL); + g_object_unref (comp); + return FALSE; + } else { + e_week_view_start_editing_event (week_view, event_num, 0, + (gchar *) initial_text); + } + + g_object_unref (comp); + + return TRUE; +} + +static gboolean +e_week_view_do_key_press (GtkWidget *widget, GdkEventKey *event) +{ + EWeekView *week_view; + gchar *initial_text; + guint keyval; gboolean stop_emission; + gboolean ret_val; GnomeCalendarViewType view_type; g_return_val_if_fail (widget != NULL, FALSE); @@ -4022,12 +4105,6 @@ e_week_view_do_key_press (GtkWidget *widget, GdkEventKey *event) if (week_view->selection_start_day == -1) return FALSE; - /* Check if the client is read only */ - model = e_calendar_view_get_model (E_CALENDAR_VIEW (week_view)); - ecal = e_cal_model_get_default_client (model); - if (!e_cal_is_read_only (ecal, &read_only, NULL) || read_only) - return FALSE; - /* We only want to start an edit with a return key or a simple character. */ if (event->keyval == GDK_Return) { @@ -4040,75 +4117,13 @@ e_week_view_do_key_press (GtkWidget *widget, GdkEventKey *event) } else initial_text = e_utf8_from_gtk_event_key (widget, event->keyval, event->string); - /* Add a new event covering the selected range. */ - icalcomp = e_cal_model_create_component_with_defaults (e_calendar_view_get_model (E_CALENDAR_VIEW (week_view))); - if (!icalcomp) - return FALSE; - uid = icalcomponent_get_uid (icalcomp); - - comp = e_cal_component_new (); - e_cal_component_set_icalcomponent (comp, icalcomp); - - dtstart = week_view->day_starts[week_view->selection_start_day]; - dtend = week_view->day_starts[week_view->selection_end_day + 1]; - - date.value = &itt; - date.tzid = NULL; - - /* We use DATE values now, so we don't need the timezone. */ - /*date.tzid = icaltimezone_get_tzid (e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view)));*/ - - *date.value = icaltime_from_timet_with_zone (dtstart, TRUE, - e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view))); - e_cal_component_set_dtstart (comp, &date); - - *date.value = icaltime_from_timet_with_zone (dtend, TRUE, - e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view))); - e_cal_component_set_dtend (comp, &date); - - /* Editor default in week/month view */ - e_cal_component_set_transparency (comp, E_CAL_COMPONENT_TRANSP_TRANSPARENT); - - e_cal_component_set_categories ( - comp, e_calendar_view_get_default_category (E_CALENDAR_VIEW (week_view))); - - /* We add the event locally and start editing it. We don't send it - to the server until the user finishes editing it. */ - add_event_data.week_view = week_view; - add_event_data.comp_data = NULL; - e_week_view_add_event (comp, dtstart, dtend, TRUE, &add_event_data); - e_week_view_check_layout (week_view); - gtk_widget_queue_draw (week_view->main_canvas); - - if (e_week_view_find_event_from_uid (week_view, ecal, uid, NULL, &event_num)) { - EWeekViewEvent *wvevent; - EWeekViewEventSpan *span; - - wvevent = &g_array_index (week_view->events, EWeekViewEvent, - event_num); - span = &g_array_index (week_view->spans, EWeekViewEventSpan, - wvevent->spans_index + 0); - - /* If the event can't be fit on the screen, don't try to edit it. */ - if (!span->text_item) { - e_week_view_foreach_event_with_uid (week_view, uid, - e_week_view_remove_event_cb, NULL); - } else { - e_week_view_start_editing_event (week_view, event_num, 0, - initial_text); - } - - } else { - g_warning ("Couldn't find event to start editing.\n"); - } + ret_val = e_week_view_add_new_event_in_selected_range (week_view, initial_text); if (initial_text) g_free (initial_text); - g_object_unref (comp); + return ret_val; #endif - - return TRUE; } static gint @@ -4368,3 +4383,30 @@ e_week_view_is_jump_button_visible (EWeekView *week_view, gint day) return week_view->jump_buttons[day]->object.flags & GNOME_CANVAS_ITEM_VISIBLE; return FALSE; } + +static void +e_week_view_paste_text (ECalendarView *cal_view) +{ + EWeekViewEvent *event; + EWeekViewEventSpan *span; + EWeekView *week_view; + + g_return_if_fail (E_IS_WEEK_VIEW (cal_view)); + + week_view = E_WEEK_VIEW (cal_view); + + if (week_view->editing_event_num == -1 && + !e_week_view_add_new_event_in_selected_range (week_view, NULL)) + return; + + event = &g_array_index (week_view->events, EWeekViewEvent, + week_view->editing_event_num); + span = &g_array_index (week_view->spans, EWeekViewEventSpan, + event->spans_index + week_view->editing_span_num); + + if (span->text_item && + E_IS_TEXT (span->text_item) && + E_TEXT (span->text_item)->editing) { + e_text_paste_clipboard (E_TEXT (span->text_item)); + } +} diff --git a/calendar/gui/goto-dialog.glade b/calendar/gui/goto-dialog.glade index 31a61ce9ff..ab832f335d 100644 --- a/calendar/gui/goto-dialog.glade +++ b/calendar/gui/goto-dialog.glade @@ -192,7 +192,7 @@ <property name="update_policy">GTK_UPDATE_IF_VALID</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1969 1969 2038 1 5 10</property> + <property name="adjustment">1969 1969 2038 1 5 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/calendar/gui/itip-utils.c b/calendar/gui/itip-utils.c index 5a954b5ff9..5b292e1901 100644 --- a/calendar/gui/itip-utils.c +++ b/calendar/gui/itip-utils.c @@ -1147,7 +1147,7 @@ itip_send_comp (ECalComponentItipMethod method, ECalComponent *send_comp, gchar *subject = NULL; gboolean retval = FALSE; - /* check whether backend could handle sending requests/updates */ + /* check whether backend could handle auto-saving requests/updates */ if (method != E_CAL_COMPONENT_METHOD_PUBLISH && e_cal_get_save_schedules (client)) return TRUE; @@ -1157,6 +1157,15 @@ itip_send_comp (ECalComponentItipMethod method, ECalComponent *send_comp, goto cleanup; } + /* check whether backend could handle sending requests/updates */ + if (method != E_CAL_COMPONENT_METHOD_PUBLISH && e_cal_get_static_capability (client, CAL_STATIC_CAPABILITY_CREATE_MESSAGES)) { + if (users) { + g_list_foreach (users, (GFunc) g_free, NULL); + g_list_free (users); + } + return TRUE; + } + /* Tidy up the comp */ comp = comp_compliant (method, send_comp, client, zones); diff --git a/calendar/gui/memotypes.xml b/calendar/gui/memotypes.xml index 3b9a560a96..1872461ab4 100644 --- a/calendar/gui/memotypes.xml +++ b/calendar/gui/memotypes.xml @@ -99,75 +99,7 @@ </option> </input> <input type="optionlist" name="category"> - <option value="Anniversary"> - <_title>Anniversary</_title> - </option> - <option value="Holiday"> - <_title>Holiday</_title> - </option> - <option value="Ideas"> - <_title>Ideas</_title> - </option> - <option value="Status"> - <_title>Status</_title> - </option> - <option value="Holiday Cards"> - <_title>Holiday Cards</_title> - </option> - <option value="Hot Contacts"> - <_title>Hot Contacts</_title> - </option> - <option value="International"> - <_title>International</_title> - </option> - <option value="Next 7 days"> - <_title>Next 7 Days</_title> - </option> - <option value="Birthday"> - <_title>Birthday</_title> - </option> - <option value="VIP"> - <_title>VIP</_title> - </option> - <option value="Gifts"> - <_title>Gifts</_title> - </option> - <option value="Waiting"> - <_title>Waiting</_title> - </option> - <option value="Key Customer"> - <_title>Key Customer</_title> - </option> - <option value="Time & Expenses"> - <_title>Time & Expenses</_title> - </option> - <option value="Miscellaneous"> - <_title>Miscellaneous</_title> - </option> - <option value="Business"> - <_title>Business</_title> - </option> - <option value="Personal"> - <_title>Personal</_title> - </option> - <option value="Suppliers"> - <_title>Suppliers</_title> - </option> - <option value="Goals/Objectives"> - <_title>Goals/Objectives</_title> - </option> - <option value="Strategies"> - <_title>Strategies</_title> - </option> - <option value="Competition"> - <_title>Competition</_title> - </option> - <option value="Favourites"> - <_title>Favourites</_title> - </option> - <option value="Phone Calls"> - <_title>Phone Calls</_title> - </option> + <dynamic func="e_util_get_category_filter_options"/> </input> </part> diff --git a/calendar/gui/tasktypes.xml b/calendar/gui/tasktypes.xml index ee560addf3..cd9876bd29 100644 --- a/calendar/gui/tasktypes.xml +++ b/calendar/gui/tasktypes.xml @@ -165,76 +165,7 @@ </option> </input> <input type="optionlist" name="category"> - <option value="Anniversary"> - <_title>Anniversary</_title> - </option> - <option value="Holiday"> - <_title>Holiday</_title> - </option> - <option value="Ideas"> - <_title>Ideas</_title>ke - </option> - <option value="Status"> - <_title>Status</_title> - </option> - <option value="Holiday Cards"> - <_title>Holiday Cards</_title> - </option> - <option value="Hot Contacts"> - <_title>Hot Contacts</_title> - </option> - <option value="International"> - <_title>International</_title> - </option> - <option value="Next 7 Days"> - <_title>Next 7 Days</_title> - </option> - <option value="Birthday"> - <_title>Birthday</_title> - </option> - <option value="VIP"> - <_title>VIP</_title> - </option> - <option value="Gifts"> - <_title>Gifts</_title> - </option> - <option value="Waiting"> - <_title>Waiting</_title> - </option> - <option value="Key Customer"> - <_title>Key Customer</_title> - </option> - <option value="Time & Expenses"> - <_title>Time & Expenses </_title> - </option> - <option value="Miscellaneous"> - <_title>Miscellaneous</_title> - </option> - <option value="Business"> - <_title>Business</_title> - </option> - <option value="Personal"> - ke - <_title>Personal</_title> - </option> - <option value="Suppliers"> - <_title>Suppliers</_title> - </option> - <option value="Goals/Objectives"> - <_title>Goals/Objectives</_title> - </option> - <option value="Strategies"> - <_title>Strategies</_title> - </option> - <option value="Competition"> - <_title>Competition</_title> - </option> - <option value="Favourites"> - <_title>Favourites</_title> - </option> - <option value="Phone Calls"> - <_title>Phone Calls</_title> - </option> + <dynamic func="e_util_get_category_filter_options"/> </input> </part> diff --git a/composer/ChangeLog b/composer/ChangeLog index b258637da4..7a08fc49ae 100644 --- a/composer/ChangeLog +++ b/composer/ChangeLog @@ -1,3 +1,10 @@ +2008-12-04 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes bug #562886 + + * e-msg-composer (handle_mailto): + Don't double-decode attachment URIs. Also, parse & correctly. + 2008-11-07 Srinivasa Ragavan <sragavan@novell.com> ** Fix for bug #559701 diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c index 5d2c8b8c73..f6929710ef 100644 --- a/composer/e-msg-composer.c +++ b/composer/e-msg-composer.c @@ -3888,16 +3888,19 @@ handle_mailto (EMsgComposer *composer, const gchar *mailto) clen = strcspn (p, "&"); content = g_strndup (p, clen); - camel_url_decode (content); if (!g_ascii_strcasecmp (header, "to")) { + camel_url_decode (content); to = add_recipients (to, content); } else if (!g_ascii_strcasecmp (header, "cc")) { + camel_url_decode (content); cc = add_recipients (cc, content); } else if (!g_ascii_strcasecmp (header, "bcc")) { + camel_url_decode (content); bcc = add_recipients (bcc, content); } else if (!g_ascii_strcasecmp (header, "subject")) { g_free (subject); + camel_url_decode (content); if (g_utf8_validate (content, -1, NULL)) { subject = content; content = NULL; @@ -3911,6 +3914,7 @@ handle_mailto (EMsgComposer *composer, const gchar *mailto) } } else if (!g_ascii_strcasecmp (header, "body")) { g_free (body); + camel_url_decode (content); if (g_utf8_validate (content, -1, NULL)) { body = content; content = NULL; @@ -3944,6 +3948,7 @@ handle_mailto (EMsgComposer *composer, const gchar *mailto) /* ignore */ } else { /* add an arbitrary header? */ + camel_url_decode (content); e_msg_composer_add_header (composer, header, content); } @@ -3952,7 +3957,7 @@ handle_mailto (EMsgComposer *composer, const gchar *mailto) p += clen; if (*p == '&') { p++; - if (!strcmp (p, "amp;")) + if (!g_ascii_strncasecmp (p, "amp;", 4)) p += 4; } } diff --git a/configure.in b/configure.in index fa18f30ed7..750dc234a9 100644 --- a/configure.in +++ b/configure.in @@ -3,7 +3,7 @@ AC_PREREQ(2.52) m4_define([evo_major_version], [2]) m4_define([evo_minor_version], [25]) -m4_define([evo_micro_version], [2]) +m4_define([evo_micro_version], [3]) m4_define([evo_version], [evo_major_version.evo_minor_version.evo_micro_version]) m4_define([evo_stable_version], @@ -22,8 +22,8 @@ GTKHTML_PACKAGE=3.14 # Required Packages m4_define([glib_minimum_version], [2.18.0]) -m4_define([gtk_minimum_version], [2.12.0]) -m4_define([eds_minimum_version], [2.25.2]) +m4_define([gtk_minimum_version], [2.14.0]) +m4_define([eds_minimum_version], [2.25.3]) m4_define([gnome_icon_theme_minimum_version], [2.19.91]) m4_define([libbonobo_minimum_version], [2.20.3]) m4_define([libbonoboui_minimum_version], [2.4.2]) @@ -43,6 +43,7 @@ m4_define([dbus_minimum_version], [1.0.0]) m4_define([hal_minimum_version], [0.5.4]) m4_define([libnotify_minimum_version], [0.3.0]) m4_define([gnome_pilot_minimum_version], [2.0.15]) +m4_define([gweather_minimum_version], [2.25.3]) # GNOME Documentation GNOME_DOC_INIT @@ -1207,6 +1208,25 @@ AC_SUBST(MANUAL_NSS_CFLAGS) AC_SUBST(MANUAL_NSS_LIBS) dnl ************************************************** +dnl Check if we should build the weather calendar plugin +dnl ************************************************** +AC_MSG_CHECKING(if we should build the weather calendar plugin) +AC_ARG_WITH([weather], + [AS_HELP_STRING([--with-weather], [Build the weather calendar setup plugin (default=yes)])], + [use_gweather=$withval], + [use_gweather=yes]) +AC_MSG_RESULT($use_gweather) + +if test $use_gweather = yes; then + PKG_CHECK_MODULES([LIBGWEATHER], + [gweather >= gweather_minimum_version], + [CALENDAR_WEATHER="calendar-weather"], + [AC_MSG_ERROR([The weather calendar setup plugin requires GWeather >= gweather_minimum_version. Alternatively, you may specify --without-weather as a configure option to avoid building the plugin.])]) +else + CALENDAR_WEATHER="" +fi + +dnl ************************************************** dnl Exchange support. dnl ************************************************** AC_ARG_ENABLE([exchange], @@ -1738,7 +1758,7 @@ AC_ARG_ENABLE([plugins], [enable_plugins="$enableval"],[enable_plugins=all]) dnl Add any new plugins here -plugins_base_always="calendar-file calendar-http calendar-weather itip-formatter plugin-manager default-source addressbook-file startup-wizard mark-all-read groupwise-features groupwise-account-setup mail-account-disable publish-calendar caldav imap-features google-account-setup webdav-account-setup" +plugins_base_always="calendar-file calendar-http $CALENDAR_WEATHER itip-formatter plugin-manager default-source addressbook-file startup-wizard mark-all-read groupwise-features groupwise-account-setup mail-account-disable publish-calendar caldav imap-features google-account-setup webdav-account-setup" plugins_base="$plugins_base_always $SA_JUNK_PLUGIN $BF_JUNK_PLUGIN $EXCHANGE_PLUGIN $MONO_PLUGIN " all_plugins_base="$plugins_base_always sa-junk-plugin bogo-junk-plugin exchange-operations mono" diff --git a/doc/reference/shell/tmpl/e-shell-content.sgml b/doc/reference/shell/tmpl/e-shell-content.sgml index a17f4133d3..cb09ae28e7 100644 --- a/doc/reference/shell/tmpl/e-shell-content.sgml +++ b/doc/reference/shell/tmpl/e-shell-content.sgml @@ -101,3 +101,270 @@ EShellContent @Returns: +<!-- ##### FUNCTION e_shell_content_get_shell_view ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_get_context ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_context ##### --> +<para> + +</para> + +@shell_content: +@context: + + +<!-- ##### FUNCTION e_shell_content_get_filter_action ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_filter_action ##### --> +<para> + +</para> + +@shell_content: +@filter_action: + + +<!-- ##### FUNCTION e_shell_content_get_filter_value ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_filter_value ##### --> +<para> + +</para> + +@shell_content: +@filter_value: + + +<!-- ##### FUNCTION e_shell_content_get_filter_visible ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_filter_visible ##### --> +<para> + +</para> + +@shell_content: +@filter_visible: + + +<!-- ##### FUNCTION e_shell_content_add_filter_separator_after ##### --> +<para> + +</para> + +@shell_content: +@action_value: + + +<!-- ##### FUNCTION e_shell_content_get_search_context ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_get_search_rule ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_search_rule ##### --> +<para> + +</para> + +@shell_content: +@search_rule: + + +<!-- ##### FUNCTION e_shell_content_get_search_text ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_search_text ##### --> +<para> + +</para> + +@shell_content: +@search_text: + + +<!-- ##### FUNCTION e_shell_content_get_search_value ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_search_value ##### --> +<para> + +</para> + +@shell_content: +@search_value: + + +<!-- ##### FUNCTION e_shell_content_get_search_visible ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_search_visible ##### --> +<para> + +</para> + +@shell_content: +@search_visible: + + +<!-- ##### FUNCTION e_shell_content_get_scope_action ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_scope_action ##### --> +<para> + +</para> + +@shell_content: +@scope_action: + + +<!-- ##### FUNCTION e_shell_content_get_scope_value ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_scope_value ##### --> +<para> + +</para> + +@shell_content: +@scope_value: + + +<!-- ##### FUNCTION e_shell_content_get_scope_visible ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_scope_visible ##### --> +<para> + +</para> + +@shell_content: +@scope_visible: + + +<!-- ##### FUNCTION e_shell_content_get_view_id ##### --> +<para> + +</para> + +@shell_content: +@Returns: + + +<!-- ##### FUNCTION e_shell_content_set_view_id ##### --> +<para> + +</para> + +@shell_content: +@view_id: + + +<!-- ##### FUNCTION e_shell_content_run_advanced_search_dialog ##### --> +<para> + +</para> + +@shell_content: + + +<!-- ##### FUNCTION e_shell_content_run_edit_searches_dialog ##### --> +<para> + +</para> + +@shell_content: + + +<!-- ##### FUNCTION e_shell_content_run_save_search_dialog ##### --> +<para> + +</para> + +@shell_content: + + diff --git a/doc/reference/shell/tmpl/e-shell-sidebar.sgml b/doc/reference/shell/tmpl/e-shell-sidebar.sgml index 16c46bc326..6e3d22d620 100644 --- a/doc/reference/shell/tmpl/e-shell-sidebar.sgml +++ b/doc/reference/shell/tmpl/e-shell-sidebar.sgml @@ -56,3 +56,48 @@ EShellSidebar @Returns: +<!-- ##### FUNCTION e_shell_sidebar_get_shell_view ##### --> +<para> + +</para> + +@shell_sidebar: +@Returns: + + +<!-- ##### FUNCTION e_shell_sidebar_get_primary_text ##### --> +<para> + +</para> + +@shell_sidebar: +@Returns: + + +<!-- ##### FUNCTION e_shell_sidebar_set_primary_text ##### --> +<para> + +</para> + +@shell_sidebar: +@primary_text: + + +<!-- ##### FUNCTION e_shell_sidebar_get_secondary_text ##### --> +<para> + +</para> + +@shell_sidebar: +@Returns: + + +<!-- ##### FUNCTION e_shell_sidebar_set_secondary_text ##### --> +<para> + +</para> + +@shell_sidebar: +@secondary_text: + + diff --git a/doc/reference/shell/tmpl/e-shell-taskbar.sgml b/doc/reference/shell/tmpl/e-shell-taskbar.sgml index ff99855e5e..6aa90f1c72 100644 --- a/doc/reference/shell/tmpl/e-shell-taskbar.sgml +++ b/doc/reference/shell/tmpl/e-shell-taskbar.sgml @@ -42,3 +42,38 @@ EShellTaskbar @Returns: +<!-- ##### FUNCTION e_shell_taskbar_get_shell_view ##### --> +<para> + +</para> + +@shell_taskbar: +@Returns: + + +<!-- ##### FUNCTION e_shell_taskbar_get_message ##### --> +<para> + +</para> + +@shell_taskbar: +@Returns: + + +<!-- ##### FUNCTION e_shell_taskbar_set_message ##### --> +<para> + +</para> + +@shell_taskbar: +@message: + + +<!-- ##### FUNCTION e_shell_taskbar_unset_message ##### --> +<para> + +</para> + +@shell_taskbar: + + diff --git a/doc/reference/shell/tmpl/e-shell-window.sgml b/doc/reference/shell/tmpl/e-shell-window.sgml index 750f9cf529..48f51ef992 100644 --- a/doc/reference/shell/tmpl/e-shell-window.sgml +++ b/doc/reference/shell/tmpl/e-shell-window.sgml @@ -57,3 +57,120 @@ EShellWindow @Returns: +<!-- ##### FUNCTION e_shell_window_get_shell_view ##### --> +<para> + +</para> + +@shell_window: +@view_name: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_get_shell_view_action ##### --> +<para> + +</para> + +@shell_window: +@view_name: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_get_ui_manager ##### --> +<para> + +</para> + +@shell_window: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_get_action ##### --> +<para> + +</para> + +@shell_window: +@action_name: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_get_action_group ##### --> +<para> + +</para> + +@shell_window: +@group_name: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_get_managed_widget ##### --> +<para> + +</para> + +@shell_window: +@widget_path: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_get_active_view ##### --> +<para> + +</para> + +@shell_window: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_set_active_view ##### --> +<para> + +</para> + +@shell_window: +@view_name: + + +<!-- ##### FUNCTION e_shell_window_get_safe_mode ##### --> +<para> + +</para> + +@shell_window: +@Returns: + + +<!-- ##### FUNCTION e_shell_window_set_safe_mode ##### --> +<para> + +</para> + +@shell_window: +@safe_mode: + + +<!-- ##### FUNCTION e_shell_window_register_new_item_actions ##### --> +<para> + +</para> + +@shell_window: +@module_name: +@entries: +@n_entries: + + +<!-- ##### FUNCTION e_shell_window_register_new_source_actions ##### --> +<para> + +</para> + +@shell_window: +@module_name: +@entries: +@n_entries: + + diff --git a/doc/reference/shell/tmpl/eshell-unused.sgml b/doc/reference/shell/tmpl/eshell-unused.sgml index 0a775062fd..3ed67b59d1 100644 --- a/doc/reference/shell/tmpl/eshell-unused.sgml +++ b/doc/reference/shell/tmpl/eshell-unused.sgml @@ -1721,243 +1721,6 @@ intelligent @revision: @Returns: -<!-- ##### FUNCTION e_shell_content_add_filter_separator_after ##### --> -<para> - -</para> - -@shell_content: -@action_value: - -<!-- ##### FUNCTION e_shell_content_get_context ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_filter_action ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_filter_value ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_filter_visible ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_scope_action ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_scope_value ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_scope_visible ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_search_context ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_search_rule ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_search_text ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_search_value ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_search_visible ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_shell_view ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_get_view_id ##### --> -<para> - -</para> - -@shell_content: -@Returns: - -<!-- ##### FUNCTION e_shell_content_run_advanced_search_dialog ##### --> -<para> - -</para> - -@shell_content: - -<!-- ##### FUNCTION e_shell_content_run_edit_searches_dialog ##### --> -<para> - -</para> - -@shell_content: - -<!-- ##### FUNCTION e_shell_content_run_save_search_dialog ##### --> -<para> - -</para> - -@shell_content: - -<!-- ##### FUNCTION e_shell_content_set_context ##### --> -<para> - -</para> - -@shell_content: -@context: - -<!-- ##### FUNCTION e_shell_content_set_filter_action ##### --> -<para> - -</para> - -@shell_content: -@filter_action: - -<!-- ##### FUNCTION e_shell_content_set_filter_value ##### --> -<para> - -</para> - -@shell_content: -@filter_value: - -<!-- ##### FUNCTION e_shell_content_set_filter_visible ##### --> -<para> - -</para> - -@shell_content: -@filter_visible: - -<!-- ##### FUNCTION e_shell_content_set_scope_action ##### --> -<para> - -</para> - -@shell_content: -@scope_action: - -<!-- ##### FUNCTION e_shell_content_set_scope_value ##### --> -<para> - -</para> - -@shell_content: -@scope_value: - -<!-- ##### FUNCTION e_shell_content_set_scope_visible ##### --> -<para> - -</para> - -@shell_content: -@scope_visible: - -<!-- ##### FUNCTION e_shell_content_set_search_rule ##### --> -<para> - -</para> - -@shell_content: -@search_rule: - -<!-- ##### FUNCTION e_shell_content_set_search_text ##### --> -<para> - -</para> - -@shell_content: -@search_text: - -<!-- ##### FUNCTION e_shell_content_set_search_value ##### --> -<para> - -</para> - -@shell_content: -@search_value: - -<!-- ##### FUNCTION e_shell_content_set_search_visible ##### --> -<para> - -</para> - -@shell_content: -@search_visible: - -<!-- ##### FUNCTION e_shell_content_set_view_id ##### --> -<para> - -</para> - -@shell_content: -@view_id: - <!-- ##### FUNCTION e_shell_marshal_BOOLEAN__STRING ##### --> <para> @@ -2003,77 +1766,6 @@ intelligent @online: @Returns: -<!-- ##### FUNCTION e_shell_sidebar_get_primary_text ##### --> -<para> - -</para> - -@shell_sidebar: -@Returns: - -<!-- ##### FUNCTION e_shell_sidebar_get_secondary_text ##### --> -<para> - -</para> - -@shell_sidebar: -@Returns: - -<!-- ##### FUNCTION e_shell_sidebar_get_shell_view ##### --> -<para> - -</para> - -@shell_sidebar: -@Returns: - -<!-- ##### FUNCTION e_shell_sidebar_set_primary_text ##### --> -<para> - -</para> - -@shell_sidebar: -@primary_text: - -<!-- ##### FUNCTION e_shell_sidebar_set_secondary_text ##### --> -<para> - -</para> - -@shell_sidebar: -@secondary_text: - -<!-- ##### FUNCTION e_shell_taskbar_get_message ##### --> -<para> - -</para> - -@shell_taskbar: -@Returns: - -<!-- ##### FUNCTION e_shell_taskbar_get_shell_view ##### --> -<para> - -</para> - -@shell_taskbar: -@Returns: - -<!-- ##### FUNCTION e_shell_taskbar_set_message ##### --> -<para> - -</para> - -@shell_taskbar: -@message: - -<!-- ##### FUNCTION e_shell_taskbar_unset_message ##### --> -<para> - -</para> - -@shell_taskbar: - <!-- ##### FUNCTION e_shell_upgrade_attempt ##### --> <para> @@ -2082,111 +1774,6 @@ intelligent @shell: @Returns: -<!-- ##### FUNCTION e_shell_window_get_action ##### --> -<para> - -</para> - -@shell_window: -@action_name: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_action_group ##### --> -<para> - -</para> - -@shell_window: -@group_name: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_active_view ##### --> -<para> - -</para> - -@shell_window: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_managed_widget ##### --> -<para> - -</para> - -@shell_window: -@widget_path: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_safe_mode ##### --> -<para> - -</para> - -@shell_window: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_shell_view ##### --> -<para> - -</para> - -@shell_window: -@view_name: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_shell_view_action ##### --> -<para> - -</para> - -@shell_window: -@view_name: -@Returns: - -<!-- ##### FUNCTION e_shell_window_get_ui_manager ##### --> -<para> - -</para> - -@shell_window: -@Returns: - -<!-- ##### FUNCTION e_shell_window_register_new_item_actions ##### --> -<para> - -</para> - -@shell_window: -@module_name: -@entries: -@n_entries: - -<!-- ##### FUNCTION e_shell_window_register_new_source_actions ##### --> -<para> - -</para> - -@shell_window: -@module_name: -@entries: -@n_entries: - -<!-- ##### FUNCTION e_shell_window_set_active_view ##### --> -<para> - -</para> - -@shell_window: -@view_name: - -<!-- ##### FUNCTION e_shell_window_set_safe_mode ##### --> -<para> - -</para> - -@shell_window: -@safe_mode: - <!-- ##### VARIABLE e_test_shell_view_type ##### --> <para> diff --git a/e-util/ChangeLog b/e-util/ChangeLog index 461861d7c3..2cc9357c29 100644 --- a/e-util/ChangeLog +++ b/e-util/ChangeLog @@ -1,3 +1,42 @@ +2008-12-10 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #563250 + + * e-util.c (e_get_accels_filename): + New function returns the filename where custom keyboard + accelerators are stored. Currently only applies to the + various editor windows in Evolution. + +2008-12-10 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563870 + + * e-util-labels.h: (e_util_labels_get_filter_options): + * e-util-labels.c: (e_util_labels_get_filter_options): + New helper function to be used in FilterOption. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #555663 + + * gconf-bridge.c: (struct WindowBinding), (gconf_bridge_bind_window), + (window_binding_unbind): Do not overwrite signal id. + +2008-12-05 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #332629 + + * e-util.h: (e_util_get_category_filter_options): + * e-util.c: (e_util_get_category_filter_options): + New helper function to be used in FilterOption. + +2008-11-27 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #332729 + + * e-config.c: (ep_finalise): Disconnect handlers on the widget before + freeing the structure it is using. + 2008-11-12 Milan Crha <mcrha@redhat.com> ** Fix for bug #559810 diff --git a/e-util/e-config.c b/e-util/e-config.c index d320bcd7af..03a553feb2 100644 --- a/e-util/e-config.c +++ b/e-util/e-config.c @@ -122,6 +122,10 @@ ep_finalise(GObject *o) } while ( (wn = (struct _widget_node *)e_dlist_remhead(&p->widgets)) ) { + /* disconnect the gtk_widget_destroyed function from the widget */ + if (wn->widget) + g_signal_handlers_disconnect_matched (wn->widget, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, &wn->widget); + g_free(wn); } diff --git a/e-util/e-util-labels.c b/e-util/e-util-labels.c index da32f233c5..88fff080b7 100644 --- a/e-util/e-util-labels.c +++ b/e-util/e-util-labels.c @@ -29,8 +29,10 @@ #include <camel/camel-utf8.h> +#include "e-util.h" #include "e-util-labels.h" #include "e-dialog-utils.h" +#include "filter/filter-option.h" /* Note, the first element of each EUtilLabel must NOT be translated */ EUtilLabel label_defaults[LABEL_DEFAULTS_NUM] = { @@ -543,3 +545,38 @@ e_util_labels_get_color_str (GSList *labels, const char *tag) return label->colour; } + +/** + * e_util_labels_get_filter_options: + * Returns list of newly allocated struct _filter_option-s, to be used in filters. + **/ +GSList * +e_util_labels_get_filter_options (void) +{ + GSList *known = e_util_labels_parse (NULL), *l; + GSList *res = NULL; + + for (l = known; l; l = l->next) { + EUtilLabel *label = l->data; + const char *tag; + struct _filter_option *fo; + + if (!label) + continue; + + tag = label->tag; + + if (tag && strncmp (tag, "$Label", 6) == 0) + tag += 6; + + fo = g_new0 (struct _filter_option, 1); + fo->title = e_str_without_underscores (label->name); + fo->value = g_strdup (tag); + + res = g_slist_prepend (res, fo); + } + + e_util_labels_free (known); + + return g_slist_reverse (res); +} diff --git a/e-util/e-util-labels.h b/e-util/e-util-labels.h index a9dd5613bc..26520ff226 100644 --- a/e-util/e-util-labels.h +++ b/e-util/e-util-labels.h @@ -52,4 +52,6 @@ const char *e_util_labels_get_name (GSList *labels, const char *tag); gboolean e_util_labels_get_color (GSList *labels, const char *tag, GdkColor *color); const char *e_util_labels_get_color_str (GSList *labels, const char *tag); +GSList * e_util_labels_get_filter_options (void); + #endif /* _E_UTIL_LABELS_H */ diff --git a/e-util/e-util.c b/e-util/e-util.c index adfd7bf807..373002d4d9 100644 --- a/e-util/e-util.c +++ b/e-util/e-util.c @@ -39,13 +39,15 @@ #include <glib/gi18n.h> #include <glib/gstdio.h> #include <libgnome/gnome-help.h> -#include <libgnome/gnome-util.h> +#include <libgnome/gnome-init.h> #ifdef G_OS_WIN32 #include <windows.h> #endif #include <libedataserver/e-data-server-util.h> +#include <libedataserver/e-categories.h> +#include "filter/filter-option.h" #include "e-util.h" #include "e-util-private.h" @@ -70,6 +72,27 @@ e_get_user_data_dir (void) } /** + * e_get_accels_filename: + * + * Returns the name of the user data file containing custom keyboard + * accelerator specifications. + * + * Returns: filename for accelerator specifications + **/ +const gchar * +e_get_accels_filename (void) +{ + static gchar *filename = NULL; + + if (G_UNLIKELY (filename == NULL)) + filename = g_build_filename ( + gnome_user_dir_get (), + "accels", PACKAGE, NULL); + + return filename; +} + +/** * e_display_help: * @parent: a parent #GtkWindow or %NULL * @link_id: help section to present or %NULL @@ -1282,3 +1305,23 @@ e_util_read_file (const char *filename, gboolean filename_is_uri, char **buffer, return res; } +GSList * +e_util_get_category_filter_options (void) +{ + GSList *res = NULL; + GList *clist, *l; + + clist = e_categories_get_list (); + for (l = clist; l; l = l->next) { + const char *cname = l->data; + struct _filter_option *fo = g_new0 (struct _filter_option, 1); + + fo->title = g_strdup (cname); + fo->value = g_strdup (cname); + res = g_slist_prepend (res, fo); + } + + g_list_free (clist); + + return g_slist_reverse (res); +} diff --git a/e-util/e-util.h b/e-util/e-util.h index 44fbb811cf..4878178ec6 100644 --- a/e-util/e-util.h +++ b/e-util/e-util.h @@ -41,6 +41,7 @@ typedef enum { } EFocus; const gchar * e_get_user_data_dir (void); +const gchar * e_get_accels_filename (void); void e_display_help (GtkWindow *parent, const gchar *link_id); guint e_load_ui_definition (GtkUIManager *ui_manager, @@ -129,6 +130,8 @@ gboolean e_util_read_file (const gchar *filename, gsize *read, GError **error); +GSList *e_util_get_category_filter_options (void); + G_END_DECLS #endif /* _E_UTIL_H_ */ diff --git a/e-util/gconf-bridge.c b/e-util/gconf-bridge.c index 5135eb1d30..451b7052cb 100644 --- a/e-util/gconf-bridge.c +++ b/e-util/gconf-bridge.c @@ -70,6 +70,7 @@ typedef struct { GtkWindow *window; gulong configure_event_id; + gulong window_state_event_id; gulong unmap_id; guint sync_timeout_id; } WindowBinding; @@ -819,7 +820,7 @@ gconf_bridge_bind_window (GConfBridge *bridge, (window_binding_configure_event_cb), binding); - binding->configure_event_id = + binding->window_state_event_id = g_signal_connect (window, "window_state_event", G_CALLBACK @@ -857,6 +858,8 @@ window_binding_unbind (WindowBinding *binding) g_signal_handler_disconnect (binding->window, binding->configure_event_id); g_signal_handler_disconnect (binding->window, + binding->window_state_event_id); + g_signal_handler_disconnect (binding->window, binding->unmap_id); g_object_weak_unref (G_OBJECT (binding->window), diff --git a/filter/ChangeLog b/filter/ChangeLog index 3534320543..367645ea18 100644 --- a/filter/ChangeLog +++ b/filter/ChangeLog @@ -1,3 +1,36 @@ +2008-12-10 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563870 + + * Makefile.am: + * filter-label.h: + * filter-label.c: Drop, not used anywhere. + * filter-element.c: + * rule-context.c: Remove dropped include and code. + + * filter-option.c: (get_dynamic_options), (xml_create), (get_widget): + Evaluate dynamic options even on create, to have them available for + saved searches even before the widget itself is shown. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563669 + + * filter.glade: + Use zero GtkSpinButton's PageSize, as Gtk+ requires. + +2008-12-05 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #332629 + + * filter-option.h: (struct _filter_option), + (struct _FilterOption), (filter_option_add): + * filter-option.c: (filter_option_init), (filter_option_finalise), + (filter_option_add), (xml_create), (get_widget), (clone): + Be able to define optionlist with dynamically created list of options. + + * filter-label.c: (fill_options): Adapt. + 2008-10-17 Matthew Barnes <mbarnes@redhat.com> ** Fix for bug #503898 diff --git a/filter/Makefile.am b/filter/Makefile.am index 2b6f473db9..ed11b06a67 100644 --- a/filter/Makefile.am +++ b/filter/Makefile.am @@ -26,8 +26,6 @@ libfilter_la_SOURCES = \ filter-input.h \ filter-int.c \ filter-int.h \ - filter-label.c \ - filter-label.h \ filter-option.c \ filter-option.h \ filter-part.c \ diff --git a/filter/filter-element.c b/filter/filter-element.c index 4369c65050..c14365cc8a 100644 --- a/filter/filter-element.c +++ b/filter/filter-element.c @@ -279,7 +279,6 @@ clone (FilterElement *fe) #include "filter-datespec.h" #include "filter-int.h" #include "filter-file.h" -#include "filter-label.h" static void copy_value(FilterElement *de, FilterElement *se) diff --git a/filter/filter-label.c b/filter/filter-label.c deleted file mode 100644 index 1d76300339..0000000000 --- a/filter/filter-label.c +++ /dev/null @@ -1,311 +0,0 @@ -/* - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * Jeffrey Stedfast <fejj@ximian.com> - * Michael Zucchi <notzed@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <string.h> - -#include <gtk/gtk.h> -#include <gconf/gconf.h> -#include <gconf/gconf-client.h> -#include <glib/gi18n.h> -#include <libgnomeui/gnome-dialog.h> -#include <libgnomeui/gnome-dialog-util.h> - -#include "filter-label.h" -#include <libedataserver/e-sexp.h> -#include "e-util/e-util.h" -#include "e-util/e-util-labels.h" - -#define d(x) - -static void xml_create (FilterElement *fe, xmlNodePtr node); - -static void filter_label_class_init (FilterLabelClass *klass); -static void filter_label_init (FilterLabel *label); -static void filter_label_finalise (GObject *obj); - -static FilterElementClass *parent_class; - -GType -filter_label_get_type (void) -{ - static GType type = 0; - - if (!type) { - static const GTypeInfo info = { - sizeof (FilterLabelClass), - NULL, /* base_class_init */ - NULL, /* base_class_finalize */ - (GClassInitFunc) filter_label_class_init, - NULL, /* class_finalize */ - NULL, /* class_data */ - sizeof (FilterLabel), - 0, /* n_preallocs */ - (GInstanceInitFunc) filter_label_init, - }; - - type = g_type_register_static (FILTER_TYPE_OPTION, "FilterLabel", &info, 0); - } - - return type; -} - -static GStaticRecMutex cache_lock = G_STATIC_REC_MUTEX_INIT; -static guint cache_notifier_id = 0; -static GSList *tracked_filters = NULL; -static GSList *labels_cache = NULL; -static GConfClient *gconf_client = NULL; - -static void fill_cache (void); -static void clear_cache (void); -static void gconf_labels_changed (GConfClient *client, guint cnxn_id, GConfEntry *entry, gpointer user_data); - -static void -filter_label_class_init (FilterLabelClass *klass) -{ - GObjectClass *object_class = G_OBJECT_CLASS (klass); - FilterElementClass *fe_class = FILTER_ELEMENT_CLASS (klass); - - parent_class = g_type_class_ref (FILTER_TYPE_OPTION); - - object_class->finalize = filter_label_finalise; - - /* override methods */ - fe_class->xml_create = xml_create; -} - -static void -filter_label_init (FilterLabel *fl) -{ - ((FilterOption *) fl)->type = "label"; - - g_static_rec_mutex_lock (&cache_lock); - - if (!tracked_filters) { - fill_cache (); - - gconf_client = gconf_client_get_default (); - gconf_client_add_dir (gconf_client, E_UTIL_LABELS_GCONF_KEY, GCONF_CLIENT_PRELOAD_ONELEVEL, NULL); - cache_notifier_id = gconf_client_notify_add (gconf_client, E_UTIL_LABELS_GCONF_KEY, gconf_labels_changed, NULL, NULL, NULL); - } - - tracked_filters = g_slist_prepend (tracked_filters, fl); - - g_static_rec_mutex_unlock (&cache_lock); -} - -static void -filter_label_finalise (GObject *obj) -{ - G_OBJECT_CLASS (parent_class)->finalize (obj); - - g_static_rec_mutex_lock (&cache_lock); - - tracked_filters = g_slist_remove (tracked_filters, obj); - - if (!tracked_filters) { - clear_cache (); - - if (cache_notifier_id) - gconf_client_notify_remove (gconf_client, cache_notifier_id); - - cache_notifier_id = 0; - g_object_unref (gconf_client); - gconf_client = NULL; - } - - g_static_rec_mutex_unlock (&cache_lock); -} - -/** - * filter_label_new: - * - * Create a new FilterLabel object. - * - * Return value: A new #FilterLabel object. - **/ -FilterLabel * -filter_label_new (void) -{ - return (FilterLabel *) g_object_new (FILTER_TYPE_LABEL, NULL, NULL); -} - -/* ************************************************************************* */ - -/* should already hold the lock when calling this function */ -static void -fill_cache (void) -{ - labels_cache = e_util_labels_parse (NULL); -} - -/* should already hold the lock when calling this function */ -static void -clear_cache (void) -{ - e_util_labels_free (labels_cache); - labels_cache = NULL; -} - -static void -fill_options (FilterOption *fo) -{ - GSList *l; - - g_static_rec_mutex_lock (&cache_lock); - - for (l = labels_cache; l; l = l->next) { - EUtilLabel *label = l->data; - const char *tag; - char *title; - - if (!label) - continue; - - title = e_str_without_underscores (label->name); - tag = label->tag; - - if (tag && strncmp (tag, "$Label", 6) == 0) - tag += 6; - - filter_option_add (fo, tag, title, NULL); - - g_free (title); - } - - g_static_rec_mutex_unlock (&cache_lock); -} - -static void -regen_label_options (FilterOption *fo) -{ - char *current; - - if (!fo) - return; - - current = g_strdup (filter_option_get_current (fo)); - - filter_option_remove_all (fo); - fill_options (fo); - - if (current) - filter_option_set_current (fo, current); - - g_free (current); -} - -static void -gconf_labels_changed (GConfClient *client, guint cnxn_id, GConfEntry *entry, gpointer user_data) -{ - g_static_rec_mutex_lock (&cache_lock); - - clear_cache (); - fill_cache (); - g_slist_foreach (tracked_filters, (GFunc)regen_label_options, NULL); - - g_static_rec_mutex_unlock (&cache_lock); -} - -/* ************************************************************************* */ - -int -filter_label_count (void) -{ - int res; - - g_static_rec_mutex_lock (&cache_lock); - - res = g_slist_length (labels_cache); - - g_static_rec_mutex_unlock (&cache_lock); - - return res; -} - -const char * -filter_label_label (int i) -{ - const char *res = NULL; - GSList *l; - EUtilLabel *label; - - g_static_rec_mutex_lock (&cache_lock); - - l = g_slist_nth (labels_cache, i); - - if (l) - label = l->data; - else - label = NULL; - - if (label && label->tag) { - if (strncmp (label->tag, "$Label", 6) == 0) - res = label->tag + 6; - else - res = label->tag; - } - - g_static_rec_mutex_unlock (&cache_lock); - - return res; -} - -int -filter_label_index (const char *label) -{ - int i; - GSList *l; - - g_static_rec_mutex_lock (&cache_lock); - - for (i = 0, l = labels_cache; l; i++, l = l->next) { - EUtilLabel *lbl = l->data; - const char *tag = lbl->tag; - - if (tag && strncmp (tag, "$Label", 6) == 0) - tag += 6; - - if (tag && strcmp (tag, label) == 0) - break; - } - - g_static_rec_mutex_unlock (&cache_lock); - - if (l) - return i; - - return -1; -} - -static void -xml_create (FilterElement *fe, xmlNodePtr node) -{ - FILTER_ELEMENT_CLASS (parent_class)->xml_create (fe, node); - - fill_options ((FilterOption *) fe); -} diff --git a/filter/filter-label.h b/filter/filter-label.h deleted file mode 100644 index 5df24b8b0d..0000000000 --- a/filter/filter-label.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * - * Authors: - * Jeffrey Stedfast <fejj@ximian.com> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - * - */ - -#ifndef __FILTER_LABEL__ -#define __FILTER_LABEL__ - -#ifdef __cplusplus -extern "C" { -#pragma } -#endif /* __cplusplus */ - -#include "filter-option.h" - -#define FILTER_TYPE_LABEL (filter_label_get_type ()) -#define FILTER_LABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FILTER_TYPE_LABEL, FilterLabel)) -#define FILTER_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FILTER_TYPE_LABEL, FilterLabelClass)) -#define IS_FILTER_LABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FILTER_TYPE_LABEL)) -#define IS_FILTER_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FILTER_TYPE_LABEL)) -#define FILTER_LABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FILTER_TYPE_LABEL, FilterLabelClass)) - -typedef struct _FilterLabel FilterLabel; -typedef struct _FilterLabelClass FilterLabelClass; - -struct _FilterLabel { - FilterOption parent_object; - -}; - -struct _FilterLabelClass { - FilterOptionClass parent_class; - - /* virtual methods */ - - /* signals */ -}; - -GType filter_label_get_type (void); - -FilterLabel *filter_label_new (void); - -/* Sigh, this is a mess, but its cleaner than the original mess */ -int filter_label_count(void); -const char *filter_label_label(int i); -int filter_label_index(const char *label); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* __FILTER_LABEL__ */ diff --git a/filter/filter-option.c b/filter/filter-option.c index 1685fe06ce..2d79b609c9 100644 --- a/filter/filter-option.c +++ b/filter/filter-option.c @@ -29,6 +29,7 @@ #include <gtk/gtk.h> #include <glib/gi18n.h> +#include <dlfcn.h> #include "filter-option.h" #include "filter-part.h" @@ -44,6 +45,7 @@ static FilterElement *clone (FilterElement *fe); static GtkWidget *get_widget (FilterElement *fe); static void build_code (FilterElement *fe, GString *out, struct _FilterPart *ff); static void format_sexp (FilterElement *, GString *); +static GSList *get_dynamic_options (FilterOption *fo); static void filter_option_class_init (FilterOptionClass *klass); static void filter_option_init (FilterOption *fo); @@ -102,6 +104,7 @@ static void filter_option_init (FilterOption *fo) { fo->type = "option"; + fo->dynamic_func = NULL; } static void @@ -120,6 +123,7 @@ filter_option_finalise (GObject *obj) g_list_foreach (fo->options, (GFunc)free_option, NULL); g_list_free (fo->options); + g_free (fo->dynamic_func); G_OBJECT_CLASS (parent_class)->finalize (obj); } @@ -164,7 +168,7 @@ filter_option_set_current (FilterOption *option, const char *name) /* used by implementers to add additional options */ struct _filter_option * -filter_option_add(FilterOption *fo, const char *value, const char *title, const char *code) +filter_option_add(FilterOption *fo, const char *value, const char *title, const char *code, gboolean is_dynamic) { struct _filter_option *op; @@ -175,6 +179,7 @@ filter_option_add(FilterOption *fo, const char *value, const char *title, const op->title = g_strdup(title); op->value = g_strdup(value); op->code = g_strdup(code); + op->is_dynamic = is_dynamic; fo->options = g_list_append(fo->options, op); if (fo->current == NULL) @@ -253,10 +258,47 @@ xml_create (FilterElement *fe, xmlNodePtr node) work = work->next; } - filter_option_add (fo, value, title, code); + filter_option_add (fo, value, title, code, FALSE); xmlFree (value); g_free (title); g_free (code); + } else if (g_str_equal ((char *)n->name, "dynamic")) { + if (fo->dynamic_func) { + g_warning ("Only one 'dynamic' node is acceptable in the optionlist '%s'", fe->name); + } else { + /* Expecting only one <dynamic func="cb" /> in the option list, + The 'cb' should be of this prototype: + GSList *cb (void); + returning GSList of struct _filter_option, all newly allocated, because it'll + be freed with g_free and g_slist_free. 'is_dynamic' member is ignored here. + */ + xmlChar *fn; + + fn = xmlGetProp (n, (const unsigned char *)"func"); + if (fn && *fn) { + GSList *items, *i; + struct _filter_option *op; + + fo->dynamic_func = g_strdup ((const char *)fn); + + /* get options now, to have them available when reading saved rules */ + items = get_dynamic_options (fo); + for (i = items; i; i = i->next) { + op = i->data; + + if (op) { + filter_option_add (fo, op->value, op->title, op->code, TRUE); + free_option (op, NULL); + } + } + + g_slist_free (items); + } else { + g_warning ("Missing 'func' attribute within '%s' node in optionlist '%s'", n->name, fe->name); + } + + xmlFree (fn); + } } else if (n->type == XML_ELEMENT_NODE) { g_warning ("Unknown xml node within optionlist: %s\n", n->name); } @@ -307,6 +349,30 @@ option_changed (GtkWidget *widget, FilterElement *fe) fo->current = g_object_get_data ((GObject *) widget, "option"); } +static GSList * +get_dynamic_options (FilterOption *fo) +{ + void *module; + GSList *(*get_func)(void); + GSList *res = NULL; + + if (!fo || !fo->dynamic_func) + return res; + + module = dlopen (NULL, RTLD_LAZY); + + get_func = dlsym (module, fo->dynamic_func); + if (get_func) { + res = get_func (); + } else { + g_warning ("optionlist dynamic fill function '%s' not found", fo->dynamic_func); + } + + dlclose (module); + + return res; +} + static GtkWidget * get_widget (FilterElement *fe) { @@ -315,11 +381,64 @@ get_widget (FilterElement *fe) GtkWidget *omenu; GtkWidget *item; GtkWidget *first = NULL; - GList *l = fo->options; + GList *l; struct _filter_option *op; int index = 0, current = 0; + if (fo->dynamic_func) { + /* it is dynamically filled, thus remove all dynamics and put there the fresh ones */ + GSList *items, *i; + GList *old_ops; + struct _filter_option *old_cur; + + old_ops = fo->options; + old_cur = fo->current; + l = old_ops; + + /* start with an empty list */ + fo->current = NULL; + fo->options = NULL; + + for (l = fo->options; l; l = l->next) { + op = l->data; + + if (op->is_dynamic) { + break; + } else { + filter_option_add (fo, op->value, op->title, op->code, FALSE); + } + } + + items = get_dynamic_options (fo); + for (i = items; i; i = i->next) { + op = i->data; + + if (op) { + filter_option_add (fo, op->value, op->title, op->code, TRUE); + free_option (op, NULL); + } + } + + g_slist_free (items); + + /* maybe some static left after those dynamic, add them too */ + for (; l; l = l->next) { + op = l->data; + + if (!op->is_dynamic) + filter_option_add (fo, op->value, op->title, op->code, FALSE); + } + + if (old_cur) + filter_option_set_current (fo, old_cur->value); + + /* free old list */ + g_list_foreach (old_ops, (GFunc)free_option, NULL); + g_list_free (old_ops); + } + menu = gtk_menu_new (); + l = fo->options; while (l) { op = l->data; item = gtk_menu_item_new_with_label (_(op->title)); @@ -382,12 +501,14 @@ clone (FilterElement *fe) l = fo->options; while (l) { op = l->data; - newop = filter_option_add (new, op->value, op->title, op->code); + newop = filter_option_add (new, op->value, op->title, op->code, op->is_dynamic); if (fo->current == op) new->current = newop; l = l->next; } + new->dynamic_func = g_strdup (fo->dynamic_func); + d(printf ("cloning option code %p, current = %p\n", new, new->current)); return (FilterElement *) new; diff --git a/filter/filter-option.h b/filter/filter-option.h index 8cc6c052d4..6cf56645b8 100644 --- a/filter/filter-option.h +++ b/filter/filter-option.h @@ -40,6 +40,8 @@ struct _filter_option { char *title; /* button title */ char *value; /* value, if it has one */ char *code; /* used to string code segments together */ + + gboolean is_dynamic; /* whether is the option dynamic, FALSE if static */ }; struct _FilterOption { @@ -49,6 +51,7 @@ struct _FilterOption { GList *options; struct _filter_option *current; + char *dynamic_func; /* name of the dynamic fill func, called in get_widget */ }; struct _FilterOptionClass { @@ -66,7 +69,7 @@ FilterOption *filter_option_new (void); void filter_option_set_current (FilterOption *option, const char *name); const char *filter_option_get_current (FilterOption *option); -struct _filter_option *filter_option_add (FilterOption *fo, const char *name, const char *title, const char *code); +struct _filter_option *filter_option_add (FilterOption *fo, const char *name, const char *title, const char *code, gboolean is_dynamic); void filter_option_remove_all (FilterOption *fo); #endif /* ! _FILTER_OPTION_H */ diff --git a/filter/filter.glade b/filter/filter.glade index 8dd6197f0c..3b43c26249 100644 --- a/filter/filter.glade +++ b/filter/filter.glade @@ -615,7 +615,7 @@ a time relative to when filtering occurs.</property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1 0 1000 1 10 10</property> + <property name="adjustment">1 0 1000 1 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/filter/rule-context.c b/filter/rule-context.c index ecbdafefdd..a7f739615b 100644 --- a/filter/rule-context.c +++ b/filter/rule-context.c @@ -48,7 +48,6 @@ #include "filter-file.h" #include "filter-input.h" #include "filter-int.h" -#include "filter-label.h" #include "filter-option.h" #include "filter-rule.h" #include "rule-context.h" @@ -921,8 +920,6 @@ new_element(RuleContext *rc, const char *type) return (FilterElement *) filter_int_new (); } else if (!strcmp (type, "regex")) { return (FilterElement *) filter_input_new_type_name (type); - } else if (!strcmp (type, "label")) { - return (FilterElement *) filter_label_new (); }else if (!strcmp(type, "completedpercent")) { return (FilterElement *) filter_int_new_type("completedpercent", 0,100); diff --git a/mail/ChangeLog b/mail/ChangeLog index 2f615c2a1c..98aeccdef7 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,60 @@ +2008-12-10 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563870 + + * vfoldertypes.xml: + * filtertypes.xml: + * searchtypes.xml: Use dynamic filter option. + * message-list.c: Drop unused header include. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #552583 + + * mail-config.c: (mail_config_get_account_by_source_url), + (mail_config_get_account_by_transport_url): Extending Sankar's fix + of account checking logic a bit, to be more consistent. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #563369 + + * em-folder-properties.c: (emfp_dialog_got_folder_quota): + * em-folder-tree-model.c: (em_folder_tree_model_set_folder_info): + * mail-component.c: (view_changed): Translate "Templates" folder name. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563669 + + * mail-config.glade: + Use zero GtkSpinButton's PageSize, as Gtk+ requires. + +2008-12-08 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #337082 + + * em-folder-tree.c: (emft_tree_row_expanded): Do not set we finished + with loading until we are really done with it. The previous behavior + can cause duplicate nodes in tree for subscribed folders. + +2008-12-08 Sankar P <psankar@novell.com> + + ** Fixes bug #552583 + + * mail/mail-config.c: (mail_config_get_account_by_source_url) + (mail_config_get_account_by_transport_url): + Fix the errors in the account checking logic. + +2008-12-04 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes bug #552583 + + * mail-config.c (mail_config_get_account_by_source_url), + (mail_config_get_account_by_transport_url): + For the purpose of matching a URL to an EAccount, only compare + the protocol, user, host and port and disregard the rest. + 2008-11-23 Matthew Barnes <mbarnes@redhat.com> ** Fixes part of bug #552850 diff --git a/mail/em-filter-i18n.h b/mail/em-filter-i18n.h index 6805e595d9..8b8d0c3323 100644 --- a/mail/em-filter-i18n.h +++ b/mail/em-filter-i18n.h @@ -1,19 +1,3 @@ -/* - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) version 3. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with the program; if not, see <http://www.gnu.org/licenses/> - * - * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) - */ /* Automatically generated. Do not edit. */ char *s = N_("Adjust Score"); char *s = N_("Assign Color"); @@ -75,6 +59,7 @@ char *s = N_("returns less than"); char *s = N_("Run Program"); char *s = N_("Score"); char *s = N_("Sender"); +char *s = N_("Sender or Recipients"); char *s = N_("Set Label"); char *s = N_("Set Status"); char *s = N_("Size (kB)"); diff --git a/mail/em-folder-properties.c b/mail/em-folder-properties.c index a1ad47dbdd..d25e624bd3 100644 --- a/mail/em-folder-properties.c +++ b/mail/em-folder-properties.c @@ -353,6 +353,7 @@ emfp_dialog_got_folder_quota (CamelFolder *folder, if (store == local_store && (!strcmp(prop_data->name, "Drafts") + || !strcmp(prop_data->name, "Templates") || !strcmp(prop_data->name, "Inbox") || !strcmp(prop_data->name, "Outbox") || !strcmp(prop_data->name, "Sent"))) { diff --git a/mail/em-folder-tree-model.c b/mail/em-folder-tree-model.c index ecefc4bc5b..39c46fdbb0 100644 --- a/mail/em-folder-tree-model.c +++ b/mail/em-folder-tree-model.c @@ -628,6 +628,8 @@ em_folder_tree_model_set_folder_info (EMFolderTreeModel *model, GtkTreeIter *ite if (si->store == e_mail_shell_module_get_local_store (shell_module)) { if (!strcmp(fi->full_name, "Drafts")) { name = _("Drafts"); + } else if (!strcmp(fi->full_name, "Templates")) { + name = _("Templates"); } else if (!strcmp(fi->full_name, "Inbox")) { flags = (flags & ~CAMEL_FOLDER_TYPE_MASK) | CAMEL_FOLDER_TYPE_INBOX; name = _("Inbox"); diff --git a/mail/em-folder-tree.c b/mail/em-folder-tree.c index ac0455c13d..8d450e35d3 100644 --- a/mail/em-folder-tree.c +++ b/mail/em-folder-tree.c @@ -1950,7 +1950,8 @@ emft_tree_row_expanded (GtkTreeView *treeview, GtkTreeIter *root, GtkTreePath *t return; } - gtk_tree_store_set((GtkTreeStore *)model, root, COL_BOOL_LOAD_SUBDIRS, FALSE, -1); + /* do not set LOAD_SUBDIRS to FALSE until we are really done with loading */ + /* gtk_tree_store_set ((GtkTreeStore *)model, root, COL_BOOL_LOAD_SUBDIRS, FALSE, -1); */ m = mail_msg_new (&get_folder_info_info); m->root = gtk_tree_row_reference_new (model, tree_path); diff --git a/mail/filtertypes.xml b/mail/filtertypes.xml index 60702f2b08..69c1ddbaae 100644 --- a/mail/filtertypes.xml +++ b/mail/filtertypes.xml @@ -635,7 +635,9 @@ </code> </option> </input> - <input type="label" name="versus"/> + <input type="optionlist" name="versus"> + <dynamic func="e_util_labels_get_filter_options"/> + </input> </part> <part name="score"> @@ -920,7 +922,9 @@ <part name="label"> <title>Set Label</title> <code>(set-label ${label})</code> - <input type="label" name="label"/> + <input type="optionlist" name="label"> + <dynamic func="e_util_labels_get_filter_options"/> + </input> </part> <part name="colour"> <title>Assign Color</title> diff --git a/mail/mail-component.c b/mail/mail-component.c index 56a6a6ebd2..e9c7de3173 100644 --- a/mail/mail-component.c +++ b/mail/mail-component.c @@ -579,7 +579,7 @@ view_changed(EMFolderView *emfv, EComponentView *component_view) if (emfv->folder->parent_store == mail_component_peek_local_store(NULL) && (!strcmp (name, "Drafts") || !strcmp (name, "Inbox") - || !strcmp (name, "Outbox") || !strcmp (name, "Sent"))) + || !strcmp (name, "Outbox") || !strcmp (name, "Sent") || !strcmp (name, "Templates"))) use_name = _(name); else if (!strcmp (name, "INBOX")) use_name = _("Inbox"); diff --git a/mail/mail-config.c b/mail/mail-config.c index 8993e3b915..8333b02e09 100644 --- a/mail/mail-config.c +++ b/mail/mail-config.c @@ -801,53 +801,66 @@ mail_config_get_account_by_uid (const char *uid) return (EAccount *) e_account_list_find (config->accounts, E_ACCOUNT_FIND_UID, uid); } +static gboolean +mail_config_account_url_equal (const CamelURL *u1, + const CamelURL *u2) +{ + /* For the purpose of matching a URL to an EAccount, only compare + * the protocol, user, host and port and disregard the rest. */ + + if (g_strcmp0 (u1->protocol, u2->protocol) != 0) + return FALSE; + + if (g_strcmp0 (u1->user, u2->user) != 0) + return FALSE; + + if (g_strcmp0 (u1->host, u2->host) != 0) + return FALSE; + + return (u1->port == u2->port); +} + EAccount * mail_config_get_account_by_source_url (const char *source_url) { EAccount *account = NULL; EIterator *iter; + CamelURL *url; g_return_val_if_fail (source_url != NULL, NULL); + url = camel_url_new (source_url, NULL); + g_return_val_if_fail (url != NULL, NULL); + iter = e_list_get_iterator ((EList *) config->accounts); - while (e_iterator_is_valid (iter)) { - CamelURL *url; - gchar *string; + while (account == NULL && e_iterator_is_valid (iter)) { + CamelURL *account_url; account = (EAccount *) e_iterator_get (iter); e_iterator_next (iter); - if (account->source == NULL) - continue; - - else if (account->source->url == NULL) - continue; - - else if (*account->source->url == '\0') + if ( !account || (account->source == NULL) || + (account->source->url == NULL) || (*account->source->url == '\0')) { + account = NULL; continue; + } - url = camel_url_new (account->source->url, NULL); - if (url == NULL) + account_url = camel_url_new (account->source->url, NULL); + if (account_url == NULL) { + account = NULL; continue; + } - /* Simplify the account URL for comparison. */ - string = camel_url_to_string (url, CAMEL_URL_HIDE_ALL); - if (string == NULL || strcmp (string, source_url) != 0) + if (!mail_config_account_url_equal (url, account_url)) account = NULL; /* not a match */ - camel_url_free (url); - g_free (string); - - if (account != NULL) { - g_object_unref (iter); - return account; - } + camel_url_free (account_url); } g_object_unref (iter); - return NULL; + return account; } EAccount * @@ -855,48 +868,42 @@ mail_config_get_account_by_transport_url (const char *transport_url) { EAccount *account = NULL; EIterator *iter; + CamelURL *url; g_return_val_if_fail (transport_url != NULL, NULL); + url = camel_url_new (transport_url, NULL); + g_return_val_if_fail (url != NULL, NULL); + iter = e_list_get_iterator ((EList *) config->accounts); - while (e_iterator_is_valid (iter)) { - CamelURL *url; - gchar *string; + while (account == NULL && e_iterator_is_valid (iter)) { + CamelURL *account_url; account = (EAccount *) e_iterator_get (iter); e_iterator_next (iter); - if (account->transport == NULL) - continue; - - else if (account->transport->url == NULL) - continue; - - else if (*account->transport->url == '\0') - continue; + if ( !account || (account->transport == NULL) || + (account->transport->url == NULL) || (*account->transport->url == '\0')) { + account = NULL; + continue; + } - url = camel_url_new (account->transport->url, NULL); - if (url == NULL) + account_url = camel_url_new (account->transport->url, NULL); + if (account_url == NULL) { + account = NULL; continue; + } - /* Simplify the account URL for comparison. */ - string = camel_url_to_string (url, CAMEL_URL_HIDE_ALL); - if (string == NULL || strcmp (string, transport_url) != 0) + if (!mail_config_account_url_equal (url, account_url)) account = NULL; /* not a match */ camel_url_free (url); - g_free (string); - - if (account != NULL) { - g_object_unref (iter); - return account; - } } g_object_unref (iter); - return NULL; + return account; } int diff --git a/mail/mail-config.glade b/mail/mail-config.glade index 6c3dc7937a..759088e82b 100644 --- a/mail/mail-config.glade +++ b/mail/mail-config.glade @@ -4911,7 +4911,7 @@ For example: "Work" or "Personal"</property> <property name="update_policy">GTK_UPDATE_IF_VALID</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">1.5 0 10 1 1 1</property> + <property name="adjustment">1.5 0 10 1 1 0</property> </widget> <packing> <property name="padding">0</property> @@ -4987,7 +4987,7 @@ For example: "Work" or "Personal"</property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 30000 1 10 10</property> + <property name="adjustment">0 0 30000 1 10 0</property> </widget> <packing> <property name="padding">0</property> @@ -5063,7 +5063,7 @@ For example: "Work" or "Personal"</property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">5 1 100 1 10 10</property> + <property name="adjustment">5 1 100 1 10 0</property> </widget> <packing> <property name="padding">2</property> @@ -9544,7 +9544,7 @@ for display purposes only. </property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 65535 1 10 10</property> + <property name="adjustment">0 0 65535 1 10 0</property> </widget> <packing> <property name="left_attach">3</property> @@ -9565,7 +9565,7 @@ for display purposes only. </property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 65535 1 10 10</property> + <property name="adjustment">0 0 65535 1 10 0</property> </widget> <packing> <property name="left_attach">3</property> @@ -9586,7 +9586,7 @@ for display purposes only. </property> <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">0 0 65535 1 10 10</property> + <property name="adjustment">0 0 65535 1 10 0</property> </widget> <packing> <property name="left_attach">3</property> diff --git a/mail/message-list.c b/mail/message-list.c index 5b3a1b646b..993c387cd7 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -65,8 +65,6 @@ #include "table/e-cell-vbox.h" #include "table/e-cell-hbox.h" -#include "filter/filter-label.h" - #include "em-popup.h" #include "em-utils.h" #include "mail-config.h" diff --git a/mail/searchtypes.xml b/mail/searchtypes.xml index d48fc251af..ded2e2eabd 100644 --- a/mail/searchtypes.xml +++ b/mail/searchtypes.xml @@ -270,7 +270,9 @@ </code> </option> </input> - <input type="label" name="versus"/> + <input type="optionlist" name="versus"> + <dynamic func="e_util_labels_get_filter_options"/> + </input> </part> <part name="score"> diff --git a/mail/vfoldertypes.xml b/mail/vfoldertypes.xml index f7b4b7d8cd..b87af3280a 100644 --- a/mail/vfoldertypes.xml +++ b/mail/vfoldertypes.xml @@ -353,7 +353,9 @@ </code> </option> </input> - <input type="label" name="versus"/> + <input type="optionlist" name="versus"> + <dynamic func="e_util_labels_get_filter_options"/> + </input> </part> <part name="score"> diff --git a/plugins/caldav/ChangeLog b/plugins/caldav/ChangeLog index 5463c6124e..8236b8f2e2 100644 --- a/plugins/caldav/ChangeLog +++ b/plugins/caldav/ChangeLog @@ -1,3 +1,29 @@ +2008-12-08 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #562990 + + * caldav-source.c: (user_changed), (oge_caldav): Use 'username' + property of the ESource to read/write user name, not the uri. + +2008-11-28 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #503662 + + * caldav-source.c: (user_changed): + Set NULL properly to protect against using already freed memory. + +2008-11-28 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #359745 + + * caldav-source.c: (ensure_caldav_source_group), + (e_plugin_lib_enable): Ensure source group for VTODO and VJOURNAL too. + * caldav-source.c: (set_refresh_time), (get_refresh_minutes), + (spin_changed), (option_changed), (oge_caldav): + Be able to change refresh time for the CalDAV sources. + * org-gnome-evolution-caldav.eplug.xml: + Show CalDAV options under all the other standard options. + 2008-09-02 Sankar P <psankar@novell.com> License Changes diff --git a/plugins/caldav/caldav-source.c b/plugins/caldav/caldav-source.c index 24bf2040f3..6fb7ea3841 100644 --- a/plugins/caldav/caldav-source.c +++ b/plugins/caldav/caldav-source.c @@ -52,21 +52,31 @@ GtkWidget * oge_caldav (EPlugin *epl, /* plugin intialization */ static void -ensure_caldav_source_group (void) +ensure_caldav_source_group (ECalSourceType source_type) { ESourceList *slist; - ESourceGroup *group; - + GSList *groups, *g; + ESourceGroup *group = NULL; - if (!e_cal_get_sources (&slist, E_CAL_SOURCE_TYPE_EVENT, NULL)) { + if (!e_cal_get_sources (&slist, source_type, NULL)) { g_warning ("Could not get calendar source list from GConf!"); return; } - group = e_source_list_peek_group_by_name (slist, _("CalDAV")); + groups = e_source_list_peek_groups (slist); + for (g = groups; g; g = g->next) { + group = E_SOURCE_GROUP (g->data); + + if (group && e_source_group_peek_base_uri (group) && strncmp ("caldav://", e_source_group_peek_base_uri (group), 9) == 0) + break; + + group = NULL; + } if (group == NULL) { + /* no such group has been found, create it */ gboolean res; + group = e_source_group_new (_("CalDAV"), "caldav://"); res = e_source_list_add_group (slist, group, -1); @@ -77,8 +87,12 @@ ensure_caldav_source_group (void) } g_object_unref (group); - g_object_unref (slist); + } else { + /* we found the group, change the name based on the actual language */ + e_source_group_set_name (group, _("CalDAV")); } + + g_object_unref (slist); } int @@ -87,7 +101,9 @@ e_plugin_lib_enable (EPluginLib *ep, int enable) if (enable) { d(g_print ("CalDAV Eplugin starting up ...\n")); - ensure_caldav_source_group (); + ensure_caldav_source_group (E_CAL_SOURCE_TYPE_EVENT); + ensure_caldav_source_group (E_CAL_SOURCE_TYPE_TODO); + ensure_caldav_source_group (E_CAL_SOURCE_TYPE_JOURNAL); } return 0; @@ -174,21 +190,100 @@ user_changed (GtkEntry *editable, ESource *source) euri = e_uri_new (uri); g_free (euri->user); + euri->user = NULL; - if (user != NULL) { - euri->user = g_strdup (user); + if (user != NULL && *user) { e_source_set_property (source, "auth", "1"); } else { e_source_set_property (source, "auth", NULL); } - e_source_set_property (source, "username", euri->user); + e_source_set_property (source, "username", user); ruri = print_uri_noproto (euri); e_source_set_relative_uri (source, ruri); g_free (ruri); e_uri_free (euri); } +static void +set_refresh_time (ESource *source, GtkWidget *spin, GtkWidget *option) +{ + int time; + int item_num = 0; + const char *refresh_str = e_source_get_property (source, "refresh"); + time = refresh_str ? atoi (refresh_str) : 30; + + if (time && !(time % 10080)) { + /* weeks */ + item_num = 3; + time /= 10080; + } else if (time && !(time % 1440)) { + /* days */ + item_num = 2; + time /= 1440; + } else if (time && !(time % 60)) { + /* hours */ + item_num = 1; + time /= 60; + } + gtk_option_menu_set_history (GTK_OPTION_MENU (option), item_num); + gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin), time); +} + +static char * +get_refresh_minutes (GtkWidget *spin, GtkWidget *option) +{ + int setting = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (spin)); + switch (gtk_option_menu_get_history (GTK_OPTION_MENU (option))) { + case 0: + /* minutes */ + break; + case 1: + /* hours */ + setting *= 60; + break; + case 2: + /* days */ + setting *= 1440; + break; + case 3: + /* weeks - is this *really* necessary? */ + setting *= 10080; + break; + default: + g_warning ("Time unit out of range"); + break; + } + + return g_strdup_printf ("%d", setting); +} + +static void +spin_changed (GtkSpinButton *spin, ESource *source) +{ + char *refresh_str; + GtkWidget *option; + + option = g_object_get_data (G_OBJECT (spin), "option"); + + refresh_str = get_refresh_minutes ((GtkWidget *) spin, option); + e_source_set_property (source, "refresh", refresh_str); + g_free (refresh_str); +} + +static void +option_changed (GtkOptionMenu *option, ESource *source) +{ + char *refresh_str; + GtkWidget *spin; + + spin = g_object_get_data (G_OBJECT (option), "spin"); + + refresh_str = get_refresh_minutes (spin, (GtkWidget *) option); + e_source_set_property (source, "refresh", refresh_str); + g_free (refresh_str); +} + GtkWidget * oge_caldav (EPlugin *epl, EConfigHookItemFactoryData *data) @@ -204,11 +299,13 @@ oge_caldav (EPlugin *epl, GtkWidget *widget; GtkWidget *luser; GtkWidget *user; + GtkWidget *label, *hbox, *spin, *option, *menu; + GtkWidget *times[4]; char *uri; char *username; const char *ssl_prop; gboolean ssl_enabled; - int row; + int row, i; source = t->source; group = e_source_peek_group (source); @@ -230,10 +327,12 @@ oge_caldav (EPlugin *epl, return NULL; } - username = euri->user; + g_free (euri->user); euri->user = NULL; uri = e_uri_to_string (euri, FALSE); + username = e_source_get_duped_property (source, "username"); + ssl_prop = e_source_get_property (source, "ssl"); if (ssl_prop && ssl_prop[0] == '1') { ssl_enabled = TRUE; @@ -268,12 +367,14 @@ oge_caldav (EPlugin *epl, G_CALLBACK (location_changed), source); + row++; + cssl = gtk_check_button_new_with_mnemonic (_("Use _SSL")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(cssl), ssl_enabled); gtk_widget_show (cssl); gtk_table_attach (GTK_TABLE (parent), cssl, 1, 2, - row + 1, row + 2, + row , row + 1, GTK_FILL, 0, 0, 0); g_signal_connect (G_OBJECT (cssl), @@ -281,19 +382,21 @@ oge_caldav (EPlugin *epl, G_CALLBACK (ssl_changed), source); + row++; + luser = gtk_label_new_with_mnemonic (_("User_name:")); gtk_widget_show (luser); gtk_misc_set_alignment (GTK_MISC (luser), 0.0, 0.5); gtk_table_attach (GTK_TABLE (parent), luser, 0, 1, - row + 2, row + 3, + row, row + 1, GTK_FILL, 0, 0, 0); user = gtk_entry_new (); gtk_widget_show (user); gtk_entry_set_text (GTK_ENTRY (user), username ? username : ""); gtk_table_attach (GTK_TABLE (parent), user, - 1, 2, row + 2, row + 3, + 1, 2, row, row + 1, GTK_EXPAND | GTK_FILL, 0, 0, 0); gtk_label_set_mnemonic_widget (GTK_LABEL (luser), user); @@ -303,10 +406,48 @@ oge_caldav (EPlugin *epl, G_CALLBACK (user_changed), source); + row++; g_free (uri); g_free (username); + /* add refresh option */ + label = gtk_label_new_with_mnemonic (_("Re_fresh:")); + gtk_widget_show (label); + gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); + gtk_table_attach (GTK_TABLE (parent), label, 0, 1, row, row+1, GTK_FILL, 0, 0, 0); + + hbox = gtk_hbox_new (FALSE, 6); + gtk_widget_show (hbox); + + spin = gtk_spin_button_new_with_range (0, 100, 1); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin); + gtk_widget_show (spin); + gtk_box_pack_start (GTK_BOX (hbox), spin, FALSE, TRUE, 0); + + option = gtk_option_menu_new (); + gtk_widget_show (option); + times[0] = gtk_menu_item_new_with_label (_("minutes")); + times[1] = gtk_menu_item_new_with_label (_("hours")); + times[2] = gtk_menu_item_new_with_label (_("days")); + times[3] = gtk_menu_item_new_with_label (_("weeks")); + menu = gtk_menu_new (); + gtk_widget_show (menu); + for (i = 0; i < 4; i++) { + gtk_widget_show (times[i]); + gtk_menu_shell_append (GTK_MENU_SHELL (menu), times[i]); + } + gtk_option_menu_set_menu (GTK_OPTION_MENU (option), menu); + set_refresh_time (source, spin, option); + gtk_box_pack_start (GTK_BOX (hbox), option, FALSE, TRUE, 0); + + g_object_set_data (G_OBJECT (option), "spin", spin); + g_signal_connect (G_OBJECT (option), "changed", G_CALLBACK (option_changed), source); + g_object_set_data (G_OBJECT (spin), "option", option); + g_signal_connect (G_OBJECT (spin), "value-changed", G_CALLBACK (spin_changed), source); + + gtk_table_attach (GTK_TABLE (parent), hbox, 1, 2, row, row+1, GTK_EXPAND | GTK_FILL, 0, 0, 0); + return widget; } diff --git a/plugins/caldav/org-gnome-evolution-caldav.eplug.xml b/plugins/caldav/org-gnome-evolution-caldav.eplug.xml index dc728f1e7f..368570d49b 100644 --- a/plugins/caldav/org-gnome-evolution-caldav.eplug.xml +++ b/plugins/caldav/org-gnome-evolution-caldav.eplug.xml @@ -17,7 +17,7 @@ id="org.gnome.evolution.calendar.calendarProperties"> <item type="item_table" - path="00.general/00.source/15.caldav" + path="00.general/00.source/99.caldav" factory="oge_caldav"/> </group> diff --git a/plugins/calendar-weather/ChangeLog b/plugins/calendar-weather/ChangeLog index 13f1f22a89..a34f5df01b 100644 --- a/plugins/calendar-weather/ChangeLog +++ b/plugins/calendar-weather/ChangeLog @@ -1,3 +1,19 @@ +2008-12-10 Suman Manjunath <msuman@novell.com> + + * Makefile.am: Don't try to specify LIBGWEATHER_(CFLAGS|LIBS), they + will be provided by configure.in. + +2008-12-03 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #352287 + + * Makefile.am: Compile and link with libgweather. + * calendar-weather.c: (e_plugin_lib_enable), (selection_changed), + (find_location_func), (find_location), (treeview_clicked), + (create_source_selector), (build_location_path), + (location_clicked), (e_calendar_weather_location): + Use libgweather for weather calendar. + 2008-07-31 Matthew Barnes <mbarnes@redhat.com> ** Fixes part of bug #545568 diff --git a/plugins/calendar-weather/Makefile.am b/plugins/calendar-weather/Makefile.am index 8f57db1dcc..2e2be150e3 100644 --- a/plugins/calendar-weather/Makefile.am +++ b/plugins/calendar-weather/Makefile.am @@ -7,7 +7,8 @@ INCLUDES = \ $(EVOLUTION_CALENDAR_CFLAGS) \ $(SOURCE_SEL_CFLAGS) \ -DWEATHER_DATADIR=\""$(weatherdatadir)"\" \ - -DWEATHER_EDS_DATADIR=\""$(eds_datadir)/weather"\" + -DWEATHER_EDS_DATADIR=\""$(eds_datadir)/weather"\" \ + $(LIBGWEATHER_CFLAGS) @EVO_PLUGIN_RULE@ @@ -24,12 +25,12 @@ plugin_DATA = org-gnome-calendar-weather.eplug plugin_LTLIBRARIES = liborg-gnome-calendar-weather.la liborg_gnome_calendar_weather_la_SOURCES = calendar-weather.c -liborg_gnome_calendar_weather_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED) -liborg_gnome_calendar_weather_la_LIBADD = \ +liborg_gnome_calendar_weather_la_LDFLAGS = -module -avoid-version $(NO_UNDEFINED) $(LIBGWEATHER_LIBS) +liborg_gnome_calendar_weather_la_LIBADD = \ $(top_builddir)/calendar/gui/libevolution-calendar.la \ $(EVOLUTION_CALENDAR_LIBS) -EXTRA_DIST = \ +EXTRA_DIST = \ org-gnome-calendar-weather.eplug.xml \ $(weatherdata_DATA) diff --git a/plugins/calendar-weather/calendar-weather.c b/plugins/calendar-weather/calendar-weather.c index 68cac54258..a6dce31326 100644 --- a/plugins/calendar-weather/calendar-weather.c +++ b/plugins/calendar-weather/calendar-weather.c @@ -21,6 +21,7 @@ #include <gtk/gtk.h> #include <e-util/e-config.h> +#include "e-util/e-icon-factory.h" #include <calendar/gui/e-cal-config.h> #include <calendar/gui/e-cal-event.h> #include <calendar/gui/calendar-component.h> @@ -32,6 +33,11 @@ #include <libxml/tree.h> #include <string.h> +#define GWEATHER_I_KNOW_THIS_IS_UNSTABLE +#include <libgweather/weather.h> +#include <libgweather/gweather-xml.h> +#undef GWEATHER_I_KNOW_THIS_IS_UNSTABLE + GtkWidget *e_calendar_weather_location (EPlugin *epl, EConfigHookItemFactoryData *data); GtkWidget *e_calendar_weather_refresh (EPlugin *epl, EConfigHookItemFactoryData *data); GtkWidget *e_calendar_weather_units (EPlugin *epl, EConfigHookItemFactoryData *data); @@ -39,8 +45,6 @@ gboolean e_calendar_weather_check (EPlugin *epl, EConfigHookPageCheckData *dat void e_calendar_weather_migrate (EPlugin *epl, ECalEventTargetComponent *data); int e_plugin_lib_enable (EPluginLib *epl, int enable); -static GtkTreeStore *store = NULL; - #define WEATHER_BASE_URI "weather://" int @@ -48,22 +52,44 @@ e_plugin_lib_enable (EPluginLib *epl, int enable) { GList *l; gboolean found = FALSE; + const char *tmp; + + static struct { + const char *description; + const char *icon_name; + } categories[] = { + { N_("Weather: Fog"), "weather-fog" }, + { N_("Weather: Cloudy"), "weather-few-clouds" }, + { N_("Weather: Cloudy Night"), "weather-few-clouds-night" }, + { N_("Weather: Overcast"), "weather-overcast" }, + { N_("Weather: Showers"), "weather-showers" }, + { N_("Weather: Snow"), "weather-snow" }, + { N_("Weather: Sunny"), "weather-clear" }, + { N_("Weather: Clear Night"), "weather-clear-night" }, + { N_("Weather: Thunderstorms"), "weather-storm" }, + { NULL, NULL } + }; + + tmp = _(categories [0].description); /* Add the categories icons if we don't have them. */ for (l = e_categories_get_list (); l; l = g_list_next (l)) { - if (!strcmp ((const char *)l->data, _("Weather: Cloudy"))) { + if (!strcmp ((const char *)l->data, tmp)) { found = TRUE; break; } } + if (!found) { - e_categories_add (_("Weather: Cloudy"), NULL, WEATHER_DATADIR "/category_weather_cloudy_16.png", FALSE); - e_categories_add (_("Weather: Fog"), NULL, WEATHER_DATADIR "/category_weather_fog_16.png", FALSE); - e_categories_add (_("Weather: Partly Cloudy"), NULL, WEATHER_DATADIR "/category_weather_partly_cloudy_16.png", FALSE); - e_categories_add (_("Weather: Rain"), NULL, WEATHER_DATADIR "/category_weather_rain_16.png", FALSE); - e_categories_add (_("Weather: Snow"), NULL, WEATHER_DATADIR "/category_weather_snow_16.png", FALSE); - e_categories_add (_("Weather: Sunny"), NULL, WEATHER_DATADIR "/category_weather_sun_16.png", FALSE); - e_categories_add (_("Weather: Thunderstorms"), NULL, WEATHER_DATADIR "/category_weather_tstorm_16.png", FALSE); + int i; + + for (i = 0; categories[i].description; i++) { + char *filename; + + filename = e_icon_factory_get_icon_filename (categories[i].icon_name, E_ICON_SIZE_MENU); + e_categories_add (_(categories[i].description), NULL, filename, FALSE); + g_free (filename); + } } return 0; @@ -110,87 +136,15 @@ e_calendar_weather_migrate (EPlugin *epl, ECalEventTargetComponent *data) } static void -parse_subtree (GtkTreeIter *parent, xmlNode *node) -{ - GtkTreeIter iter; - xmlNode *child; - - if (node->type == XML_ELEMENT_NODE) { - gtk_tree_store_append (store, &iter, parent); - if (strcmp ((const char *)node->name, "location") == 0) { - xmlAttr *attr; - - child = node->children; - g_assert (child->type == XML_TEXT_NODE); - gtk_tree_store_set (store, &iter, 0, child->content, -1); - - for (attr = node->properties; attr; attr = attr->next) { - if (strcmp ((const char *)attr->name, "code") == 0) - gtk_tree_store_set (store, &iter, 1, attr->children->content, -1); - else if (strcmp ((const char *)attr->name, "url") == 0) - gtk_tree_store_set (store, &iter, 2, attr->children->content, -1); - else if (strcmp ((const char *)attr->name, "type") == 0) - gtk_tree_store_set (store, &iter, 3, attr->children->content, -1); - } - } else { - xmlAttr *attr; - - for (child = node->children; child; child = child->next) - parse_subtree (&iter, child); - - for (attr = node->properties; attr; attr = attr->next) - if (strcmp ((const char *)attr->name, "name") == 0) - gtk_tree_store_set (store, &iter, 0, attr->children->content, -1); - } - } -} - -static void -load_locations (void) -{ - xmlDoc *doc; - xmlNode *root, *child; - - LIBXML_TEST_VERSION - - doc = xmlParseFile (WEATHER_EDS_DATADIR "/Locations.xml"); - if (doc == NULL) { - g_warning ("failed to read locations file"); - return; - } - - if (store == NULL) - store = gtk_tree_store_new (4, - G_TYPE_STRING, /* name */ - G_TYPE_STRING, /* code */ - G_TYPE_STRING, /* URL */ - G_TYPE_STRING); /* type */ - - root = xmlDocGetRootElement (doc); - for (child = root->children; child; child = child->next) - parse_subtree (NULL, child); - xmlFreeDoc (doc); -} - -static void selection_changed (GtkTreeSelection *selection, GtkDialog *dialog) { GtkTreeModel *model; GtkTreeIter iter; if (gtk_tree_selection_get_selected (selection, &model, &iter)) { - gchar *code = NULL; - gtk_tree_model_get (model, &iter, 1, &code, -1); - if (code != NULL) { - gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog), GTK_RESPONSE_OK, TRUE); - } else { - GtkTreeView *view = gtk_tree_selection_get_tree_view (selection); - GtkTreePath *path; - path = gtk_tree_model_get_path (model, &iter); - gtk_tree_view_expand_row (view, path, FALSE); - gtk_tree_path_free (path); - gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog), GTK_RESPONSE_OK, FALSE); - } + WeatherLocation *loc = NULL; + gtk_tree_model_get (model, &iter, GWEATHER_XML_COL_POINTER, &loc, -1); + gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog), GTK_RESPONSE_OK, loc != NULL); } else { gtk_dialog_set_response_sensitive (GTK_DIALOG (dialog), GTK_RESPONSE_OK, FALSE); } @@ -198,6 +152,7 @@ selection_changed (GtkTreeSelection *selection, GtkDialog *dialog) static struct { + gboolean is_old; gchar **ids; GtkTreeIter *result; } find_data; @@ -205,13 +160,13 @@ static struct static gboolean find_location_func (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *node, gpointer data) { - gchar *type, *code, *name; - gtk_tree_model_get (model, node, 0, &name, 1, &code, 3, &type, -1); - if (name == NULL || code == NULL || type == NULL) + WeatherLocation *wl = NULL; + + gtk_tree_model_get (model, node, GWEATHER_XML_COL_POINTER, &wl, -1); + if (!wl || !wl->name || !wl->code) return FALSE; - if ((!strcmp (type, find_data.ids[0])) && - (!strcmp (code, find_data.ids[1])) && - (!strcmp (name, find_data.ids[2]))) { + if (((!strcmp (wl->code, find_data.ids[0])) || (find_data.is_old && !strcmp (wl->code + 1, find_data.ids[0]))) && + (!strcmp (wl->name, find_data.ids[1]))) { find_data.result = gtk_tree_iter_copy (node); return TRUE; } @@ -219,12 +174,18 @@ find_location_func (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *node, g } static GtkTreeIter * -find_location (gchar *relative_url) +find_location (GtkTreeModel *model, gchar *relative_url) { - /* type/code/name */ + /* old URL uses type/code/name, but new uses only code/name */ + if (strncmp (relative_url, "ccf/", 4) == 0) { + relative_url = relative_url + 4; + find_data.is_old = TRUE; + } else + find_data.is_old = FALSE; + find_data.ids = g_strsplit (relative_url, "/", -1); find_data.result = NULL; - gtk_tree_model_foreach (GTK_TREE_MODEL (store), (GtkTreeModelForeachFunc) find_location_func, NULL); + gtk_tree_model_foreach (model, (GtkTreeModelForeachFunc) find_location_func, NULL); g_strfreev (find_data.ids); return find_data.result; @@ -239,9 +200,9 @@ treeview_clicked (GtkTreeView *treeview, GdkEventButton *event, GtkDialog *dialo GtkTreeIter iter; if (gtk_tree_selection_get_selected (selection, &model, &iter)) { - gchar *code = NULL; - gtk_tree_model_get (model, &iter, 1, &code, -1); - if (code != NULL) { + WeatherLocation *wl = NULL; + gtk_tree_model_get (model, &iter, GWEATHER_XML_COL_POINTER, &wl, -1); + if (wl != NULL && wl->code != NULL && wl->name != NULL) { gtk_dialog_response (dialog, GTK_RESPONSE_OK); return TRUE; } @@ -250,6 +211,8 @@ treeview_clicked (GtkTreeView *treeview, GdkEventButton *event, GtkDialog *dialo return FALSE; } +static GtkTreeModel *store = NULL; + static GtkDialog * create_source_selector (ESource *source) { @@ -274,7 +237,7 @@ create_source_selector (ESource *source) scrolledwindow = gtk_scrolled_window_new (NULL, NULL); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_widget_show (scrolledwindow); - treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (store)); + treeview = gtk_tree_view_new_with_model (store); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), FALSE); gtk_widget_show (treeview); gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolledwindow), treeview); @@ -286,7 +249,7 @@ create_source_selector (ESource *source) uri_text = e_source_get_uri (source); uri = e_uri_new (uri_text); if (uri->path && strlen (uri->path)) { - GtkTreeIter *iter = find_location (uri_text + 10); + GtkTreeIter *iter = find_location (store, uri_text + 10); GtkTreePath *path = gtk_tree_model_get_path (GTK_TREE_MODEL (store), iter); gtk_tree_view_expand_to_path (GTK_TREE_VIEW (treeview), path); gtk_tree_selection_select_path (selection, path); @@ -317,11 +280,11 @@ build_location_path (GtkTreeIter *iter) GtkTreeIter parent; gchar *path, *temp1, *temp2; - gtk_tree_model_get (GTK_TREE_MODEL (store), iter, 0, &temp1, -1); + gtk_tree_model_get (GTK_TREE_MODEL (store), iter, GWEATHER_XML_COL_LOC, &temp1, -1); path = g_strdup (temp1); while (gtk_tree_model_iter_parent (GTK_TREE_MODEL (store), &parent, iter)) { - gtk_tree_model_get (GTK_TREE_MODEL (store), &parent, 0, &temp1, -1); + gtk_tree_model_get (GTK_TREE_MODEL (store), &parent, GWEATHER_XML_COL_LOC, &temp1, -1); temp2 = g_strdup_printf ("%s : %s", temp1, path); g_free (path); path = temp2; @@ -347,17 +310,17 @@ location_clicked (GtkButton *button, ESource *source) GtkTreeModel *model; GtkTreeIter iter; GtkWidget *label; - gchar *type, *code, *name; + WeatherLocation *wl = NULL; gchar *path, *uri; gtk_tree_selection_get_selected (selection, &model, &iter); - gtk_tree_model_get (model, &iter, 0, &name, 1, &code, 3, &type, -1); + gtk_tree_model_get (model, &iter, GWEATHER_XML_COL_POINTER, &wl, -1); path = build_location_path (&iter); label = gtk_bin_get_child (GTK_BIN (button)); gtk_label_set_text (GTK_LABEL (label), path); - uri = g_strdup_printf ("%s/%s/%s", type, code, name); + uri = g_strdup_printf ("%s/%s", wl->code, wl->name); /* FIXME - url_encode (&uri); */ e_source_set_relative_uri (source, uri); g_free (uri); @@ -387,7 +350,7 @@ e_calendar_weather_location (EPlugin *epl, EConfigHookItemFactoryData *data) static GtkWidget *hidden; if (store == NULL) - load_locations (); + store = gweather_xml_load_locations (); if (!hidden) hidden = gtk_label_new (""); @@ -416,7 +379,7 @@ e_calendar_weather_location (EPlugin *epl, EConfigHookItemFactoryData *data) gtk_widget_show (button); if (uri->path && strlen (uri->path)) { - GtkTreeIter *iter = find_location (uri_text + 10); + GtkTreeIter *iter = find_location (store, uri_text + 10); gchar *location = build_location_path (iter); text = gtk_label_new (location); g_free (location); diff --git a/plugins/exchange-operations/ChangeLog b/plugins/exchange-operations/ChangeLog index 0d526d6245..34dc1f3aa0 100644 --- a/plugins/exchange-operations/ChangeLog +++ b/plugins/exchange-operations/ChangeLog @@ -1,3 +1,20 @@ +2008-12-08 Bharath Acharya <abharath@novell.com> + + ** Fix for bug #558498 + + * exchange-account-setup.c: (org_gnome_exchange_settings), + (destroy_oof_data), (org_gnome_exchange_commit): + * org-gnome-exchange-operations.error.xml:Check for the offline status + before setting up the Exchange settings. + +2008-12-02 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #562228 + + * exchange-account-setup.c: (want_mailbox_toggled), + (org_gnome_exchange_owa_url): + Make it clearer the mailbox entry is optional. + 2008-10-22 Bharath Acharya <abharath@novell.com> ** Fix for bug #557246 diff --git a/plugins/exchange-operations/exchange-account-setup.c b/plugins/exchange-operations/exchange-account-setup.c index 275a214b90..5b3d0b9653 100644 --- a/plugins/exchange-operations/exchange-account-setup.c +++ b/plugins/exchange-operations/exchange-account-setup.c @@ -181,6 +181,7 @@ org_gnome_exchange_settings(EPlugin *epl, EConfigHookItemFactoryData *data) const char *source_url; char *message = NULL, *txt = NULL, *oof_message; gboolean oof_state = FALSE; + gint offline_status; GtkVBox *vbox_settings; @@ -234,6 +235,14 @@ org_gnome_exchange_settings(EPlugin *epl, EConfigHookItemFactoryData *data) account = exchange_operations_get_exchange_account (); + exchange_config_listener_get_offline_status (exchange_global_config_listener, + &offline_status); + if (offline_status == OFFLINE_MODE) { + e_error_run (NULL, ERROR_DOMAIN ":exchange-settings-offline", NULL); + + return NULL; + } + oof_data = g_new0 (OOFData, 1); oof_data->state = FALSE; @@ -613,6 +622,30 @@ mailbox_editor_entry_changed (GtkWidget *entry, EConfig *config) update_mailbox_param_in_url (target->account, E_ACCOUNT_TRANSPORT_URL, mailbox); } +static void +want_mailbox_toggled (GtkWidget *toggle, EConfig *config) +{ + GtkWidget *entry; + + g_return_if_fail (toggle != NULL); + g_return_if_fail (config != NULL); + + entry = g_object_get_data (G_OBJECT (toggle), "mailbox-entry"); + if (entry) { + gboolean is_active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (toggle)); + EMConfigTargetAccount *target; + const char *mailbox; + + gtk_widget_set_sensitive (entry, is_active); + + target = (EMConfigTargetAccount *)config->target; + mailbox = gtk_entry_get_text (GTK_ENTRY (entry)); + + update_mailbox_param_in_url (target->account, E_ACCOUNT_SOURCE_URL, is_active ? mailbox : NULL); + update_mailbox_param_in_url (target->account, E_ACCOUNT_TRANSPORT_URL, is_active ? mailbox : NULL); + } +} + static char * construct_owa_url (CamelURL *url) { @@ -645,8 +678,8 @@ org_gnome_exchange_owa_url(EPlugin *epl, EConfigHookItemFactoryData *data) { EMConfigTargetAccount *target_account; const char *source_url; - char *owa_url = NULL, *mailbox_name; - GtkWidget *owa_entry, *mailbox_entry; + char *owa_url = NULL, *mailbox_name, *username; + GtkWidget *owa_entry, *mailbox_entry, *want_mailbox_check; CamelURL *url; int row; GtkWidget *hbox, *label, *button; @@ -679,6 +712,7 @@ org_gnome_exchange_owa_url(EPlugin *epl, EConfigHookItemFactoryData *data) owa_url = g_strdup (camel_url_get_param(url, "owa_url")); mailbox_name = g_strdup (camel_url_get_param (url, "mailbox")); + username = g_strdup (url->user); /* if the host is null, then user+other info is dropped silently, force it to be kept */ if (url->host == NULL) { @@ -740,6 +774,19 @@ org_gnome_exchange_owa_url(EPlugin *epl, EConfigHookItemFactoryData *data) owa_editor_entry_changed (owa_entry, data->config); row++; + want_mailbox_check = gtk_check_button_new_with_mnemonic (_("S_pecify the mailbox name")); + gtk_widget_show (want_mailbox_check); + gtk_table_attach (GTK_TABLE (data->parent), want_mailbox_check, 1, 2, row, row+1, GTK_FILL, GTK_FILL, 0, 0); + if (!username || !*username || !mailbox_name || !*mailbox_name || + g_ascii_strcasecmp (username, mailbox_name) == 0 || + (strchr (username, '/') && g_ascii_strcasecmp (strchr (username, '/') + 1, mailbox_name) == 0)) { + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (want_mailbox_check), FALSE); + } else { + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (want_mailbox_check), TRUE); + } + g_signal_connect (want_mailbox_check, "toggled", G_CALLBACK (want_mailbox_toggled), data->config); + + row++; label = gtk_label_new_with_mnemonic (_("_Mailbox:")); gtk_widget_show (label); @@ -750,14 +797,18 @@ org_gnome_exchange_owa_url(EPlugin *epl, EConfigHookItemFactoryData *data) gtk_label_set_mnemonic_widget (GTK_LABEL (label), mailbox_entry); + gtk_widget_set_sensitive (mailbox_entry, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (want_mailbox_check))); + g_signal_connect (mailbox_entry, "changed", G_CALLBACK (mailbox_editor_entry_changed), data->config); g_object_set_data (G_OBJECT (button), "mailbox-entry", mailbox_entry); + g_object_set_data (G_OBJECT (want_mailbox_check), "mailbox-entry", mailbox_entry); gtk_table_attach (GTK_TABLE (data->parent), label, 0, 1, row, row+1, 0, 0, 0, 0); gtk_table_attach (GTK_TABLE (data->parent), mailbox_entry, 1, 2, row, row+1, GTK_FILL|GTK_EXPAND, GTK_FILL, 0, 0); g_free (owa_url); g_free (mailbox_name); + g_free (username); return hbox; } @@ -815,7 +866,8 @@ destroy_oof_data (void) { if (oof_data->message) g_free (oof_data->message); - g_free (oof_data); + if (oof_data) + g_free (oof_data); } void @@ -824,6 +876,7 @@ org_gnome_exchange_commit (EPlugin *epl, EConfigHookItemFactoryData *data) EMConfigTargetAccount *target_account; const char *source_url; CamelURL *url; + gint offline_status; target_account = (EMConfigTargetAccount *)data->config->target; source_url = e_account_get_string (target_account->account, E_ACCOUNT_SOURCE_URL); @@ -844,6 +897,14 @@ org_gnome_exchange_commit (EPlugin *epl, EConfigHookItemFactoryData *data) } camel_url_free (url); + + exchange_config_listener_get_offline_status (exchange_global_config_listener, + &offline_status); + + if (offline_status == OFFLINE_MODE) { + return; + } + /* Set oof data in exchange account */ set_oof_info (); destroy_oof_data (); diff --git a/plugins/exchange-operations/org-gnome-exchange-operations.error.xml b/plugins/exchange-operations/org-gnome-exchange-operations.error.xml index c162f365ec..37ed0aa318 100644 --- a/plugins/exchange-operations/org-gnome-exchange-operations.error.xml +++ b/plugins/exchange-operations/org-gnome-exchange-operations.error.xml @@ -48,6 +48,11 @@ <_secondary>Cannot display folders.</_secondary> </error> + <error id="exchange-settings-offline" type="info"> + <_primary>Exchange Account is offline.</_primary> + <_secondary>Cannot access the "Exchange settings" tab in offline mode.</_secondary> + </error> + <error id="account-offline-generic" type="info"> <_primary>Exchange Account is offline.</_primary> <_secondary>Cannot perform the operation.</_secondary> diff --git a/plugins/itip-formatter/ChangeLog b/plugins/itip-formatter/ChangeLog index 966cc611e7..c04825312f 100644 --- a/plugins/itip-formatter/ChangeLog +++ b/plugins/itip-formatter/ChangeLog @@ -1,3 +1,11 @@ +2008-11-28 Suman Manjunath <msuman@novell.com> + + ** Fix for bug #561467 + + * itip-formatter.c (update_x), (update_attendee_status): Copy + required X-* properties . This might be needed for special cases + in certain backends. + 2008-11-06 Patrick Ohly <patrick.ohly@gmx.de> ** Fix for bug #541121 diff --git a/plugins/itip-formatter/itip-formatter.c b/plugins/itip-formatter/itip-formatter.c index ae7190174b..61d2234bd8 100644 --- a/plugins/itip-formatter/itip-formatter.c +++ b/plugins/itip-formatter/itip-formatter.c @@ -1186,6 +1186,26 @@ remove_delegate (struct _itip_puri *pitip, const char *delegate, const char *del } +static void +update_x (ECalComponent *pitip_comp, ECalComponent *comp) +{ + icalcomponent *itip_icalcomp = e_cal_component_get_icalcomponent (pitip_comp); + icalcomponent *icalcomp = e_cal_component_get_icalcomponent (comp); + + icalproperty *prop = icalcomponent_get_first_property (itip_icalcomp, ICAL_X_PROPERTY); + while (prop) { + const char *name = icalproperty_get_x_name (prop); + if (!g_ascii_strcasecmp (name, "X-EVOLUTION-IS-REPLY")) { + icalproperty *new_prop = icalproperty_new_x (icalproperty_get_x (prop)); + icalproperty_set_x_name (new_prop, "X-EVOLUTION-IS-REPLY"); + icalcomponent_add_property (icalcomp, new_prop); + } + prop = icalcomponent_get_next_property (itip_icalcomp, ICAL_X_PROPERTY); + } + + e_cal_component_set_icalcomponent (comp, icalcomp); +} + static void update_attendee_status (struct _itip_puri *pitip) { @@ -1286,6 +1306,8 @@ update_attendee_status (struct _itip_puri *pitip) } } + update_x (pitip->comp, comp); + if (itip_view_get_update (ITIP_VIEW (pitip->view))) { e_cal_component_commit_sequence (comp); itip_send_comp (E_CAL_COMPONENT_METHOD_REQUEST, comp, pitip->current_ecal, NULL, NULL, NULL); diff --git a/plugins/mailing-list-actions/ChangeLog b/plugins/mailing-list-actions/ChangeLog index 066bf2bda1..f53e9e3961 100644 --- a/plugins/mailing-list-actions/ChangeLog +++ b/plugins/mailing-list-actions/ChangeLog @@ -1,3 +1,9 @@ +2008-12-08 Jennifer Newman <jennifer.newman@tufts.edu> + + ** Fix for bug #549964 + + * org-gnome-mailing-list-actions.error.xml: Fix for an erroneous string + 2008-09-04 Sankar P <psankar@novell.com> License Changes diff --git a/plugins/mailing-list-actions/org-gnome-mailing-list-actions.error.xml b/plugins/mailing-list-actions/org-gnome-mailing-list-actions.error.xml index a48d5c17b6..d0b860741c 100644 --- a/plugins/mailing-list-actions/org-gnome-mailing-list-actions.error.xml +++ b/plugins/mailing-list-actions/org-gnome-mailing-list-actions.error.xml @@ -30,7 +30,7 @@ Header: {1}</_secondary> <error id="no-action" type="error"> <_primary>No e-mail action</_primary> - <_secondary xml:space="preserve">The action could not be performed. This means the header for this action did not contain any action we could process. + <_secondary xml:space="preserve">The action could not be performed. The header for this action did not contain any action that could be processed. Header: {0}</_secondary> </error> diff --git a/plugins/sa-junk-plugin/ChangeLog b/plugins/sa-junk-plugin/ChangeLog index badfbb83ff..46f51c7003 100644 --- a/plugins/sa-junk-plugin/ChangeLog +++ b/plugins/sa-junk-plugin/ChangeLog @@ -1,3 +1,12 @@ +2008-12-03 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes bug #560420 (patch by hp@syntomax.com) + + * em-junk-filter.c (pipe_to_sa_full): + spamc and spamassassin use error codes >= 64 to denote execution + errors. Positive error codes < 64 means the message was identified + as spam. + 2008-09-29 Sankar P <psankar@novell.com> License Changes diff --git a/plugins/sa-junk-plugin/em-junk-filter.c b/plugins/sa-junk-plugin/em-junk-filter.c index 1a442b42aa..4cb554eb17 100644 --- a/plugins/sa-junk-plugin/em-junk-filter.c +++ b/plugins/sa-junk-plugin/em-junk-filter.c @@ -250,7 +250,7 @@ pipe_to_sa_full (CamelMimeMessage *msg, const char *in, char **argv, int rv_err, else res = rv_err; - if (res != 0) + if (res >= 64) g_set_error (error, EM_JUNK_ERROR, res, _("Pipe to SpamAssassin failed, error code: %d"), res); return res; diff --git a/po/ChangeLog b/po/ChangeLog index 950aa24291..110e4bbcbf 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,3 +1,11 @@ +2008-12-09 Ilkka Tuohela <hile@iki.fi> + + * fi.po: Updated Finnish translation. + +2008-11-26 Jorge Gonzalez <jorgegonz@svn.gnome.org> + + * es.po: Updated Spanish translation. + 2008-11-16 Nickolay V. Shmyrev <nshmyrev@yandex.ru> * ru.po: Updated Russian translation. @@ -16,8 +16,8 @@ msgstr "" "Project-Id-Version: evolution.HEAD\n" "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" "product=evolution&component=general\n" -"POT-Creation-Date: 2008-11-12 20:03+0000\n" -"PO-Revision-Date: 2008-11-14 20:56+0100\n" +"POT-Creation-Date: 2008-11-24 01:11+0000\n" +"PO-Revision-Date: 2008-11-26 19:15+0100\n" "Last-Translator: Jorge González <jorgegonz@svn.gnome.org>\n" "Language-Team: Español <gnome-es-list@gnome.org>\n" "MIME-Version: 1.0\n" @@ -159,7 +159,7 @@ msgid "calendar view for one or more days" msgstr "vista de calendario para uno o más días" #: ../a11y/calendar/ea-gnome-calendar.c:186 -#: ../calendar/gui/calendar-component.c:792 +#: ../calendar/gui/calendar-component.c:803 msgid "%A %d %b %Y" msgstr "%A, %e de %b de %Y" @@ -170,7 +170,7 @@ msgstr "%A, %e de %b de %Y" #. You can change the order but don't change the #. specifiers or add anything. #: ../a11y/calendar/ea-gnome-calendar.c:189 -#: ../calendar/gui/calendar-component.c:795 +#: ../calendar/gui/calendar-component.c:806 #: ../calendar/gui/e-day-view-top-item.c:855 ../calendar/gui/e-day-view.c:1577 #: ../calendar/gui/e-week-view-main-item.c:335 msgid "%a %d %b" @@ -179,9 +179,9 @@ msgstr "%a, %e de %b" #: ../a11y/calendar/ea-gnome-calendar.c:191 #: ../a11y/calendar/ea-gnome-calendar.c:196 #: ../a11y/calendar/ea-gnome-calendar.c:198 -#: ../calendar/gui/calendar-component.c:797 -#: ../calendar/gui/calendar-component.c:802 -#: ../calendar/gui/calendar-component.c:804 +#: ../calendar/gui/calendar-component.c:808 +#: ../calendar/gui/calendar-component.c:813 +#: ../calendar/gui/calendar-component.c:815 msgid "%a %d %b %Y" msgstr "%a, %e de %b de %Y" @@ -189,10 +189,10 @@ msgstr "%a, %e de %b de %Y" #: ../a11y/calendar/ea-gnome-calendar.c:221 #: ../a11y/calendar/ea-gnome-calendar.c:227 #: ../a11y/calendar/ea-gnome-calendar.c:229 -#: ../calendar/gui/calendar-component.c:816 -#: ../calendar/gui/calendar-component.c:823 -#: ../calendar/gui/calendar-component.c:829 -#: ../calendar/gui/calendar-component.c:831 +#: ../calendar/gui/calendar-component.c:827 +#: ../calendar/gui/calendar-component.c:834 +#: ../calendar/gui/calendar-component.c:840 +#: ../calendar/gui/calendar-component.c:842 msgid "%d %b %Y" msgstr "%e de %B de %Y" @@ -202,7 +202,7 @@ msgstr "%e de %B de %Y" #. month name. You can change the order but don't #. change the specifiers or add anything. #: ../a11y/calendar/ea-gnome-calendar.c:219 -#: ../calendar/gui/calendar-component.c:821 +#: ../calendar/gui/calendar-component.c:832 #: ../calendar/gui/e-day-view-top-item.c:859 ../calendar/gui/e-day-view.c:1593 #: ../calendar/gui/e-week-view-main-item.c:349 msgid "%d %b" @@ -614,7 +614,7 @@ msgstr "Configure el autocompletado aquí" #. Create the contacts group #: ../addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in.h:5 -#: ../addressbook/gui/component/addressbook-view.c:1325 +#: ../addressbook/gui/component/addressbook-view.c:1215 #: ../calendar/gui/calendar-component.c:307 ../calendar/gui/migration.c:396 #: ../plugins/exchange-operations/exchange-delegates-user.c:78 #: ../plugins/exchange-operations/exchange-folder.c:582 @@ -863,20 +863,27 @@ msgstr "Renombrar carpeta" msgid "Folder names cannot contain '/'" msgstr "Los nombres de carpetas no pueden contener el carácter «/»" -#: ../addressbook/gui/component/addressbook-view.c:941 +#: ../addressbook/gui/component/addressbook-view.c:951 msgid "_New Address Book" msgstr "Libreta de direcciones _nueva" -#: ../addressbook/gui/component/addressbook-view.c:942 +#: ../addressbook/gui/component/addressbook-view.c:952 msgid "Save As vCard..." msgstr "Guardar como vCard…" -#: ../addressbook/gui/component/addressbook-view.c:945 +#: ../addressbook/gui/component/addressbook-view.c:953 +#: ../calendar/gui/calendar-component.c:660 +#: ../calendar/gui/memos-component.c:501 ../calendar/gui/tasks-component.c:492 +#: ../mail/em-folder-tree.c:2114 ../ui/evolution-mail-list.xml.h:39 +msgid "_Rename..." +msgstr "_Renombrar…" + +#: ../addressbook/gui/component/addressbook-view.c:956 #: ../addressbook/gui/widgets/e-addressbook-view.c:956 -#: ../calendar/gui/calendar-component.c:652 +#: ../calendar/gui/calendar-component.c:663 #: ../calendar/gui/e-calendar-table.c:1608 #: ../calendar/gui/e-calendar-view.c:1692 ../calendar/gui/e-memo-table.c:940 -#: ../calendar/gui/memos-component.c:493 ../calendar/gui/tasks-component.c:484 +#: ../calendar/gui/memos-component.c:504 ../calendar/gui/tasks-component.c:495 #: ../mail/em-folder-tree.c:2111 ../mail/em-folder-view.c:1340 #: ../ui/evolution-addressbook.xml.h:49 ../ui/evolution-calendar.xml.h:42 #: ../ui/evolution-mail-list.xml.h:35 ../ui/evolution-memos.xml.h:16 @@ -884,16 +891,16 @@ msgstr "Guardar como vCard…" msgid "_Delete" msgstr "_Borrar" -#: ../addressbook/gui/component/addressbook-view.c:948 -#: ../calendar/gui/calendar-component.c:657 +#: ../addressbook/gui/component/addressbook-view.c:959 +#: ../calendar/gui/calendar-component.c:668 #: ../calendar/gui/dialogs/comp-editor.c:2043 -#: ../calendar/gui/memos-component.c:498 ../calendar/gui/tasks-component.c:489 +#: ../calendar/gui/memos-component.c:509 ../calendar/gui/tasks-component.c:500 #: ../composer/e-msg-composer.c:1041 ../mail/em-folder-tree.c:2120 #: ../ui/evolution-addressbook.xml.h:59 ../ui/evolution-mail-list.xml.h:38 msgid "_Properties" msgstr "_Propiedades" -#: ../addressbook/gui/component/addressbook-view.c:1336 +#: ../addressbook/gui/component/addressbook-view.c:1225 msgid "Contact Source Selector" msgstr "Selector de origen de contactos" @@ -3442,7 +3449,7 @@ msgstr "Charla por vídeo" #: ../addressbook/gui/widgets/eab-contact-display.c:636 #: ../calendar/gui/calendar-commands.c:94 #: ../calendar/gui/dialogs/calendar-setup.c:369 -#: ../calendar/gui/gnome-cal.c:2462 +#: ../calendar/gui/gnome-cal.c:2499 #: ../plugins/exchange-operations/exchange-delegates-user.c:78 #: ../plugins/exchange-operations/exchange-folder.c:576 #: ../plugins/groupwise-account-setup/camel-gw-listener.c:424 @@ -4645,8 +4652,8 @@ msgid "Calendar and Tasks" msgstr "Calendario y tareas" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:2 -#: ../calendar/gui/calendar-component.c:840 -#: ../calendar/gui/calendar-component.c:1437 +#: ../calendar/gui/calendar-component.c:851 +#: ../calendar/gui/calendar-component.c:1325 msgid "Calendars" msgstr "Calendarios" @@ -4688,17 +4695,17 @@ msgstr "_Notas" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:12 #: ../calendar/gui/e-memo-table.c:279 ../calendar/gui/e-memos.c:1120 -#: ../calendar/gui/gnome-cal.c:1777 ../calendar/gui/memos-component.c:575 -#: ../calendar/gui/memos-component.c:1128 ../calendar/gui/memos-control.c:354 +#: ../calendar/gui/gnome-cal.c:1810 ../calendar/gui/memos-component.c:586 +#: ../calendar/gui/memos-component.c:1016 ../calendar/gui/memos-control.c:354 #: ../calendar/gui/memos-control.c:370 msgid "Memos" msgstr "Notas" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:13 #: ../calendar/gui/e-calendar-table.c:713 ../calendar/gui/e-tasks.c:1429 -#: ../calendar/gui/gnome-cal.c:1645 ../calendar/gui/print.c:1984 -#: ../calendar/gui/tasks-component.c:566 -#: ../calendar/gui/tasks-component.c:1117 ../calendar/gui/tasks-control.c:492 +#: ../calendar/gui/gnome-cal.c:1678 ../calendar/gui/print.c:1984 +#: ../calendar/gui/tasks-component.c:577 +#: ../calendar/gui/tasks-component.c:1005 ../calendar/gui/tasks-control.c:492 #: ../calendar/gui/tasks-control.c:508 #: ../calendar/importers/icalendar-importer.c:76 #: ../calendar/importers/icalendar-importer.c:749 @@ -5482,93 +5489,93 @@ msgstr "Cumpleaños y aniversarios" msgid "Weather" msgstr "Meteorología" -#: ../calendar/gui/calendar-component.c:648 +#: ../calendar/gui/calendar-component.c:658 msgid "_New Calendar" msgstr "Calendario _nuevo" -#: ../calendar/gui/calendar-component.c:649 -#: ../calendar/gui/memos-component.c:490 ../calendar/gui/tasks-component.c:481 +#: ../calendar/gui/calendar-component.c:659 +#: ../calendar/gui/memos-component.c:500 ../calendar/gui/tasks-component.c:491 #: ../mail/em-folder-tree.c:2106 msgid "_Copy..." msgstr "_Copiar…" -#: ../calendar/gui/calendar-component.c:653 -#: ../calendar/gui/memos-component.c:494 ../calendar/gui/tasks-component.c:485 +#: ../calendar/gui/calendar-component.c:664 +#: ../calendar/gui/memos-component.c:505 ../calendar/gui/tasks-component.c:496 msgid "_Make available for offline use" msgstr "_Hacer esto disponible para su uso desconectado" -#: ../calendar/gui/calendar-component.c:654 -#: ../calendar/gui/memos-component.c:495 ../calendar/gui/tasks-component.c:486 +#: ../calendar/gui/calendar-component.c:665 +#: ../calendar/gui/memos-component.c:506 ../calendar/gui/tasks-component.c:497 msgid "_Do not make available for offline use" msgstr "_No hacer esto disponible sin conexión" -#: ../calendar/gui/calendar-component.c:984 +#: ../calendar/gui/calendar-component.c:995 msgid "Failed upgrading calendars." msgstr "Falló al actualizar calendarios." -#: ../calendar/gui/calendar-component.c:1283 +#: ../calendar/gui/calendar-component.c:1176 #, c-format msgid "Unable to open the calendar '%s' for creating events and meetings" msgstr "" "No es posible abrir el calendario «%s» para crear acontecimientos y reuniones" -#: ../calendar/gui/calendar-component.c:1299 +#: ../calendar/gui/calendar-component.c:1192 msgid "There is no calendar available for creating events and meetings" msgstr "No hay un calendario disponible para crear acontecimientos y reuniones" -#: ../calendar/gui/calendar-component.c:1412 +#: ../calendar/gui/calendar-component.c:1305 msgid "Calendar Source Selector" msgstr "Selector de origen del calendario" -#: ../calendar/gui/calendar-component.c:1633 +#: ../calendar/gui/calendar-component.c:1521 msgid "New appointment" msgstr "Cita nueva" -#: ../calendar/gui/calendar-component.c:1634 +#: ../calendar/gui/calendar-component.c:1522 msgctxt "New" msgid "_Appointment" msgstr "_Cita" -#: ../calendar/gui/calendar-component.c:1635 +#: ../calendar/gui/calendar-component.c:1523 msgid "Create a new appointment" msgstr "Crea una cita nueva" -#: ../calendar/gui/calendar-component.c:1641 +#: ../calendar/gui/calendar-component.c:1529 msgid "New meeting" msgstr "Reunión nueva" -#: ../calendar/gui/calendar-component.c:1642 +#: ../calendar/gui/calendar-component.c:1530 msgctxt "New" msgid "M_eeting" msgstr "_Reunión" -#: ../calendar/gui/calendar-component.c:1643 +#: ../calendar/gui/calendar-component.c:1531 msgid "Create a new meeting request" msgstr "Crea una solicitud de reunión nueva" -#: ../calendar/gui/calendar-component.c:1649 +#: ../calendar/gui/calendar-component.c:1537 msgid "New all day appointment" msgstr "Cita nueva para todo el día" -#: ../calendar/gui/calendar-component.c:1650 +#: ../calendar/gui/calendar-component.c:1538 msgctxt "New" msgid "All Day A_ppointment" msgstr "Cita para todo el _día" -#: ../calendar/gui/calendar-component.c:1651 +#: ../calendar/gui/calendar-component.c:1539 msgid "Create a new all-day appointment" msgstr "Crea una cita nueva para todo el día" -#: ../calendar/gui/calendar-component.c:1657 +#: ../calendar/gui/calendar-component.c:1545 msgid "New calendar" msgstr "Calendario nuevo" -#: ../calendar/gui/calendar-component.c:1658 +#: ../calendar/gui/calendar-component.c:1546 msgctxt "New" msgid "Cale_ndar" msgstr "Cale_ndario" -#: ../calendar/gui/calendar-component.c:1659 +#: ../calendar/gui/calendar-component.c:1547 msgid "Create a new calendar" msgstr "Crea un calendario nuevo" @@ -7400,7 +7407,7 @@ msgid "%s for an unknown trigger type" msgstr "%s para un tipo de disparador desconocido" #: ../calendar/gui/e-cal-component-memo-preview.c:75 -#: ../calendar/gui/e-cal-component-preview.c:73 ../mail/em-folder-view.c:3312 +#: ../calendar/gui/e-cal-component-preview.c:73 ../mail/em-folder-view.c:3308 #, c-format msgid "Click to open %s" msgstr "Pulse para abrir %s" @@ -8579,39 +8586,39 @@ msgstr "Seleccione la zona horaria" msgid "%d %B" msgstr "%e de %B" -#: ../calendar/gui/gnome-cal.c:2587 +#: ../calendar/gui/gnome-cal.c:2624 msgid "_Custom View" msgstr "Vista _personalizada" -#: ../calendar/gui/gnome-cal.c:2588 +#: ../calendar/gui/gnome-cal.c:2625 msgid "_Save Custom View" msgstr "_Guardar vista personalizada" -#: ../calendar/gui/gnome-cal.c:2593 +#: ../calendar/gui/gnome-cal.c:2630 msgid "_Define Views..." msgstr "_Definir vistas…" -#: ../calendar/gui/gnome-cal.c:2835 +#: ../calendar/gui/gnome-cal.c:2872 #, c-format msgid "Loading appointments at %s" msgstr "Cargando citas de %s" -#: ../calendar/gui/gnome-cal.c:2850 +#: ../calendar/gui/gnome-cal.c:2887 #, c-format msgid "Loading tasks at %s" msgstr "Cargando tareas de %s" -#: ../calendar/gui/gnome-cal.c:2859 +#: ../calendar/gui/gnome-cal.c:2896 #, c-format msgid "Loading memos at %s" msgstr "Cargando notas en %s" -#: ../calendar/gui/gnome-cal.c:2964 +#: ../calendar/gui/gnome-cal.c:3001 #, c-format msgid "Opening %s" msgstr "Abriendo %s" -#: ../calendar/gui/gnome-cal.c:3932 +#: ../calendar/gui/gnome-cal.c:3969 msgid "Purging" msgstr "Compactando" @@ -8725,79 +8732,79 @@ msgstr "Información de iCalendar" msgid "You must be an attendee of the event." msgstr "Debe ser un participante en el acontecimiento." -#: ../calendar/gui/memos-component.c:489 +#: ../calendar/gui/memos-component.c:499 msgid "_New Memo List" msgstr "Lista de notas _nueva" -#: ../calendar/gui/memos-component.c:571 +#: ../calendar/gui/memos-component.c:582 #, c-format msgid "%d memo" msgid_plural "%d memos" msgstr[0] "%d nota" msgstr[1] "%d notas" -#: ../calendar/gui/memos-component.c:573 ../calendar/gui/tasks-component.c:564 +#: ../calendar/gui/memos-component.c:584 ../calendar/gui/tasks-component.c:575 #, c-format msgid ", %d selected" msgid_plural ", %d selected" msgstr[0] ", %d seleccionado" msgstr[1] ", %d seleccionados" -#: ../calendar/gui/memos-component.c:620 +#: ../calendar/gui/memos-component.c:631 msgid "Failed upgrading memos." msgstr "Fallo al actualizar las notas." -#: ../calendar/gui/memos-component.c:980 +#: ../calendar/gui/memos-component.c:873 #, c-format msgid "Unable to open the memo list '%s' for creating events and meetings" msgstr "" "No es posible abrir la lista de notas «%s» para crear acontecimientos y " "reuniones" -#: ../calendar/gui/memos-component.c:993 +#: ../calendar/gui/memos-component.c:886 msgid "There is no calendar available for creating memos" msgstr "No hay un calendario disponible para crear notas" -#: ../calendar/gui/memos-component.c:1103 +#: ../calendar/gui/memos-component.c:996 msgid "Memo Source Selector" msgstr "Selector de origen de notas" -#: ../calendar/gui/memos-component.c:1287 +#: ../calendar/gui/memos-component.c:1175 msgid "New memo" msgstr "Nota nueva" -#: ../calendar/gui/memos-component.c:1288 +#: ../calendar/gui/memos-component.c:1176 msgctxt "New" msgid "Mem_o" msgstr "_Nota" -#: ../calendar/gui/memos-component.c:1289 +#: ../calendar/gui/memos-component.c:1177 msgid "Create a new memo" msgstr "Crea una nota nueva" -#: ../calendar/gui/memos-component.c:1295 +#: ../calendar/gui/memos-component.c:1183 msgid "New shared memo" msgstr "Nota nueva compartida" -#: ../calendar/gui/memos-component.c:1296 +#: ../calendar/gui/memos-component.c:1184 msgctxt "New" msgid "_Shared memo" msgstr "Nota _compartida" -#: ../calendar/gui/memos-component.c:1297 +#: ../calendar/gui/memos-component.c:1185 msgid "Create a shared new memo" msgstr "Crea una nota compartida nueva" -#: ../calendar/gui/memos-component.c:1303 +#: ../calendar/gui/memos-component.c:1191 msgid "New memo list" msgstr "Lista de notas nueva" -#: ../calendar/gui/memos-component.c:1304 +#: ../calendar/gui/memos-component.c:1192 msgctxt "New" msgid "Memo li_st" msgstr "_Lista de notas" -#: ../calendar/gui/memos-component.c:1305 +#: ../calendar/gui/memos-component.c:1193 msgid "Create a new memo list" msgstr "Crea una lista de notas nueva" @@ -9058,72 +9065,72 @@ msgstr "Categorías: %s" msgid "Contacts: " msgstr "Contactos: " -#: ../calendar/gui/tasks-component.c:480 +#: ../calendar/gui/tasks-component.c:490 msgid "_New Task List" msgstr "Lista de tareas _nueva" -#: ../calendar/gui/tasks-component.c:562 +#: ../calendar/gui/tasks-component.c:573 #, c-format msgid "%d task" msgid_plural "%d tasks" msgstr[0] "%d tarea" msgstr[1] "%d tareas" -#: ../calendar/gui/tasks-component.c:611 +#: ../calendar/gui/tasks-component.c:622 msgid "Failed upgrading tasks." msgstr "Fallo al actualizar las tareas." -#: ../calendar/gui/tasks-component.c:968 +#: ../calendar/gui/tasks-component.c:861 #, c-format msgid "Unable to open the task list '%s' for creating events and meetings" msgstr "" "No es posible abrir la lista de tareas «%s» para crear acontecimientos y " "reuniones" -#: ../calendar/gui/tasks-component.c:981 +#: ../calendar/gui/tasks-component.c:874 msgid "There is no calendar available for creating tasks" msgstr "No hay un calendario disponible para crear tareas" -#: ../calendar/gui/tasks-component.c:1092 +#: ../calendar/gui/tasks-component.c:985 msgid "Task Source Selector" msgstr "Selector de origen de tareas" -#: ../calendar/gui/tasks-component.c:1352 +#: ../calendar/gui/tasks-component.c:1240 msgid "New task" msgstr "Tarea nueva" -#: ../calendar/gui/tasks-component.c:1353 +#: ../calendar/gui/tasks-component.c:1241 msgctxt "New" msgid "_Task" msgstr "_Tarea" -#: ../calendar/gui/tasks-component.c:1354 +#: ../calendar/gui/tasks-component.c:1242 msgid "Create a new task" msgstr "Crea una tarea nueva" -#: ../calendar/gui/tasks-component.c:1360 +#: ../calendar/gui/tasks-component.c:1248 msgid "New assigned task" msgstr "Nueva tarea asignada" -#: ../calendar/gui/tasks-component.c:1361 +#: ../calendar/gui/tasks-component.c:1249 msgctxt "New" msgid "Assigne_d Task" msgstr "Tarea _asignada" -#: ../calendar/gui/tasks-component.c:1362 +#: ../calendar/gui/tasks-component.c:1250 msgid "Create a new assigned task" msgstr "Crea una tarea nueva asignada" -#: ../calendar/gui/tasks-component.c:1368 +#: ../calendar/gui/tasks-component.c:1256 msgid "New task list" msgstr "Lista de tareas nueva" -#: ../calendar/gui/tasks-component.c:1369 +#: ../calendar/gui/tasks-component.c:1257 msgctxt "New" msgid "Tas_k list" msgstr "Lista de ta_reas" -#: ../calendar/gui/tasks-component.c:1370 +#: ../calendar/gui/tasks-component.c:1258 msgid "Create a new task list" msgstr "Crea una lista de tareas nueva" @@ -12285,7 +12292,7 @@ msgstr "_Nombre de la carpeta:" #. load store to mail component #: ../mail/em-folder-tree-model.c:204 ../mail/em-folder-tree-model.c:206 -#: ../mail/mail-vfolder.c:975 ../mail/mail-vfolder.c:1042 +#: ../mail/mail-vfolder.c:980 ../mail/mail-vfolder.c:1047 msgid "Search Folders" msgstr "Carpetas de búsqueda" @@ -12385,10 +12392,6 @@ msgstr "Carpeta _nueva…" msgid "_Move..." msgstr "_Mover…" -#: ../mail/em-folder-tree.c:2114 ../ui/evolution-mail-list.xml.h:39 -msgid "_Rename..." -msgstr "_Renombrar…" - #: ../mail/em-folder-tree.c:2115 ../ui/evolution-mail-list.xml.h:21 msgid "Re_fresh" msgstr "A_ctualizar" @@ -12590,17 +12593,17 @@ msgstr "_Desde esta dirección" msgid "_To this Address" msgstr "_A esta dirección" -#: ../mail/em-folder-view.c:3293 +#: ../mail/em-folder-view.c:3289 #, c-format msgid "Click to mail %s" msgstr "Pulse para enviar correo a %s" -#: ../mail/em-folder-view.c:3305 +#: ../mail/em-folder-view.c:3301 #, c-format msgid "Click to call %s" msgstr "Pulse para llamar a %s" -#: ../mail/em-folder-view.c:3310 +#: ../mail/em-folder-view.c:3306 msgid "Click to hide/unhide addresses" msgstr "Pulse para ocultar/mostrar las direcciones" @@ -13390,10 +13393,10 @@ msgid "Directory for saving mail component files." msgstr "Directorio para guardar archivos enviados por correo." #: ../mail/evolution-mail.schemas.in.h:41 -msgid "Disable or enable ellipsizing of folder names in folder tree" +msgid "Disable or enable ellipsizing of folder names in side bar" msgstr "" -"Desactivar o activar la elipsis de los nombres de las carpetas en el árbol " -"de carpetas" +"Desactivar o activar la elipsis de los nombres de las carpetas en la barra " +"lateral" #: ../mail/evolution-mail.schemas.in.h:42 msgid "Draw spelling error indicators on words as you type." @@ -14076,10 +14079,10 @@ msgstr "" "cada mensaje." #: ../mail/evolution-mail.schemas.in.h:178 -msgid "Whether disable ellipsizing feature of folder names in folder tree." +msgid "Whether disable ellipsizing feature of folder names in side bar." msgstr "" "Indica si se debe desactivar la característica de elipsis de los nombres de " -"las carpetas en el árbol de carpetas." +"las carpetas en la barra lateral." #: ../mail/evolution-mail.schemas.in.h:179 msgid "" @@ -15381,11 +15384,11 @@ msgstr "Actualizando carpetas de búsqueda para «%s: %s»" msgid "Updating Search Folders for '%s'" msgstr "Actualizando carpetas de búsqueda para «%s»" -#: ../mail/mail-vfolder.c:1081 +#: ../mail/mail-vfolder.c:1086 msgid "Edit Search Folder" msgstr "Editar carpeta de búsqueda" -#: ../mail/mail-vfolder.c:1170 +#: ../mail/mail-vfolder.c:1175 msgid "New Search Folder" msgstr "Carpeta de búsqueda nueva" @@ -17841,10 +17844,10 @@ msgid "Unsubscribing from folder \"%s\"" msgstr "Desuscribiéndose de la carpeta «%s»" #: ../plugins/folder-unsubscribe/org-gnome-mail-folder-unsubscribe.eplug.xml.h:1 -msgid "Allows unsubscribing of mail folders in the folder tree context menu." +msgid "Allows unsubscribing of mail folders in the side bar context menu." msgstr "" -"Permite desuscribirse de las listas de correo en el menú contextual del " -"árbol de carpetas." +"Permite desuscribirse de las listas de correo en el menú contextual de la " +"barra lateral." #: ../plugins/folder-unsubscribe/org-gnome-mail-folder-unsubscribe.eplug.xml.h:2 msgid "Unsubscribe Folders" @@ -18246,56 +18249,56 @@ msgstr "Añadir " msgid "Modify" msgstr "Modificar" -#: ../plugins/groupwise-features/status-track.c:107 +#: ../plugins/groupwise-features/status-track.c:97 msgid "Message Status" msgstr "Estado del mensaje" #. Subject -#: ../plugins/groupwise-features/status-track.c:121 +#: ../plugins/groupwise-features/status-track.c:111 msgid "Subject:" msgstr "Asunto:" -#: ../plugins/groupwise-features/status-track.c:135 +#: ../plugins/groupwise-features/status-track.c:125 msgid "From:" msgstr "De:" -#: ../plugins/groupwise-features/status-track.c:150 +#: ../plugins/groupwise-features/status-track.c:140 msgid "Creation date:" msgstr "Fecha de creación:" -#: ../plugins/groupwise-features/status-track.c:189 +#: ../plugins/groupwise-features/status-track.c:179 msgid "Recipient: " msgstr "Destinatario: " -#: ../plugins/groupwise-features/status-track.c:196 +#: ../plugins/groupwise-features/status-track.c:186 msgid "Delivered: " msgstr "Entregado: " -#: ../plugins/groupwise-features/status-track.c:202 +#: ../plugins/groupwise-features/status-track.c:192 msgid "Opened: " msgstr "Abierto: " -#: ../plugins/groupwise-features/status-track.c:207 +#: ../plugins/groupwise-features/status-track.c:197 msgid "Accepted: " msgstr "Aceptado: " -#: ../plugins/groupwise-features/status-track.c:212 +#: ../plugins/groupwise-features/status-track.c:202 msgid "Deleted: " msgstr "Borrado: " -#: ../plugins/groupwise-features/status-track.c:217 +#: ../plugins/groupwise-features/status-track.c:207 msgid "Declined: " msgstr "Rechazado: " -#: ../plugins/groupwise-features/status-track.c:222 +#: ../plugins/groupwise-features/status-track.c:212 msgid "Completed: " msgstr "Completado: " -#: ../plugins/groupwise-features/status-track.c:227 +#: ../plugins/groupwise-features/status-track.c:217 msgid "Undelivered: " msgstr "Sin entregar: " -#: ../plugins/groupwise-features/status-track.c:251 +#: ../plugins/groupwise-features/status-track.c:241 msgid "Track Message Status..." msgstr "Seguir el estado del mensaje…" @@ -19218,20 +19221,20 @@ msgstr "" "Indica si se deben notificar sólo los mensajes en la carpeta bandeja de " "entrada." -#: ../plugins/mail-notification/mail-notification.c:255 +#: ../plugins/mail-notification/mail-notification.c:256 msgid "Generate a _D-Bus message" msgstr "Generar un mensaje _D-Bus" -#: ../plugins/mail-notification/mail-notification.c:378 +#: ../plugins/mail-notification/mail-notification.c:379 msgid "Evolution's Mail Notification" msgstr "Notificación de correo de Evolution" -#: ../plugins/mail-notification/mail-notification.c:399 +#: ../plugins/mail-notification/mail-notification.c:400 msgid "Mail Notification Properties" msgstr "Propiedades de la notificación de correo" #. To translators: '%d' is the number of mails recieved and '%s' is the name of the folder -#: ../plugins/mail-notification/mail-notification.c:458 +#: ../plugins/mail-notification/mail-notification.c:479 #, c-format msgid "" "You have received %d new message\n" @@ -19246,55 +19249,55 @@ msgstr[1] "" "Ha recibido %d mensajes nuevos\n" "en %s." -#: ../plugins/mail-notification/mail-notification.c:463 +#: ../plugins/mail-notification/mail-notification.c:484 #, c-format msgid "You have received %d new message." msgid_plural "You have received %d new messages." msgstr[0] "Ha recibido %d mensaje nuevo." msgstr[1] "Ha recibido %d mensajes nuevos." -#: ../plugins/mail-notification/mail-notification.c:480 -#: ../plugins/mail-notification/mail-notification.c:485 +#: ../plugins/mail-notification/mail-notification.c:501 +#: ../plugins/mail-notification/mail-notification.c:506 msgid "New email" msgstr "Nuevo correo-e" -#: ../plugins/mail-notification/mail-notification.c:544 +#: ../plugins/mail-notification/mail-notification.c:566 msgid "Show icon in _notification area" msgstr "Mostrar icono en el área de _notificación" -#: ../plugins/mail-notification/mail-notification.c:547 +#: ../plugins/mail-notification/mail-notification.c:569 msgid "B_link icon in notification area" msgstr "Icono pa_rpadeante en el área de notificación" -#: ../plugins/mail-notification/mail-notification.c:549 +#: ../plugins/mail-notification/mail-notification.c:571 msgid "Popup _message together with the icon" msgstr "_Mensaje emergente junto con el icono" -#: ../plugins/mail-notification/mail-notification.c:730 +#: ../plugins/mail-notification/mail-notification.c:752 msgid "_Play sound when new messages arrive" msgstr "Re_producir un sonido cuando llegue correo nuevo" -#: ../plugins/mail-notification/mail-notification.c:736 +#: ../plugins/mail-notification/mail-notification.c:758 msgid "_Beep" msgstr "_Pitar" -#: ../plugins/mail-notification/mail-notification.c:737 +#: ../plugins/mail-notification/mail-notification.c:759 msgid "Play _sound file" msgstr "Reproducir archivo de _sonido" -#: ../plugins/mail-notification/mail-notification.c:748 +#: ../plugins/mail-notification/mail-notification.c:770 msgid "Specify _filename:" msgstr "Especificar nombre de a_rchivo:" -#: ../plugins/mail-notification/mail-notification.c:749 +#: ../plugins/mail-notification/mail-notification.c:771 msgid "Select sound file" msgstr "Seleccione un arhivo de sonido" -#: ../plugins/mail-notification/mail-notification.c:750 +#: ../plugins/mail-notification/mail-notification.c:772 msgid "Pl_ay" msgstr "Reprod_ucir" -#: ../plugins/mail-notification/mail-notification.c:807 +#: ../plugins/mail-notification/mail-notification.c:829 msgid "Notify new messages for _Inbox only" msgstr "Notificar nuevos mensajes sólo para la _bandeja de entrada" @@ -8,12 +8,12 @@ # Huomautus: PIM ei ole suomennettu, evolution on suomeksi # yksinkertaisesti sähköpostiohjelma. Saa ehdottaa nimeä. # -#: ../shell/main.c:589 +#: ../shell/main.c:594 msgid "" msgstr "" "Project-Id-Version: evolution\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-10-04 16:56+0300\n" +"POT-Creation-Date: 2008-12-09 15:23+0300\n" "PO-Revision-Date: 2008-09-18 13:30+0300\n" "Last-Translator: Ilkka Tuohela <hile@iki.fi>\n" "Language-Team: Finnish <gnome-fi-laatu@lists.sourceforge.net>\n" @@ -155,7 +155,7 @@ msgid "calendar view for one or more days" msgstr "Kalenteri näkymä yhdelle tai useammalle päivälle" #: ../a11y/calendar/ea-gnome-calendar.c:186 -#: ../calendar/gui/calendar-component.c:757 +#: ../calendar/gui/calendar-component.c:803 msgid "%A %d %b %Y" msgstr "%A %d. %Bta %Y" @@ -166,8 +166,8 @@ msgstr "%A %d. %Bta %Y" #. You can change the order but don't change the #. specifiers or add anything. #: ../a11y/calendar/ea-gnome-calendar.c:189 -#: ../calendar/gui/calendar-component.c:760 -#: ../calendar/gui/e-day-view-top-item.c:855 ../calendar/gui/e-day-view.c:1577 +#: ../calendar/gui/calendar-component.c:806 +#: ../calendar/gui/e-day-view-top-item.c:855 ../calendar/gui/e-day-view.c:1579 #: ../calendar/gui/e-week-view-main-item.c:335 msgid "%a %d %b" msgstr "%a %d %b" @@ -175,9 +175,9 @@ msgstr "%a %d %b" #: ../a11y/calendar/ea-gnome-calendar.c:191 #: ../a11y/calendar/ea-gnome-calendar.c:196 #: ../a11y/calendar/ea-gnome-calendar.c:198 -#: ../calendar/gui/calendar-component.c:762 -#: ../calendar/gui/calendar-component.c:767 -#: ../calendar/gui/calendar-component.c:769 +#: ../calendar/gui/calendar-component.c:808 +#: ../calendar/gui/calendar-component.c:813 +#: ../calendar/gui/calendar-component.c:815 msgid "%a %d %b %Y" msgstr "%a %d %b %Y" @@ -185,10 +185,10 @@ msgstr "%a %d %b %Y" #: ../a11y/calendar/ea-gnome-calendar.c:221 #: ../a11y/calendar/ea-gnome-calendar.c:227 #: ../a11y/calendar/ea-gnome-calendar.c:229 -#: ../calendar/gui/calendar-component.c:781 -#: ../calendar/gui/calendar-component.c:788 -#: ../calendar/gui/calendar-component.c:794 -#: ../calendar/gui/calendar-component.c:796 +#: ../calendar/gui/calendar-component.c:827 +#: ../calendar/gui/calendar-component.c:834 +#: ../calendar/gui/calendar-component.c:840 +#: ../calendar/gui/calendar-component.c:842 msgid "%d %b %Y" msgstr "%d. %Bta %Y" @@ -198,15 +198,15 @@ msgstr "%d. %Bta %Y" #. month name. You can change the order but don't #. change the specifiers or add anything. #: ../a11y/calendar/ea-gnome-calendar.c:219 -#: ../calendar/gui/calendar-component.c:786 -#: ../calendar/gui/e-day-view-top-item.c:859 ../calendar/gui/e-day-view.c:1593 +#: ../calendar/gui/calendar-component.c:832 +#: ../calendar/gui/e-day-view-top-item.c:859 ../calendar/gui/e-day-view.c:1595 #: ../calendar/gui/e-week-view-main-item.c:349 msgid "%d %b" msgstr "%d %b" #: ../a11y/calendar/ea-gnome-calendar.c:245 #: ../a11y/calendar/ea-gnome-calendar.c:253 -#: ../calendar/importers/icalendar-importer.c:768 +#: ../calendar/importers/icalendar-importer.c:780 msgid "Gnome Calendar" msgstr "Gnome kalenteri" @@ -418,7 +418,7 @@ msgstr "LDAP-palvelimelle tunnistautuminen epäonnistui." #. Unknown error #: ../addressbook/addressbook.error.xml.h:16 -#: ../addressbook/gui/widgets/e-addressbook-view.c:1735 +#: ../addressbook/gui/widgets/e-addressbook-view.c:1746 msgid "Failed to delete contact" msgstr "Yhteystiedon poisto epäonnistui" @@ -431,7 +431,7 @@ msgid "LDAP server did not respond with valid schema information." msgstr "LDAP palvelin ei vastannut kelvollisella skeematiedolla." #: ../addressbook/addressbook.error.xml.h:19 -#: ../calendar/calendar.error.xml.h:50 +#: ../calendar/calendar.error.xml.h:54 msgid "Server Version" msgstr "Palvelimen versio" @@ -563,7 +563,7 @@ msgstr "Käytä _sellaisenaan" #. For Translators: {0} is the string describing why the search could not be performed (eg: "The backend for this address book was unable to parse this query." #: ../addressbook/addressbook.error.xml.h:44 ../mail/mail.error.xml.h:143 -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:82 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:83 msgid "{0}" msgstr "{0}" @@ -572,21 +572,22 @@ msgstr "{0}" msgid "{1}" msgstr "{1}" -#: ../addressbook/conduit/address-conduit.c:299 +#: ../addressbook/conduit/address-conduit.c:300 msgid "Default Sync Address:" msgstr "Synkronoinnin oletusosoite:" -#: ../addressbook/conduit/address-conduit.c:1320 #: ../addressbook/conduit/address-conduit.c:1321 +#: ../addressbook/conduit/address-conduit.c:1322 msgid "Could not load address book" msgstr "Osoitekirjaa ei voitu ladata" -#: ../addressbook/conduit/address-conduit.c:1398 -#: ../addressbook/conduit/address-conduit.c:1401 +#: ../addressbook/conduit/address-conduit.c:1399 +#: ../addressbook/conduit/address-conduit.c:1402 msgid "Could not read pilot's Address application block" msgstr "Pilotin osoitekirjan ohjelmalohkoa ei voi lukea" #: ../addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in.h:1 +#: ../addressbook/gui/component/autocompletion-config.c:173 msgid "Autocompletion" msgstr "Automaattinen täydennys" @@ -604,8 +605,8 @@ msgstr "Määrittele automaattinen täydennys" #. Create the contacts group #: ../addressbook/gui/component/GNOME_Evolution_Addressbook.server.in.in.h:5 -#: ../addressbook/gui/component/addressbook-view.c:1325 -#: ../calendar/gui/calendar-component.c:299 ../calendar/gui/migration.c:396 +#: ../addressbook/gui/component/addressbook-view.c:1215 +#: ../calendar/gui/calendar-component.c:307 ../calendar/gui/migration.c:396 #: ../plugins/exchange-operations/exchange-delegates-user.c:78 #: ../plugins/exchange-operations/exchange-folder.c:582 msgid "Contacts" @@ -647,12 +648,12 @@ msgstr "Hallitse S/Mime-varmenteita" #. On This Computer is always first and Search Folders is always last #: ../addressbook/gui/component/addressbook-component.c:143 #: ../addressbook/gui/component/addressbook-migrate.c:500 -#: ../calendar/gui/calendar-component.c:236 +#: ../calendar/gui/calendar-component.c:244 #: ../calendar/gui/memos-component.c:199 ../calendar/gui/migration.c:475 #: ../calendar/gui/migration.c:577 ../calendar/gui/migration.c:1091 #: ../calendar/gui/tasks-component.c:195 ../mail/em-folder-tree-model.c:200 #: ../mail/em-folder-tree-model.c:202 ../mail/em-migrate.c:2906 -#: ../mail/mail-component.c:311 ../mail/mail-vfolder.c:216 +#: ../mail/mail-component.c:316 ../mail/mail-vfolder.c:223 #: ../mail/message-list.c:1518 msgid "On This Computer" msgstr "Tällä tietokoneella" @@ -665,12 +666,11 @@ msgstr "Tällä tietokoneella" #: ../addressbook/gui/component/addressbook-component.c:151 #: ../addressbook/gui/component/addressbook-migrate.c:508 #: ../addressbook/gui/contact-editor/contact-editor.glade.h:21 -#: ../addressbook/gui/widgets/eab-contact-display.c:660 -#: ../calendar/gui/calendar-component.c:247 ../calendar/gui/caltypes.xml.h:29 -#: ../calendar/gui/memos-component.c:208 ../calendar/gui/memotypes.xml.h:27 -#: ../calendar/gui/migration.c:485 ../calendar/gui/migration.c:585 -#: ../calendar/gui/migration.c:1099 ../calendar/gui/tasks-component.c:204 -#: ../calendar/gui/tasktypes.xml.h:35 ../mail/em-migrate.c:1058 +#: ../addressbook/gui/widgets/eab-contact-display.c:662 +#: ../calendar/gui/calendar-component.c:255 +#: ../calendar/gui/memos-component.c:208 ../calendar/gui/migration.c:485 +#: ../calendar/gui/migration.c:585 ../calendar/gui/migration.c:1099 +#: ../calendar/gui/tasks-component.c:204 ../mail/em-migrate.c:1058 msgid "Personal" msgstr "Henkilökohtainen" @@ -732,11 +732,11 @@ msgstr "Kopioi _kirjan sisältö yhteydettömään käyttöön" #: ../addressbook/gui/component/addressbook-config.c:998 #: ../addressbook/gui/component/ldap-config.glade.h:22 #: ../calendar/gui/dialogs/cal-prefs-dialog.glade.h:20 -#: ../calendar/gui/dialogs/calendar-setup.c:367 -#: ../calendar/gui/dialogs/calendar-setup.c:378 -#: ../calendar/gui/dialogs/calendar-setup.c:389 -#: ../mail/em-folder-properties.c:283 ../mail/mail-config.glade.h:89 -#: ../plugins/itip-formatter/itip-formatter.c:2372 +#: ../calendar/gui/dialogs/calendar-setup.c:368 +#: ../calendar/gui/dialogs/calendar-setup.c:379 +#: ../calendar/gui/dialogs/calendar-setup.c:390 +#: ../mail/em-folder-properties.c:283 ../mail/mail-config.glade.h:90 +#: ../plugins/itip-formatter/itip-formatter.c:2466 #: ../smime/gui/smime-ui.glade.h:28 msgid "General" msgstr "Yleiset" @@ -762,7 +762,7 @@ msgid "Details" msgstr "Yksityiskohtaiset" #: ../addressbook/gui/component/addressbook-config.c:1009 -#: ../mail/em-folder-browser.c:983 +#: ../mail/em-folder-browser.c:985 msgid "Searching" msgstr "Etsitään" @@ -853,37 +853,44 @@ msgstr "Nimeä kansio uudestaan" msgid "Folder names cannot contain '/'" msgstr "Kansion nimi ei voi sisältää merkkiä '/'" -#: ../addressbook/gui/component/addressbook-view.c:941 +#: ../addressbook/gui/component/addressbook-view.c:951 msgid "_New Address Book" msgstr "_Uusi osoitekirja" -#: ../addressbook/gui/component/addressbook-view.c:942 +#: ../addressbook/gui/component/addressbook-view.c:952 msgid "Save As vCard..." msgstr "Tallenna vCard-muodossa..." -#: ../addressbook/gui/component/addressbook-view.c:945 +#: ../addressbook/gui/component/addressbook-view.c:953 +#: ../calendar/gui/calendar-component.c:660 +#: ../calendar/gui/memos-component.c:501 ../calendar/gui/tasks-component.c:492 +#: ../mail/em-folder-tree.c:2115 ../ui/evolution-mail-list.xml.h:39 +msgid "_Rename..." +msgstr "_Nimeä uudestaan..." + +#: ../addressbook/gui/component/addressbook-view.c:956 #: ../addressbook/gui/widgets/e-addressbook-view.c:956 -#: ../calendar/gui/calendar-component.c:619 -#: ../calendar/gui/e-calendar-table.c:1595 -#: ../calendar/gui/e-calendar-view.c:1692 ../calendar/gui/e-memo-table.c:940 -#: ../calendar/gui/memos-component.c:468 ../calendar/gui/tasks-component.c:459 -#: ../mail/em-folder-tree.c:2111 ../mail/em-folder-view.c:1340 -#: ../ui/evolution-addressbook.xml.h:49 ../ui/evolution-calendar.xml.h:40 +#: ../calendar/gui/calendar-component.c:663 +#: ../calendar/gui/e-calendar-table.c:1609 +#: ../calendar/gui/e-calendar-view.c:1768 ../calendar/gui/e-memo-table.c:940 +#: ../calendar/gui/memos-component.c:504 ../calendar/gui/tasks-component.c:495 +#: ../mail/em-folder-tree.c:2112 ../mail/em-folder-view.c:1340 +#: ../ui/evolution-addressbook.xml.h:49 ../ui/evolution-calendar.xml.h:42 #: ../ui/evolution-mail-list.xml.h:35 ../ui/evolution-memos.xml.h:16 #: ../ui/evolution-tasks.xml.h:24 msgid "_Delete" msgstr "_Poista" -#: ../addressbook/gui/component/addressbook-view.c:948 -#: ../calendar/gui/calendar-component.c:622 -#: ../calendar/gui/dialogs/comp-editor.c:2035 -#: ../calendar/gui/memos-component.c:471 ../calendar/gui/tasks-component.c:462 -#: ../composer/e-msg-composer.c:1041 ../mail/em-folder-tree.c:2120 +#: ../addressbook/gui/component/addressbook-view.c:959 +#: ../calendar/gui/calendar-component.c:668 +#: ../calendar/gui/dialogs/comp-editor.c:2045 +#: ../calendar/gui/memos-component.c:509 ../calendar/gui/tasks-component.c:500 +#: ../composer/e-msg-composer.c:1041 ../mail/em-folder-tree.c:2121 #: ../ui/evolution-addressbook.xml.h:59 ../ui/evolution-mail-list.xml.h:38 msgid "_Properties" msgstr "_Ominaisuudet..." -#: ../addressbook/gui/component/addressbook-view.c:1336 +#: ../addressbook/gui/component/addressbook-view.c:1225 msgid "Contact Source Selector" msgstr "Yhteystietojen lähdevalinta" @@ -904,7 +911,7 @@ msgstr "Syötä salasana palvelulle %s (käyttäjä %s)" #: ../addressbook/gui/component/addressbook.c:222 #: ../calendar/common/authentication.c:51 -#: ../plugins/google-account-setup/google-source.c:444 +#: ../plugins/google-account-setup/google-source.c:441 #: ../plugins/publish-calendar/publish-calendar.c:191 #: ../smime/gui/component.c:49 msgid "Enter password" @@ -932,7 +939,7 @@ msgstr "" #: ../addressbook/gui/component/apps_evolution_addressbook.schemas.in.h:5 msgid "Show autocompleted name with an address" -msgstr "" +msgstr "Näytä automaattitäydennetyt nimet osoitteen kanssa" #: ../addressbook/gui/component/apps_evolution_addressbook.schemas.in.h:6 msgid "Show preview pane" @@ -955,7 +962,7 @@ msgid "URI for the folder last used in the select names dialog." msgstr "Viimeksi nimien valinta-ikkunassa valitun kansion URI" #: ../addressbook/gui/component/apps_evolution_addressbook.schemas.in.h:10 -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:70 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:73 msgid "Vertical pane position" msgstr "Vaakapaneelin sijainti" @@ -969,6 +976,14 @@ msgstr "" msgid "Whether to show the preview pane." msgstr "Näytetäänkö esikatselupaneeli." +#: ../addressbook/gui/component/autocompletion-config.c:175 +msgid "Always _show address of the autocompleted contact" +msgstr "Näytä _aina automaattitäydennetyn yhteystiedon osoite" + +#: ../addressbook/gui/component/autocompletion-config.c:180 +msgid "Look up in address books" +msgstr "_Etsi osoitekirjoista" + #: ../addressbook/gui/component/ldap-config.glade.h:1 msgid "1" msgstr "1" @@ -1236,7 +1251,7 @@ msgstr "_Kirjautumismenetelmä:" #: ../addressbook/gui/component/ldap-config.glade.h:53 #: ../calendar/gui/dialogs/calendar-setup.c:227 -#: ../mail/mail-config.glade.h:177 +#: ../mail/mail-config.glade.h:178 #: ../plugins/groupwise-features/properties.glade.h:11 #: ../widgets/menus/gal-view-instance-save-as-dialog.glade.h:2 msgid "_Name:" @@ -1251,7 +1266,7 @@ msgid "_Search scope:" msgstr "_Hakualue:" #: ../addressbook/gui/component/ldap-config.glade.h:56 -#: ../mail/mail-config.glade.h:186 +#: ../mail/mail-config.glade.h:187 #: ../plugins/publish-calendar/publish-calendar.glade.h:26 msgid "_Server:" msgstr "_Palvelin: " @@ -1269,13 +1284,14 @@ msgid "cards" msgstr "kortteja" #: ../addressbook/gui/component/ldap-config.glade.h:60 -#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:8 +#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:9 #: ../calendar/gui/dialogs/alarm-dialog.glade.h:27 #: ../calendar/gui/dialogs/event-page.glade.h:20 ../filter/filter.glade.h:17 +#: ../plugins/caldav/caldav-source.c:430 #: ../plugins/calendar-http/calendar-http.c:279 -#: ../plugins/calendar-weather/calendar-weather.c:561 -#: ../plugins/google-account-setup/google-source.c:662 -#: ../plugins/google-account-setup/google-contacts-source.c:328 +#: ../plugins/calendar-weather/calendar-weather.c:524 +#: ../plugins/google-account-setup/google-source.c:671 +#: ../plugins/google-account-setup/google-contacts-source.c:338 msgid "minutes" msgstr "minuutti" @@ -1316,8 +1332,8 @@ msgid "<b>Work</b>" msgstr "<b>Työ</b>" #: ../addressbook/gui/contact-editor/contact-editor.glade.h:10 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:175 -#: ../addressbook/gui/widgets/eab-contact-display.c:614 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:176 +#: ../addressbook/gui/widgets/eab-contact-display.c:615 msgid "AIM" msgstr "AIM" @@ -1328,16 +1344,16 @@ msgid "Ca_tegories..." msgstr "Ry_hmät..." #: ../addressbook/gui/contact-editor/contact-editor.glade.h:12 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:264 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:266 #: ../addressbook/gui/contact-list-editor/e-contact-list-editor.c:1158 #: ../addressbook/gui/widgets/e-minicard.c:199 msgid "Contact" msgstr "Yhteystieto" #: ../addressbook/gui/contact-editor/contact-editor.glade.h:13 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:541 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:556 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:2421 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:543 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:558 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:2423 msgid "Contact Editor" msgstr "Yhteystietojen muokkain" @@ -1381,10 +1397,10 @@ msgstr "Puhelin" #. red #: ../addressbook/gui/contact-editor/contact-editor.glade.h:24 -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:230 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:193 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:269 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:195 #: ../addressbook/gui/widgets/eab-contact-display.c:57 -#: ../addressbook/gui/widgets/eab-contact-display.c:643 +#: ../addressbook/gui/widgets/eab-contact-display.c:645 #: ../mail/em-migrate.c:1057 msgid "Work" msgstr "Työ" @@ -1407,7 +1423,7 @@ msgid "_Birthday:" msgstr "_Syntymäpäivä:" #: ../addressbook/gui/contact-editor/contact-editor.glade.h:29 -#: ../calendar/gui/dialogs/event-page.c:791 +#: ../calendar/gui/dialogs/event-page.c:792 #: ../calendar/gui/dialogs/event-page.glade.h:14 #: ../plugins/itip-formatter/itip-view.c:1868 msgid "_Calendar:" @@ -1498,15 +1514,15 @@ msgid "_Zip/Postal Code:" msgstr "_Postinumero:" #: ../addressbook/gui/contact-editor/e-contact-editor-address.c:92 -#: ../addressbook/gui/widgets/eab-contact-display.c:640 -#: ../addressbook/gui/widgets/eab-contact-display.c:655 +#: ../addressbook/gui/widgets/eab-contact-display.c:642 +#: ../addressbook/gui/widgets/eab-contact-display.c:657 msgid "Address" msgstr "Osoite" #: ../addressbook/gui/contact-editor/e-contact-editor-address.c:99 #: ../addressbook/gui/contact-editor/e-contact-editor-fullname.c:92 -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:135 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:292 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:174 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:294 #: ../addressbook/gui/contact-list-editor/e-contact-list-editor.c:1178 #: ../addressbook/gui/widgets/e-addressbook-model.c:325 #: ../addressbook/gui/widgets/e-addressbook-reflow-adapter.c:419 @@ -1515,8 +1531,8 @@ msgstr "Osoite" #: ../addressbook/gui/widgets/e-minicard-view.c:545 #: ../addressbook/gui/widgets/e-minicard.c:192 #: ../widgets/menus/gal-define-views-model.c:178 -#: ../widgets/table/e-cell-text.c:1835 ../widgets/text/e-text.c:3687 -#: ../widgets/text/e-text.c:3688 +#: ../widgets/table/e-cell-text.c:1822 ../widgets/text/e-text.c:3688 +#: ../widgets/text/e-text.c:3689 msgid "Editable" msgstr "Muokattava" @@ -2505,8 +2521,8 @@ msgid "AOL Instant Messenger" msgstr "AOL pikaviestin" #: ../addressbook/gui/contact-editor/e-contact-editor-im.c:56 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:176 -#: ../addressbook/gui/widgets/eab-contact-display.c:617 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:177 +#: ../addressbook/gui/widgets/eab-contact-display.c:618 msgid "Jabber" msgstr "Jabber" @@ -2519,99 +2535,106 @@ msgid "Gadu-Gadu Messenger" msgstr "Gadu-Gadu -pikaviestin" #: ../addressbook/gui/contact-editor/e-contact-editor-im.c:60 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:180 -#: ../addressbook/gui/widgets/eab-contact-display.c:616 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:181 +#: ../addressbook/gui/widgets/eab-contact-display.c:617 msgid "ICQ" msgstr "ICQ" -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:112 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:61 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:183 +#: ../addressbook/gui/widgets/eab-contact-display.c:622 +msgid "Skype" +msgstr "Skype" + +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:151 msgid "Service" msgstr "Palvelu" -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:121 -#: ../calendar/gui/caltypes.xml.h:25 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:160 +#: ../calendar/gui/caltypes.xml.h:12 #: ../calendar/gui/e-cal-list-view.etspec.h:3 ../mail/message-list.etspec.h:9 #: ../plugins/publish-calendar/publish-calendar.c:694 #: ../plugins/save-calendar/csv-format.c:376 msgid "Location" msgstr "Sijainti" -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:128 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:167 msgid "Username" msgstr "Käyttäjätunnus" -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:226 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:194 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:265 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:196 #: ../addressbook/gui/widgets/eab-contact-display.c:58 msgid "Home" msgstr "Koti" -#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:234 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:195 +#: ../addressbook/gui/contact-editor/e-contact-editor-im.c:273 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:197 #: ../addressbook/gui/widgets/eab-contact-display.c:59 -#: ../addressbook/gui/widgets/eab-contact-display.c:528 +#: ../addressbook/gui/widgets/eab-contact-display.c:529 +#: ../calendar/gui/e-calendar-view.c:2228 msgid "Other" msgstr "Muut" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:177 -#: ../addressbook/gui/widgets/eab-contact-display.c:619 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:178 +#: ../addressbook/gui/widgets/eab-contact-display.c:620 msgid "Yahoo" msgstr "Yahoo" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:178 -#: ../addressbook/gui/widgets/eab-contact-display.c:620 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:179 +#: ../addressbook/gui/widgets/eab-contact-display.c:621 msgid "Gadu-Gadu" msgstr "Gadu-Gadu" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:179 -#: ../addressbook/gui/widgets/eab-contact-display.c:618 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:180 +#: ../addressbook/gui/widgets/eab-contact-display.c:619 msgid "MSN" msgstr "MSN" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:181 -#: ../addressbook/gui/widgets/eab-contact-display.c:615 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:182 +#: ../addressbook/gui/widgets/eab-contact-display.c:616 msgid "GroupWise" msgstr "Groupwise" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:250 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:252 msgid "Source Book" msgstr "Lähdekirja" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:257 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:259 msgid "Target Book" msgstr "Kohdekirja" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:271 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:273 msgid "Is New Contact" msgstr "Uusi yhteystieto" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:278 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:280 msgid "Writable Fields" msgstr "Muokattavat kentät" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:285 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:287 msgid "Required Fields" msgstr "Vaaditut kentät" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:299 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:301 msgid "Changed" msgstr "Muutettu" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:551 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:2416 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:553 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:2418 #, c-format msgid "Contact Editor - %s" msgstr "Yhteystietojen muokkain - %s" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:2812 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:2814 msgid "Please select an image for this contact" msgstr "Valitse kuva tälle henkilölle" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:2813 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:2815 msgid "_No image" msgstr "_Ei kuvaa" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:3086 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:3089 msgid "" "The contact data is invalid:\n" "\n" @@ -2619,23 +2642,23 @@ msgstr "" "Yhteystieto on virheellinen:\n" "\n" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:3090 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:3093 #, c-format msgid "'%s' has an invalid format" msgstr "'%s' sisältää virheellisen muotoilun" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:3097 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:3100 #, c-format msgid "%s'%s' has an invalid format" msgstr "%s'%s' sisältää virheellisen muotoilun" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:3112 -#: ../addressbook/gui/contact-editor/e-contact-editor.c:3123 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:3115 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:3126 #, c-format msgid "%s'%s' is empty" msgstr "%s'%s' on tyhjä" -#: ../addressbook/gui/contact-editor/e-contact-editor.c:3138 +#: ../addressbook/gui/contact-editor/e-contact-editor.c:3141 msgid "Invalid contact." msgstr "Virheellinen yhteystieto." @@ -2792,9 +2815,9 @@ msgstr "_Pikaviestipalvelu:" #: ../addressbook/gui/contact-editor/im.glade.h:4 #: ../calendar/gui/dialogs/event-page.glade.h:16 -#: ../plugins/calendar-weather/calendar-weather.c:409 -#: ../plugins/exchange-operations/exchange-calendar.c:243 -#: ../plugins/exchange-operations/exchange-contacts.c:235 +#: ../plugins/calendar-weather/calendar-weather.c:372 +#: ../plugins/exchange-operations/exchange-calendar.c:247 +#: ../plugins/exchange-operations/exchange-contacts.c:239 msgid "_Location:" msgstr "_Sijainti:" @@ -2893,18 +2916,18 @@ msgstr "Yhdistä yhteystieto" #: ../addressbook/gui/merging/eab-contact-merging.c:267 #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:11 -#: ../addressbook/gui/widgets/eab-contact-display.c:592 -#: ../addressbook/gui/widgets/eab-contact-display.c:597 -#: ../addressbook/gui/widgets/eab-contact-display.c:600 -#: ../addressbook/gui/widgets/eab-contact-display.c:879 -#: ../plugins/groupwise-features/junk-settings.c:416 ../smime/lib/e-cert.c:827 +#: ../addressbook/gui/widgets/eab-contact-display.c:593 +#: ../addressbook/gui/widgets/eab-contact-display.c:598 +#: ../addressbook/gui/widgets/eab-contact-display.c:601 +#: ../addressbook/gui/widgets/eab-contact-display.c:881 +#: ../plugins/groupwise-features/junk-settings.c:416 ../smime/lib/e-cert.c:810 msgid "Email" msgstr "Sähköposti" #: ../addressbook/gui/widgets/addresstypes.xml.h:1 #: ../addressbook/gui/widgets/e-addressbook-view.c:162 -#: ../calendar/gui/cal-search-bar.c:80 ../calendar/gui/caltypes.xml.h:3 -#: ../calendar/gui/memotypes.xml.h:3 ../calendar/gui/tasktypes.xml.h:5 +#: ../calendar/gui/cal-search-bar.c:80 ../calendar/gui/caltypes.xml.h:2 +#: ../calendar/gui/memotypes.xml.h:2 ../calendar/gui/tasktypes.xml.h:4 msgid "Any field contains" msgstr "Mikä tahansa kenttä sisältää" @@ -2944,8 +2967,8 @@ msgstr "Virhe haettaessa kirjanäkymää" #: ../widgets/table/e-table-click-to-add.c:509 #: ../widgets/table/e-table-selection-model.c:302 #: ../widgets/table/e-table.c:3354 -#: ../widgets/table/e-tree-selection-model.c:820 ../widgets/text/e-text.c:3551 -#: ../widgets/text/e-text.c:3552 +#: ../widgets/table/e-tree-selection-model.c:820 ../widgets/text/e-text.c:3552 +#: ../widgets/text/e-text.c:3553 msgid "Model" msgstr "Malli" @@ -2970,14 +2993,14 @@ msgid "Type" msgstr "Tyyppi" #: ../addressbook/gui/widgets/e-addressbook-view.c:813 -#: ../addressbook/gui/widgets/e-addressbook-view.c:1954 +#: ../addressbook/gui/widgets/e-addressbook-view.c:1965 msgid "Save as vCard..." msgstr "Tallenna vCard-muodossa..." #: ../addressbook/gui/widgets/e-addressbook-view.c:934 -#: ../calendar/gui/dialogs/comp-editor.c:2033 -#: ../calendar/gui/e-calendar-table.c:1573 -#: ../calendar/gui/e-calendar-view.c:1670 ../calendar/gui/e-memo-table.c:923 +#: ../calendar/gui/dialogs/comp-editor.c:2043 +#: ../calendar/gui/e-calendar-table.c:1587 +#: ../calendar/gui/e-calendar-view.c:1746 ../calendar/gui/e-memo-table.c:923 #: ../ui/evolution-addressbook.xml.h:56 msgid "_Open" msgstr "_Avaa" @@ -3031,12 +3054,12 @@ msgid "Cu_t" msgstr "_Leikkaa" #: ../addressbook/gui/widgets/e-addressbook-view.c:954 -#: ../calendar/gui/dialogs/comp-editor.c:480 -#: ../calendar/gui/e-calendar-table.c:1581 -#: ../calendar/gui/e-calendar-view.c:1677 ../calendar/gui/e-memo-table.c:931 +#: ../calendar/gui/dialogs/comp-editor.c:486 +#: ../calendar/gui/e-calendar-table.c:1595 +#: ../calendar/gui/e-calendar-view.c:1753 ../calendar/gui/e-memo-table.c:931 #: ../composer/e-msg-composer.c:2052 ../mail/em-folder-tree.c:1005 #: ../mail/em-folder-view.c:1325 ../mail/message-list.c:2106 -#: ../ui/evolution-addressbook.xml.h:46 ../ui/evolution-calendar.xml.h:39 +#: ../ui/evolution-addressbook.xml.h:46 ../ui/evolution-calendar.xml.h:40 #: ../ui/evolution-mail-message.xml.h:103 ../ui/evolution-memos.xml.h:15 #: ../ui/evolution-tasks.xml.h:23 msgid "_Copy" @@ -3047,14 +3070,20 @@ msgid "P_aste" msgstr "L_iitä" #. All, unmatched, separator -#: ../addressbook/gui/widgets/e-addressbook-view.c:1525 -#: ../calendar/gui/cal-search-bar.c:629 ../calendar/gui/cal-search-bar.c:672 -#: ../calendar/gui/cal-search-bar.c:691 +#: ../addressbook/gui/widgets/e-addressbook-view.c:1528 +#: ../calendar/gui/cal-search-bar.c:628 ../calendar/gui/cal-search-bar.c:671 +#: ../calendar/gui/cal-search-bar.c:690 msgid "Any Category" msgstr "Mikä tahansa luokka" +#: ../addressbook/gui/widgets/e-addressbook-view.c:1531 +#: ../calendar/gui/cal-search-bar.c:632 ../calendar/gui/cal-search-bar.c:675 +#: ../calendar/gui/cal-search-bar.c:694 +msgid "Unmatched" +msgstr "Täsmäämättömät" + #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:1 -#: ../addressbook/gui/widgets/eab-contact-display.c:634 +#: ../addressbook/gui/widgets/eab-contact-display.c:636 msgid "Assistant" msgstr "Apulainen" @@ -3092,7 +3121,7 @@ msgid "Categories" msgstr "Ryhmät" #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:9 -#: ../addressbook/gui/widgets/eab-contact-display.c:629 +#: ../addressbook/gui/widgets/eab-contact-display.c:631 msgid "Company" msgstr "Yritys" @@ -3141,22 +3170,22 @@ msgid "Journal" msgstr "Päiväkirja" #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:23 -#: ../addressbook/gui/widgets/eab-contact-display.c:633 +#: ../addressbook/gui/widgets/eab-contact-display.c:635 msgid "Manager" msgstr "Johtaja" #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:24 -#: ../addressbook/gui/widgets/eab-contact-display.c:654 +#: ../addressbook/gui/widgets/eab-contact-display.c:656 msgid "Mobile Phone" msgstr "Matkapuhelin" #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:25 -#: ../addressbook/gui/widgets/eab-contact-display.c:608 +#: ../addressbook/gui/widgets/eab-contact-display.c:609 msgid "Nickname" msgstr "Kutsumanimi" #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:26 -#: ../addressbook/gui/widgets/eab-contact-display.c:667 +#: ../addressbook/gui/widgets/eab-contact-display.c:669 msgid "Note" msgstr "Huomautus" @@ -3192,7 +3221,7 @@ msgid "Role" msgstr "Rooli" #: ../addressbook/gui/widgets/e-addressbook-view.etspec.h:34 -#: ../addressbook/gui/widgets/eab-contact-display.c:658 +#: ../addressbook/gui/widgets/eab-contact-display.c:660 msgid "Spouse" msgstr "Puoliso" @@ -3225,7 +3254,7 @@ msgstr "Kotisivu" #: ../addressbook/gui/widgets/e-minicard-label.c:116 #: ../addressbook/gui/widgets/e-minicard.c:155 #: ../widgets/misc/e-canvas-vbox.c:85 ../widgets/misc/e-canvas-vbox.c:86 -#: ../widgets/misc/e-reflow.c:1433 ../widgets/misc/e-reflow.c:1434 +#: ../widgets/misc/e-reflow.c:1424 ../widgets/misc/e-reflow.c:1425 #: ../widgets/table/e-table-click-to-add.c:523 #: ../widgets/table/e-table-col.c:98 #: ../widgets/table/e-table-field-chooser-item.c:654 @@ -3234,14 +3263,14 @@ msgstr "Kotisivu" #: ../widgets/table/e-table-group-leaf.c:637 #: ../widgets/table/e-table-group-leaf.c:638 #: ../widgets/table/e-table-item.c:3077 ../widgets/table/e-table-item.c:3078 -#: ../widgets/text/e-text.c:3729 ../widgets/text/e-text.c:3730 +#: ../widgets/text/e-text.c:3730 ../widgets/text/e-text.c:3731 msgid "Width" msgstr "Leveys" #: ../addressbook/gui/widgets/e-minicard-label.c:123 #: ../addressbook/gui/widgets/e-minicard.c:162 #: ../widgets/misc/e-canvas-vbox.c:97 ../widgets/misc/e-canvas-vbox.c:98 -#: ../widgets/misc/e-reflow.c:1441 ../widgets/misc/e-reflow.c:1442 +#: ../widgets/misc/e-reflow.c:1432 ../widgets/misc/e-reflow.c:1433 #: ../widgets/table/e-table-click-to-add.c:530 #: ../widgets/table/e-table-field-chooser-item.c:661 #: ../widgets/table/e-table-group-container.c:985 @@ -3249,7 +3278,7 @@ msgstr "Leveys" #: ../widgets/table/e-table-group-leaf.c:630 #: ../widgets/table/e-table-group-leaf.c:631 #: ../widgets/table/e-table-item.c:3083 ../widgets/table/e-table-item.c:3084 -#: ../widgets/text/e-text.c:3737 ../widgets/text/e-text.c:3738 +#: ../widgets/text/e-text.c:3738 ../widgets/text/e-text.c:3739 msgid "Height" msgstr "Korkeus" @@ -3361,61 +3390,61 @@ msgstr "Valittu" msgid "Has Cursor" msgstr "On kohdistin" -#: ../addressbook/gui/widgets/eab-contact-display.c:172 ../mail/em-popup.c:627 +#: ../addressbook/gui/widgets/eab-contact-display.c:173 ../mail/em-popup.c:627 msgid "_Open Link in Browser" msgstr "_Avaa linkki selaimessa" -#: ../addressbook/gui/widgets/eab-contact-display.c:173 -#: ../mail/em-folder-view.c:2795 +#: ../addressbook/gui/widgets/eab-contact-display.c:174 +#: ../mail/em-folder-view.c:2792 msgid "_Copy Link Location" msgstr "_Kopioi linkin sijainti" -#: ../addressbook/gui/widgets/eab-contact-display.c:174 ../mail/em-popup.c:628 +#: ../addressbook/gui/widgets/eab-contact-display.c:175 ../mail/em-popup.c:628 msgid "_Send New Message To..." msgstr "Lähetä uusi _viesti..." -#: ../addressbook/gui/widgets/eab-contact-display.c:175 +#: ../addressbook/gui/widgets/eab-contact-display.c:176 #: ../plugins/copy-tool/org-gnome-copy-tool.eplug.xml.h:2 msgid "Copy _Email Address" msgstr "Kopioi sähköpostiosoite" -#: ../addressbook/gui/widgets/eab-contact-display.c:296 -#: ../addressbook/gui/widgets/eab-contact-display.c:370 -#: ../addressbook/gui/widgets/eab-contact-display.c:372 +#: ../addressbook/gui/widgets/eab-contact-display.c:297 +#: ../addressbook/gui/widgets/eab-contact-display.c:371 +#: ../addressbook/gui/widgets/eab-contact-display.c:373 msgid "(map)" msgstr "(kartta)" -#: ../addressbook/gui/widgets/eab-contact-display.c:306 -#: ../addressbook/gui/widgets/eab-contact-display.c:390 -#: ../addressbook/gui/widgets/eab-contact-display.c:402 +#: ../addressbook/gui/widgets/eab-contact-display.c:307 +#: ../addressbook/gui/widgets/eab-contact-display.c:391 +#: ../addressbook/gui/widgets/eab-contact-display.c:403 msgid "map" msgstr "kartta" -#: ../addressbook/gui/widgets/eab-contact-display.c:487 -#: ../addressbook/gui/widgets/eab-contact-display.c:846 +#: ../addressbook/gui/widgets/eab-contact-display.c:488 +#: ../addressbook/gui/widgets/eab-contact-display.c:848 msgid "List Members" msgstr "Listan jäsenet" -#: ../addressbook/gui/widgets/eab-contact-display.c:630 +#: ../addressbook/gui/widgets/eab-contact-display.c:632 msgid "Department" msgstr "Osasto" -#: ../addressbook/gui/widgets/eab-contact-display.c:631 +#: ../addressbook/gui/widgets/eab-contact-display.c:633 msgid "Profession" msgstr "Ammatti" -#: ../addressbook/gui/widgets/eab-contact-display.c:632 +#: ../addressbook/gui/widgets/eab-contact-display.c:634 msgid "Position" msgstr "Asema" -#: ../addressbook/gui/widgets/eab-contact-display.c:635 +#: ../addressbook/gui/widgets/eab-contact-display.c:637 msgid "Video Chat" msgstr "Videokeskustelu" -#: ../addressbook/gui/widgets/eab-contact-display.c:636 -#: ../calendar/gui/calendar-commands.c:92 -#: ../calendar/gui/dialogs/calendar-setup.c:368 -#: ../calendar/gui/gnome-cal.c:2451 +#: ../addressbook/gui/widgets/eab-contact-display.c:638 +#: ../calendar/gui/calendar-commands.c:94 +#: ../calendar/gui/dialogs/calendar-setup.c:369 +#: ../calendar/gui/gnome-cal.c:2499 #: ../plugins/exchange-operations/exchange-delegates-user.c:78 #: ../plugins/exchange-operations/exchange-folder.c:576 #: ../plugins/groupwise-account-setup/camel-gw-listener.c:424 @@ -3427,50 +3456,48 @@ msgstr "Videokeskustelu" msgid "Calendar" msgstr "Kalenteri" -#: ../addressbook/gui/widgets/eab-contact-display.c:637 +#: ../addressbook/gui/widgets/eab-contact-display.c:639 #: ../calendar/gui/dialogs/cal-prefs-dialog.glade.h:18 #: ../calendar/gui/dialogs/event-editor.c:115 msgid "Free/Busy" msgstr "Vapaa/Varattu" -#: ../addressbook/gui/widgets/eab-contact-display.c:638 -#: ../addressbook/gui/widgets/eab-contact-display.c:653 +#: ../addressbook/gui/widgets/eab-contact-display.c:640 +#: ../addressbook/gui/widgets/eab-contact-display.c:655 msgid "Phone" msgstr "Puhelin" -#: ../addressbook/gui/widgets/eab-contact-display.c:639 +#: ../addressbook/gui/widgets/eab-contact-display.c:641 msgid "Fax" msgstr "Fax" -#: ../addressbook/gui/widgets/eab-contact-display.c:650 +#: ../addressbook/gui/widgets/eab-contact-display.c:652 msgid "Home Page" msgstr "Kotisivu" -#: ../addressbook/gui/widgets/eab-contact-display.c:651 +#: ../addressbook/gui/widgets/eab-contact-display.c:653 msgid "Web Log" msgstr "Web-loki" -#: ../addressbook/gui/widgets/eab-contact-display.c:656 -#: ../calendar/gui/caltypes.xml.h:6 ../calendar/gui/e-calendar-view.c:2342 -#: ../calendar/gui/memotypes.xml.h:5 ../calendar/gui/tasktypes.xml.h:8 +#: ../addressbook/gui/widgets/eab-contact-display.c:658 +#: ../calendar/gui/e-calendar-view.c:2507 msgid "Birthday" msgstr "Syntymäpäivä" -#: ../addressbook/gui/widgets/eab-contact-display.c:657 -#: ../calendar/gui/caltypes.xml.h:1 ../calendar/gui/e-calendar-view.c:2343 -#: ../calendar/gui/memotypes.xml.h:1 ../calendar/gui/tasktypes.xml.h:3 +#: ../addressbook/gui/widgets/eab-contact-display.c:659 +#: ../calendar/gui/e-calendar-view.c:2508 msgid "Anniversary" msgstr "Vuosipäivä" -#: ../addressbook/gui/widgets/eab-contact-display.c:864 +#: ../addressbook/gui/widgets/eab-contact-display.c:866 msgid "Job Title" msgstr "Tehtävänimike" -#: ../addressbook/gui/widgets/eab-contact-display.c:900 +#: ../addressbook/gui/widgets/eab-contact-display.c:902 msgid "Home page" msgstr "Kotisivu" -#: ../addressbook/gui/widgets/eab-contact-display.c:908 +#: ../addressbook/gui/widgets/eab-contact-display.c:910 msgid "Blog" msgstr "Blog" @@ -3504,7 +3531,7 @@ msgstr "Omaa yhteystietoa ei ole määritelty" #. E_BOOK_ERROR_URI_ALREADY_LOADED #. E_BOOK_ERROR_PERMISSION_DENIED #: ../addressbook/gui/widgets/eab-gui-util.c:66 -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:50 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:51 msgid "Permission denied" msgstr "Lupa evätty" @@ -3530,7 +3557,7 @@ msgstr "Protokolla ei ole tuettu" #: ../calendar/gui/e-cal-model-tasks.c:364 #: ../calendar/gui/e-cal-model-tasks.c:681 #: ../calendar/gui/e-calendar-table.c:239 -#: ../calendar/gui/e-calendar-table.c:642 ../calendar/gui/print.c:2557 +#: ../calendar/gui/e-calendar-table.c:653 ../calendar/gui/print.c:2557 msgid "Canceled" msgstr "Peruutettu" @@ -3582,54 +3609,49 @@ msgid "Unsupported authentication method" msgstr "Tunnistautumistapa ei ole tuettu" #: ../addressbook/gui/widgets/eab-gui-util.c:110 +#, fuzzy msgid "" -"We were unable to open this address book. This either means this book is not " +"This address book cannot be opened. This either means this book is not " "marked for offline usage or not yet downloaded for offline usage. Please " -"load the address book once in online mode to download its contents" +"load the address book once in online mode to download its contents." msgstr "" "Tätä osoitekirjaa ei voitu avata. Joko tämä osoitekirja ei ole merkitty " "yhteydettömään käyttöön tai sitä ei ole vielä haettu yhteydettömään tilaan. " "Lataa osoitekirja kerran yhteydellisessä tilassa hakeaksesi sen sisällön." #: ../addressbook/gui/widgets/eab-gui-util.c:119 -#, c-format +#, fuzzy, c-format msgid "" -"We were unable to open this address book. Please check that the path %s " -"exists and that you have permission to access it." +"This address book cannot be opened. Please check that the path %s exists " +"and that permissions are set to access it." msgstr "" "Tätä osoitekirjaa ei voitu avata. Tarkista että polku %s on olemassa ja että " "sinulla on oikeudet käyttää sitä." -#: ../addressbook/gui/widgets/eab-gui-util.c:128 -msgid "" -"We were unable to open this address book. This either means you have " -"entered an incorrect URI, or the LDAP server is unreachable." -msgstr "" -"Tätä osoitekirjaa ei voitu avata. Olet joko syöttänyt virheellisen URI:n tai " -"LDAP-palvelinta ei tavoiteta." - -#: ../addressbook/gui/widgets/eab-gui-util.c:134 +#: ../addressbook/gui/widgets/eab-gui-util.c:131 +#, fuzzy msgid "" -"This version of Evolution does not have LDAP support compiled in to it. If " -"you want to use LDAP in Evolution, you must install an LDAP-enabled " -"Evolution package." +"This version of Evolution does not have LDAP support compiled in to it. To " +"use LDAP in Evolution an LDAP-enabled Evolution package must be installed." msgstr "" "Tässä Evolutionin versiossa ei ole LDAP-tukea käytettävissä. Jos haluat LDAP-" "tuen Evolutioniin, asenna versio joka on käännetty LDAP-tuen kanssa." -#: ../addressbook/gui/widgets/eab-gui-util.c:141 +#: ../addressbook/gui/widgets/eab-gui-util.c:140 +#, fuzzy msgid "" -"We were unable to open this address book. This either means you have " -"entered an incorrect URI, or the server is unreachable." +"This address book cannot be opened. This either means that an incorrect URI " +"was entered, or the server is unreachable." msgstr "" "Tätä osoitekirjaa ei voitu avata. Syötit joko virheellisen URIn tai " "palvelinta ei voi tavoittaa." -#: ../addressbook/gui/widgets/eab-gui-util.c:149 -msgid "Detailed error:" +#: ../addressbook/gui/widgets/eab-gui-util.c:148 +#, fuzzy +msgid "Detailed error message:" msgstr "Yksityiskohtainen virhe:" -#: ../addressbook/gui/widgets/eab-gui-util.c:172 +#: ../addressbook/gui/widgets/eab-gui-util.c:171 msgid "" "More cards matched this query than either the server is \n" "configured to return or Evolution is configured to display.\n" @@ -3641,10 +3663,11 @@ msgstr "" "Tarkenna hakuasi tai muuta tulosten määrän rajaa tämän\n" "osoitekirjan hakemistopalvelimen asetuksissa." -#: ../addressbook/gui/widgets/eab-gui-util.c:178 +#: ../addressbook/gui/widgets/eab-gui-util.c:177 +#, fuzzy msgid "" "The time to execute this query exceeded the server limit or the limit\n" -"you have configured for this address book. Please make your search\n" +"configured for this address book. Please make your search\n" "more specific or raise the time limit in the directory server\n" "preferences for this address book." msgstr "" @@ -3653,46 +3676,46 @@ msgstr "" "hakuasi tai pidennä palvelimen aikarajoitusta tämän osoitekirjan\n" "hakemistopalvelimen asetuksissa." -#: ../addressbook/gui/widgets/eab-gui-util.c:184 +#: ../addressbook/gui/widgets/eab-gui-util.c:183 msgid "The backend for this address book was unable to parse this query." msgstr "Tämän osoitekirjan taustajärjestelmä ei ymmärtänyt tätä kyselyä." -#: ../addressbook/gui/widgets/eab-gui-util.c:187 +#: ../addressbook/gui/widgets/eab-gui-util.c:186 msgid "The backend for this address book refused to perform this query." msgstr "" "Tämän osoitekirjan taustajärjestelmä ei suostunut suorittamaan tätä kyselyä." -#: ../addressbook/gui/widgets/eab-gui-util.c:190 +#: ../addressbook/gui/widgets/eab-gui-util.c:189 msgid "This query did not complete successfully." msgstr "Kyselyä ei voitu suorittaa onnistuneesti." -#: ../addressbook/gui/widgets/eab-gui-util.c:212 +#: ../addressbook/gui/widgets/eab-gui-util.c:211 msgid "Error adding list" msgstr "Virhe lisättäessä listalle" -#: ../addressbook/gui/widgets/eab-gui-util.c:212 -#: ../addressbook/gui/widgets/eab-gui-util.c:688 +#: ../addressbook/gui/widgets/eab-gui-util.c:211 +#: ../addressbook/gui/widgets/eab-gui-util.c:687 msgid "Error adding contact" msgstr "Virhe lisättäessä yhteystietoa" -#: ../addressbook/gui/widgets/eab-gui-util.c:223 +#: ../addressbook/gui/widgets/eab-gui-util.c:222 msgid "Error modifying list" msgstr "Virhe muokattaessa listaa" -#: ../addressbook/gui/widgets/eab-gui-util.c:223 +#: ../addressbook/gui/widgets/eab-gui-util.c:222 msgid "Error modifying contact" msgstr "Virhe muokattaessa yhteystietoa" -#: ../addressbook/gui/widgets/eab-gui-util.c:235 +#: ../addressbook/gui/widgets/eab-gui-util.c:234 msgid "Error removing list" msgstr "Virhe poistettaessa listaa" -#: ../addressbook/gui/widgets/eab-gui-util.c:235 -#: ../addressbook/gui/widgets/eab-gui-util.c:638 +#: ../addressbook/gui/widgets/eab-gui-util.c:234 +#: ../addressbook/gui/widgets/eab-gui-util.c:637 msgid "Error removing contact" msgstr "Virhe poistettaessa yhteystietoa" -#: ../addressbook/gui/widgets/eab-gui-util.c:317 +#: ../addressbook/gui/widgets/eab-gui-util.c:316 #, c-format msgid "" "Opening %d contact will open %d new window as well.\n" @@ -3707,16 +3730,16 @@ msgstr[1] "" "%d yhteystiedon avaaminen avaa myös %d uutta ikkunaa.\n" "Haluatko varmasti näyttää kaikki nämä yhteystiedot?" -#: ../addressbook/gui/widgets/eab-gui-util.c:325 +#: ../addressbook/gui/widgets/eab-gui-util.c:324 msgid "_Don't Display" msgstr "Ä_lä näytä" -#: ../addressbook/gui/widgets/eab-gui-util.c:326 +#: ../addressbook/gui/widgets/eab-gui-util.c:325 msgid "Display _All Contacts" msgstr "Näytä k_aikki yhteystiedot" #. For Translators only: "it" refers to the filename %s. -#: ../addressbook/gui/widgets/eab-gui-util.c:352 +#: ../addressbook/gui/widgets/eab-gui-util.c:351 #, c-format msgid "" "%s already exists\n" @@ -3725,65 +3748,65 @@ msgstr "" "%s on jo olemassa\n" "Haluatko ylikirjoittaa?" -#: ../addressbook/gui/widgets/eab-gui-util.c:356 +#: ../addressbook/gui/widgets/eab-gui-util.c:355 msgid "Overwrite" msgstr "Kirjoita yli" #. more than one, finding the total number of contacts might #. * hit performance while saving large number of contacts #. -#: ../addressbook/gui/widgets/eab-gui-util.c:397 -#: ../addressbook/gui/widgets/eab-gui-util.c:400 +#: ../addressbook/gui/widgets/eab-gui-util.c:396 +#: ../addressbook/gui/widgets/eab-gui-util.c:399 msgid "contact" msgid_plural "contacts" msgstr[0] "Yhteystieto" msgstr[1] "Yhteystiedot" #. This is a filename. Translators take note. -#: ../addressbook/gui/widgets/eab-gui-util.c:446 +#: ../addressbook/gui/widgets/eab-gui-util.c:445 msgid "card.vcf" msgstr "kortti.vcf" -#: ../addressbook/gui/widgets/eab-gui-util.c:483 +#: ../addressbook/gui/widgets/eab-gui-util.c:482 msgid "Select Address Book" msgstr "Valitse osoitekirja" -#: ../addressbook/gui/widgets/eab-gui-util.c:597 +#: ../addressbook/gui/widgets/eab-gui-util.c:596 msgid "list" msgstr "lista" -#: ../addressbook/gui/widgets/eab-gui-util.c:749 +#: ../addressbook/gui/widgets/eab-gui-util.c:748 msgid "Move contact to" msgstr "Siirry yhteystieto" -#: ../addressbook/gui/widgets/eab-gui-util.c:751 +#: ../addressbook/gui/widgets/eab-gui-util.c:750 msgid "Copy contact to" msgstr "Kopioi yhteystieto" -#: ../addressbook/gui/widgets/eab-gui-util.c:754 +#: ../addressbook/gui/widgets/eab-gui-util.c:753 msgid "Move contacts to" msgstr "Siirrä yhteystiedot" -#: ../addressbook/gui/widgets/eab-gui-util.c:756 +#: ../addressbook/gui/widgets/eab-gui-util.c:755 msgid "Copy contacts to" msgstr "Kopioi yhteystiedot" -#: ../addressbook/gui/widgets/eab-gui-util.c:902 +#: ../addressbook/gui/widgets/eab-gui-util.c:901 msgid "Multiple vCards" msgstr "Useita vCard-tiedostoja" -#: ../addressbook/gui/widgets/eab-gui-util.c:909 +#: ../addressbook/gui/widgets/eab-gui-util.c:908 #, c-format msgid "vCard for %s" msgstr "vCard %s" -#: ../addressbook/gui/widgets/eab-gui-util.c:921 -#: ../addressbook/gui/widgets/eab-gui-util.c:947 +#: ../addressbook/gui/widgets/eab-gui-util.c:920 +#: ../addressbook/gui/widgets/eab-gui-util.c:946 #, c-format msgid "Contact information" msgstr "Yhteystiedot" -#: ../addressbook/gui/widgets/eab-gui-util.c:949 +#: ../addressbook/gui/widgets/eab-gui-util.c:948 #, c-format msgid "Contact information for %s" msgstr "%s yhteystiedot" @@ -3820,7 +3843,7 @@ msgstr "Korttinäkymä" #: ../addressbook/importers/evolution-ldif-importer.c:513 #: ../addressbook/importers/evolution-vcard-importer.c:252 #: ../calendar/importers/icalendar-importer.c:308 -#: ../calendar/importers/icalendar-importer.c:673 ../shell/shell.error.xml.h:7 +#: ../calendar/importers/icalendar-importer.c:685 ../shell/shell.error.xml.h:7 msgid "Importing..." msgstr "Tuodaan..." @@ -3909,7 +3932,7 @@ msgstr "Muoto" #: ../widgets/table/e-table-field-chooser-dialog.c:81 #: ../widgets/table/e-table-field-chooser-item.c:647 #: ../widgets/table/e-table-field-chooser.c:80 -#: ../widgets/table/e-table-header-item.c:1908 +#: ../widgets/table/e-table-header-item.c:1907 #: ../widgets/table/e-table-selection-model.c:309 msgid "Header" msgstr "Ylätunniste:" @@ -4012,9 +4035,9 @@ msgstr "Varjostus" #. FIXME: Take care of i18n #: ../addressbook/printing/e-contact-print.glade.h:36 -#: ../plugins/exchange-operations/exchange-account-setup.c:1071 -#: ../plugins/exchange-operations/exchange-calendar.c:232 -#: ../plugins/exchange-operations/exchange-contacts.c:218 +#: ../plugins/exchange-operations/exchange-account-setup.c:1141 +#: ../plugins/exchange-operations/exchange-calendar.c:236 +#: ../plugins/exchange-operations/exchange-contacts.c:222 msgid "Size:" msgstr "Koko:" @@ -4064,8 +4087,8 @@ msgstr "Yhteystiedon tulostustesti" msgid "This should test the contact print code" msgstr "Tämän pitäisi testata yhteystiedon tulostuksen koodia" -#: ../addressbook/tools/evolution-addressbook-export-list-cards.c:667 -#: ../addressbook/tools/evolution-addressbook-export-list-cards.c:703 +#: ../addressbook/tools/evolution-addressbook-export-list-cards.c:656 +#: ../addressbook/tools/evolution-addressbook-export-list-cards.c:692 #: ../addressbook/tools/evolution-addressbook-export-list-folders.c:50 msgid "Can not open file" msgstr "Tiedostoa ei voi avata" @@ -4266,67 +4289,76 @@ msgid "Are you sure you want to send the task without a summary?" msgstr "Haluatko varmasti lähettää tehtävän ilman yhteenvetoa?" #: ../calendar/calendar.error.xml.h:28 +msgid "Calendar repository is offline." +msgstr "Kalenterilähde on yhteydettömässä tilassa." + +#: ../calendar/calendar.error.xml.h:29 msgid "Cannot create a new event" msgstr "Uutta tapahtumaa ei voi luoda" -#: ../calendar/calendar.error.xml.h:29 +#: ../calendar/calendar.error.xml.h:30 msgid "Cannot save event" msgstr "Tapahtumaa ei voi tallentaa" -#: ../calendar/calendar.error.xml.h:30 +#: ../calendar/calendar.error.xml.h:31 msgid "Delete calendar '{0}'?" msgstr "Poista kalenteri \"{0}\"" -#: ../calendar/calendar.error.xml.h:31 +#: ../calendar/calendar.error.xml.h:32 msgid "Delete memo list '{0}'?" msgstr "Poistetaanko muistilappulista \"{0}\"?" -#: ../calendar/calendar.error.xml.h:32 +#: ../calendar/calendar.error.xml.h:33 msgid "Delete task list '{0}'?" msgstr "Poista tehtävälista \"{0}\"" -#: ../calendar/calendar.error.xml.h:33 +#: ../calendar/calendar.error.xml.h:34 msgid "Do _not Send" msgstr "Älä läh_etä" -#: ../calendar/calendar.error.xml.h:34 +#: ../calendar/calendar.error.xml.h:35 msgid "Download in progress. Do you want to save the appointment?" msgstr "Tietojen haku kesken. Haluatko varmasti tallentaa tämän tapaamisen?" -#: ../calendar/calendar.error.xml.h:35 +#: ../calendar/calendar.error.xml.h:36 msgid "Download in progress. Do you want to save the task?" msgstr "Tietojen haku on kesken. Haluatko tallentaa tehtävän?" -#: ../calendar/calendar.error.xml.h:36 +#: ../calendar/calendar.error.xml.h:37 msgid "Editor could not be loaded." msgstr "Muokkainta ei voi avata." -#: ../calendar/calendar.error.xml.h:37 +#: ../calendar/calendar.error.xml.h:38 msgid "" "Email invitations will be sent to all participants and allow them to accept " "this task." msgstr "" "Kutsu lähetetään kaikille osanottajille ja he voivat hyväksyä tämän tehtävän." -#: ../calendar/calendar.error.xml.h:38 +#: ../calendar/calendar.error.xml.h:39 msgid "" "Email invitations will be sent to all participants and allow them to reply." msgstr "" "Kutsu lähetetään kaikille osanottajille ja he voivat kuitata osanottonsa." -#: ../calendar/calendar.error.xml.h:39 +#: ../calendar/calendar.error.xml.h:40 msgid "Error loading calendar" msgstr "Virhe ladattaessa kalenteria" -#: ../calendar/calendar.error.xml.h:40 +#: ../calendar/calendar.error.xml.h:41 msgid "Error loading memo list" msgstr "Virhe ladattaessa muistilappulistaa" -#: ../calendar/calendar.error.xml.h:41 +#: ../calendar/calendar.error.xml.h:42 msgid "Error loading task list" msgstr "Virhe ladattaessa tehtävälistaa" -#: ../calendar/calendar.error.xml.h:42 +#. For Translators: {0} is specify the backend server +#: ../calendar/calendar.error.xml.h:44 +msgid "Error on '{0}'" +msgstr "Virhe palvelimella \"{0}\"" + +#: ../calendar/calendar.error.xml.h:45 msgid "" "If you do not send a cancelation notice, the other participants may not know " "the meeting is canceled." @@ -4334,7 +4366,7 @@ msgstr "" "Jos et lähetä perumisilmoitusta, eivät muut osanottajat ehkä tiedä että " "kokous on peruttu." -#: ../calendar/calendar.error.xml.h:43 +#: ../calendar/calendar.error.xml.h:46 msgid "" "If you do not send a cancelation notice, the other participants may not know " "the memo has been deleted." @@ -4342,7 +4374,7 @@ msgstr "" "Jos et lähetä perumisilmoitusta, eivät muut osanottajat ehkä tiedä että " "muistilappu on poistettu." -#: ../calendar/calendar.error.xml.h:44 +#: ../calendar/calendar.error.xml.h:47 msgid "" "If you do not send a cancelation notice, the other participants may not know " "the task has been deleted." @@ -4350,19 +4382,23 @@ msgstr "" "Jos et lähetä perumisilmoitusta, eivät muut osanottajat ehkä tiedä että " "tehtävä on peruttu." -#: ../calendar/calendar.error.xml.h:45 +#: ../calendar/calendar.error.xml.h:48 +msgid "No response from the server." +msgstr "Palvelin ei vastannut." + +#: ../calendar/calendar.error.xml.h:49 msgid "Save Appointment" msgstr "Tallenna tapaaminen" -#: ../calendar/calendar.error.xml.h:46 +#: ../calendar/calendar.error.xml.h:50 msgid "Save Memo" msgstr "Tallenna muistilappu" -#: ../calendar/calendar.error.xml.h:47 +#: ../calendar/calendar.error.xml.h:51 msgid "Save Task" msgstr "Tallenna tehtävä" -#: ../calendar/calendar.error.xml.h:48 +#: ../calendar/calendar.error.xml.h:52 msgid "" "Sending updated information allows other participants to keep their " "calendars up to date." @@ -4370,7 +4406,7 @@ msgstr "" "Päivitettyjen tietojen lähettäminen antaa muille mahdollisuuden pitää " "kalenterinsa ajan tasalla." -#: ../calendar/calendar.error.xml.h:49 +#: ../calendar/calendar.error.xml.h:53 msgid "" "Sending updated information allows other participants to keep their task " "lists up to date." @@ -4378,7 +4414,7 @@ msgstr "" "Päivitettyjen tehtävätietojen lähettäminen antaa muille mahdollisuuden pitää " "tehtävälistansa ajan tasalla." -#: ../calendar/calendar.error.xml.h:51 +#: ../calendar/calendar.error.xml.h:55 msgid "" "Some attachments are being downloaded. Saving the appointment would result " "in the loss of these attachments." @@ -4386,7 +4422,7 @@ msgstr "" " Joidenkin liitteiden lataus on vielä kesken. Tapaamisen tallentaminen nyt " "aiheuttaa tapaamisen tallentamisen ilman näitä hakemattomia liitteitä." -#: ../calendar/calendar.error.xml.h:52 +#: ../calendar/calendar.error.xml.h:56 msgid "" "Some attachments are being downloaded. Saving the task would result in the " "loss of these attachments." @@ -4394,85 +4430,93 @@ msgstr "" " Joidenkin liitteiden lataus on vielä kesken. Tehtävän tallentaminen nyt " "aiheuttaa tehtävän tallentamisen ilman näitä hakemattomia liitteitä." -#: ../calendar/calendar.error.xml.h:53 +#: ../calendar/calendar.error.xml.h:57 msgid "Some features may not work properly with your current server." msgstr "" "Jotkut toiminnot eivät välttämättä toimi oikein nykyisellä palvelimella." -#: ../calendar/calendar.error.xml.h:54 +#: ../calendar/calendar.error.xml.h:58 msgid "The Evolution calendar has quit unexpectedly." msgstr "Evolutionin kalenteri sulkeutui odottamatta." -#: ../calendar/calendar.error.xml.h:55 +#: ../calendar/calendar.error.xml.h:59 +msgid "The Evolution calendars have quit unexpectedly." +msgstr "Evolutionin kalenteri sulkeutui odottamatta." + +#: ../calendar/calendar.error.xml.h:60 msgid "The Evolution memo has quit unexpectedly." msgstr "Evolutionin muistilappuosa sulkeutui odottamatta." -#: ../calendar/calendar.error.xml.h:56 +#: ../calendar/calendar.error.xml.h:61 msgid "The Evolution tasks have quit unexpectedly." msgstr "Evolutionin tehtäväkomponentti on sulkeutunut odottamatta." -#: ../calendar/calendar.error.xml.h:57 +#: ../calendar/calendar.error.xml.h:62 msgid "The calendar is not marked for offline usage." msgstr "Kalenteri ei ole merkitty käytettäväksi yhteydettömässä tilassa." -#: ../calendar/calendar.error.xml.h:58 +#: ../calendar/calendar.error.xml.h:63 msgid "The memo list is not marked for offline usage." msgstr "" "Muistilappulistaa ei ole merkitty käytettäväksi yhteydettömässä tilassa." -#: ../calendar/calendar.error.xml.h:59 +#: ../calendar/calendar.error.xml.h:64 msgid "The task list is not marked for offline usage." msgstr "Tehtävälista ei ole merkitty käytettäväksi yhteydettömässä tilassa." -#: ../calendar/calendar.error.xml.h:60 +#: ../calendar/calendar.error.xml.h:65 msgid "This calendar will be removed permanently." msgstr "Tämä kalenteri poistetaan pysyvästi." -#: ../calendar/calendar.error.xml.h:61 +#: ../calendar/calendar.error.xml.h:66 msgid "This memo list will be removed permanently." msgstr "Tämä muistilappulista poistetaan pysyvästi." -#: ../calendar/calendar.error.xml.h:62 +#: ../calendar/calendar.error.xml.h:67 msgid "This task list will be removed permanently." msgstr "Tämä tehtävälista poistetaan pysyvästi." -#: ../calendar/calendar.error.xml.h:63 +#: ../calendar/calendar.error.xml.h:68 +msgid "Unable to load the calendar" +msgstr "Kalenteria ei voitu ladata" + +#: ../calendar/calendar.error.xml.h:69 msgid "Would you like to save your changes to this appointment?" msgstr "Haluatko tallentaa muutokset tähän tapaamiseen?" -#: ../calendar/calendar.error.xml.h:64 +#: ../calendar/calendar.error.xml.h:70 msgid "Would you like to save your changes to this memo?" msgstr "Haluatko tallentaa muutoksesi tähän muistioon?" -#: ../calendar/calendar.error.xml.h:65 +#: ../calendar/calendar.error.xml.h:71 msgid "Would you like to save your changes to this task?" msgstr "Haluatko tallentaa muutoksesi tähän tehtävään?" -#: ../calendar/calendar.error.xml.h:66 +#: ../calendar/calendar.error.xml.h:72 msgid "Would you like to send a cancelation notice for this memo?" msgstr "Haluatko lähettää perumisilmoituksen tälle muistilapulle?" -#: ../calendar/calendar.error.xml.h:67 +#: ../calendar/calendar.error.xml.h:73 msgid "Would you like to send all the participants a cancelation notice?" msgstr "Haluatko lähettää perumisilmoituksen kaikille osanottajille?" -#: ../calendar/calendar.error.xml.h:68 +#: ../calendar/calendar.error.xml.h:74 msgid "Would you like to send meeting invitations to participants?" msgstr "Haluatko lähettää kokouskutsuja osallistujille?" -#: ../calendar/calendar.error.xml.h:69 +#: ../calendar/calendar.error.xml.h:75 msgid "Would you like to send this task to participants?" msgstr "Haluatko lähettää tämän tehtävän osanottajille?" -#: ../calendar/calendar.error.xml.h:70 +#: ../calendar/calendar.error.xml.h:76 msgid "Would you like to send updated meeting information to participants?" msgstr "Haluatko lähettää päivitetyt kokouksen tiedot osanottajille?" -#: ../calendar/calendar.error.xml.h:71 +#: ../calendar/calendar.error.xml.h:77 msgid "Would you like to send updated task information to participants?" msgstr "Halutako lähettää päivitetyn tehtävätiedon osanottajille?" -#: ../calendar/calendar.error.xml.h:72 +#: ../calendar/calendar.error.xml.h:78 msgid "" "You are connecting to an unsupported GroupWise server and may encounter " "problems using Evolution. For best results, the server should be upgraded to " @@ -4482,114 +4526,114 @@ msgstr "" "kohdata ongelmia Evolutionin käytössä. Parhaiden tulosten saamiseksi tulisi " "palvelin päivittää tuettuun versioon." -#: ../calendar/calendar.error.xml.h:73 +#: ../calendar/calendar.error.xml.h:79 msgid "You have changed this appointment, but not yet saved it." msgstr "Olet muuttanut tätä tapaamista, mutta et ole vielä tallentanut sitä." -#: ../calendar/calendar.error.xml.h:74 +#: ../calendar/calendar.error.xml.h:80 msgid "You have changed this task, but not yet saved it." msgstr "Olet muuttanut tätä tehtävää, mutta et ole vielä tallentanut sitä." -#: ../calendar/calendar.error.xml.h:75 +#: ../calendar/calendar.error.xml.h:81 msgid "You have made changes to this memo, but not yet saved them." msgstr "Olet muuttanut tätä muistiota, mutta et ole vielä tallentanut sitä." -#: ../calendar/calendar.error.xml.h:76 +#: ../calendar/calendar.error.xml.h:82 msgid "Your calendars will not be available until Evolution is restarted." msgstr "" "Kalenterisi eivät ole käytettävissä ennen kuin Evolution on käynnistetty " "uudestaan." -#: ../calendar/calendar.error.xml.h:77 +#: ../calendar/calendar.error.xml.h:83 msgid "Your memos will not be available until Evolution is restarted." msgstr "" "Muistilaput eivät ole käytettävissä ennen kuin Evolution on käynnistetty " "uudestaan." -#: ../calendar/calendar.error.xml.h:78 +#: ../calendar/calendar.error.xml.h:84 msgid "Your tasks will not be available until Evolution is restarted." msgstr "" "Tehtävät eivät ole käytettävissä ennen kuin Evolution on käynnistetty " "uudestaan." -#: ../calendar/calendar.error.xml.h:79 +#: ../calendar/calendar.error.xml.h:85 #: ../composer/mail-composer.error.xml.h:30 msgid "_Discard Changes" msgstr "_Hylkää muutokset" -#: ../calendar/calendar.error.xml.h:80 ../composer/e-composer-actions.c:499 +#: ../calendar/calendar.error.xml.h:86 ../composer/e-composer-actions.c:497 msgid "_Save" msgstr "_Tallenna" -#: ../calendar/calendar.error.xml.h:81 +#: ../calendar/calendar.error.xml.h:87 msgid "_Save Changes" msgstr "_Tallenna muutokset" -#: ../calendar/calendar.error.xml.h:82 +#: ../calendar/calendar.error.xml.h:88 #: ../composer/mail-composer.error.xml.h:34 ../mail/mail.error.xml.h:142 #: ../plugins/attachment-reminder/org-gnome-attachment-reminder.error.xml.h:6 msgid "_Send" msgstr "_Lähetä" # calendar/calendar-errors.xml.h:6 calendar/calendar-errors.xml.h:16 #: calendar/calendar-errors.xml.h:26 -#: ../calendar/calendar.error.xml.h:83 +#: ../calendar/calendar.error.xml.h:89 msgid "_Send Notice" msgstr "_Lähetä huomautus" -#: ../calendar/calendar.error.xml.h:84 +#: ../calendar/calendar.error.xml.h:90 msgid "{0}." msgstr "{0}." -#: ../calendar/conduits/calendar/calendar-conduit.c:256 +#: ../calendar/conduits/calendar/calendar-conduit.c:258 msgid "Split Multi-Day Events:" msgstr "Jaa usean päivän tapahtumat:" -#: ../calendar/conduits/calendar/calendar-conduit.c:1521 -#: ../calendar/conduits/calendar/calendar-conduit.c:1522 -#: ../calendar/conduits/memo/memo-conduit.c:820 +#: ../calendar/conduits/calendar/calendar-conduit.c:1523 +#: ../calendar/conduits/calendar/calendar-conduit.c:1524 #: ../calendar/conduits/memo/memo-conduit.c:821 -#: ../calendar/conduits/todo/todo-conduit.c:1018 +#: ../calendar/conduits/memo/memo-conduit.c:822 #: ../calendar/conduits/todo/todo-conduit.c:1019 +#: ../calendar/conduits/todo/todo-conduit.c:1020 msgid "Could not start evolution-data-server" msgstr "Evolutionin tietopalvelimen käynnistys epäonnistui" -#: ../calendar/conduits/calendar/calendar-conduit.c:1629 -#: ../calendar/conduits/calendar/calendar-conduit.c:1632 +#: ../calendar/conduits/calendar/calendar-conduit.c:1631 +#: ../calendar/conduits/calendar/calendar-conduit.c:1634 msgid "Could not read pilot's Calendar application block" msgstr "Pilotin kalenterin ohjelmalohkoa ei voi lukea" -#: ../calendar/conduits/memo/memo-conduit.c:914 -#: ../calendar/conduits/memo/memo-conduit.c:917 +#: ../calendar/conduits/memo/memo-conduit.c:915 +#: ../calendar/conduits/memo/memo-conduit.c:918 msgid "Could not read pilot's Memo application block" msgstr "Pilotin muistilappujen ohjelmalohkoa ei voi lukea" -#: ../calendar/conduits/memo/memo-conduit.c:961 -#: ../calendar/conduits/memo/memo-conduit.c:964 +#: ../calendar/conduits/memo/memo-conduit.c:962 +#: ../calendar/conduits/memo/memo-conduit.c:965 msgid "Could not write pilot's Memo application block" msgstr "Pilotin muistilappujen ohjelmalohkoa ei voi lukea" -#: ../calendar/conduits/todo/todo-conduit.c:240 +#: ../calendar/conduits/todo/todo-conduit.c:241 msgid "Default Priority:" msgstr "Prioriteetin oletusarvo:" -#: ../calendar/conduits/todo/todo-conduit.c:1102 -#: ../calendar/conduits/todo/todo-conduit.c:1105 +#: ../calendar/conduits/todo/todo-conduit.c:1103 +#: ../calendar/conduits/todo/todo-conduit.c:1106 msgid "Could not read pilot's ToDo application block" msgstr "Pilotin tehtävälistan ohjelmalohkoa ei voi lukea" -#: ../calendar/conduits/todo/todo-conduit.c:1147 -#: ../calendar/conduits/todo/todo-conduit.c:1150 +#: ../calendar/conduits/todo/todo-conduit.c:1148 +#: ../calendar/conduits/todo/todo-conduit.c:1151 msgid "Could not write pilot's ToDo application block" msgstr "Pilotin tehtävälistan ohjelmalohkoa ei voi kirjoittaa" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:1 -#: ../plugins/itip-formatter/itip-formatter.c:2363 +#: ../plugins/itip-formatter/itip-formatter.c:2457 msgid "Calendar and Tasks" msgstr "Kalenteri ja tehtävät" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:2 -#: ../calendar/gui/calendar-component.c:805 -#: ../calendar/gui/calendar-component.c:1402 +#: ../calendar/gui/calendar-component.c:851 +#: ../calendar/gui/calendar-component.c:1325 msgid "Calendars" msgstr "Kalenterit" @@ -4631,20 +4675,20 @@ msgstr "Mui_stilaput" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:12 #: ../calendar/gui/e-memo-table.c:279 ../calendar/gui/e-memos.c:1120 -#: ../calendar/gui/gnome-cal.c:1774 ../calendar/gui/memos-component.c:548 -#: ../calendar/gui/memos-component.c:1101 ../calendar/gui/memos-control.c:354 +#: ../calendar/gui/gnome-cal.c:1810 ../calendar/gui/memos-component.c:586 +#: ../calendar/gui/memos-component.c:1016 ../calendar/gui/memos-control.c:354 #: ../calendar/gui/memos-control.c:370 msgid "Memos" msgstr "Muistilaput" #: ../calendar/gui/GNOME_Evolution_Calendar.server.in.in.h:13 -#: ../calendar/gui/e-calendar-table.c:703 ../calendar/gui/e-tasks.c:1429 -#: ../calendar/gui/gnome-cal.c:1642 ../calendar/gui/print.c:1984 -#: ../calendar/gui/tasks-component.c:539 -#: ../calendar/gui/tasks-component.c:1090 ../calendar/gui/tasks-control.c:492 +#: ../calendar/gui/e-calendar-table.c:714 ../calendar/gui/e-tasks.c:1429 +#: ../calendar/gui/gnome-cal.c:1678 ../calendar/gui/print.c:1984 +#: ../calendar/gui/tasks-component.c:577 +#: ../calendar/gui/tasks-component.c:1005 ../calendar/gui/tasks-control.c:492 #: ../calendar/gui/tasks-control.c:508 #: ../calendar/importers/icalendar-importer.c:76 -#: ../calendar/importers/icalendar-importer.c:737 +#: ../calendar/importers/icalendar-importer.c:749 #: ../plugins/exchange-operations/exchange-delegates-user.c:78 #: ../plugins/exchange-operations/exchange-folder.c:588 #: ../plugins/groupwise-account-setup/camel-gw-listener.c:425 @@ -4666,26 +4710,27 @@ msgstr "_Tehtävät" msgid "Evolution Calendar alarm notification service" msgstr "Evolutionin kalenterin hälytyspalvelu" -#: ../calendar/gui/alarm-notify/alarm-notify-dialog.c:104 +#: ../calendar/gui/alarm-notify/alarm-notify-dialog.c:105 msgid "minute" msgid_plural "minutes" msgstr[0] "minuutti" msgstr[1] "minuuttia" -#: ../calendar/gui/alarm-notify/alarm-notify-dialog.c:119 -#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:6 +#: ../calendar/gui/alarm-notify/alarm-notify-dialog.c:120 +#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:7 #: ../calendar/gui/dialogs/alarm-dialog.glade.h:25 #: ../calendar/gui/dialogs/event-page.glade.h:19 ../filter/filter.glade.h:15 +#: ../plugins/caldav/caldav-source.c:431 #: ../plugins/calendar-http/calendar-http.c:280 -#: ../plugins/calendar-weather/calendar-weather.c:562 -#: ../plugins/google-account-setup/google-source.c:663 -#: ../plugins/google-account-setup/google-contacts-source.c:329 +#: ../plugins/calendar-weather/calendar-weather.c:525 +#: ../plugins/google-account-setup/google-source.c:672 +#: ../plugins/google-account-setup/google-contacts-source.c:339 msgid "hours" msgid_plural "hours" msgstr[0] "tunti" msgstr[1] "tuntia" -#: ../calendar/gui/alarm-notify/alarm-notify-dialog.c:273 +#: ../calendar/gui/alarm-notify/alarm-notify-dialog.c:298 msgid "Start time" msgstr "Alkamisaika" @@ -4696,8 +4741,8 @@ msgstr "Tapaamiset" #. Location #: ../calendar/gui/alarm-notify/alarm-notify.glade.h:2 -#: ../calendar/gui/alarm-notify/alarm-queue.c:1603 -#: ../calendar/gui/alarm-notify/alarm-queue.c:1609 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1610 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1616 #: ../calendar/gui/e-itip-control.c:1172 #: ../plugins/itip-formatter/itip-view.c:1004 msgid "Location:" @@ -4708,52 +4753,55 @@ msgid "Snooze _time:" msgstr "Torkkumisaika:" #: ../calendar/gui/alarm-notify/alarm-notify.glade.h:4 -#: ../calendar/gui/dialogs/comp-editor.c:1332 +msgid "_Dismiss" +msgstr "_Hylkää" + +#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:5 +#: ../calendar/gui/dialogs/comp-editor.c:1338 #: ../calendar/gui/dialogs/recurrence-page.glade.h:10 -#: ../filter/filter.glade.h:11 ../mail/mail-config.glade.h:169 +#: ../filter/filter.glade.h:11 ../mail/mail-config.glade.h:170 #: ../plugins/exchange-operations/exchange-delegates.glade.h:15 #: ../plugins/publish-calendar/publish-calendar.glade.h:21 -#: ../ui/evolution-addressbook.xml.h:51 ../ui/evolution-calendar.xml.h:41 +#: ../ui/evolution-addressbook.xml.h:51 ../ui/evolution-calendar.xml.h:43 #: ../ui/evolution-mail-messagedisplay.xml.h:5 ../ui/evolution-memos.xml.h:17 #: ../ui/evolution-tasks.xml.h:25 ../ui/evolution.xml.h:42 #: ../widgets/menus/gal-define-views.glade.h:5 msgid "_Edit" msgstr "_Muokkaa" -#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:5 +#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:6 msgid "_Snooze" msgstr "_Torku" -#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:7 +#: ../calendar/gui/alarm-notify/alarm-notify.glade.h:8 msgid "location of appointment" msgstr "tapaamisen sijainti" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1461 -#: ../calendar/gui/alarm-notify/alarm-queue.c:1586 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1468 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1593 msgid "No summary available." msgstr "Ei yhteenvetoa saatavilla" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1470 -#: ../calendar/gui/alarm-notify/alarm-queue.c:1472 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1477 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1479 msgid "No description available." msgstr "Ei kuvausta saatavilla" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1480 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1487 msgid "No location information available." msgstr "Ei sijaintitietoja saatavilla" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1525 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1532 #, c-format msgid "You have %d alarms" msgstr "Sinulla on %d hälytystä" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1687 -#: ../calendar/gui/alarm-notify/alarm-queue.c:1715 -#: ../mail/mail-component.c:1596 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1694 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1722 msgid "Warning" msgstr "Varoitus" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1691 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1698 msgid "" "Evolution does not support calendar reminders with\n" "email notifications yet, but this reminder was\n" @@ -4765,7 +4813,7 @@ msgstr "" "lähettämään sähköpostia. Evolution näyttää sen sijaan\n" "tavallisen huomautusikkunan." -#: ../calendar/gui/alarm-notify/alarm-queue.c:1721 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1728 #, c-format msgid "" "An Evolution Calendar reminder is about to trigger. This reminder is " @@ -4782,7 +4830,7 @@ msgstr "" "\n" "Haluatko varmasti suorittaa tämän ohjelman?" -#: ../calendar/gui/alarm-notify/alarm-queue.c:1735 +#: ../calendar/gui/alarm-notify/alarm-queue.c:1742 msgid "Do not ask me about this program again." msgstr "Älä kysy tästä ohjelmasta enää uudestaan" @@ -4835,156 +4883,166 @@ msgid "Alarm programs" msgstr "Hälytysohjelmat" #: ../calendar/gui/apps_evolution_calendar.schemas.in.h:2 +#: ../mail/evolution-mail.schemas.in.h:6 +msgid "Amount of time in seconds the error should be shown on the status bar." +msgstr "Aika sekunteina, kuinka pitkään virheet näytetään tilarivillä." + +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:3 msgid "Ask for confirmation when deleting items" msgstr "Pyydä _vahvistusta poistettaessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:3 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:4 msgid "Background color of tasks that are due today, in \"#rrggbb\" format." msgstr "Tänään erääntyvien tehtävien väri, \"#rrggbb\"-muodossa." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:4 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:5 msgid "Background color of tasks that are overdue, in \"#rrggbb\" format." msgstr "Eräpäivän ylittäneiden tehtävien väri, \"#rrggbb\"-muodossa." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:5 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:6 msgid "Calendars to run alarms for" msgstr "Kalenterit, joille suoritetaan hälytyksiä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:6 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:7 msgid "" "Color to draw the Marcus Bains Line in the Time bar (empty for default)." msgstr "" "Väri, jolla Marcus Bains-viiva piirretään aikajanassa (tyhjä oletuksena)." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:7 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:8 msgid "Color to draw the Marcus Bains line in the Day View." msgstr "Marcus Bains-viivan väri päivänäkymässä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:8 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:9 msgid "Compress weekends in month view" msgstr "Tiivistä viikonloput kuukausinäkymässä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:9 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:10 msgid "Confirm expunge" msgstr "Varmista siivottaessa poistetut lopullisesti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:10 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:11 msgid "Days on which the start and end of work hours should be indicated." msgstr "Päivät, joina työtuntien alku ja loppu näytetään kalenterissa." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:11 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:12 msgid "Default appointment reminder" msgstr "Tapaamisen oletusmuistutus" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:12 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:13 msgid "Default reminder units" msgstr "Muistutusten oletusyksikkö" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:13 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:14 msgid "Default reminder value" msgstr "Muistutuksen oletusarvo" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:14 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:15 msgid "Directory for saving alarm audio files" msgstr "Kansio, johon äänimerkkien tiedostot tallennetaan" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:15 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:16 msgid "Event Gradient" msgstr "Tapahtuman väriliuku" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:16 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:17 msgid "Event Transparency" msgstr "Tapahtuman läpinäkyvyys" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:17 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:18 msgid "Free/busy server URLs" msgstr "Vapaa/varattu palvelinten URLit" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:18 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:19 msgid "Free/busy template URL" msgstr "Vapaa/varattu-mallin URL" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:19 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:20 msgid "Gradient of the events in calendar views." msgstr "Tapahtumien väriliuku kalenterinäkymissä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:20 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:21 msgid "Hide completed tasks" msgstr "Piilota valmistuneet tehtävät" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:21 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:22 msgid "Hide task units" msgstr "Piilota tehtävien yksiköt" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:22 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:23 msgid "Hide task value" msgstr "Piilota tehtävän arvo" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:23 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:24 msgid "Horizontal pane position" msgstr "Vaakapaneelin sijainti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:24 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:25 msgid "Hour the workday ends on, in twenty four hour format, 0 to 23." msgstr "Tunti jona työpäivä päättyy 24-tunnin muodossa, väliltä 0-23." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:25 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:26 msgid "Hour the workday starts on, in twenty four hour format, 0 to 23." msgstr "Tunti jona työpäivä alkaa 24-tunnin muodossa, väliltä 0-23." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:26 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:27 msgid "Intervals shown in Day and Work Week views, in minutes." msgstr "Päivä- ja viikkonäkymissä näytettävät aikavälit minuutteina." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:27 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:28 msgid "Last alarm time" msgstr "Viimeisen hälytyksen aika" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:28 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:29 +#: ../mail/evolution-mail.schemas.in.h:72 +msgid "Level beyond which the message should be logged." +msgstr "Taso, jonka jälkeen viesti lokitetaan." + +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:30 msgid "List of server URLs for free/busy publishing." msgstr "Osoitteet URLeista, joissa julkaistaan vapaa/varattu tietoja." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:29 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:31 msgid "Marcus Bains Line" msgstr "Marcus Bains-viiva" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:30 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:32 msgid "Marcus Bains Line Color - Day View" msgstr "Marcus Bains-viivan väri - päivänäkymä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:31 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:33 msgid "Marcus Bains Line Color - Time bar" msgstr "Marcus Bains-viivan väri - aikajana" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:32 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:34 msgid "Minute the workday ends on, 0 to 59." msgstr "Minuutti, jona työpäivä loppuu, väliltä 0-59." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:33 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:35 msgid "Minute the workday starts on, 0 to 59." msgstr "Minuutti, jona työpäivä alkaa, väliltä 0-59" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:34 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:36 msgid "Month view horizontal pane position" msgstr "Kuukausinäkymän vaakapanelin sijainti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:35 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:37 msgid "Month view vertical pane position" msgstr "Kuukausinäkymän pystypaneelin sijainti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:36 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:38 msgid "Number of units for determining a default reminder." msgstr "Kuinka monta yksikköä määrittelee oletusmuistutuksen." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:37 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:39 msgid "Number of units for determining when to hide tasks." msgstr "Kuinka monta yksikköä tarvitaan, jotta tehtävät piilotetaan." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:38 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:40 msgid "Overdue tasks color" msgstr "Eräpäivän ylittäneiden tehtävien väri" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:39 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:41 msgid "" "Position of the horizontal pane, between the date navigator calendar and the " "task list when not in the month view, in pixels." @@ -4992,7 +5050,7 @@ msgstr "" "Vaakapaneelin sijainti pikseleinä, kalenteriselaimen ja tehtävälistan " "välissä jos ei olla kuukausinäkymässä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:40 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:42 msgid "" "Position of the horizontal pane, between the view and the date navigator " "calendar and task list in the month view, in pixels." @@ -5000,7 +5058,7 @@ msgstr "" "Vaakapaneelin sijainti pikseleinä, kalenteriselaimen ja tehtävälistan " "välissä käytettäessä kuukausinäkymää" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:41 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:43 msgid "" "Position of the vertical pane, between the calendar lists and the date " "navigator calendar." @@ -5008,7 +5066,7 @@ msgstr "" "Vaakapaneelin sijainti pikseleinä , kalenterin listojen ja päivämäärien " "selausnäkymän välissä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:42 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:44 msgid "" "Position of the vertical pane, between the task list and the task preview " "pane, in pixels." @@ -5016,7 +5074,7 @@ msgstr "" "Vaakapaneelin sijainti pikseleinä, tehtävälistan ja tehtävän esikatselun " "välissä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:43 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:45 msgid "" "Position of the vertical pane, between the view and the date navigator " "calendar and task list in the month view, in pixels." @@ -5024,7 +5082,7 @@ msgstr "" "Pystypaneelin sijainti pikseleinä, näkymän ja kalenteriselaimen sekä " "tehtävälistan välissä käytettäessä kuukausinäkymää" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:44 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:46 msgid "" "Position of the vertical pane, between the view and the date navigator " "calendar and task list when not in the month view, in pixels." @@ -5032,69 +5090,69 @@ msgstr "" "Pystypaneelin sijainti pikseleinä, näkymän ja kalenteriselaimen sekä " "tehtävälistan välissä kun ei käytetä kuukausinäkymää" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:45 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:47 msgid "Programs that are allowed to be run by alarms." msgstr "Ohjelmat, joita voidaan suorittaa hälytyksistä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:46 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:48 msgid "Save directory for alarm audio" msgstr "Äänihälytysten tiedostojen tallennuskansio" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:47 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:49 msgid "Show RSVP field in the event/task/meeting editor" msgstr "Näytä RSVP-kenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:48 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:50 msgid "Show Role field in the event/task/meeting editor" msgstr "Näytä roolikenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:49 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:51 msgid "Show appointment end times in week and month views" msgstr "Näytä tapaamisten loppumisajat viikko- ja kuukausinäkymissä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:50 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:52 msgid "Show categories field in the event/meeting/task editor" msgstr "Näytä luokkakenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:51 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:53 msgid "Show display alarms in notification tray" msgstr "Näytä näkyvät hälytykset ilmoitusalueella" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:52 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:54 msgid "Show status field in the event/task/meeting editor" msgstr "Näytä tilakenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:53 -#: ../mail/evolution-mail.schemas.in.h:124 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:55 +#: ../mail/evolution-mail.schemas.in.h:126 msgid "Show the \"Preview\" pane" msgstr "Näytä \"Esikatselu\"-paneeli" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:54 -#: ../mail/evolution-mail.schemas.in.h:125 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:56 +#: ../mail/evolution-mail.schemas.in.h:127 msgid "Show the \"Preview\" pane." msgstr "Näytä esikatselupaneeli" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:55 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:57 msgid "Show timezone field in the event/meeting editor" msgstr "Näytä aikavyöhyke tapahtuman tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:56 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:58 msgid "Show type field in the event/task/meeting editor" msgstr "Näytä tyyppikenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:57 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:59 msgid "Show week numbers in date navigator" msgstr "Näytä viikkonumerot päivämääräselaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:58 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:60 msgid "Tasks due today color" msgstr "Tänään erääntyvien tehtävien väri" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:59 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:61 msgid "Tasks vertical pane position" msgstr "Tehtäväpaneelin pystysijainti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:61 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:63 #, no-c-format msgid "" "The URL template to use as a free/busy data fallback, %u is replaced by the " @@ -5103,7 +5161,7 @@ msgstr "" "URL-malli, jota käytetään vapaa/varattu tiedon varaosoitteena. %u korvataan " "sähköpostiosoitteen käyttäjäosalla ja %d aluenimellä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:62 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:64 msgid "" "The default timezone to use for dates and times in the calendar, as an " "untranslated Olsen timezone database location like \"America/New York\"." @@ -5112,20 +5170,29 @@ msgstr "" "kääntämätön Olsenin aikavyöhyketietokantamuoto, esimerkiksi \"Finland/" "Helsinki\"." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:63 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:65 +#, fuzzy +msgid "" +"This can have three possible values. 0 for errors. 1 for warnings. 2 for " +"debug messages." +msgstr "" +"Tällä asetuksella voi olla kolme arvoa: \"0\" (ei virheitä), \"1" +"\" (varoitukset) tai \"2\" (vianetsintäviestit)." + +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:66 msgid "Time divisions" msgstr "Aikajaot" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:64 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:67 msgid "Time the last alarm ran, in time_t." msgstr "Viimeisimmän hälytyksen suoritusaika, time_t yksikkönä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:65 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:68 #: ../plugins/startup-wizard/startup-wizard.c:109 msgid "Timezone" msgstr "Aikavyöhyke" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:66 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:69 msgid "" "Transparency of the events in calendar views, a value between 0 " "(transparent) and 1 (opaque)." @@ -5133,42 +5200,42 @@ msgstr "" "Tapahtumien läpinäkyvyys kalenterinäkymissä. Arvo on väliltä 0 (läpinäkyvä) " "ja 1 (peittävä)" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:67 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:70 msgid "Twenty four hour time format" msgstr "24-tunnin kello" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:68 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:71 msgid "Units for a default reminder, \"minutes\", \"hours\" or \"days\"." msgstr "Oletusmuistutusten yksikkö, \"minutes\", \"hours\" tai \"days\"." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:69 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:72 msgid "" "Units for determining when to hide tasks, \"minutes\", \"hours\" or \"days\"." msgstr "" "Yksikkö, jonka avulla päätetään milloin tehtäviä piilotetaan. Arvot \"minutes" "\", \"hours\" tai \"days\"." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:71 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:74 msgid "Week start" msgstr "Viikon alku" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:72 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:75 msgid "Weekday the week starts on, from Sunday (0) to Saturday (6)." msgstr "Viikonpäivä josta viikko alkaa, sunnuntaista (0) lauantaihin (6)" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:73 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:76 msgid "Whether or not to use the notification tray for display alarms." msgstr "Käytetäänkö ilmoitusaluetta hälytysten näyttämiseen." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:74 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:77 msgid "Whether to ask for confirmation when deleting an appointment or task." msgstr "Kysytäänkö vahvistusta poistettaessa tapaamista tai tehtävää." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:75 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:78 msgid "Whether to ask for confirmation when expunging appointments and tasks." msgstr "Kysytäänkö vahvistusta siivottaessa tapaamisia tai tehtäviä" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:76 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:79 msgid "" "Whether to compress weekends in the month view, which puts Saturday and " "Sunday in the space of one weekday." @@ -5176,84 +5243,84 @@ msgstr "" "Pakataanko viikonloput kuukausinäkymässä. Tämä tiivistää lauantain ja " "sunnuntain yhden viikonpäivän kokoisiksi." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:77 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:80 msgid "Whether to display the end time of events in the week and month views." msgstr "Näytetäänkö tapahtumien loppumisaika viikko- ja kuukausinäkymissä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:78 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:81 msgid "" "Whether to draw the Marcus Bains Line (line at current time) in the calendar." msgstr "Piirretäänkö Marcus Bains-viiva (viiva nykyhetkessä) kalenteriin." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:79 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:82 msgid "Whether to hide completed tasks in the tasks view." msgstr "Piilotetaanko valmistuneet tehtävät tehtävänäkymistä." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:80 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:83 msgid "Whether to set a default reminder for appointments." msgstr "Asetetaanko tapaamisille oletusmuistutus." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:81 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:84 msgid "Whether to show RSVP field in the event/task/meeting editor" msgstr "" "Näytetäänkö RSVP-kenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:82 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:85 msgid "Whether to show categories field in the event/meeting editor" msgstr "Näytetäänkö luokkakenttä tapahtuman tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:83 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:86 msgid "Whether to show role field in the event/task/meeting editor" msgstr "" "Näytetäänkö roolikenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:84 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:87 msgid "Whether to show status field in the event/task/meeting editor" msgstr "Näytetäänkö tilakenttä tapahtuman, tehtävät tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:85 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:88 msgid "" "Whether to show times in twenty four hour format instead of using am/pm." msgstr "Näytetäänkö kello 24 tunnin vai am/pm muodossa." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:86 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:89 msgid "Whether to show timezone field in the event/meeting editor" msgstr "Näytetäänkö aikavyöhykekenttä tapahtuman tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:87 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:90 msgid "Whether to show type field in the event/task/meeting editor" msgstr "" "Näytetäänkö tyyppikenttä tapahtuman, tehtävän tai kokouksen muokkaimessa" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:88 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:91 msgid "Whether to show week numbers in the date navigator." msgstr "Näytetäänkö viikkonumerot päivämääräselaimessa." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:89 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:92 msgid "Whether to use daylight savings time while displaying events." msgstr "Käytetäänkö kesäaikaa näytettäessä tapahtumia." -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:90 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:93 msgid "Work days" msgstr "Työpäivät" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:91 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:94 msgid "Workday end hour" msgstr "Työpäivän päättymistunti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:92 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:95 msgid "Workday end minute" msgstr "Työpäivän päättymisminuutti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:93 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:96 msgid "Workday start hour" msgstr "Työpäivän alkamistunti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:94 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:97 msgid "Workday start minute" msgstr "Työpäivän alkamisminuutti" -#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:95 +#: ../calendar/gui/apps_evolution_calendar.schemas.in.h:98 msgid "daylight savings time" msgstr "kesäaika" @@ -5277,46 +5344,41 @@ msgstr "Kommentti sisältää" msgid "Location contains" msgstr "Sijainti sisältää" -#: ../calendar/gui/cal-search-bar.c:633 ../calendar/gui/cal-search-bar.c:676 -#: ../calendar/gui/cal-search-bar.c:695 -msgid "Unmatched" -msgstr "Täsmäämättömät" - -#: ../calendar/gui/cal-search-bar.c:641 +#: ../calendar/gui/cal-search-bar.c:640 msgid "Next 7 Days' Tasks" msgstr "Seuraavien 7 päivän tehtävät" -#: ../calendar/gui/cal-search-bar.c:645 +#: ../calendar/gui/cal-search-bar.c:644 msgid "Active Tasks" msgstr "Aktiiviset tehtävät" -#: ../calendar/gui/cal-search-bar.c:649 +#: ../calendar/gui/cal-search-bar.c:648 msgid "Overdue Tasks" msgstr "Vanhentuneet tehtävät" -#: ../calendar/gui/cal-search-bar.c:653 +#: ../calendar/gui/cal-search-bar.c:652 msgid "Completed Tasks" msgstr "Valmistuneet tehtävät" -#: ../calendar/gui/cal-search-bar.c:657 +#: ../calendar/gui/cal-search-bar.c:656 msgid "Tasks with Attachments" msgstr "Tehtävät, joissa on liitteitä" -#: ../calendar/gui/cal-search-bar.c:703 +#: ../calendar/gui/cal-search-bar.c:702 msgid "Active Appointments" msgstr "Aktiiviset tapaamiset" -#: ../calendar/gui/cal-search-bar.c:707 +#: ../calendar/gui/cal-search-bar.c:706 msgid "Next 7 Days' Appointments" msgstr "Seuraavien 7 päivän tapaamiset" -#: ../calendar/gui/calendar-commands.c:92 ../ui/evolution-addressbook.xml.h:26 +#: ../calendar/gui/calendar-commands.c:94 ../ui/evolution-addressbook.xml.h:26 #: ../ui/evolution-calendar.xml.h:20 ../ui/evolution-mail-message.xml.h:75 #: ../ui/evolution-memos.xml.h:11 ../ui/evolution-tasks.xml.h:14 msgid "Print" msgstr "Tulosta" -#: ../calendar/gui/calendar-commands.c:317 +#: ../calendar/gui/calendar-commands.c:319 msgid "" "This operation will permanently erase all events older than the selected " "amount of time. If you continue, you will not be able to recover these " @@ -5325,16 +5387,17 @@ msgstr "" "Tämä toimenpide poistaa kaikki tapahtumat, jotka ovat vanhempia kuin valittu " "aika. Jos jatkat, et voi palauttaa näitä tapahtumia." -#: ../calendar/gui/calendar-commands.c:323 +#: ../calendar/gui/calendar-commands.c:325 msgid "Purge events older than" msgstr "Poista vanhemmat tapahtumat kuin" -#: ../calendar/gui/calendar-commands.c:328 +#: ../calendar/gui/calendar-commands.c:330 #: ../calendar/gui/dialogs/alarm-dialog.glade.h:21 ../filter/filter.glade.h:14 +#: ../plugins/caldav/caldav-source.c:432 #: ../plugins/calendar-http/calendar-http.c:281 -#: ../plugins/calendar-weather/calendar-weather.c:563 -#: ../plugins/google-account-setup/google-source.c:664 -#: ../plugins/google-account-setup/google-contacts-source.c:330 +#: ../plugins/calendar-weather/calendar-weather.c:526 +#: ../plugins/google-account-setup/google-source.c:673 +#: ../plugins/google-account-setup/google-contacts-source.c:340 #: ../widgets/misc/e-send-options.glade.h:39 msgid "days" msgstr "päivä" @@ -5343,100 +5406,110 @@ msgstr "päivä" #. Create the LDAP source group #. Create the Webcal source group #. Create the LDAP source group -#: ../calendar/gui/calendar-component.c:273 +#: ../calendar/gui/calendar-component.c:281 #: ../calendar/gui/memos-component.c:235 ../calendar/gui/migration.c:505 #: ../calendar/gui/migration.c:604 ../calendar/gui/migration.c:1118 #: ../calendar/gui/tasks-component.c:231 msgid "On The Web" msgstr "Verkossa" -#: ../calendar/gui/calendar-component.c:310 ../calendar/gui/migration.c:399 +#: ../calendar/gui/calendar-component.c:318 ../calendar/gui/migration.c:399 msgid "Birthdays & Anniversaries" msgstr "Syntymä- ja vuosipäivät" #. Create the weather group -#: ../calendar/gui/calendar-component.c:323 -#: ../plugins/calendar-weather/calendar-weather.c:100 +#: ../calendar/gui/calendar-component.c:331 +#: ../plugins/calendar-weather/calendar-weather.c:126 msgid "Weather" msgstr "Sää" -#: ../calendar/gui/calendar-component.c:615 +#: ../calendar/gui/calendar-component.c:658 msgid "_New Calendar" msgstr "_Uusi kalenteri" -#: ../calendar/gui/calendar-component.c:616 -#: ../calendar/gui/memos-component.c:465 ../calendar/gui/tasks-component.c:456 -#: ../mail/em-folder-tree.c:2106 +#: ../calendar/gui/calendar-component.c:659 +#: ../calendar/gui/memos-component.c:500 ../calendar/gui/tasks-component.c:491 +#: ../mail/em-folder-tree.c:2107 msgid "_Copy..." msgstr "_Kopioi..." -#: ../calendar/gui/calendar-component.c:949 +#: ../calendar/gui/calendar-component.c:664 +#: ../calendar/gui/memos-component.c:505 ../calendar/gui/tasks-component.c:496 +msgid "_Make available for offline use" +msgstr "_Kopioi käytettäväksi yhteydettömässä tilassa" + +#: ../calendar/gui/calendar-component.c:665 +#: ../calendar/gui/memos-component.c:506 ../calendar/gui/tasks-component.c:497 +msgid "_Do not make available for offline use" +msgstr "_Älä kopioi käytettäväksi yhteydettömässä tilassa" + +#: ../calendar/gui/calendar-component.c:995 msgid "Failed upgrading calendars." msgstr "Kalenterien päivitys epäonnistui." -#: ../calendar/gui/calendar-component.c:1248 +#: ../calendar/gui/calendar-component.c:1176 #, c-format msgid "Unable to open the calendar '%s' for creating events and meetings" msgstr "" "Kalenterin \"%s\" avaus tehtävien ja kokousten luontia varten epäonnistui" -#: ../calendar/gui/calendar-component.c:1264 +#: ../calendar/gui/calendar-component.c:1192 msgid "There is no calendar available for creating events and meetings" msgstr "Tehtävien ja kokousten luontia varten ei löydy kalenteria" -#: ../calendar/gui/calendar-component.c:1377 +#: ../calendar/gui/calendar-component.c:1305 msgid "Calendar Source Selector" msgstr "Kalenterilähteen valinta" -#: ../calendar/gui/calendar-component.c:1596 +#: ../calendar/gui/calendar-component.c:1521 msgid "New appointment" msgstr "Uusi tapaaminen" -#: ../calendar/gui/calendar-component.c:1597 +#: ../calendar/gui/calendar-component.c:1522 msgctxt "New" msgid "_Appointment" msgstr "_Tapaaminen" -#: ../calendar/gui/calendar-component.c:1598 +#: ../calendar/gui/calendar-component.c:1523 msgid "Create a new appointment" msgstr "Luo uusi tapaaminen" -#: ../calendar/gui/calendar-component.c:1604 +#: ../calendar/gui/calendar-component.c:1529 msgid "New meeting" msgstr "Uusi tapaaminen" -#: ../calendar/gui/calendar-component.c:1605 +#: ../calendar/gui/calendar-component.c:1530 msgctxt "New" msgid "M_eeting" msgstr "_Kokous" -#: ../calendar/gui/calendar-component.c:1606 +#: ../calendar/gui/calendar-component.c:1531 msgid "Create a new meeting request" msgstr "Luo uusi kokouskutsu" -#: ../calendar/gui/calendar-component.c:1612 +#: ../calendar/gui/calendar-component.c:1537 msgid "New all day appointment" msgstr "Uusi koko päivän tapaaminen" -#: ../calendar/gui/calendar-component.c:1613 +#: ../calendar/gui/calendar-component.c:1538 msgctxt "New" msgid "All Day A_ppointment" msgstr "_Koko päivän tapaaminen" -#: ../calendar/gui/calendar-component.c:1614 +#: ../calendar/gui/calendar-component.c:1539 msgid "Create a new all-day appointment" msgstr "Luo uusi koko päivän tapaaminen" -#: ../calendar/gui/calendar-component.c:1620 +#: ../calendar/gui/calendar-component.c:1545 msgid "New calendar" msgstr "Uusi kalenteri" -#: ../calendar/gui/calendar-component.c:1621 +#: ../calendar/gui/calendar-component.c:1546 msgctxt "New" msgid "Cale_ndar" msgstr "_Kalenteri" -#: ../calendar/gui/calendar-component.c:1622 +#: ../calendar/gui/calendar-component.c:1547 msgid "Create a new calendar" msgstr "Luo uusi kalenteri" @@ -5456,217 +5529,114 @@ msgstr "Työviikko" msgid "Month View" msgstr "Kuukausinäkymä" -#: ../calendar/gui/caltypes.xml.h:2 ../calendar/gui/memotypes.xml.h:2 -#: ../calendar/gui/tasktypes.xml.h:4 +#: ../calendar/gui/caltypes.xml.h:1 ../calendar/gui/memotypes.xml.h:1 +#: ../calendar/gui/tasktypes.xml.h:3 msgid "Any Field" msgstr "Mikä tahansa kenttä" -#: ../calendar/gui/caltypes.xml.h:4 ../calendar/gui/memotypes.xml.h:4 -#: ../calendar/gui/tasktypes.xml.h:6 ../mail/em-filter-i18n.h:21 +#: ../calendar/gui/caltypes.xml.h:3 ../calendar/gui/memotypes.xml.h:3 +#: ../calendar/gui/tasktypes.xml.h:5 ../mail/em-filter-i18n.h:21 msgid "Attachments" msgstr "Liitteet" -#: ../calendar/gui/caltypes.xml.h:5 +#: ../calendar/gui/caltypes.xml.h:4 #: ../calendar/gui/e-meeting-time-sel.etspec.h:1 -#: ../calendar/gui/tasktypes.xml.h:7 +#: ../calendar/gui/tasktypes.xml.h:6 msgid "Attendee" msgstr "Osanottaja" -#: ../calendar/gui/caltypes.xml.h:7 ../calendar/gui/memotypes.xml.h:6 -#: ../calendar/gui/tasktypes.xml.h:9 -msgid "Business" -msgstr "Työ" - -#: ../calendar/gui/caltypes.xml.h:8 ../calendar/gui/memotypes.xml.h:7 -#: ../calendar/gui/tasktypes.xml.h:11 +#: ../calendar/gui/caltypes.xml.h:5 ../calendar/gui/memotypes.xml.h:4 +#: ../calendar/gui/tasktypes.xml.h:8 msgid "Category" msgstr "Luokka" -#: ../calendar/gui/caltypes.xml.h:9 ../calendar/gui/memotypes.xml.h:8 +#: ../calendar/gui/caltypes.xml.h:6 ../calendar/gui/memotypes.xml.h:5 #: ../widgets/misc/e-send-options.glade.h:6 msgid "Classification" msgstr "Luokittelu" -#: ../calendar/gui/caltypes.xml.h:10 ../calendar/gui/memotypes.xml.h:9 -#: ../calendar/gui/tasktypes.xml.h:12 -msgid "Competition" -msgstr "Kilpailu" - -#: ../calendar/gui/caltypes.xml.h:11 ../calendar/gui/e-cal-list-view.c:250 -#: ../calendar/gui/e-cal-model.c:348 ../calendar/gui/e-calendar-table.c:546 -#: ../calendar/gui/memotypes.xml.h:10 +#: ../calendar/gui/caltypes.xml.h:7 ../calendar/gui/e-cal-list-view.c:250 +#: ../calendar/gui/e-cal-model.c:348 ../calendar/gui/e-calendar-table.c:557 +#: ../calendar/gui/memotypes.xml.h:6 msgid "Confidential" msgstr "Luottamuksellinen" -#: ../calendar/gui/caltypes.xml.h:12 ../calendar/gui/memotypes.xml.h:11 -#: ../calendar/gui/tasktypes.xml.h:14 +#: ../calendar/gui/caltypes.xml.h:8 ../calendar/gui/memotypes.xml.h:7 +#: ../calendar/gui/tasktypes.xml.h:10 #: ../plugins/plugin-manager/plugin-manager.c:59 #: ../widgets/table/e-table-config.glade.h:6 msgid "Description" msgstr "Kuvaus" -#: ../calendar/gui/caltypes.xml.h:13 ../calendar/gui/memotypes.xml.h:12 -#: ../calendar/gui/tasktypes.xml.h:15 +#: ../calendar/gui/caltypes.xml.h:9 ../calendar/gui/memotypes.xml.h:8 +#: ../calendar/gui/tasktypes.xml.h:11 msgid "Description Contains" msgstr "Kuvaus sisältää" -#: ../calendar/gui/caltypes.xml.h:14 ../calendar/gui/memotypes.xml.h:13 -#: ../calendar/gui/tasktypes.xml.h:16 ../mail/em-filter-i18n.h:38 +#: ../calendar/gui/caltypes.xml.h:10 ../calendar/gui/memotypes.xml.h:9 +#: ../calendar/gui/tasktypes.xml.h:12 ../mail/em-filter-i18n.h:38 msgid "Do Not Exist" msgstr "Ei ole olemassa" -#: ../calendar/gui/caltypes.xml.h:15 ../calendar/gui/memotypes.xml.h:14 -#: ../calendar/gui/tasktypes.xml.h:17 ../mail/em-filter-i18n.h:41 +#: ../calendar/gui/caltypes.xml.h:11 ../calendar/gui/memotypes.xml.h:10 +#: ../calendar/gui/tasktypes.xml.h:13 ../mail/em-filter-i18n.h:41 msgid "Exist" msgstr "On olemassa" -#: ../calendar/gui/caltypes.xml.h:16 ../calendar/gui/memotypes.xml.h:15 -#: ../calendar/gui/tasktypes.xml.h:18 -msgid "Favourites" -msgstr "Suosikit" - -#: ../calendar/gui/caltypes.xml.h:17 ../calendar/gui/memotypes.xml.h:16 -#: ../calendar/gui/tasktypes.xml.h:19 -msgid "Gifts" -msgstr "Lahjat" - -#: ../calendar/gui/caltypes.xml.h:18 ../calendar/gui/memotypes.xml.h:17 -#: ../calendar/gui/tasktypes.xml.h:20 -msgid "Goals/Objectives" -msgstr "Tavoitteet" - -#: ../calendar/gui/caltypes.xml.h:19 ../calendar/gui/memotypes.xml.h:18 -#: ../calendar/gui/tasktypes.xml.h:22 -msgid "Holiday" -msgstr "Loma" - -#: ../calendar/gui/caltypes.xml.h:20 ../calendar/gui/memotypes.xml.h:19 -#: ../calendar/gui/tasktypes.xml.h:23 -msgid "Holiday Cards" -msgstr "Lomakortit" - -#: ../calendar/gui/caltypes.xml.h:21 ../calendar/gui/memotypes.xml.h:20 -#: ../calendar/gui/tasktypes.xml.h:24 -msgid "Hot Contacts" -msgstr "Tärkeät yhteystiedot" - -#: ../calendar/gui/caltypes.xml.h:22 ../calendar/gui/memotypes.xml.h:21 -#: ../calendar/gui/tasktypes.xml.h:25 -msgid "Ideas" -msgstr "Ideat" - -#: ../calendar/gui/caltypes.xml.h:23 ../calendar/gui/memotypes.xml.h:22 -#: ../calendar/gui/tasktypes.xml.h:27 -msgid "International" -msgstr "Kansainvälinen" - -#: ../calendar/gui/caltypes.xml.h:24 ../calendar/gui/memotypes.xml.h:23 -#: ../calendar/gui/tasktypes.xml.h:28 -msgid "Key Customer" -msgstr "Avainasiakas" - -#: ../calendar/gui/caltypes.xml.h:26 ../calendar/gui/memotypes.xml.h:24 -#: ../calendar/gui/tasktypes.xml.h:30 -msgid "Miscellaneous" -msgstr "Sekalaiset" - -#: ../calendar/gui/caltypes.xml.h:27 ../calendar/gui/tasktypes.xml.h:31 -msgid "Next 7 days" -msgstr "Seuraavat 7 päivää" - -#: ../calendar/gui/caltypes.xml.h:28 +#: ../calendar/gui/caltypes.xml.h:13 #: ../calendar/gui/dialogs/meeting-page.glade.h:6 -#: ../calendar/gui/memotypes.xml.h:26 ../calendar/gui/tasktypes.xml.h:34 +#: ../calendar/gui/memotypes.xml.h:11 ../calendar/gui/tasktypes.xml.h:19 msgid "Organizer" msgstr "Järjestäjä:" -#: ../calendar/gui/caltypes.xml.h:30 ../calendar/gui/memotypes.xml.h:28 -#: ../calendar/gui/tasktypes.xml.h:36 -msgid "Phone Calls" -msgstr "Puhelut" - -#: ../calendar/gui/caltypes.xml.h:31 ../calendar/gui/e-cal-list-view.c:249 -#: ../calendar/gui/e-cal-model.c:346 ../calendar/gui/e-calendar-table.c:545 -#: ../calendar/gui/memotypes.xml.h:29 +#: ../calendar/gui/caltypes.xml.h:14 ../calendar/gui/e-cal-list-view.c:249 +#: ../calendar/gui/e-cal-model.c:346 ../calendar/gui/e-calendar-table.c:556 +#: ../calendar/gui/memotypes.xml.h:12 msgid "Private" msgstr "Henkilökohtainen" -#: ../calendar/gui/caltypes.xml.h:32 ../calendar/gui/e-cal-list-view.c:248 +#: ../calendar/gui/caltypes.xml.h:15 ../calendar/gui/e-cal-list-view.c:248 #: ../calendar/gui/e-cal-model.c:337 ../calendar/gui/e-cal-model.c:344 -#: ../calendar/gui/e-calendar-table.c:544 ../calendar/gui/memotypes.xml.h:30 +#: ../calendar/gui/e-calendar-table.c:555 ../calendar/gui/memotypes.xml.h:13 msgid "Public" msgstr "Julkinen" -#: ../calendar/gui/caltypes.xml.h:33 -#: ../calendar/gui/dialogs/event-editor.c:299 +#: ../calendar/gui/caltypes.xml.h:16 +#: ../calendar/gui/dialogs/event-editor.c:297 msgid "Recurrence" msgstr "Toistuvuus" -#: ../calendar/gui/caltypes.xml.h:34 -#: ../calendar/gui/e-calendar-table.etspec.h:10 -#: ../calendar/gui/e-meeting-list-view.c:545 -#: ../calendar/gui/e-meeting-time-sel.etspec.h:10 -#: ../calendar/gui/memotypes.xml.h:31 ../calendar/gui/tasktypes.xml.h:38 -#: ../mail/em-filter-i18n.h:86 ../mail/message-list.etspec.h:17 -msgid "Status" -msgstr "Tila" - -#: ../calendar/gui/caltypes.xml.h:35 ../calendar/gui/memotypes.xml.h:32 -#: ../calendar/gui/tasktypes.xml.h:39 -msgid "Strategies" -msgstr "Strategiat" - -#: ../calendar/gui/caltypes.xml.h:36 +#: ../calendar/gui/caltypes.xml.h:17 #: ../calendar/gui/e-cal-list-view.etspec.h:5 #: ../calendar/gui/e-calendar-table.etspec.h:11 -#: ../calendar/gui/e-memo-table.etspec.h:4 ../calendar/gui/memotypes.xml.h:33 -#: ../calendar/gui/tasktypes.xml.h:40 +#: ../calendar/gui/e-memo-table.etspec.h:4 ../calendar/gui/memotypes.xml.h:14 +#: ../calendar/gui/tasktypes.xml.h:22 #: ../plugins/save-calendar/csv-format.c:362 msgid "Summary" msgstr "Kuvaus" -#: ../calendar/gui/caltypes.xml.h:37 ../calendar/gui/memotypes.xml.h:34 -#: ../calendar/gui/tasktypes.xml.h:41 +#: ../calendar/gui/caltypes.xml.h:18 ../calendar/gui/memotypes.xml.h:15 +#: ../calendar/gui/tasktypes.xml.h:23 msgid "Summary Contains" msgstr "Yhteenveto sisältää" -#: ../calendar/gui/caltypes.xml.h:38 ../calendar/gui/memotypes.xml.h:35 -#: ../calendar/gui/tasktypes.xml.h:42 -msgid "Suppliers" -msgstr "Toimittajat" - -#: ../calendar/gui/caltypes.xml.h:39 ../calendar/gui/memotypes.xml.h:36 -#: ../calendar/gui/tasktypes.xml.h:43 -msgid "Time & Expenses" -msgstr "Aika & kulut" - -#: ../calendar/gui/caltypes.xml.h:40 ../calendar/gui/memotypes.xml.h:37 -#: ../calendar/gui/tasktypes.xml.h:45 -msgid "VIP" -msgstr "VIP" - -#: ../calendar/gui/caltypes.xml.h:41 ../calendar/gui/memotypes.xml.h:38 -#: ../calendar/gui/tasktypes.xml.h:46 -msgid "Waiting" -msgstr "Odottaa" - -#: ../calendar/gui/caltypes.xml.h:42 ../calendar/gui/memotypes.xml.h:39 -#: ../calendar/gui/tasktypes.xml.h:47 ../mail/em-filter-i18n.h:26 +#: ../calendar/gui/caltypes.xml.h:19 ../calendar/gui/memotypes.xml.h:16 +#: ../calendar/gui/tasktypes.xml.h:25 ../mail/em-filter-i18n.h:26 msgid "contains" msgstr "sisältää" -#: ../calendar/gui/caltypes.xml.h:43 ../calendar/gui/memotypes.xml.h:40 -#: ../calendar/gui/tasktypes.xml.h:48 ../mail/em-filter-i18n.h:32 +#: ../calendar/gui/caltypes.xml.h:20 ../calendar/gui/memotypes.xml.h:17 +#: ../calendar/gui/tasktypes.xml.h:26 ../mail/em-filter-i18n.h:32 msgid "does not contain" msgstr "ei sisällä" -#: ../calendar/gui/caltypes.xml.h:44 ../calendar/gui/memotypes.xml.h:41 -#: ../calendar/gui/tasktypes.xml.h:49 ../mail/em-filter-i18n.h:46 +#: ../calendar/gui/caltypes.xml.h:21 ../calendar/gui/memotypes.xml.h:18 +#: ../calendar/gui/tasktypes.xml.h:27 ../mail/em-filter-i18n.h:46 msgid "is" msgstr "on" -#: ../calendar/gui/caltypes.xml.h:45 ../calendar/gui/memotypes.xml.h:42 -#: ../calendar/gui/tasktypes.xml.h:52 ../mail/em-filter-i18n.h:52 +#: ../calendar/gui/caltypes.xml.h:22 ../calendar/gui/memotypes.xml.h:19 +#: ../calendar/gui/tasktypes.xml.h:30 ../mail/em-filter-i18n.h:52 msgid "is not" msgstr "ei ole" @@ -5682,7 +5652,7 @@ msgstr "Menetelmä ei ollut tuettu avattaessa kalenteria" msgid "Permission denied to open the calendar" msgstr "Kalenterin avaamiseen ei ollut tarvittavia oikeuksia" -#: ../calendar/gui/comp-editor-factory.c:433 ../shell/e-shell.c:1308 +#: ../calendar/gui/comp-editor-factory.c:433 ../shell/e-shell.c:1272 msgid "Unknown error" msgstr "Tuntematon virhe" @@ -5812,7 +5782,7 @@ msgid "Alarms" msgstr "Hälytykset" #: ../calendar/gui/dialogs/cal-attachment-select-file.c:82 -#: ../composer/e-composer-actions.c:64 +#: ../composer/e-composer-actions.c:62 msgid "_Suggest automatic display of attachment" msgstr "_Ehdota liitteen automaattista näyttämistä" @@ -5925,7 +5895,7 @@ msgstr "" "sunnuntai" #: ../calendar/gui/dialogs/cal-prefs-dialog.glade.h:32 -#: ../mail/mail-config.glade.h:113 +#: ../mail/mail-config.glade.h:114 msgid "Pick a color" msgstr "Valitse väri" @@ -6072,51 +6042,51 @@ msgstr "_Ke" msgid "before every appointment" msgstr "ennen tapaamista" -#: ../calendar/gui/dialogs/calendar-setup.c:270 +#: ../calendar/gui/dialogs/calendar-setup.c:271 msgid "Cop_y calendar contents locally for offline operation" msgstr "_Kopioi kalenterin sisältö paikallisesti yhteydettömään käyttöön" -#: ../calendar/gui/dialogs/calendar-setup.c:272 +#: ../calendar/gui/dialogs/calendar-setup.c:273 msgid "Cop_y task list contents locally for offline operation" msgstr "_Kopioi tehtävälistan sisältö paikallisesti yhteydettömään käyttöön" -#: ../calendar/gui/dialogs/calendar-setup.c:274 +#: ../calendar/gui/dialogs/calendar-setup.c:275 msgid "Cop_y memo list contents locally for offline operation" msgstr "_Kopioi muistilappujen sisältö paikallisesti yhteydettömään käyttöön" -#: ../calendar/gui/dialogs/calendar-setup.c:344 +#: ../calendar/gui/dialogs/calendar-setup.c:345 msgid "Colo_r:" msgstr "Vä_ri:" -#: ../calendar/gui/dialogs/calendar-setup.c:379 +#: ../calendar/gui/dialogs/calendar-setup.c:380 msgid "Task List" msgstr "Tehtävälista" -#: ../calendar/gui/dialogs/calendar-setup.c:390 +#: ../calendar/gui/dialogs/calendar-setup.c:391 msgid "Memo List" msgstr "Muistilappulista" -#: ../calendar/gui/dialogs/calendar-setup.c:475 +#: ../calendar/gui/dialogs/calendar-setup.c:476 msgid "Calendar Properties" msgstr "Kalenterin ominaisuudet" -#: ../calendar/gui/dialogs/calendar-setup.c:475 +#: ../calendar/gui/dialogs/calendar-setup.c:476 msgid "New Calendar" msgstr "Uusi kalenteri" -#: ../calendar/gui/dialogs/calendar-setup.c:531 +#: ../calendar/gui/dialogs/calendar-setup.c:532 msgid "Task List Properties" msgstr "Tehtävälistan ominaisuudet" -#: ../calendar/gui/dialogs/calendar-setup.c:531 +#: ../calendar/gui/dialogs/calendar-setup.c:532 msgid "New Task List" msgstr "Uusi tehtävälista" -#: ../calendar/gui/dialogs/calendar-setup.c:587 +#: ../calendar/gui/dialogs/calendar-setup.c:588 msgid "Memo List Properties" msgstr "Muistilappulistan ominaisuudet" -#: ../calendar/gui/dialogs/calendar-setup.c:587 +#: ../calendar/gui/dialogs/calendar-setup.c:588 msgid "New Memo List" msgstr "Uusi muistilappulista" @@ -6189,14 +6159,14 @@ msgstr "(erääntyy " msgid "Due " msgstr "Erääntyy " -#: ../calendar/gui/dialogs/comp-editor.c:232 +#: ../calendar/gui/dialogs/comp-editor.c:238 #, c-format msgid "Attached message - %s" msgstr "Liitetty viesti - %s" #. translators, this count will always be >1 -#: ../calendar/gui/dialogs/comp-editor.c:237 -#: ../calendar/gui/dialogs/comp-editor.c:410 ../composer/e-msg-composer.c:1766 +#: ../calendar/gui/dialogs/comp-editor.c:243 +#: ../calendar/gui/dialogs/comp-editor.c:416 ../composer/e-msg-composer.c:1766 #: ../composer/e-msg-composer.c:1985 #, c-format msgid "Attached message" @@ -6204,257 +6174,258 @@ msgid_plural "%d attached messages" msgstr[0] "Liitetty viesti" msgstr[1] "%d liitettyä viestiä" -#: ../calendar/gui/dialogs/comp-editor.c:481 ../composer/e-msg-composer.c:2053 +#: ../calendar/gui/dialogs/comp-editor.c:487 ../composer/e-msg-composer.c:2053 #: ../mail/em-folder-tree.c:1006 ../mail/em-folder-utils.c:364 #: ../mail/em-folder-view.c:1186 ../mail/message-list.c:2107 msgid "_Move" msgstr "_Siirrä" -#: ../calendar/gui/dialogs/comp-editor.c:483 ../composer/e-msg-composer.c:2055 +#: ../calendar/gui/dialogs/comp-editor.c:489 ../composer/e-msg-composer.c:2055 #: ../mail/em-folder-tree.c:1008 ../mail/message-list.c:2109 msgid "Cancel _Drag" msgstr "Peruuta _raahaus" -#: ../calendar/gui/dialogs/comp-editor.c:616 -#: ../calendar/gui/dialogs/comp-editor.c:3249 ../mail/em-utils.c:371 +#: ../calendar/gui/dialogs/comp-editor.c:622 +#: ../calendar/gui/dialogs/comp-editor.c:3260 ../mail/em-utils.c:372 #: ../plugins/prefer-plain/prefer-plain.c:91 #: ../widgets/misc/e-attachment-bar.c:453 msgid "attachment" msgstr "liite" -#: ../calendar/gui/dialogs/comp-editor.c:842 +#: ../calendar/gui/dialogs/comp-editor.c:848 msgid "Could not update object" msgstr "Kohdetta ei voi päivittää" -#: ../calendar/gui/dialogs/comp-editor.c:930 +#: ../calendar/gui/dialogs/comp-editor.c:936 msgid "Edit Appointment" msgstr "Muokkaa tapaamista" -#: ../calendar/gui/dialogs/comp-editor.c:937 +#: ../calendar/gui/dialogs/comp-editor.c:943 #, c-format msgid "Meeting - %s" msgstr "Kokous - %s" -#: ../calendar/gui/dialogs/comp-editor.c:939 +#: ../calendar/gui/dialogs/comp-editor.c:945 #, c-format msgid "Appointment - %s" msgstr "Tapaaminen - %s" -#: ../calendar/gui/dialogs/comp-editor.c:945 +#: ../calendar/gui/dialogs/comp-editor.c:951 #, c-format msgid "Assigned Task - %s" msgstr "Tehtävänanto - %s" -#: ../calendar/gui/dialogs/comp-editor.c:947 +#: ../calendar/gui/dialogs/comp-editor.c:953 #, c-format msgid "Task - %s" msgstr "Tehtävä - %s" -#: ../calendar/gui/dialogs/comp-editor.c:952 +#: ../calendar/gui/dialogs/comp-editor.c:958 #, c-format msgid "Memo - %s" msgstr "Muistilappu - %s" -#: ../calendar/gui/dialogs/comp-editor.c:968 +#: ../calendar/gui/dialogs/comp-editor.c:974 msgid "No Summary" msgstr "Ei yhteenvetoa" -#: ../calendar/gui/dialogs/comp-editor.c:1262 +#: ../calendar/gui/dialogs/comp-editor.c:1268 msgid "Click here to close the current window" msgstr "Sulje nykyinen ikkuna napsauttamalla tästä" -#: ../calendar/gui/dialogs/comp-editor.c:1269 +#: ../calendar/gui/dialogs/comp-editor.c:1275 msgid "Copy selected text to the clipboard" msgstr "Kopioi valittu teksti leikepöydälle" -#: ../calendar/gui/dialogs/comp-editor.c:1276 +#: ../calendar/gui/dialogs/comp-editor.c:1282 msgid "Cut selected text to the clipboard" msgstr "_Kopioi valittu teksti leikepöydälle" -#: ../calendar/gui/dialogs/comp-editor.c:1283 +#: ../calendar/gui/dialogs/comp-editor.c:1289 msgid "Click here to view help available" msgstr "Napsauta tästä näyttääksesi ohje" -#: ../calendar/gui/dialogs/comp-editor.c:1290 +#: ../calendar/gui/dialogs/comp-editor.c:1296 msgid "Paste text from the clipboard" msgstr "Liitä tekstiä leikepöydältä" -#: ../calendar/gui/dialogs/comp-editor.c:1311 +#: ../calendar/gui/dialogs/comp-editor.c:1317 msgid "Click here to save the current window" msgstr "Tallenna nykyinen ikkuna napsauttamalla tästä" -#: ../calendar/gui/dialogs/comp-editor.c:1318 +#: ../calendar/gui/dialogs/comp-editor.c:1324 msgid "Select all text" msgstr "Valitse kaikki teksti" -#: ../calendar/gui/dialogs/comp-editor.c:1325 +#: ../calendar/gui/dialogs/comp-editor.c:1331 msgid "_Classification" msgstr "Lu_okittelu" -#: ../calendar/gui/dialogs/comp-editor.c:1339 +#: ../calendar/gui/dialogs/comp-editor.c:1345 #: ../mail/mail-signature-editor.c:208 #: ../ui/evolution-mail-messagedisplay.xml.h:6 ../ui/evolution.xml.h:43 msgid "_File" msgstr "_Tiedosto" -#: ../calendar/gui/dialogs/comp-editor.c:1346 -#: ../ui/evolution-mail-global.xml.h:24 ../ui/evolution.xml.h:46 +#: ../calendar/gui/dialogs/comp-editor.c:1352 +#: ../ui/evolution-calendar.xml.h:44 ../ui/evolution-mail-global.xml.h:24 +#: ../ui/evolution.xml.h:46 msgid "_Help" msgstr "O_hje" -#: ../calendar/gui/dialogs/comp-editor.c:1353 +#: ../calendar/gui/dialogs/comp-editor.c:1359 msgid "_Insert" msgstr "L_isää" -#: ../calendar/gui/dialogs/comp-editor.c:1360 +#: ../calendar/gui/dialogs/comp-editor.c:1366 msgid "_Options" msgstr "_Asetukset" -#: ../calendar/gui/dialogs/comp-editor.c:1367 ../mail/em-folder-tree.c:2098 +#: ../calendar/gui/dialogs/comp-editor.c:1373 ../mail/em-folder-tree.c:2099 #: ../ui/evolution-addressbook.xml.h:64 ../ui/evolution-mail-global.xml.h:34 #: ../ui/evolution-mail-messagedisplay.xml.h:8 ../ui/evolution-tasks.xml.h:30 #: ../ui/evolution.xml.h:55 msgid "_View" msgstr "_Näytä" -#: ../calendar/gui/dialogs/comp-editor.c:1377 -#: ../composer/e-composer-actions.c:471 +#: ../calendar/gui/dialogs/comp-editor.c:1383 +#: ../composer/e-composer-actions.c:469 msgid "_Attachment..." msgstr "_Liite..." -#: ../calendar/gui/dialogs/comp-editor.c:1379 +#: ../calendar/gui/dialogs/comp-editor.c:1385 msgid "Click here to attach a file" msgstr "Liitä tiedosta napsauttamalla tästä" -#: ../calendar/gui/dialogs/comp-editor.c:1387 +#: ../calendar/gui/dialogs/comp-editor.c:1393 msgid "_Categories" msgstr "_Luokat" -#: ../calendar/gui/dialogs/comp-editor.c:1389 +#: ../calendar/gui/dialogs/comp-editor.c:1395 msgid "Toggles whether to display categories" msgstr "Määrittää näytetäänkö luokat" -#: ../calendar/gui/dialogs/comp-editor.c:1395 +#: ../calendar/gui/dialogs/comp-editor.c:1401 msgid "Time _Zone" msgstr "_Aikavyöhyke" -#: ../calendar/gui/dialogs/comp-editor.c:1397 +#: ../calendar/gui/dialogs/comp-editor.c:1403 msgid "Toggles whether the time zone is displayed" msgstr "Määrittää näytetäänkö aikavyöhykekenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1406 +#: ../calendar/gui/dialogs/comp-editor.c:1412 msgid "Pu_blic" msgstr "J_ulkinen" -#: ../calendar/gui/dialogs/comp-editor.c:1408 +#: ../calendar/gui/dialogs/comp-editor.c:1414 msgid "Classify as public" msgstr "Luokittele julkiseksi" -#: ../calendar/gui/dialogs/comp-editor.c:1413 +#: ../calendar/gui/dialogs/comp-editor.c:1419 msgid "_Private" msgstr "_Yksityinen" -#: ../calendar/gui/dialogs/comp-editor.c:1415 +#: ../calendar/gui/dialogs/comp-editor.c:1421 msgid "Classify as private" msgstr "Luokittele yksityiseksi" -#: ../calendar/gui/dialogs/comp-editor.c:1420 +#: ../calendar/gui/dialogs/comp-editor.c:1426 msgid "_Confidential" msgstr "_Luottamuksellinen" -#: ../calendar/gui/dialogs/comp-editor.c:1422 +#: ../calendar/gui/dialogs/comp-editor.c:1428 msgid "Classify as confidential" msgstr "Luokittele luottamukselliseksi" -#: ../calendar/gui/dialogs/comp-editor.c:1430 +#: ../calendar/gui/dialogs/comp-editor.c:1436 msgid "R_ole Field" msgstr "R_oolikenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1432 +#: ../calendar/gui/dialogs/comp-editor.c:1438 msgid "Toggles whether the Role field is displayed" msgstr "Määrittää näytetäänkö roolikenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1438 +#: ../calendar/gui/dialogs/comp-editor.c:1444 msgid "_RSVP" msgstr "_RSVP" -#: ../calendar/gui/dialogs/comp-editor.c:1440 +#: ../calendar/gui/dialogs/comp-editor.c:1446 msgid "Toggles whether the RSVP field is displayed" msgstr "Määrittää näytetäänkö RSVP-kenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1446 +#: ../calendar/gui/dialogs/comp-editor.c:1452 msgid "_Status Field" msgstr "_Tilakenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1448 +#: ../calendar/gui/dialogs/comp-editor.c:1454 msgid "Toggles whether the Status field is displayed" msgstr "Määrittää näytetäänkö tilakenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1454 +#: ../calendar/gui/dialogs/comp-editor.c:1460 msgid "_Type Field" msgstr "T_yyppikenttä" -#: ../calendar/gui/dialogs/comp-editor.c:1456 +#: ../calendar/gui/dialogs/comp-editor.c:1462 msgid "Toggles whether the Attendee Type is displayed" msgstr "Määrittää näytetäänkö läsnäolijan tyyppi" -#: ../calendar/gui/dialogs/comp-editor.c:1766 -#: ../composer/e-composer-private.c:65 ../widgets/misc/e-attachment-bar.c:1381 +#: ../calendar/gui/dialogs/comp-editor.c:1776 +#: ../composer/e-composer-private.c:64 ../widgets/misc/e-attachment-bar.c:1381 msgid "Recent _Documents" msgstr "Viimeisimmät _asiakirjat" -#: ../calendar/gui/dialogs/comp-editor.c:1785 -#: ../composer/e-composer-actions.c:699 +#: ../calendar/gui/dialogs/comp-editor.c:1795 +#: ../composer/e-composer-actions.c:697 msgid "Attach" msgstr "Liitä tiedosto" -#: ../calendar/gui/dialogs/comp-editor.c:1880 +#: ../calendar/gui/dialogs/comp-editor.c:1890 #, c-format msgid "<b>%d</b> Attachment" msgid_plural "<b>%d</b> Attachments" msgstr[0] "<b>%d</b> liite" msgstr[1] "<b>%d</b> liitettä" -#: ../calendar/gui/dialogs/comp-editor.c:1912 +#: ../calendar/gui/dialogs/comp-editor.c:1922 msgid "Hide Attachment _Bar" msgstr "Piilota _liitepalkki" -#: ../calendar/gui/dialogs/comp-editor.c:1915 -#: ../calendar/gui/dialogs/comp-editor.c:2223 +#: ../calendar/gui/dialogs/comp-editor.c:1925 +#: ../calendar/gui/dialogs/comp-editor.c:2233 msgid "Show Attachment _Bar" msgstr "Näytä _liitepalkki" -#: ../calendar/gui/dialogs/comp-editor.c:2034 -#: ../calendar/gui/dialogs/event-page.c:1875 -#: ../calendar/gui/dialogs/task-page.c:1197 ../composer/e-msg-composer.c:1040 +#: ../calendar/gui/dialogs/comp-editor.c:2044 +#: ../calendar/gui/dialogs/event-page.c:1876 +#: ../calendar/gui/dialogs/task-page.c:1198 ../composer/e-msg-composer.c:1040 #: ../plugins/groupwise-features/junk-settings.glade.h:8 #: ../plugins/groupwise-features/properties.glade.h:13 #: ../widgets/table/e-table-config.glade.h:21 msgid "_Remove" msgstr "_Poista" -#: ../calendar/gui/dialogs/comp-editor.c:2037 +#: ../calendar/gui/dialogs/comp-editor.c:2047 #: ../composer/e-msg-composer.c:1043 #: ../plugins/attachment-reminder/org-gnome-attachment-reminder.error.xml.h:4 msgid "_Add attachment..." msgstr "_Lisää liite..." -#: ../calendar/gui/dialogs/comp-editor.c:2245 +#: ../calendar/gui/dialogs/comp-editor.c:2255 #: ../mail/em-format-html-display.c:2201 msgid "Show Attachments" msgstr "Näytä liitteet" -#: ../calendar/gui/dialogs/comp-editor.c:2246 +#: ../calendar/gui/dialogs/comp-editor.c:2256 msgid "Press space key to toggle attachment bar" msgstr "Näytä tai piilota liitepalkki välilyönnillä" -#: ../calendar/gui/dialogs/comp-editor.c:2390 -#: ../calendar/gui/dialogs/comp-editor.c:2437 -#: ../calendar/gui/dialogs/comp-editor.c:3282 +#: ../calendar/gui/dialogs/comp-editor.c:2400 +#: ../calendar/gui/dialogs/comp-editor.c:2447 +#: ../calendar/gui/dialogs/comp-editor.c:3293 msgid "Changes made to this item may be discarded if an update arrives" msgstr "Tähän kohtaan tehdyt muutokset voidaan hylätä, jos päivitys saapuu" -#: ../calendar/gui/dialogs/comp-editor.c:3311 +#: ../calendar/gui/dialogs/comp-editor.c:3322 msgid "Unable to use current version!" msgstr "Nykyistä versiota ei voi käyttää!" @@ -6535,182 +6506,182 @@ msgstr "Valtuuta:" msgid "Enter Delegate" msgstr "Syötä valtuutettu" -#: ../calendar/gui/dialogs/event-editor.c:196 +#: ../calendar/gui/dialogs/event-editor.c:195 msgid "_Alarms" msgstr "_Hälytykset" -#: ../calendar/gui/dialogs/event-editor.c:198 +#: ../calendar/gui/dialogs/event-editor.c:197 msgid "Click here to set or unset alarms for this event" msgstr "" "Napsauta tästä, jos haluat asettaa tai poistaa tämän tehtävän hälytyksiä" -#: ../calendar/gui/dialogs/event-editor.c:203 +#: ../calendar/gui/dialogs/event-editor.c:202 msgid "_Recurrence" msgstr "T_oistuvuus" -#: ../calendar/gui/dialogs/event-editor.c:205 +#: ../calendar/gui/dialogs/event-editor.c:204 msgid "Make this a recurring event" msgstr "Muuta tämä tapahtuma toistuvaksi" -#: ../calendar/gui/dialogs/event-editor.c:210 +#: ../calendar/gui/dialogs/event-editor.c:209 #: ../plugins/groupwise-features/org-gnome-compose-send-options.xml.h:2 -#: ../plugins/groupwise-features/send-options.c:213 +#: ../plugins/groupwise-features/send-options.c:212 #: ../widgets/misc/e-send-options.glade.h:19 msgid "Send Options" msgstr "Lähetysasetukset" -#: ../calendar/gui/dialogs/event-editor.c:212 +#: ../calendar/gui/dialogs/event-editor.c:211 #: ../calendar/gui/dialogs/task-editor.c:125 msgid "Insert advanced send options" msgstr "Lisää erityisiä lähetysvaihtoehtoja" -#: ../calendar/gui/dialogs/event-editor.c:220 +#: ../calendar/gui/dialogs/event-editor.c:219 msgid "All _Day Event" msgstr "Koko _päivän tapahtuma" -#: ../calendar/gui/dialogs/event-editor.c:222 +#: ../calendar/gui/dialogs/event-editor.c:221 msgid "Toggles whether to have All Day Event" msgstr "Määrittää onko tämä koko päivän tapahtuma" -#: ../calendar/gui/dialogs/event-editor.c:228 +#: ../calendar/gui/dialogs/event-editor.c:227 msgid "Show Time as _Busy" msgstr "Näytä aika _varattuna" -#: ../calendar/gui/dialogs/event-editor.c:230 +#: ../calendar/gui/dialogs/event-editor.c:229 msgid "Toggles whether to show time as busy" msgstr "Määrittää näytetäänkö aika varattuna" -#: ../calendar/gui/dialogs/event-editor.c:239 +#: ../calendar/gui/dialogs/event-editor.c:238 msgid "_Free/Busy" msgstr "_Vapaa/Varattu" -#: ../calendar/gui/dialogs/event-editor.c:241 +#: ../calendar/gui/dialogs/event-editor.c:240 msgid "Query free / busy information for the attendees" msgstr "Kysy vapaa/varattu-tietoja osanottajilta" -#: ../calendar/gui/dialogs/event-editor.c:296 +#: ../calendar/gui/dialogs/event-editor.c:294 msgid "Appoint_ment" msgstr "Tapaa_minen" -#: ../calendar/gui/dialogs/event-page.c:735 -#: ../calendar/gui/dialogs/event-page.c:2718 +#: ../calendar/gui/dialogs/event-page.c:736 +#: ../calendar/gui/dialogs/event-page.c:2724 msgid "This event has alarms" msgstr "Tapahtumassa on hälytyksiä" -#: ../calendar/gui/dialogs/event-page.c:798 +#: ../calendar/gui/dialogs/event-page.c:799 #: ../calendar/gui/dialogs/event-page.glade.h:10 #: ../calendar/gui/dialogs/meeting-page.glade.h:5 #: ../calendar/gui/dialogs/memo-page.glade.h:2 msgid "Or_ganizer:" msgstr "_Järjestäjä:" -#: ../calendar/gui/dialogs/event-page.c:844 +#: ../calendar/gui/dialogs/event-page.c:845 msgid "_Delegatees" msgstr "_Valtuutetut" -#: ../calendar/gui/dialogs/event-page.c:846 +#: ../calendar/gui/dialogs/event-page.c:847 msgid "Atte_ndees" msgstr "_Osanottajat" -#: ../calendar/gui/dialogs/event-page.c:1030 +#: ../calendar/gui/dialogs/event-page.c:1031 msgid "Event with no start date" msgstr "Tapahtuma ilman alkupäivämäärää" -#: ../calendar/gui/dialogs/event-page.c:1033 +#: ../calendar/gui/dialogs/event-page.c:1034 msgid "Event with no end date" msgstr "Tapahtuma ilman päättymispäivää" -#: ../calendar/gui/dialogs/event-page.c:1202 -#: ../calendar/gui/dialogs/memo-page.c:640 -#: ../calendar/gui/dialogs/task-page.c:812 +#: ../calendar/gui/dialogs/event-page.c:1203 +#: ../calendar/gui/dialogs/memo-page.c:641 +#: ../calendar/gui/dialogs/task-page.c:813 msgid "Start date is wrong" msgstr "Aloituspäiväys on virheellinen" -#: ../calendar/gui/dialogs/event-page.c:1212 +#: ../calendar/gui/dialogs/event-page.c:1213 msgid "End date is wrong" msgstr "Lopetuspäiväys on virheellinen" -#: ../calendar/gui/dialogs/event-page.c:1235 +#: ../calendar/gui/dialogs/event-page.c:1236 msgid "Start time is wrong" msgstr "Alkamisaika on väärin" -#: ../calendar/gui/dialogs/event-page.c:1242 +#: ../calendar/gui/dialogs/event-page.c:1243 msgid "End time is wrong" msgstr "Lopetusaika on virheellinen" -#: ../calendar/gui/dialogs/event-page.c:1405 -#: ../calendar/gui/dialogs/memo-page.c:681 -#: ../calendar/gui/dialogs/task-page.c:872 +#: ../calendar/gui/dialogs/event-page.c:1406 +#: ../calendar/gui/dialogs/memo-page.c:682 +#: ../calendar/gui/dialogs/task-page.c:873 msgid "The organizer selected no longer has an account." msgstr "Valitulla järjestäjällä ei enää ole käyttäjätiliä" -#: ../calendar/gui/dialogs/event-page.c:1411 -#: ../calendar/gui/dialogs/memo-page.c:687 -#: ../calendar/gui/dialogs/task-page.c:878 +#: ../calendar/gui/dialogs/event-page.c:1412 +#: ../calendar/gui/dialogs/memo-page.c:688 +#: ../calendar/gui/dialogs/task-page.c:879 msgid "An organizer is required." msgstr "Järjestäjä vaaditaan." -#: ../calendar/gui/dialogs/event-page.c:1436 -#: ../calendar/gui/dialogs/task-page.c:902 +#: ../calendar/gui/dialogs/event-page.c:1437 +#: ../calendar/gui/dialogs/task-page.c:903 msgid "At least one attendee is required." msgstr "Vähintään yksi läsnäolija vaaditaan." -#: ../calendar/gui/dialogs/event-page.c:1876 -#: ../calendar/gui/dialogs/task-page.c:1198 +#: ../calendar/gui/dialogs/event-page.c:1877 +#: ../calendar/gui/dialogs/task-page.c:1199 msgid "_Add " msgstr "_Lisää " -#: ../calendar/gui/dialogs/event-page.c:2594 +#: ../calendar/gui/dialogs/event-page.c:2600 #, c-format msgid "Unable to open the calendar '%s'." msgstr "Kalenteria \"%s\" ei voi avata" -#: ../calendar/gui/dialogs/event-page.c:2638 -#: ../calendar/gui/dialogs/memo-page.c:890 -#: ../calendar/gui/dialogs/task-page.c:1797 +#: ../calendar/gui/dialogs/event-page.c:2644 +#: ../calendar/gui/dialogs/memo-page.c:896 +#: ../calendar/gui/dialogs/task-page.c:1803 #, c-format msgid "You are acting on behalf of %s" msgstr "Toimit henkilön %s puolesta" -#: ../calendar/gui/dialogs/event-page.c:2918 +#: ../calendar/gui/dialogs/event-page.c:2924 #, c-format msgid "%d day before appointment" msgid_plural "%d days before appointment" msgstr[0] "%d päivä ennen tapaamista" msgstr[1] "%d päivää ennen tapaamista" -#: ../calendar/gui/dialogs/event-page.c:2924 +#: ../calendar/gui/dialogs/event-page.c:2930 #, c-format msgid "%d hour before appointment" msgid_plural "%d hours before appointment" msgstr[0] "%d tunti ennen tapaamista" msgstr[1] "%d tuntia ennen tapaamista" -#: ../calendar/gui/dialogs/event-page.c:2930 +#: ../calendar/gui/dialogs/event-page.c:2936 #, c-format msgid "%d minute before appointment" msgid_plural "%d minutes before appointment" msgstr[0] "%d minuutti ennen tapaamista" msgstr[1] "%d minuuttia ennen tapaamista" -#: ../calendar/gui/dialogs/event-page.c:2943 +#: ../calendar/gui/dialogs/event-page.c:2949 msgid "Customize" msgstr "Muokkaa" #. an empty string is the same as 'None' -#: ../calendar/gui/dialogs/event-page.c:2948 +#: ../calendar/gui/dialogs/event-page.c:2954 #: ../calendar/gui/dialogs/meeting-page.glade.h:4 #: ../calendar/gui/e-cal-model-tasks.c:673 #: ../calendar/gui/e-itip-control.c:1158 ../filter/filter-rule.c:945 #: ../mail/em-account-editor.c:684 ../mail/em-account-editor.c:1408 #: ../mail/em-account-prefs.c:438 ../mail/em-junk-hook.c:93 -#: ../plugins/calendar-weather/calendar-weather.c:370 -#: ../plugins/calendar-weather/calendar-weather.c:424 +#: ../plugins/calendar-weather/calendar-weather.c:333 +#: ../plugins/calendar-weather/calendar-weather.c:387 #: ../plugins/exchange-operations/exchange-delegates-user.c:195 #: ../plugins/exchange-operations/exchange-delegates.glade.h:9 -#: ../plugins/itip-formatter/itip-formatter.c:2021 -#: ../widgets/misc/e-cell-date-edit.c:306 ../widgets/misc/e-dateedit.c:1513 -#: ../widgets/misc/e-dateedit.c:1727 +#: ../plugins/itip-formatter/itip-formatter.c:2113 +#: ../widgets/misc/e-cell-date-edit.c:306 ../widgets/misc/e-dateedit.c:1511 +#: ../widgets/misc/e-dateedit.c:1725 #: ../widgets/misc/e-signature-combo-box.c:70 msgid "None" msgstr "Määrittelemätön" @@ -6790,16 +6761,16 @@ msgstr "_Yhteystiedot..." msgid "Organizer:" msgstr "Järjestäjä:" -#: ../calendar/gui/dialogs/memo-editor.c:141 ../calendar/gui/print.c:2478 +#: ../calendar/gui/dialogs/memo-editor.c:140 ../calendar/gui/print.c:2478 msgid "Memo" msgstr "Muistilappu" -#: ../calendar/gui/dialogs/memo-page.c:851 +#: ../calendar/gui/dialogs/memo-page.c:857 #, c-format msgid "Unable to open memos in '%s'." msgstr "Muistilappuja kohteesta '%s' ei voi avata." -#: ../calendar/gui/dialogs/memo-page.c:1006 ../mail/em-format-html.c:1562 +#: ../calendar/gui/dialogs/memo-page.c:1012 ../mail/em-format-html.c:1562 #: ../mail/em-format-html.c:1620 ../mail/em-format-html.c:1646 #: ../mail/em-format-quote.c:210 ../mail/em-format.c:886 #: ../mail/em-mailer-prefs.c:77 ../mail/message-list.etspec.h:20 @@ -6816,7 +6787,7 @@ msgid "T_o:" msgstr "Vastaan_ottajat:" #: ../calendar/gui/dialogs/memo-page.glade.h:7 -#: ../calendar/gui/dialogs/task-page.c:364 +#: ../calendar/gui/dialogs/task-page.c:365 #: ../calendar/gui/dialogs/task-page.glade.h:9 msgid "_Group:" msgstr "_Ryhmä:" @@ -7052,16 +7023,16 @@ msgstr "<span weight=\"bold\">Tila</span>" #: ../calendar/gui/e-cal-model-tasks.c:362 #: ../calendar/gui/e-cal-model-tasks.c:679 #: ../calendar/gui/e-calendar-table.c:237 -#: ../calendar/gui/e-calendar-table.c:641 ../calendar/gui/e-itip-control.c:946 +#: ../calendar/gui/e-calendar-table.c:652 ../calendar/gui/e-itip-control.c:946 #: ../calendar/gui/e-meeting-store.c:181 ../calendar/gui/e-meeting-store.c:204 -#: ../calendar/gui/print.c:2554 ../calendar/gui/tasktypes.xml.h:13 +#: ../calendar/gui/print.c:2554 ../calendar/gui/tasktypes.xml.h:9 #: ../plugins/save-calendar/csv-format.c:366 msgid "Completed" msgstr "Valmis" #: ../calendar/gui/dialogs/task-details-page.glade.h:5 #: ../calendar/gui/e-cal-component-preview.c:272 -#: ../calendar/gui/e-calendar-table.c:566 ../calendar/gui/tasktypes.xml.h:21 +#: ../calendar/gui/e-calendar-table.c:577 ../calendar/gui/tasktypes.xml.h:14 #: ../mail/message-list.c:1066 msgid "High" msgstr "Korkea" @@ -7072,21 +7043,21 @@ msgstr "Korkea" #: ../calendar/gui/e-cal-model-tasks.c:677 #: ../calendar/gui/e-cal-model-tasks.c:754 #: ../calendar/gui/e-calendar-table.c:235 -#: ../calendar/gui/e-calendar-table.c:640 ../calendar/gui/print.c:2551 +#: ../calendar/gui/e-calendar-table.c:651 ../calendar/gui/print.c:2551 msgid "In Progress" msgstr "Työn alla" #: ../calendar/gui/dialogs/task-details-page.glade.h:7 #: ../calendar/gui/e-cal-component-preview.c:276 -#: ../calendar/gui/e-calendar-table.c:568 ../calendar/gui/tasktypes.xml.h:29 +#: ../calendar/gui/e-calendar-table.c:579 ../calendar/gui/tasktypes.xml.h:16 #: ../mail/message-list.c:1064 msgid "Low" msgstr "Matala" #: ../calendar/gui/dialogs/task-details-page.glade.h:8 #: ../calendar/gui/e-cal-component-preview.c:274 -#: ../calendar/gui/e-cal-model.c:985 ../calendar/gui/e-calendar-table.c:567 -#: ../calendar/gui/tasktypes.xml.h:32 ../mail/message-list.c:1065 +#: ../calendar/gui/e-cal-model.c:985 ../calendar/gui/e-calendar-table.c:578 +#: ../calendar/gui/tasktypes.xml.h:17 ../mail/message-list.c:1065 msgid "Normal" msgstr "Tavallinen" @@ -7095,8 +7066,8 @@ msgstr "Tavallinen" #: ../calendar/gui/e-cal-model-tasks.c:358 #: ../calendar/gui/e-cal-model-tasks.c:675 #: ../calendar/gui/e-calendar-table.c:233 -#: ../calendar/gui/e-calendar-table.c:639 ../calendar/gui/print.c:2548 -#: ../calendar/gui/tasktypes.xml.h:33 +#: ../calendar/gui/e-calendar-table.c:650 ../calendar/gui/print.c:2548 +#: ../calendar/gui/tasktypes.xml.h:18 msgid "Not Started" msgstr "Ei aloitettu" @@ -7109,7 +7080,7 @@ msgid "Stat_us:" msgstr "_Tila:" #: ../calendar/gui/dialogs/task-details-page.glade.h:12 -#: ../calendar/gui/e-calendar-table.c:569 ../calendar/gui/tasktypes.xml.h:44 +#: ../calendar/gui/e-calendar-table.c:580 ../calendar/gui/tasktypes.xml.h:24 msgid "Undefined" msgstr "Määrittelemätön" @@ -7135,28 +7106,28 @@ msgid "Click to change or view the status details of the task" msgstr "Napsauta jos haluat muuttaa tai näyttää tehtävän tilan yksityiskohtia" #: ../calendar/gui/dialogs/task-editor.c:123 -#: ../composer/e-composer-actions.c:527 +#: ../composer/e-composer-actions.c:525 msgid "_Send Options" msgstr "_Lähetysasetukset" -#: ../calendar/gui/dialogs/task-editor.c:318 +#: ../calendar/gui/dialogs/task-editor.c:317 msgid "_Task" msgstr "_Tehtävä" -#: ../calendar/gui/dialogs/task-editor.c:321 +#: ../calendar/gui/dialogs/task-editor.c:320 msgid "Task Details" msgstr "Tehtävän yksityiskohdat" -#: ../calendar/gui/dialogs/task-page.c:372 +#: ../calendar/gui/dialogs/task-page.c:373 #: ../calendar/gui/dialogs/task-page.glade.h:4 msgid "Organi_zer:" msgstr "_Järjestäjä:" -#: ../calendar/gui/dialogs/task-page.c:785 +#: ../calendar/gui/dialogs/task-page.c:786 msgid "Due date is wrong" msgstr "Eräpäivä on virheellinen" -#: ../calendar/gui/dialogs/task-page.c:1754 +#: ../calendar/gui/dialogs/task-page.c:1760 #, c-format msgid "Unable to open tasks in '%s'." msgstr "Tehtäviä kohteesta '%s' ei voi avata." @@ -7254,7 +7225,7 @@ msgid "%s for an unknown trigger type" msgstr "%s tuntemattomalle liipasintyypille" #: ../calendar/gui/e-cal-component-memo-preview.c:75 -#: ../calendar/gui/e-cal-component-preview.c:73 ../mail/em-folder-view.c:3315 +#: ../calendar/gui/e-cal-component-preview.c:73 ../mail/em-folder-view.c:3308 #, c-format msgid "Click to open %s" msgstr "Napsauta avataksesi %s" @@ -7297,7 +7268,7 @@ msgstr "Eräpäivä:" #. Status #: ../calendar/gui/e-cal-component-preview.c:246 #: ../calendar/gui/e-itip-control.c:1186 -#: ../plugins/exchange-operations/exchange-account-setup.c:269 +#: ../plugins/exchange-operations/exchange-account-setup.c:284 #: ../plugins/itip-formatter/itip-view.c:1029 msgid "Status:" msgstr "Tila:" @@ -7316,12 +7287,12 @@ msgid "Start Date" msgstr "Aloituspäivä" #: ../calendar/gui/e-cal-model-calendar.c:187 -#: ../calendar/gui/e-calendar-table.c:618 +#: ../calendar/gui/e-calendar-table.c:629 msgid "Free" msgstr "Vapaa" #: ../calendar/gui/e-cal-model-calendar.c:190 -#: ../calendar/gui/e-calendar-table.c:619 +#: ../calendar/gui/e-calendar-table.c:630 #: ../calendar/gui/e-meeting-time-sel.c:396 msgid "Busy" msgstr "Varattu" @@ -7359,9 +7330,9 @@ msgstr "Ei" #: ../calendar/gui/e-meeting-list-view.c:181 #: ../calendar/gui/e-meeting-store.c:111 ../calendar/gui/e-meeting-store.c:146 #: ../calendar/gui/e-meeting-store.c:209 ../calendar/gui/print.c:987 -#: ../calendar/gui/print.c:1004 ../mail/em-utils.c:1340 -#: ../plugins/itip-formatter/itip-formatter.c:409 -#: ../plugins/itip-formatter/itip-formatter.c:2046 +#: ../calendar/gui/print.c:1004 ../mail/em-utils.c:1341 +#: ../plugins/itip-formatter/itip-formatter.c:447 +#: ../plugins/itip-formatter/itip-formatter.c:2138 #: ../plugins/plugin-manager/plugin-manager.c:89 #: ../widgets/misc/e-attachment-bar.c:821 #: ../widgets/misc/e-charset-picker.c:56 @@ -7389,8 +7360,8 @@ msgstr "Valitse kansio, johon valitut liitteet tallennetaan..." msgid "untitled_image.%s" msgstr "nimetön_kuva.%s" -#: ../calendar/gui/e-cal-popup.c:286 ../calendar/gui/e-calendar-table.c:1575 -#: ../calendar/gui/e-calendar-view.c:1671 ../calendar/gui/e-memo-table.c:925 +#: ../calendar/gui/e-cal-popup.c:286 ../calendar/gui/e-calendar-table.c:1589 +#: ../calendar/gui/e-calendar-view.c:1747 ../calendar/gui/e-memo-table.c:925 #: ../mail/em-folder-view.c:1336 ../mail/em-popup.c:561 ../mail/em-popup.c:572 msgid "_Save As..." msgstr "Tallenna _nimellä..." @@ -7415,7 +7386,7 @@ msgstr "* Ei yhteenvetoa *" #. To Translators: It will display "Organiser: NameOfTheUser <email@ofuser.com>" #: ../calendar/gui/e-calendar-table.c:373 -#: ../calendar/gui/e-calendar-view.c:2214 +#: ../calendar/gui/e-calendar-view.c:2368 #, c-format msgid "Organizer: %s <%s>" msgstr "Järjestäjä: %s <%s>" @@ -7423,7 +7394,7 @@ msgstr "Järjestäjä: %s <%s>" #. With SunOne accounts, there may be no ':' in organiser.value #. With SunOne accouts, there may be no ':' in organiser.value #: ../calendar/gui/e-calendar-table.c:376 -#: ../calendar/gui/e-calendar-view.c:2218 +#: ../calendar/gui/e-calendar-view.c:2372 #, c-format msgid "Organizer: %s" msgstr "Järjestäjä: %s" @@ -7436,125 +7407,125 @@ msgstr "Alkaa:" msgid "Due: " msgstr "Erääntyy:" -#: ../calendar/gui/e-calendar-table.c:588 +#: ../calendar/gui/e-calendar-table.c:599 msgid "0%" msgstr "0%" -#: ../calendar/gui/e-calendar-table.c:589 +#: ../calendar/gui/e-calendar-table.c:600 msgid "10%" msgstr "10%" -#: ../calendar/gui/e-calendar-table.c:590 +#: ../calendar/gui/e-calendar-table.c:601 msgid "20%" msgstr "20%" -#: ../calendar/gui/e-calendar-table.c:591 +#: ../calendar/gui/e-calendar-table.c:602 msgid "30%" msgstr "30%" -#: ../calendar/gui/e-calendar-table.c:592 +#: ../calendar/gui/e-calendar-table.c:603 msgid "40%" msgstr "40%" -#: ../calendar/gui/e-calendar-table.c:593 +#: ../calendar/gui/e-calendar-table.c:604 msgid "50%" msgstr "50%" -#: ../calendar/gui/e-calendar-table.c:594 +#: ../calendar/gui/e-calendar-table.c:605 msgid "60%" msgstr "60%" -#: ../calendar/gui/e-calendar-table.c:595 +#: ../calendar/gui/e-calendar-table.c:606 msgid "70%" msgstr "70%" -#: ../calendar/gui/e-calendar-table.c:596 +#: ../calendar/gui/e-calendar-table.c:607 msgid "80%" msgstr "80%" -#: ../calendar/gui/e-calendar-table.c:597 +#: ../calendar/gui/e-calendar-table.c:608 msgid "90%" msgstr "90%" -#: ../calendar/gui/e-calendar-table.c:598 +#: ../calendar/gui/e-calendar-table.c:609 msgid "100%" msgstr "100%" -#: ../calendar/gui/e-calendar-table.c:878 -#: ../calendar/gui/e-calendar-view.c:664 ../calendar/gui/e-memo-table.c:438 +#: ../calendar/gui/e-calendar-table.c:889 +#: ../calendar/gui/e-calendar-view.c:670 ../calendar/gui/e-memo-table.c:438 msgid "Deleting selected objects" msgstr "Poistetaan valitut kohteet" -#: ../calendar/gui/e-calendar-table.c:1162 -#: ../calendar/gui/e-calendar-view.c:794 ../calendar/gui/e-memo-table.c:644 +#: ../calendar/gui/e-calendar-table.c:1173 +#: ../calendar/gui/e-calendar-view.c:835 ../calendar/gui/e-memo-table.c:644 msgid "Updating objects" msgstr "Päivitetään olioita" -#: ../calendar/gui/e-calendar-table.c:1347 -#: ../calendar/gui/e-calendar-view.c:1220 ../calendar/gui/e-memo-table.c:820 -#: ../composer/e-composer-actions.c:277 +#: ../calendar/gui/e-calendar-table.c:1361 +#: ../calendar/gui/e-calendar-view.c:1296 ../calendar/gui/e-memo-table.c:820 +#: ../composer/e-composer-actions.c:275 msgid "Save as..." msgstr "Tallenna nimellä..." -#: ../calendar/gui/e-calendar-table.c:1570 -#: ../calendar/gui/e-calendar-view.c:1653 +#: ../calendar/gui/e-calendar-table.c:1584 +#: ../calendar/gui/e-calendar-view.c:1729 msgid "New _Task" msgstr "Uusi _tehtävä" -#: ../calendar/gui/e-calendar-table.c:1574 ../calendar/gui/e-memo-table.c:924 +#: ../calendar/gui/e-calendar-table.c:1588 ../calendar/gui/e-memo-table.c:924 msgid "Open _Web Page" msgstr "_Avaa www-sivu" -#: ../calendar/gui/e-calendar-table.c:1576 -#: ../calendar/gui/e-calendar-view.c:1656 ../calendar/gui/e-memo-table.c:926 +#: ../calendar/gui/e-calendar-table.c:1590 +#: ../calendar/gui/e-calendar-view.c:1732 ../calendar/gui/e-memo-table.c:926 msgid "P_rint..." msgstr "T_ulosta..." -#: ../calendar/gui/e-calendar-table.c:1580 -#: ../calendar/gui/e-calendar-view.c:1676 ../calendar/gui/e-memo-table.c:930 +#: ../calendar/gui/e-calendar-table.c:1594 +#: ../calendar/gui/e-calendar-view.c:1752 ../calendar/gui/e-memo-table.c:930 #: ../ui/evolution-addressbook.xml.h:2 ../ui/evolution-calendar.xml.h:1 #: ../ui/evolution-memos.xml.h:1 ../ui/evolution-tasks.xml.h:1 msgid "C_ut" msgstr "L_eikkaa" -#: ../calendar/gui/e-calendar-table.c:1582 -#: ../calendar/gui/e-calendar-view.c:1659 -#: ../calendar/gui/e-calendar-view.c:1678 ../calendar/gui/e-memo-table.c:932 -#: ../ui/evolution-addressbook.xml.h:57 ../ui/evolution-calendar.xml.h:43 +#: ../calendar/gui/e-calendar-table.c:1596 +#: ../calendar/gui/e-calendar-view.c:1735 +#: ../calendar/gui/e-calendar-view.c:1754 ../calendar/gui/e-memo-table.c:932 +#: ../ui/evolution-addressbook.xml.h:57 ../ui/evolution-calendar.xml.h:46 #: ../ui/evolution-memos.xml.h:19 ../ui/evolution-tasks.xml.h:28 msgid "_Paste" msgstr "L_iitä" -#: ../calendar/gui/e-calendar-table.c:1586 ../ui/evolution-tasks.xml.h:22 +#: ../calendar/gui/e-calendar-table.c:1600 ../ui/evolution-tasks.xml.h:22 msgid "_Assign Task" msgstr "_Anna tehtäväksi" -#: ../calendar/gui/e-calendar-table.c:1587 ../calendar/gui/e-memo-table.c:936 +#: ../calendar/gui/e-calendar-table.c:1601 ../calendar/gui/e-memo-table.c:936 #: ../ui/evolution-tasks.xml.h:26 msgid "_Forward as iCalendar" msgstr "_Välitä iCalendar-muodossa" -#: ../calendar/gui/e-calendar-table.c:1588 +#: ../calendar/gui/e-calendar-table.c:1602 msgid "_Mark as Complete" msgstr "_Merkitse valmiiksi" -#: ../calendar/gui/e-calendar-table.c:1589 +#: ../calendar/gui/e-calendar-table.c:1603 msgid "_Mark Selected Tasks as Complete" msgstr "_Merkitse valitut tehtävät valmiiksi" -#: ../calendar/gui/e-calendar-table.c:1590 +#: ../calendar/gui/e-calendar-table.c:1604 msgid "_Mark as Incomplete" msgstr "_Merkitse keskeneräiseksi" -#: ../calendar/gui/e-calendar-table.c:1591 +#: ../calendar/gui/e-calendar-table.c:1605 msgid "_Mark Selected Tasks as Incomplete" msgstr "_Merkitse valitut tehtävät keskeneräisiksi" -#: ../calendar/gui/e-calendar-table.c:1596 +#: ../calendar/gui/e-calendar-table.c:1610 msgid "_Delete Selected Tasks" msgstr "_Poista valitut tehtävät" -#: ../calendar/gui/e-calendar-table.c:1833 +#: ../calendar/gui/e-calendar-table.c:1847 #: ../calendar/gui/e-calendar-table.etspec.h:4 msgid "Click to add a task" msgstr "Lisää tehtävä tästä" @@ -7577,7 +7548,7 @@ msgid "Due date" msgstr "Eräpäivä" #: ../calendar/gui/e-calendar-table.etspec.h:8 -#: ../calendar/gui/tasktypes.xml.h:37 +#: ../calendar/gui/tasktypes.xml.h:20 #: ../plugins/save-calendar/csv-format.c:373 msgid "Priority" msgstr "Prioriteetti" @@ -7586,93 +7557,141 @@ msgstr "Prioriteetti" msgid "Start date" msgstr "Aloituspäivä" -#: ../calendar/gui/e-calendar-view.c:1339 +#. To Translators: 'Status' here means the state of the attendees, the resulting string will be in a form: +#. Status: Accepted: X Declined: Y ... +#: ../calendar/gui/e-calendar-table.etspec.h:10 +#: ../calendar/gui/e-calendar-view.c:2276 +#: ../calendar/gui/e-meeting-list-view.c:545 +#: ../calendar/gui/e-meeting-time-sel.etspec.h:10 +#: ../calendar/gui/tasktypes.xml.h:21 ../mail/em-filter-i18n.h:86 +#: ../mail/message-list.etspec.h:17 +msgid "Status" +msgstr "Tila" + +#: ../calendar/gui/e-calendar-view.c:1415 msgid "Moving items" msgstr "Siirretään kohteita" -#: ../calendar/gui/e-calendar-view.c:1341 +#: ../calendar/gui/e-calendar-view.c:1417 msgid "Copying items" msgstr "Kopioidaan kohteita" -#: ../calendar/gui/e-calendar-view.c:1650 +#: ../calendar/gui/e-calendar-view.c:1726 msgid "New _Appointment..." msgstr "Uusi t_apaaminen..." -#: ../calendar/gui/e-calendar-view.c:1651 +#: ../calendar/gui/e-calendar-view.c:1727 msgid "New All Day _Event" msgstr "Uusi koko pä_ivän tapahtuma" -#: ../calendar/gui/e-calendar-view.c:1652 +#: ../calendar/gui/e-calendar-view.c:1728 msgid "New _Meeting" msgstr "Uusi _kokous" #. FIXME: hook in this somehow -#: ../calendar/gui/e-calendar-view.c:1663 +#: ../calendar/gui/e-calendar-view.c:1739 msgid "_Current View" msgstr "_Nykyinen näkymä" -#: ../calendar/gui/e-calendar-view.c:1665 +#: ../calendar/gui/e-calendar-view.c:1741 msgid "Select T_oday" msgstr "Valitse _tämä päivä" -#: ../calendar/gui/e-calendar-view.c:1666 +#: ../calendar/gui/e-calendar-view.c:1742 msgid "_Select Date..." msgstr "_Valitse päiväys..." -#: ../calendar/gui/e-calendar-view.c:1672 +#: ../calendar/gui/e-calendar-view.c:1748 msgid "Pri_nt..." msgstr "T_ulosta..." -#: ../calendar/gui/e-calendar-view.c:1682 +#: ../calendar/gui/e-calendar-view.c:1758 msgid "Cop_y to Calendar..." msgstr "_Kopioi kalenteriin..." -#: ../calendar/gui/e-calendar-view.c:1683 +#: ../calendar/gui/e-calendar-view.c:1759 msgid "Mo_ve to Calendar..." msgstr "_Siirrä kalenteriin..." -#: ../calendar/gui/e-calendar-view.c:1684 +#: ../calendar/gui/e-calendar-view.c:1760 msgid "_Delegate Meeting..." msgstr "_Delegoi kokous..." -#: ../calendar/gui/e-calendar-view.c:1685 +#: ../calendar/gui/e-calendar-view.c:1761 msgid "_Schedule Meeting..." msgstr "_Järjestä kokous..." -#: ../calendar/gui/e-calendar-view.c:1686 +#: ../calendar/gui/e-calendar-view.c:1762 msgid "_Forward as iCalendar..." msgstr "_Välitä iCalendar-muodossa..." -#: ../calendar/gui/e-calendar-view.c:1687 +#: ../calendar/gui/e-calendar-view.c:1763 msgid "_Reply" msgstr "_Vastaa" -#: ../calendar/gui/e-calendar-view.c:1688 ../mail/em-folder-view.c:1330 +#: ../calendar/gui/e-calendar-view.c:1764 ../mail/em-folder-view.c:1330 #: ../mail/em-popup.c:566 ../mail/em-popup.c:577 #: ../ui/evolution-mail-message.xml.h:82 msgid "Reply to _All" msgstr "Vastaa k_aikille" -#: ../calendar/gui/e-calendar-view.c:1693 +#: ../calendar/gui/e-calendar-view.c:1769 msgid "Make this Occurrence _Movable" msgstr "Muuta tämä kerta _siirrettäväksi" -#: ../calendar/gui/e-calendar-view.c:1694 ../ui/evolution-calendar.xml.h:9 +#: ../calendar/gui/e-calendar-view.c:1770 ../ui/evolution-calendar.xml.h:9 msgid "Delete this _Occurrence" msgstr "Poista tämä _tapahtumakerta" -#: ../calendar/gui/e-calendar-view.c:1695 +#: ../calendar/gui/e-calendar-view.c:1771 msgid "Delete _All Occurrences" msgstr "Poista _kaikki tapahtumakerrat" +#: ../calendar/gui/e-calendar-view.c:2223 +#: ../calendar/gui/e-itip-control.c:1191 +#: ../calendar/gui/e-meeting-list-view.c:203 +#: ../calendar/gui/e-meeting-store.c:173 ../calendar/gui/e-meeting-store.c:196 +#: ../calendar/gui/itip-utils.c:664 +#: ../plugins/itip-formatter/itip-formatter.c:2126 +msgid "Accepted" +msgstr "Hyväksytty" + +#: ../calendar/gui/e-calendar-view.c:2224 +#: ../calendar/gui/e-itip-control.c:1199 +#: ../calendar/gui/e-meeting-list-view.c:204 +#: ../calendar/gui/e-meeting-store.c:175 ../calendar/gui/e-meeting-store.c:198 +#: ../calendar/gui/itip-utils.c:670 ../calendar/gui/itip-utils.c:699 +#: ../plugins/itip-formatter/itip-formatter.c:2132 +msgid "Declined" +msgstr "Hylätty" + +#: ../calendar/gui/e-calendar-view.c:2225 +#: ../calendar/gui/e-meeting-list-view.c:205 +#: ../calendar/gui/e-meeting-store.c:177 ../calendar/gui/e-meeting-store.c:200 +#: ../calendar/gui/e-meeting-time-sel.c:395 +msgid "Tentative" +msgstr "Alustava" + +#: ../calendar/gui/e-calendar-view.c:2226 +#: ../calendar/gui/e-meeting-list-view.c:206 +#: ../calendar/gui/e-meeting-store.c:179 ../calendar/gui/e-meeting-store.c:202 +#: ../calendar/gui/itip-utils.c:673 +#: ../plugins/itip-formatter/itip-formatter.c:2135 +msgid "Delegated" +msgstr "Valtuutettu" + +#: ../calendar/gui/e-calendar-view.c:2227 +msgid "Needs action" +msgstr "Vaatii toimenpiteitä" + #. To Translators: It will display "Location: PlaceOfTheMeeting" -#: ../calendar/gui/e-calendar-view.c:2234 ../calendar/gui/print.c:2510 +#: ../calendar/gui/e-calendar-view.c:2388 ../calendar/gui/print.c:2510 #, c-format msgid "Location: %s" msgstr "Sijainti: %s" #. To Translators: It will display "Time: ActualStartDateAndTime (DurationOfTheMeeting)" -#: ../calendar/gui/e-calendar-view.c:2268 +#: ../calendar/gui/e-calendar-view.c:2422 #, c-format msgid "Time: %s %s" msgstr "Aika: %s %s" @@ -7711,19 +7730,19 @@ msgstr "%02i minuutin välein" #. month, %B = full month name. You can change the #. order but don't change the specifiers or add #. anything. -#: ../calendar/gui/e-day-view-top-item.c:851 ../calendar/gui/e-day-view.c:1560 +#: ../calendar/gui/e-day-view-top-item.c:851 ../calendar/gui/e-day-view.c:1562 #: ../calendar/gui/e-week-view-main-item.c:326 ../calendar/gui/print.c:1674 msgid "%A %d %B" msgstr "%A %d %B" #. String to use in 12-hour time format for times in the morning. -#: ../calendar/gui/e-day-view.c:800 ../calendar/gui/e-week-view.c:540 +#: ../calendar/gui/e-day-view.c:802 ../calendar/gui/e-week-view.c:542 #: ../calendar/gui/print.c:831 msgid "am" msgstr "am" #. String to use in 12-hour time format for times in the afternoon. -#: ../calendar/gui/e-day-view.c:803 ../calendar/gui/e-week-view.c:543 +#: ../calendar/gui/e-day-view.c:805 ../calendar/gui/e-week-view.c:545 #: ../calendar/gui/print.c:833 msgid "pm" msgstr "pm" @@ -7785,9 +7804,9 @@ msgstr[1] "Joka %d:s vuosi" #: ../calendar/gui/e-itip-control.c:874 #, c-format msgid "a total of %d time" -msgid_plural " a total of %d times" -msgstr[0] " %d kerran" -msgstr[1] " %d kertaa" +msgid_plural "a total of %d times" +msgstr[0] " kaikkiaan %d kerran" +msgstr[1] " kaikkiaan %d kertaa" #. For Translators : ', ending on' is part of the sentence of the form 'event recurring every day, ending on (date).' #: ../calendar/gui/e-itip-control.c:885 @@ -7837,27 +7856,11 @@ msgid "" msgstr "" "<br> Tarkista seuraavat tiedot ja valitse toimenpide allaolevasta valikosta" -#: ../calendar/gui/e-itip-control.c:1191 -#: ../calendar/gui/e-meeting-list-view.c:203 -#: ../calendar/gui/e-meeting-store.c:173 ../calendar/gui/e-meeting-store.c:196 -#: ../calendar/gui/itip-utils.c:664 -#: ../plugins/itip-formatter/itip-formatter.c:2034 -msgid "Accepted" -msgstr "Hyväksytty" - #: ../calendar/gui/e-itip-control.c:1195 ../calendar/gui/itip-utils.c:667 -#: ../plugins/itip-formatter/itip-formatter.c:2037 +#: ../plugins/itip-formatter/itip-formatter.c:2129 msgid "Tentatively Accepted" msgstr "Alustavasti hyväksytty" -#: ../calendar/gui/e-itip-control.c:1199 -#: ../calendar/gui/e-meeting-list-view.c:204 -#: ../calendar/gui/e-meeting-store.c:175 ../calendar/gui/e-meeting-store.c:198 -#: ../calendar/gui/itip-utils.c:670 ../calendar/gui/itip-utils.c:699 -#: ../plugins/itip-formatter/itip-formatter.c:2040 -msgid "Declined" -msgstr "Hylätty" - #: ../calendar/gui/e-itip-control.c:1283 msgid "" "The meeting has been canceled, however it could not be found in your " @@ -8071,7 +8074,7 @@ msgid "Attendee status updated\n" msgstr "Läsnäolon tila päivitetty\n" #: ../calendar/gui/e-itip-control.c:2080 -#: ../plugins/itip-formatter/itip-formatter.c:1253 +#: ../plugins/itip-formatter/itip-formatter.c:1326 msgid "Attendee status can not be updated because the item no longer exists" msgstr "Läsnäolon tilaa ei voi päivittää, koska kohdetta ei enää ole olemassa" @@ -8220,19 +8223,6 @@ msgstr "Ei läsnä" msgid "Needs Action" msgstr "Vaatii toimenpiteitä" -#: ../calendar/gui/e-meeting-list-view.c:205 -#: ../calendar/gui/e-meeting-store.c:177 ../calendar/gui/e-meeting-store.c:200 -#: ../calendar/gui/e-meeting-time-sel.c:395 -msgid "Tentative" -msgstr "Alustava" - -#: ../calendar/gui/e-meeting-list-view.c:206 -#: ../calendar/gui/e-meeting-store.c:179 ../calendar/gui/e-meeting-store.c:202 -#: ../calendar/gui/itip-utils.c:673 -#: ../plugins/itip-formatter/itip-formatter.c:2043 -msgid "Delegated" -msgstr "Valtuutettu" - #. The extra space is just a hack to occupy more space for Attendee #: ../calendar/gui/e-meeting-list-view.c:491 msgid "Attendee " @@ -8367,7 +8357,6 @@ msgid "Click to add a memo" msgstr "Lisää muistilappu tästä" #: ../calendar/gui/e-memos.c:760 ../calendar/gui/e-tasks.c:910 -#: ../calendar/gui/gnome-cal.c:2961 #, c-format msgid "" "Error on %s:\n" @@ -8417,39 +8406,39 @@ msgstr "Valitse aikavyöhyke" msgid "%d %B" msgstr "%d %B" -#: ../calendar/gui/gnome-cal.c:2576 +#: ../calendar/gui/gnome-cal.c:2624 msgid "_Custom View" msgstr "_Oma näkymä" -#: ../calendar/gui/gnome-cal.c:2577 +#: ../calendar/gui/gnome-cal.c:2625 msgid "_Save Custom View" msgstr "_Tallenna oma näkymä" -#: ../calendar/gui/gnome-cal.c:2582 +#: ../calendar/gui/gnome-cal.c:2630 msgid "_Define Views..." msgstr "_Määrittele näkymät..." -#: ../calendar/gui/gnome-cal.c:2791 +#: ../calendar/gui/gnome-cal.c:2872 #, c-format msgid "Loading appointments at %s" msgstr "Ladataan tapaamisia %s" -#: ../calendar/gui/gnome-cal.c:2806 +#: ../calendar/gui/gnome-cal.c:2887 #, c-format msgid "Loading tasks at %s" msgstr "Ladataan tehtäviä %s" -#: ../calendar/gui/gnome-cal.c:2815 +#: ../calendar/gui/gnome-cal.c:2896 #, c-format msgid "Loading memos at %s" msgstr "Ladataan muistilappuja lähteestä %s" -#: ../calendar/gui/gnome-cal.c:2920 +#: ../calendar/gui/gnome-cal.c:3001 #, c-format msgid "Opening %s" msgstr "Avataan %s" -#: ../calendar/gui/gnome-cal.c:3874 +#: ../calendar/gui/gnome-cal.c:3969 msgid "Purging" msgstr "Tyhjennetään" @@ -8563,79 +8552,79 @@ msgstr "iCalendarin tiedot" msgid "You must be an attendee of the event." msgstr "Sinun täytyy osallistua tapahtumaan." -#: ../calendar/gui/memos-component.c:464 +#: ../calendar/gui/memos-component.c:499 msgid "_New Memo List" msgstr "_Uusi muistilappulista" -#: ../calendar/gui/memos-component.c:544 +#: ../calendar/gui/memos-component.c:582 #, c-format msgid "%d memo" msgid_plural "%d memos" msgstr[0] "%d muistilappu" msgstr[1] "%d muistilappua" -#: ../calendar/gui/memos-component.c:546 ../calendar/gui/tasks-component.c:537 +#: ../calendar/gui/memos-component.c:584 ../calendar/gui/tasks-component.c:575 #, c-format msgid ", %d selected" msgid_plural ", %d selected" msgstr[0] ", %d valittu" msgstr[1] ", %d valittua" -#: ../calendar/gui/memos-component.c:593 +#: ../calendar/gui/memos-component.c:631 msgid "Failed upgrading memos." msgstr "Muistilappujen päivitys epäonnistui." -#: ../calendar/gui/memos-component.c:953 +#: ../calendar/gui/memos-component.c:873 #, c-format msgid "Unable to open the memo list '%s' for creating events and meetings" msgstr "" "Muistilappulistaa '%s' ei voi avata uusien tapahtumien ja kokousten " "lisäämistä varten" -#: ../calendar/gui/memos-component.c:966 +#: ../calendar/gui/memos-component.c:886 msgid "There is no calendar available for creating memos" msgstr "Muistilappujen luomiseen tarvittavaa kalenteria ei ole saatavilla" -#: ../calendar/gui/memos-component.c:1076 +#: ../calendar/gui/memos-component.c:996 msgid "Memo Source Selector" msgstr "Muistilappujen lähteen valinta" -#: ../calendar/gui/memos-component.c:1260 +#: ../calendar/gui/memos-component.c:1175 msgid "New memo" msgstr "Uusi muistilappu" -#: ../calendar/gui/memos-component.c:1261 +#: ../calendar/gui/memos-component.c:1176 msgctxt "New" msgid "Mem_o" msgstr "_Muistilappu" -#: ../calendar/gui/memos-component.c:1262 +#: ../calendar/gui/memos-component.c:1177 msgid "Create a new memo" msgstr "Luo uusi muistilappu" -#: ../calendar/gui/memos-component.c:1268 +#: ../calendar/gui/memos-component.c:1183 msgid "New shared memo" msgstr "Uusi jaettu muistilappu" -#: ../calendar/gui/memos-component.c:1269 +#: ../calendar/gui/memos-component.c:1184 msgctxt "New" msgid "_Shared memo" msgstr "_Jaettu muistilappu" -#: ../calendar/gui/memos-component.c:1270 +#: ../calendar/gui/memos-component.c:1185 msgid "Create a shared new memo" msgstr "Luo uusi jaettu muistilappu" -#: ../calendar/gui/memos-component.c:1276 +#: ../calendar/gui/memos-component.c:1191 msgid "New memo list" msgstr "Uusi muistilappulista" -#: ../calendar/gui/memos-component.c:1277 +#: ../calendar/gui/memos-component.c:1192 msgctxt "New" msgid "Memo li_st" msgstr "Muistilappu_lista" -#: ../calendar/gui/memos-component.c:1278 +#: ../calendar/gui/memos-component.c:1193 msgid "Create a new memo list" msgstr "Luo uusi muistilappulista" @@ -8643,10 +8632,6 @@ msgstr "Luo uusi muistilappulista" msgid "Print Memos" msgstr "Tulosta muistilaput" -#: ../calendar/gui/memotypes.xml.h:25 -msgid "Next 7 Days" -msgstr "Seuraavat 7 päivää" - #: ../calendar/gui/migration.c:157 msgid "" "The location and hierarchy of the Evolution task folders has changed since " @@ -8896,72 +8881,72 @@ msgstr "Ryhmät: %s" msgid "Contacts: " msgstr "Yhteystiedot: " -#: ../calendar/gui/tasks-component.c:455 +#: ../calendar/gui/tasks-component.c:490 msgid "_New Task List" msgstr "_Uusi tehtävälista" -#: ../calendar/gui/tasks-component.c:535 +#: ../calendar/gui/tasks-component.c:573 #, c-format msgid "%d task" msgid_plural "%d tasks" msgstr[0] "%d tehtävä" msgstr[1] "%d tehtävää" -#: ../calendar/gui/tasks-component.c:584 +#: ../calendar/gui/tasks-component.c:622 msgid "Failed upgrading tasks." msgstr "Tehtävälistan päivitys epäonnistui." -#: ../calendar/gui/tasks-component.c:941 +#: ../calendar/gui/tasks-component.c:861 #, c-format msgid "Unable to open the task list '%s' for creating events and meetings" msgstr "" "Tehtävälistaa '%s' ei voi avata uusien tehtävien ja tapaamisten tekemistä " "varten" -#: ../calendar/gui/tasks-component.c:954 +#: ../calendar/gui/tasks-component.c:874 msgid "There is no calendar available for creating tasks" msgstr "Tehtävien luomiseen tarvittavaa kalenteria ei ole saatavilla" -#: ../calendar/gui/tasks-component.c:1065 +#: ../calendar/gui/tasks-component.c:985 msgid "Task Source Selector" msgstr "Tehtävien lähteen valinta" -#: ../calendar/gui/tasks-component.c:1325 +#: ../calendar/gui/tasks-component.c:1240 msgid "New task" msgstr "Uusi tehtävä" -#: ../calendar/gui/tasks-component.c:1326 +#: ../calendar/gui/tasks-component.c:1241 msgctxt "New" msgid "_Task" msgstr "_Tehtävä" -#: ../calendar/gui/tasks-component.c:1327 +#: ../calendar/gui/tasks-component.c:1242 msgid "Create a new task" msgstr "Luo uusi tehtävä" -#: ../calendar/gui/tasks-component.c:1333 +#: ../calendar/gui/tasks-component.c:1248 msgid "New assigned task" msgstr "Uusi tehtäväksianto" -#: ../calendar/gui/tasks-component.c:1334 +#: ../calendar/gui/tasks-component.c:1249 msgctxt "New" msgid "Assigne_d Task" msgstr "Tehtäväksi_anto" -#: ../calendar/gui/tasks-component.c:1335 +#: ../calendar/gui/tasks-component.c:1250 msgid "Create a new assigned task" msgstr "Luo uusi tehtäväksianto" -#: ../calendar/gui/tasks-component.c:1341 +#: ../calendar/gui/tasks-component.c:1256 msgid "New task list" msgstr "Uusi tehtävälista" -#: ../calendar/gui/tasks-component.c:1342 +#: ../calendar/gui/tasks-component.c:1257 msgctxt "New" msgid "Tas_k list" msgstr "_Tehtävälista" -#: ../calendar/gui/tasks-component.c:1343 +#: ../calendar/gui/tasks-component.c:1258 msgid "Create a new task list" msgstr "Luo uusi tehtävälista" @@ -8990,19 +8975,19 @@ msgstr "Tulosta tehtävät" msgid "% Completed" msgstr "% valmiina" -#: ../calendar/gui/tasktypes.xml.h:10 +#: ../calendar/gui/tasktypes.xml.h:7 msgid "Cancelled" msgstr "Peruttu" -#: ../calendar/gui/tasktypes.xml.h:26 +#: ../calendar/gui/tasktypes.xml.h:15 msgid "In progress" msgstr "Kesken" -#: ../calendar/gui/tasktypes.xml.h:50 ../mail/em-filter-i18n.h:50 +#: ../calendar/gui/tasktypes.xml.h:28 ../mail/em-filter-i18n.h:50 msgid "is greater than" msgstr "on suurempi kuin" -#: ../calendar/gui/tasktypes.xml.h:51 ../mail/em-filter-i18n.h:51 +#: ../calendar/gui/tasktypes.xml.h:29 ../mail/em-filter-i18n.h:51 msgid "is less than" msgstr "on vähemmän kuin" @@ -9011,8 +8996,8 @@ msgid "Appointments and Meetings" msgstr "Tapaamiset ja kokoukset" #: ../calendar/importers/icalendar-importer.c:333 -#: ../calendar/importers/icalendar-importer.c:616 -#: ../plugins/itip-formatter/itip-formatter.c:1577 +#: ../calendar/importers/icalendar-importer.c:628 +#: ../plugins/itip-formatter/itip-formatter.c:1660 msgid "Opening calendar" msgstr "Avataan kalenteria" @@ -9024,23 +9009,23 @@ msgstr "iCalendar tiedostot (.ics)" msgid "Evolution iCalendar importer" msgstr "Evolutionin iCalendar-tuoja" -#: ../calendar/importers/icalendar-importer.c:517 +#: ../calendar/importers/icalendar-importer.c:529 msgid "Reminder!" msgstr "Muistutus!" -#: ../calendar/importers/icalendar-importer.c:569 +#: ../calendar/importers/icalendar-importer.c:581 msgid "vCalendar files (.vcf)" msgstr "vCalendar tiedostot (.vcf)" -#: ../calendar/importers/icalendar-importer.c:570 +#: ../calendar/importers/icalendar-importer.c:582 msgid "Evolution vCalendar importer" msgstr "Evolutionin vCalendar-tuoja" -#: ../calendar/importers/icalendar-importer.c:732 +#: ../calendar/importers/icalendar-importer.c:744 msgid "Calendar Events" msgstr "Kalenteritapahtumat" -#: ../calendar/importers/icalendar-importer.c:769 +#: ../calendar/importers/icalendar-importer.c:781 msgid "Evolution Calendar intelligent importer" msgstr "Evolution kalenterin älykäs tuoja" @@ -10593,213 +10578,213 @@ msgstr "Tyyni_Valtameri/Wallis" msgid "Pacific/Yap" msgstr "Tyyni_Valtameri/Yap" -#: ../composer/e-composer-autosave.c:275 +#: ../composer/e-composer-autosave.c:273 msgid "Could not open autosave file" msgstr "Automaattitallennuksen tiedostoa ei voi avata" -#: ../composer/e-composer-autosave.c:282 +#: ../composer/e-composer-autosave.c:280 msgid "Unable to retrieve message from editor" msgstr "Viestiä ei voi hakea muokkaimelta" -#: ../composer/e-composer-actions.c:47 +#: ../composer/e-composer-actions.c:45 msgid "Insert Attachment" msgstr "Lisää liite" -#: ../composer/e-composer-actions.c:51 +#: ../composer/e-composer-actions.c:49 msgid "A_ttach" msgstr "Lii_tä" -#: ../composer/e-composer-actions.c:142 +#: ../composer/e-composer-actions.c:140 msgid "Untitled Message" msgstr "Nimeämätön viesti" -#: ../composer/e-composer-actions.c:473 +#: ../composer/e-composer-actions.c:471 msgid "Attach a file" msgstr "Liitä tiedosto viestiin" -#: ../composer/e-composer-actions.c:478 ../mail/mail-signature-editor.c:194 +#: ../composer/e-composer-actions.c:476 ../mail/mail-signature-editor.c:194 #: ../ui/evolution-mail-messagedisplay.xml.h:4 msgid "_Close" msgstr "_Sulje" -#: ../composer/e-composer-actions.c:480 +#: ../composer/e-composer-actions.c:478 msgid "Close the current file" msgstr "Sulje nykyinen tiedosto" -#: ../composer/e-composer-actions.c:485 ../mail/em-folder-view.c:1337 -#: ../ui/evolution-addressbook.xml.h:58 ../ui/evolution-calendar.xml.h:44 +#: ../composer/e-composer-actions.c:483 ../mail/em-folder-view.c:1337 +#: ../ui/evolution-addressbook.xml.h:58 ../ui/evolution-calendar.xml.h:47 #: ../ui/evolution-mail-message.xml.h:123 ../ui/evolution-memos.xml.h:20 #: ../ui/evolution-tasks.xml.h:29 msgid "_Print..." msgstr "T_ulosta..." -#: ../composer/e-composer-actions.c:492 ../ui/evolution-addressbook.xml.h:27 +#: ../composer/e-composer-actions.c:490 ../ui/evolution-addressbook.xml.h:27 #: ../ui/evolution-calendar.xml.h:21 ../ui/evolution-mail-message.xml.h:76 #: ../ui/evolution-memos.xml.h:12 ../ui/evolution-tasks.xml.h:15 msgid "Print Pre_view" msgstr "Tulostuksen esikatselu" -#: ../composer/e-composer-actions.c:501 +#: ../composer/e-composer-actions.c:499 msgid "Save the current file" msgstr "Tallenna nykyinen tiedosto" -#: ../composer/e-composer-actions.c:506 +#: ../composer/e-composer-actions.c:504 msgid "Save _As..." msgstr "Tallenna _nimellä..." -#: ../composer/e-composer-actions.c:508 +#: ../composer/e-composer-actions.c:506 msgid "Save the current file with a different name" msgstr "Tallenna tiedosto uudella nimellä" -#: ../composer/e-composer-actions.c:513 +#: ../composer/e-composer-actions.c:511 msgid "Save _Draft" msgstr "Tallenna _luonnos" -#: ../composer/e-composer-actions.c:515 +#: ../composer/e-composer-actions.c:513 msgid "Save as draft" msgstr "Tallenna luonnoksena" -#: ../composer/e-composer-actions.c:520 +#: ../composer/e-composer-actions.c:518 msgid "S_end" msgstr "_Lähetä" -#: ../composer/e-composer-actions.c:522 +#: ../composer/e-composer-actions.c:520 msgid "Send this message" msgstr "Lähetä viesti heti" -#: ../composer/e-composer-actions.c:529 +#: ../composer/e-composer-actions.c:527 msgid "Insert Send options" msgstr "Lisää lähetysvaihtoehtoja" -#: ../composer/e-composer-actions.c:534 +#: ../composer/e-composer-actions.c:532 msgid "New _Message" msgstr "Uusi _viesti" -#: ../composer/e-composer-actions.c:536 +#: ../composer/e-composer-actions.c:534 msgid "Open New Message window" msgstr "Avaa uuden viestin luonti-ikkuna" -#: ../composer/e-composer-actions.c:543 +#: ../composer/e-composer-actions.c:541 msgid "Character _Encoding" msgstr "M_erkistön koodaus" -#: ../composer/e-composer-actions.c:550 +#: ../composer/e-composer-actions.c:548 msgid "_Security" msgstr "Turvalli_suus" -#: ../composer/e-composer-actions.c:560 +#: ../composer/e-composer-actions.c:558 msgid "PGP _Encrypt" msgstr "PGP-_salaus" -#: ../composer/e-composer-actions.c:562 +#: ../composer/e-composer-actions.c:560 msgid "Encrypt this message with PGP" msgstr "Salaa tämä viesti PGP:llä" -#: ../composer/e-composer-actions.c:568 +#: ../composer/e-composer-actions.c:566 msgid "PGP _Sign" msgstr "PGP-_allekirjoitus" -#: ../composer/e-composer-actions.c:570 +#: ../composer/e-composer-actions.c:568 msgid "Sign this message with your PGP key" msgstr "Allekirjoita viesti PGP-avaimellasi" -#: ../composer/e-composer-actions.c:576 +#: ../composer/e-composer-actions.c:574 msgid "_Prioritize Message" msgstr "_Aseta viestin prioriteetti" -#: ../composer/e-composer-actions.c:578 +#: ../composer/e-composer-actions.c:576 msgid "Set the message priority to high" msgstr "Aseta viestille korkea prioriteetti" -#: ../composer/e-composer-actions.c:584 +#: ../composer/e-composer-actions.c:582 msgid "Re_quest Read Receipt" msgstr "Pyydä luku_kuittausta" -#: ../composer/e-composer-actions.c:586 +#: ../composer/e-composer-actions.c:584 msgid "Get delivery notification when your message is read" msgstr "Pyydä lähettämään kuittaus, kun viestisi on luettu" -#: ../composer/e-composer-actions.c:592 +#: ../composer/e-composer-actions.c:590 msgid "S/MIME En_crypt" msgstr "S/_MIME-salaus" -#: ../composer/e-composer-actions.c:594 +#: ../composer/e-composer-actions.c:592 msgid "Encrypt this message with your S/MIME Encryption Certificate" msgstr "Salaa viesti S/MIME salausvarmenteellasi" -#: ../composer/e-composer-actions.c:600 +#: ../composer/e-composer-actions.c:598 msgid "S/MIME Sig_n" msgstr "S/MIME-a_llekirjoitus" -#: ../composer/e-composer-actions.c:602 +#: ../composer/e-composer-actions.c:600 msgid "Sign this message with your S/MIME Signature Certificate" msgstr "Allekirjoita tämä viesti S/MIME allekirjoitusvarmenteellasi" -#: ../composer/e-composer-actions.c:608 +#: ../composer/e-composer-actions.c:606 msgid "_Bcc Field" msgstr "_BCC-kenttä" -#: ../composer/e-composer-actions.c:610 +#: ../composer/e-composer-actions.c:608 msgid "Toggles whether the BCC field is displayed" msgstr "Vaihtelee näytetäänkö BCC-kenttä" -#: ../composer/e-composer-actions.c:616 +#: ../composer/e-composer-actions.c:614 msgid "_Cc Field" msgstr "_Kopio-kenttä" -#: ../composer/e-composer-actions.c:618 +#: ../composer/e-composer-actions.c:616 msgid "Toggles whether the CC field is displayed" msgstr "Määrittää näytetäänkö Kopio-kenttä (CC)." -#: ../composer/e-composer-actions.c:624 +#: ../composer/e-composer-actions.c:622 msgid "_From Field" msgstr "_Lähettäjä-kenttä" -#: ../composer/e-composer-actions.c:626 +#: ../composer/e-composer-actions.c:624 msgid "Toggles whether the From chooser is displayed" msgstr "Määrittää näytetäänkö Lähettäjä-kenttä" -#: ../composer/e-composer-actions.c:632 +#: ../composer/e-composer-actions.c:630 msgid "_Post-To Field" msgstr "_Postitusosoite-kenttä (Post-To)" -#: ../composer/e-composer-actions.c:634 +#: ../composer/e-composer-actions.c:632 msgid "Toggles whether the Post-To field is displayed" msgstr "Määrittää näytetäänkö Postitusosoite-kenttä" -#: ../composer/e-composer-actions.c:640 +#: ../composer/e-composer-actions.c:638 msgid "_Reply-To Field" msgstr "_Vastausosoite-kenttä" -#: ../composer/e-composer-actions.c:642 +#: ../composer/e-composer-actions.c:640 msgid "Toggles whether the Reply-To field is displayed" msgstr "Määrittää näytetäänkö Vastausosoite-kenttä" -#: ../composer/e-composer-actions.c:648 +#: ../composer/e-composer-actions.c:646 msgid "_Subject Field" msgstr "Ot_sikko-kenttä" -#: ../composer/e-composer-actions.c:650 +#: ../composer/e-composer-actions.c:648 msgid "Toggles whether the Subject field is displayed" msgstr "Määrittää näytetäänkö otsikkokenttä" -#: ../composer/e-composer-actions.c:656 +#: ../composer/e-composer-actions.c:654 msgid "_To Field" msgstr "_Vastaanottaja-kenttä" -#: ../composer/e-composer-actions.c:658 +#: ../composer/e-composer-actions.c:656 msgid "Toggles whether the To field is displayed" msgstr "Määrittää näytetäänkö Vastaanottaja-kenttä" -#: ../composer/e-composer-header-table.c:66 +#: ../composer/e-composer-header-table.c:64 msgid "Enter the recipients of the message" msgstr "Syötä viestin vastaanottajat" -#: ../composer/e-composer-header-table.c:68 +#: ../composer/e-composer-header-table.c:66 msgid "Enter the addresses that will receive a carbon copy of the message" msgstr "Anna osoitteet joihin lähetetään kopio viestistä (Cc)" -#: ../composer/e-composer-header-table.c:71 +#: ../composer/e-composer-header-table.c:69 msgid "" "Enter the addresses that will receive a carbon copy of the message without " "appearing in the recipient list of the message" @@ -10807,35 +10792,35 @@ msgstr "" "Anna osoitteet, joihin lähetetään kopiot viestistä ilman että muut " "vastaanottajat näkevät vastaanottajia" -#: ../composer/e-composer-header-table.c:645 +#: ../composer/e-composer-header-table.c:643 msgid "Fr_om:" msgstr "_Lähettäjä:" -#: ../composer/e-composer-header-table.c:654 +#: ../composer/e-composer-header-table.c:652 msgid "_Reply-To:" msgstr "_Vastausosoite:" -#: ../composer/e-composer-header-table.c:658 +#: ../composer/e-composer-header-table.c:656 msgid "_To:" msgstr "Vastaan_ottaja:" -#: ../composer/e-composer-header-table.c:663 +#: ../composer/e-composer-header-table.c:661 msgid "_Cc:" msgstr "_Kopiot:" -#: ../composer/e-composer-header-table.c:668 +#: ../composer/e-composer-header-table.c:666 msgid "_Bcc:" msgstr "_Piilokopiot:" -#: ../composer/e-composer-header-table.c:673 +#: ../composer/e-composer-header-table.c:671 msgid "_Post To:" msgstr "_Postita:" -#: ../composer/e-composer-header-table.c:677 +#: ../composer/e-composer-header-table.c:675 msgid "S_ubject:" msgstr "_Aihe:" -#: ../composer/e-composer-header-table.c:686 +#: ../composer/e-composer-header-table.c:684 msgid "Si_gnature:" msgstr "_Allekirjoitus:" @@ -10855,7 +10840,7 @@ msgstr "Valitse kansio johon viesti postitetaan:" msgid "Click here to select folders to post to" msgstr "Valitse tästä kansiot, joihin postituksia lähetetään" -#: ../composer/e-composer-private.c:180 ../composer/e-msg-composer.c:1553 +#: ../composer/e-composer-private.c:179 ../composer/e-msg-composer.c:1553 msgid "Show _Attachment Bar" msgstr "Näytä _liitepalkki" @@ -10886,11 +10871,11 @@ msgstr[1] "Liitteet" msgid "Hide _Attachment Bar" msgstr "Piilota _liitepalkki" -#: ../composer/e-msg-composer.c:1568 ../composer/e-msg-composer.c:2775 +#: ../composer/e-msg-composer.c:1568 ../composer/e-msg-composer.c:2770 msgid "Compose Message" msgstr "Uusi viesti" -#: ../composer/e-msg-composer.c:4050 +#: ../composer/e-msg-composer.c:4071 msgid "" "<b>(The composer contains a non-text message body, which cannot be edited.)</" "b>" @@ -11103,8 +11088,8 @@ msgstr "Komponentti" msgid "Name of the component being logged" msgstr "Lokitettavan komponentin nimi" -#: ../e-util/e-plugin.c:308 ../filter/rule-editor.c:776 -#: ../mail/em-account-prefs.c:482 ../mail/em-composer-prefs.c:988 +#: ../e-util/e-plugin.c:308 ../filter/rule-editor.c:798 +#: ../mail/em-account-prefs.c:482 ../mail/em-composer-prefs.c:966 #: ../plugins/plugin-manager/plugin-manager.c:355 #: ../plugins/publish-calendar/publish-calendar.c:690 msgid "Enabled" @@ -11155,7 +11140,7 @@ msgstr "Kirjoita tiedoston yli?" msgid "_Overwrite" msgstr "_Ylikirjoita" -#: ../e-util/e-util.c:96 +#: ../e-util/e-util.c:98 msgid "Could not display help for Evolution." msgstr "Evolutionin ohjetta ei voitu näyttää." @@ -11346,19 +11331,19 @@ msgid "R_ule name:" msgstr "_Säännön nimi:" #: ../filter/filter-rule.c:881 -msgid "Find items that meet the following criteria" -msgstr "Etsi kohdat, jotka vastaavat seuraavaa ehtoa" +msgid "Find items that meet the following conditions" +msgstr "Etsi kohdat, jotka vastaavat seuraavia ehtoja" #: ../filter/filter-rule.c:915 -msgid "A_dd Filter Criteria" -msgstr "Lisää _suodatussääntö" +msgid "A_dd Condition" +msgstr "Lisää _ehto" #: ../filter/filter-rule.c:921 -msgid "If all criteria are met" +msgid "If all conditions are met" msgstr "jos kaikki ehdot täytetään" #: ../filter/filter-rule.c:921 -msgid "If any criteria are met" +msgid "If any conditions are met" msgstr "jos joku ehdoista täyttyy" #: ../filter/filter-rule.c:923 @@ -11386,11 +11371,11 @@ msgid "I_nclude threads" msgstr "O_ta myös säikeet mukaan" #: ../filter/filter-rule.c:1045 ../filter/filter.glade.h:3 -#: ../mail/em-utils.c:308 +#: ../mail/em-utils.c:309 msgid "Incoming" msgstr "Tulevat" -#: ../filter/filter-rule.c:1045 ../mail/em-utils.c:309 +#: ../filter/filter-rule.c:1045 ../mail/em-utils.c:310 msgid "Outgoing" msgstr "Lähtevät" @@ -11491,7 +11476,7 @@ msgstr "tulevaisuudessa" msgid "months" msgstr "kuukautta" -#: ../filter/filter.glade.h:19 ../mail/mail-config.glade.h:197 +#: ../filter/filter.glade.h:19 ../mail/mail-config.glade.h:198 msgid "seconds" msgstr "sekuntia" @@ -11503,10 +11488,11 @@ msgstr "tämänhetkinen aika" msgid "the time you specify" msgstr "määrittelemäsi aika" -#: ../filter/filter.glade.h:22 ../plugins/calendar-http/calendar-http.c:282 -#: ../plugins/calendar-weather/calendar-weather.c:564 -#: ../plugins/google-account-setup/google-source.c:665 -#: ../plugins/google-account-setup/google-contacts-source.c:331 +#: ../filter/filter.glade.h:22 ../plugins/caldav/caldav-source.c:433 +#: ../plugins/calendar-http/calendar-http.c:282 +#: ../plugins/calendar-weather/calendar-weather.c:527 +#: ../plugins/google-account-setup/google-source.c:674 +#: ../plugins/google-account-setup/google-contacts-source.c:341 msgid "weeks" msgstr "viikkoa" @@ -11514,15 +11500,15 @@ msgstr "viikkoa" msgid "years" msgstr "vuotta" -#: ../filter/rule-editor.c:380 +#: ../filter/rule-editor.c:381 msgid "Add Rule" msgstr "Lisää sääntö" -#: ../filter/rule-editor.c:459 +#: ../filter/rule-editor.c:462 msgid "Edit Rule" msgstr "Muokkaa sääntöä" -#: ../filter/rule-editor.c:786 +#: ../filter/rule-editor.c:808 msgid "Rule name" msgstr "Säännön nimi" @@ -11580,8 +11566,8 @@ msgstr "Evolutionin verkkoyhteyden asetukset" #: ../mail/GNOME_Evolution_Mail.server.in.in.h:13 ../mail/em-folder-view.c:605 #: ../mail/importers/elm-importer.c:327 ../mail/importers/pine-importer.c:378 -#: ../mail/mail-component.c:592 ../mail/mail-component.c:593 -#: ../mail/mail-component.c:762 +#: ../mail/mail-component.c:597 ../mail/mail-component.c:598 +#: ../mail/mail-component.c:767 #: ../plugins/groupwise-features/proxy-add-dialog.glade.h:6 msgid "Mail" msgstr "Sähköposti" @@ -11592,7 +11578,7 @@ msgid "Mail Accounts" msgstr "Sähköpostitilit" #: ../mail/GNOME_Evolution_Mail.server.in.in.h:15 -#: ../mail/mail-config.glade.h:103 +#: ../mail/mail-config.glade.h:104 msgid "Mail Preferences" msgstr "Sähköpostin asetukset" @@ -11636,11 +11622,11 @@ msgstr "Automaattisesti luotu" msgid "Ask for each message" msgstr "Kysy jokaisen viestin osalta" -#: ../mail/em-account-editor.c:1809 ../mail/mail-config.glade.h:94 +#: ../mail/em-account-editor.c:1809 ../mail/mail-config.glade.h:95 msgid "Identity" msgstr "Omat tiedot" -#: ../mail/em-account-editor.c:1858 ../mail/mail-config.glade.h:124 +#: ../mail/em-account-editor.c:1858 ../mail/mail-config.glade.h:125 msgid "Receiving Email" msgstr "Vastaanotto" @@ -11652,7 +11638,7 @@ msgstr "T_arkista uudet viestit joka" msgid "minu_tes" msgstr "minuutti" -#: ../mail/em-account-editor.c:2326 ../mail/mail-config.glade.h:138 +#: ../mail/em-account-editor.c:2326 ../mail/mail-config.glade.h:139 msgid "Sending Email" msgstr "Lähetys" @@ -11661,8 +11647,8 @@ msgid "Defaults" msgstr "Oletusasetukset" #. Security settings -#: ../mail/em-account-editor.c:2451 ../mail/mail-config.glade.h:131 -#: ../plugins/exchange-operations/exchange-account-setup.c:317 +#: ../mail/em-account-editor.c:2451 ../mail/mail-config.glade.h:132 +#: ../plugins/exchange-operations/exchange-account-setup.c:332 msgid "Security" msgstr "Turvallisuus" @@ -11679,7 +11665,7 @@ msgstr "Uusien viestien etsintä" msgid "Account Editor" msgstr "Tilimuokkain" -#: ../mail/em-account-editor.c:2931 ../mail/mail-config.glade.h:83 +#: ../mail/em-account-editor.c:2931 ../mail/mail-config.glade.h:84 msgid "Evolution Account Assistant" msgstr "Evolutionin sähköpostitilien apulainen" @@ -11697,19 +11683,19 @@ msgid "Protocol" msgstr "Protokolla" #: ../mail/em-composer-prefs.c:303 ../mail/em-composer-prefs.c:438 -#: ../mail/mail-config.c:1158 ../mail/mail-signature-editor.c:478 +#: ../mail/mail-config.c:1184 ../mail/mail-signature-editor.c:478 msgid "Unnamed" msgstr "Nimeämätön" -#: ../mail/em-composer-prefs.c:992 +#: ../mail/em-composer-prefs.c:970 msgid "Language(s)" msgstr "Kielet" -#: ../mail/em-composer-prefs.c:1041 +#: ../mail/em-composer-prefs.c:1019 msgid "Add signature script" msgstr "Lisää allekirjoitus-skripti" -#: ../mail/em-composer-prefs.c:1083 +#: ../mail/em-composer-prefs.c:1061 msgid "Signature(s)" msgstr "Allekirjoitukset" @@ -11877,7 +11863,7 @@ msgstr "ei ole asetettu" msgid "is set" msgstr "on asetettu" -#: ../mail/em-filter-i18n.h:56 ../mail/mail-config.glade.h:97 +#: ../mail/em-filter-i18n.h:56 ../mail/mail-config.glade.h:98 #: ../ui/evolution-mail-message.xml.h:48 msgid "Junk" msgstr "Roskaposti" @@ -12004,7 +11990,7 @@ msgstr "Pysäytä käsittely" #: ../mail/em-format.c:889 ../mail/em-mailer-prefs.c:80 #: ../mail/message-list.etspec.h:18 ../mail/message-tag-followup.c:312 #: ../plugins/groupwise-features/properties.glade.h:7 -#: ../smime/lib/e-cert.c:1132 +#: ../smime/lib/e-cert.c:1115 msgid "Subject" msgstr "Aihe" @@ -12021,51 +12007,51 @@ msgstr "sitten" msgid "Add Ac_tion" msgstr "Lisää _toiminto" -#: ../mail/em-folder-browser.c:190 +#: ../mail/em-folder-browser.c:192 msgid "C_reate Search Folder From Search..." msgstr "Luo _hakunäkymä haun perusteella..." -#: ../mail/em-folder-browser.c:215 +#: ../mail/em-folder-browser.c:217 msgid "All Messages" msgstr "Kaikki viestit" -#: ../mail/em-folder-browser.c:216 +#: ../mail/em-folder-browser.c:218 msgid "Unread Messages" msgstr "Lukemattomat viestit" -#: ../mail/em-folder-browser.c:218 +#: ../mail/em-folder-browser.c:220 msgid "No Label" msgstr "Ei merkintää" -#: ../mail/em-folder-browser.c:225 +#: ../mail/em-folder-browser.c:227 msgid "Read Messages" msgstr "Luetut viestit" -#: ../mail/em-folder-browser.c:226 +#: ../mail/em-folder-browser.c:228 msgid "Recent Messages" msgstr "Viimeisimmät viestit" -#: ../mail/em-folder-browser.c:227 +#: ../mail/em-folder-browser.c:229 msgid "Last 5 Days' Messages" msgstr "Viimeisten viiden päivän viestit" -#: ../mail/em-folder-browser.c:228 +#: ../mail/em-folder-browser.c:230 msgid "Messages with Attachments" msgstr "Viestit, joissa on liitteitä" -#: ../mail/em-folder-browser.c:229 +#: ../mail/em-folder-browser.c:231 msgid "Important Messages" msgstr "Tärkeät viestit" -#: ../mail/em-folder-browser.c:230 +#: ../mail/em-folder-browser.c:232 msgid "Messages Not Junk" msgstr "Viestit, jotka eivät ole roskapostia" -#: ../mail/em-folder-browser.c:1171 +#: ../mail/em-folder-browser.c:1173 msgid "Account Search" msgstr "Haku tileiltä" -#: ../mail/em-folder-browser.c:1224 +#: ../mail/em-folder-browser.c:1226 msgid "All Account Search" msgstr "Hae kaikilta tileiltä" @@ -12096,8 +12082,8 @@ msgstr "Levytilan käyttö" #. translators: standard local mailbox names #: ../mail/em-folder-properties.c:358 ../mail/em-folder-tree-model.c:507 -#: ../mail/em-folder-tree.c:2556 ../mail/mail-component.c:159 -#: ../mail/mail-component.c:580 +#: ../mail/em-folder-tree.c:2561 ../mail/mail-component.c:164 +#: ../mail/mail-component.c:585 #: ../plugins/exchange-operations/exchange-delegates-user.c:78 #: ../plugins/exchange-operations/exchange-folder.c:594 msgid "Inbox" @@ -12122,7 +12108,7 @@ msgstr "Kansion _nimi:" #. load store to mail component #: ../mail/em-folder-tree-model.c:204 ../mail/em-folder-tree-model.c:206 -#: ../mail/mail-vfolder.c:960 ../mail/mail-vfolder.c:1027 +#: ../mail/mail-vfolder.c:980 ../mail/mail-vfolder.c:1047 msgid "Search Folders" msgstr "Hakunäkymät" @@ -12131,15 +12117,15 @@ msgstr "Hakunäkymät" msgid "UNMATCHED" msgstr "EI VASTAAVAA" -#: ../mail/em-folder-tree-model.c:504 ../mail/mail-component.c:160 +#: ../mail/em-folder-tree-model.c:504 ../mail/mail-component.c:165 msgid "Drafts" msgstr "Luonnokset" -#: ../mail/em-folder-tree-model.c:510 ../mail/mail-component.c:161 +#: ../mail/em-folder-tree-model.c:510 ../mail/mail-component.c:166 msgid "Outbox" msgstr "Lähtevät" -#: ../mail/em-folder-tree-model.c:512 ../mail/mail-component.c:162 +#: ../mail/em-folder-tree-model.c:512 ../mail/mail-component.c:167 msgid "Sent" msgstr "Lähetetyt" @@ -12209,32 +12195,28 @@ msgstr "_Siirrä kansioon" msgid "Scanning folders in \"%s\"" msgstr "Etsitään kansioita kohteessa \"%s\"" -#: ../mail/em-folder-tree.c:2099 +#: ../mail/em-folder-tree.c:2100 msgid "Open in _New Window" msgstr "Avaa _uudessa ikkunassa" #. FIXME: need to disable for nochildren folders -#: ../mail/em-folder-tree.c:2104 +#: ../mail/em-folder-tree.c:2105 msgid "_New Folder..." msgstr "_Uusi kansio..." -#: ../mail/em-folder-tree.c:2107 +#: ../mail/em-folder-tree.c:2108 msgid "_Move..." msgstr "_Siirrä..." -#: ../mail/em-folder-tree.c:2114 ../ui/evolution-mail-list.xml.h:39 -msgid "_Rename..." -msgstr "_Nimeä uudestaan..." - -#: ../mail/em-folder-tree.c:2115 +#: ../mail/em-folder-tree.c:2116 ../ui/evolution-mail-list.xml.h:21 msgid "Re_fresh" msgstr "Vi_rkistä" -#: ../mail/em-folder-tree.c:2116 +#: ../mail/em-folder-tree.c:2117 msgid "Fl_ush Outbox" msgstr "T_yhjennä lähtevien kansio" -#: ../mail/em-folder-tree.c:2122 ../mail/mail.error.xml.h:138 +#: ../mail/em-folder-tree.c:2123 ../mail/mail.error.xml.h:138 msgid "_Empty Trash" msgstr "_Tyhjennä roskakori" @@ -12339,7 +12321,7 @@ msgstr "_Merkintä" #. Note that we don't show this here, since by default a 'None' date #. is not permitted. -#: ../mail/em-folder-view.c:1355 ../widgets/misc/e-dateedit.c:480 +#: ../mail/em-folder-view.c:1355 ../widgets/misc/e-dateedit.c:478 msgid "_None" msgstr "_Ei mitään" @@ -12398,8 +12380,8 @@ msgstr "Suodata _postituslistan mukaan" #. other user means other calendars subscribed #: ../mail/em-folder-view.c:2255 ../mail/em-folder-view.c:2298 #: ../plugins/google-account-setup/google-source.c:251 -#: ../plugins/google-account-setup/google-source.c:532 -#: ../plugins/google-account-setup/google-source.c:718 +#: ../plugins/google-account-setup/google-source.c:529 +#: ../plugins/google-account-setup/google-source.c:727 msgid "Default" msgstr "Oletukset" @@ -12411,33 +12393,33 @@ msgstr "Viestiä ei voi hakea" msgid "Retrieving Message..." msgstr "Noudetaan viestiä..." -#: ../mail/em-folder-view.c:2794 +#: ../mail/em-folder-view.c:2791 msgid "C_all To..." msgstr "_Soita..." -#: ../mail/em-folder-view.c:2797 +#: ../mail/em-folder-view.c:2794 msgid "Create _Search Folder" msgstr "Luo uusi hakunäkymä" -#: ../mail/em-folder-view.c:2798 +#: ../mail/em-folder-view.c:2795 msgid "_From this Address" msgstr "_Tästä osoitteesta" -#: ../mail/em-folder-view.c:2799 +#: ../mail/em-folder-view.c:2796 msgid "_To this Address" msgstr "_Osoitteeseen:" -#: ../mail/em-folder-view.c:3296 +#: ../mail/em-folder-view.c:3289 #, c-format msgid "Click to mail %s" msgstr "Napsauta lähettääksesi %s" -#: ../mail/em-folder-view.c:3308 +#: ../mail/em-folder-view.c:3301 #, c-format msgid "Click to call %s" msgstr "Soita numeroon %s napsauttamalla" -#: ../mail/em-folder-view.c:3313 +#: ../mail/em-folder-view.c:3306 msgid "Click to hide/unhide addresses" msgstr "Napsauta piilottaaksesi tai näyttääksesi osoitteet" @@ -12748,7 +12730,7 @@ msgstr " (%R %Z)" #. To translators: This message suggests to the receipients that the sender of the mail is #. different from the one listed in From field. #. -#: ../mail/em-format-html.c:1907 +#: ../mail/em-format-html.c:1912 #, c-format msgid "This message was sent by <b>%s</b> on behalf of <b>%s</b>" msgstr "Tämä viesti lähetettiin <b>%s</b> käyttäjän <b>%s</b> puolesta" @@ -12765,8 +12747,8 @@ msgid "Reply-To" msgstr "Vastausosoite" #: ../mail/em-format.c:890 ../mail/em-mailer-prefs.c:81 -#: ../mail/message-list.etspec.h:2 ../widgets/misc/e-dateedit.c:327 -#: ../widgets/misc/e-dateedit.c:349 +#: ../mail/message-list.etspec.h:2 ../widgets/misc/e-dateedit.c:325 +#: ../widgets/misc/e-dateedit.c:347 msgid "Date" msgstr "Päiväys" @@ -13001,29 +12983,29 @@ msgid "No server has been selected" msgstr "Ei palvelinta valittuna" #. Check buttons -#: ../mail/em-utils.c:120 +#: ../mail/em-utils.c:121 #: ../plugins/attachment-reminder/attachment-reminder.c:128 msgid "_Do not show this message again." msgstr "Älä _näytä tätä viestiä uudestaan." -#: ../mail/em-utils.c:316 +#: ../mail/em-utils.c:317 msgid "Message Filters" msgstr "Viestisuodattimet" -#: ../mail/em-utils.c:369 +#: ../mail/em-utils.c:370 msgid "message" msgstr "viesti" -#: ../mail/em-utils.c:653 +#: ../mail/em-utils.c:654 msgid "Save Message..." msgstr "Tallenna viesti..." -#: ../mail/em-utils.c:703 +#: ../mail/em-utils.c:704 msgid "Add address" msgstr "Lisää osoite" #. Drop filename for messages from a mailbox -#: ../mail/em-utils.c:1224 +#: ../mail/em-utils.c:1225 #, c-format msgid "Messages from %s" msgstr "Viestit %s:ltä" @@ -13056,10 +13038,6 @@ msgstr "Sallii evolutionin näyttää rajoitetun kokoiset tekstiosat" msgid "Always request read receipt" msgstr "Pyydä aina kuittaus lukemisesta" -#: ../mail/evolution-mail.schemas.in.h:6 -msgid "Amount of time in seconds the error should be shown on the status bar." -msgstr "Aika sekunteina, kuinka pitkään virheet näytetään tilarivillä." - #: ../mail/evolution-mail.schemas.in.h:7 msgid "Automatic emoticon recognition" msgstr "Tunnista hymiöt automaattisesti" @@ -13233,7 +13211,7 @@ msgid "Directory for saving mail component files." msgstr "Kansio, johon sähköpostin osatiedostot tallennetaan." #: ../mail/evolution-mail.schemas.in.h:41 -msgid "Disable or enable ellipsizing of folder names in folder tree" +msgid "Disable or enable ellipsizing of folder names in side bar" msgstr "Määritä typistetäänkö kansioiden nimet kansionäkymässä" #: ../mail/evolution-mail.schemas.in.h:42 @@ -13304,19 +13282,30 @@ msgstr "Ota käyttöön viestin tekstiosan rajoitettu näyttökoko." msgid "Enable/disable caret mode" msgstr "Kytke/poista caret-tila" -#: ../mail/evolution-mail.schemas.in.h:56 +#: ../mail/evolution-mail.schemas.in.h:56 ../mail/mail-config.glade.h:81 +msgid "Encode file names in an Outlook/GMail way" +msgstr "Muotoile tiedostonimet outlookin ja gmailin tapaan." + +#: ../mail/evolution-mail.schemas.in.h:57 +msgid "" +"Encode file names in the mail headers same as Outlook or GMail does, to let " +"them understand localized file names sent by Evolution, because they do not " +"follow the RFC 2231, but uses incorrect RFC 2047 standard." +msgstr "" + +#: ../mail/evolution-mail.schemas.in.h:58 msgid "Height of the message-list pane" msgstr "Viestiluettelon korkeus" -#: ../mail/evolution-mail.schemas.in.h:57 +#: ../mail/evolution-mail.schemas.in.h:59 msgid "Height of the message-list pane." msgstr "Viestiluettelopaneelin korkeus." -#: ../mail/evolution-mail.schemas.in.h:58 +#: ../mail/evolution-mail.schemas.in.h:60 msgid "Hides the per-folder preview and removes the selection" msgstr "Piilottaa kansiokohtaisen esikatselun ja poistaa valinnan" -#: ../mail/evolution-mail.schemas.in.h:59 +#: ../mail/evolution-mail.schemas.in.h:61 msgid "" "If a user tries to open 10 or more messages at one time, ask the user if " "they really want to do it." @@ -13324,7 +13313,7 @@ msgstr "" "Jos yrität avata 10 tai useampia viestejä kerralla, kysytään haluatko " "todella tehdä sen." -#: ../mail/evolution-mail.schemas.in.h:60 +#: ../mail/evolution-mail.schemas.in.h:62 msgid "" "If the \"Preview\" pane is on, then show it side-by-side rather than " "vertically." @@ -13332,7 +13321,7 @@ msgstr "" "Jos \"Esikatselu\"-paneeli on käytössä, se näytetään viestiluettelon " "vieressä eikä alapuolella." -#: ../mail/evolution-mail.schemas.in.h:61 +#: ../mail/evolution-mail.schemas.in.h:63 #, fuzzy msgid "" "If there isn't a builtin viewer for a particular MIME type inside Evolution, " @@ -13343,7 +13332,7 @@ msgstr "" "voidaan käyttää mitä tahansa Gnomen MIME-tyyppientietokannassa määriteltyä " "bonobo-komponentin katselinta viestin näyttämiseen." -#: ../mail/evolution-mail.schemas.in.h:62 +#: ../mail/evolution-mail.schemas.in.h:64 msgid "" "Initial height of the \"Send and Receive Mail\" window. The value updates as " "the user resizes the window vertically." @@ -13351,7 +13340,7 @@ msgstr "" "\"Lähetä ja vastaanota sähköpostia\"-ikkunan aloituskorkeus. Arvo muuttuu, " "jos käyttäjä muuttaa ikkunan korkeutta." -#: ../mail/evolution-mail.schemas.in.h:63 +#: ../mail/evolution-mail.schemas.in.h:65 msgid "" "Initial maximize state of the \"Send and Receive Mail\" window. The value " "updates when the user maximizes or unmaximizes the window. Note, this " @@ -13364,7 +13353,7 @@ msgstr "" "evolution ei käytä tätä arvoa, koska kyseinen ikkuna ei ole " "suurennettavissa. Avain on olemassa vain teknisten yksityiskohtien takia." -#: ../mail/evolution-mail.schemas.in.h:64 +#: ../mail/evolution-mail.schemas.in.h:66 msgid "" "Initial width of the \"Send and Receive Mail\" window. The value updates as " "the user resizes the window horizontally." @@ -13372,11 +13361,11 @@ msgstr "" "\"Lähetä ja vastaanota sähköpostia\"-ikkunan aloitusleveys. Arvo muuttuu, " "jos käyttäjä muuttaa ikkunan leveyttä." -#: ../mail/evolution-mail.schemas.in.h:65 +#: ../mail/evolution-mail.schemas.in.h:67 msgid "It disables/enables the prompt while marking multiple messages." msgstr "Näytetäänkö vahvistusikkuna merkittäessä useita viestejä." -#: ../mail/evolution-mail.schemas.in.h:66 +#: ../mail/evolution-mail.schemas.in.h:68 msgid "" "It disables/enables the repeated prompts to ask if offline sync is required " "before going into offline mode." @@ -13384,7 +13373,7 @@ msgstr "" "Poistaa käytöstä ominaisuuden, joka kysyy useita kertoja vaaditaanko " "synkronointia yhteydettömään tilaan siirryttäessä." -#: ../mail/evolution-mail.schemas.in.h:67 +#: ../mail/evolution-mail.schemas.in.h:69 msgid "" "It disables/enables the repeated prompts to warn that deleting messages from " "a search folder permanently deletes the message, not simply removing it from " @@ -13393,35 +13382,31 @@ msgstr "" "Määrittää annetaanko toistuvia varoituksia viestien poistosta hakunäkymistä " "ja siitä, että viesti poistetaan pysyvästi, ei vain hakutuloksista." -#: ../mail/evolution-mail.schemas.in.h:68 +#: ../mail/evolution-mail.schemas.in.h:70 msgid "Last time empty junk was run" msgstr "Viimeisin kerta, kun roskapostikansiot tyhjennettiin" -#: ../mail/evolution-mail.schemas.in.h:69 +#: ../mail/evolution-mail.schemas.in.h:71 msgid "Last time empty trash was run" msgstr "Roskakori tyhjennettiin viimeksi" -#: ../mail/evolution-mail.schemas.in.h:70 -msgid "Level beyond which the message should be logged." -msgstr "Taso, jonka jälkeen viesti lokitetaan." - -#: ../mail/evolution-mail.schemas.in.h:71 +#: ../mail/evolution-mail.schemas.in.h:73 msgid "List of Labels and their associated colors" msgstr "Merkinnät ja niihin liittyvät värit" -#: ../mail/evolution-mail.schemas.in.h:72 +#: ../mail/evolution-mail.schemas.in.h:74 msgid "List of MIME types to check for Bonobo component viewers" msgstr "Luettelo MIME-tyypeistä, joista etsitään bonobo-komponenttikatselimia" -#: ../mail/evolution-mail.schemas.in.h:73 +#: ../mail/evolution-mail.schemas.in.h:75 msgid "List of accepted licenses" msgstr "Hyväksytyt lisenssit" -#: ../mail/evolution-mail.schemas.in.h:74 +#: ../mail/evolution-mail.schemas.in.h:76 msgid "List of accounts" msgstr "Luettelo tileistä" -#: ../mail/evolution-mail.schemas.in.h:75 +#: ../mail/evolution-mail.schemas.in.h:77 msgid "" "List of accounts known to the mail component of Evolution. The list contains " "strings naming subdirectories relative to /apps/evolution/mail/accounts." @@ -13430,15 +13415,15 @@ msgstr "" "merkkijonoja, jotka nimeävät alihakemistoja hakemiston/apps/evolution/mail/" "accounts alla." -#: ../mail/evolution-mail.schemas.in.h:76 +#: ../mail/evolution-mail.schemas.in.h:78 msgid "List of custom headers and whether they are enabled." msgstr "Luettelo omista otsakkeista ja tieto siitä ovatko ne käytössä." -#: ../mail/evolution-mail.schemas.in.h:77 +#: ../mail/evolution-mail.schemas.in.h:79 msgid "List of dictionary language codes used for spell checking." msgstr "Luettelo oikoluvun käyttämistä sanaston kielikoodeista." -#: ../mail/evolution-mail.schemas.in.h:78 +#: ../mail/evolution-mail.schemas.in.h:80 msgid "" "List of labels known to the mail component of Evolution. The list contains " "strings containing name:color where color uses the HTML hex encoding." @@ -13446,15 +13431,15 @@ msgstr "" "Evolutionin sähköpostiosan tuntemat etiketit. Luettelo sisältää nimi:väri " "pareja, joissa väri on määritelty HTML-värien heksadesimaalisessa muodossa." -#: ../mail/evolution-mail.schemas.in.h:79 +#: ../mail/evolution-mail.schemas.in.h:81 msgid "List of protocol names whose license has been accepted." msgstr "Luettelo protokollista, joiden lisenssi on hyväksytty." -#: ../mail/evolution-mail.schemas.in.h:80 +#: ../mail/evolution-mail.schemas.in.h:82 msgid "Load images for HTML messages over HTTP" msgstr "Lataa HTML-viestien kuvat käyttäen HTTP:ta" -#: ../mail/evolution-mail.schemas.in.h:81 +#: ../mail/evolution-mail.schemas.in.h:83 #, fuzzy msgid "" "Load images for HTML messages over HTTP(S). Possible values are: \"0\" - " @@ -13465,107 +13450,107 @@ msgstr "" "koskaan hae kuvia verkosta) \"1\" (hae kuvia, jos lähettäjä on " "osoitekirjassa) \"2\" (hae kuvat aina verkosta)." -#: ../mail/evolution-mail.schemas.in.h:82 +#: ../mail/evolution-mail.schemas.in.h:84 msgid "Log filter actions" msgstr "Kirjaa suodatintoimenpiteet" -#: ../mail/evolution-mail.schemas.in.h:83 +#: ../mail/evolution-mail.schemas.in.h:85 msgid "Log filter actions to the specified log file." msgstr "Kirjaa suodattimien toimenpiteet määriteltyyn lokitiedostoon." -#: ../mail/evolution-mail.schemas.in.h:84 +#: ../mail/evolution-mail.schemas.in.h:86 msgid "Logfile to log filter actions" msgstr "Lokitiedosto suodattimien toimenpiteille" -#: ../mail/evolution-mail.schemas.in.h:85 +#: ../mail/evolution-mail.schemas.in.h:87 msgid "Logfile to log filter actions." msgstr "Lokitiedosto suodattimien toimenpiteille." -#: ../mail/evolution-mail.schemas.in.h:86 +#: ../mail/evolution-mail.schemas.in.h:88 msgid "Mark as Seen after specified timeout" msgstr "Merkitse nähdyksi määritellyn viiveen jälkeen" -#: ../mail/evolution-mail.schemas.in.h:87 +#: ../mail/evolution-mail.schemas.in.h:89 msgid "Mark as Seen after specified timeout." msgstr "Merkitse nähdyksi määritellyn viiveen jälkeen." -#: ../mail/evolution-mail.schemas.in.h:88 +#: ../mail/evolution-mail.schemas.in.h:90 msgid "Mark citations in the message \"Preview\"" msgstr "Merkitse lainaukset viestin \"esikatselussa\"" -#: ../mail/evolution-mail.schemas.in.h:89 +#: ../mail/evolution-mail.schemas.in.h:91 msgid "Mark citations in the message \"Preview\"." msgstr "Merkitse lainaukset viestin \"esikatselussa\"." -#: ../mail/evolution-mail.schemas.in.h:90 +#: ../mail/evolution-mail.schemas.in.h:92 msgid "Message Window default height" msgstr "Viesti-ikkunan oletuskorkeus" -#: ../mail/evolution-mail.schemas.in.h:91 +#: ../mail/evolution-mail.schemas.in.h:93 msgid "Message Window default width" msgstr "Viestiikkunan oletusleveys" -#: ../mail/evolution-mail.schemas.in.h:92 +#: ../mail/evolution-mail.schemas.in.h:94 msgid "Message-display style (\"normal\", \"full headers\", \"source\")" msgstr "Viestin näyttötyyli (\"normal\", \"full headers\" tai \"source\")" -#: ../mail/evolution-mail.schemas.in.h:93 +#: ../mail/evolution-mail.schemas.in.h:95 msgid "Minimum days between emptying the junk on exit" msgstr "Lyhin aika päivinä, jonka kuluttua roskapostit poistetaan suljettaessa" -#: ../mail/evolution-mail.schemas.in.h:94 +#: ../mail/evolution-mail.schemas.in.h:96 msgid "Minimum days between emptying the trash on exit" msgstr "Lyhin aika päivinä, jonka kuluttua roskakori tyhjennetään suljettaessa" -#: ../mail/evolution-mail.schemas.in.h:95 +#: ../mail/evolution-mail.schemas.in.h:97 msgid "Minimum time between emptying the junk on exit, in days." msgstr "" "Lyhin aika jonka kuluttua roskapostit poistetaan suljettaessa, arvo päivinä." -#: ../mail/evolution-mail.schemas.in.h:96 +#: ../mail/evolution-mail.schemas.in.h:98 msgid "Minimum time between emptying the trash on exit, in days." msgstr "Vähimmäisaika roskakorin tyhjennysten välillä (päiviä)." -#: ../mail/evolution-mail.schemas.in.h:97 +#: ../mail/evolution-mail.schemas.in.h:99 msgid "Number of addresses to display in TO/CC/BCC" msgstr "To-, Cc- ja Bcc-osoitteiden näytettävä lukumäärä" -#: ../mail/evolution-mail.schemas.in.h:98 +#: ../mail/evolution-mail.schemas.in.h:100 msgid "Prompt on empty subject" msgstr "Kysy vahvistus, jos viestin aihe on tyhjä" -#: ../mail/evolution-mail.schemas.in.h:99 +#: ../mail/evolution-mail.schemas.in.h:101 msgid "Prompt the user when he or she tries to expunge a folder." msgstr "" "Kysy vahvistus, kun kansioista siivotaan pysyvästi poistettuja viestejä." -#: ../mail/evolution-mail.schemas.in.h:100 +#: ../mail/evolution-mail.schemas.in.h:102 msgid "" "Prompt the user when he or she tries to send a message without a Subject." msgstr "" "Kysy vahvistus, jos yritetään lähettää viestiä tyhjällä aihe-otsakkeella." -#: ../mail/evolution-mail.schemas.in.h:101 +#: ../mail/evolution-mail.schemas.in.h:103 msgid "Prompt to check if the user wants to go offline immediately" msgstr "Kysy vahvistus haluaako käyttäjä siirtyä yhteydettömään tilaan heti" -#: ../mail/evolution-mail.schemas.in.h:102 +#: ../mail/evolution-mail.schemas.in.h:104 msgid "Prompt when deleting messages in search folder" msgstr "Kysy poistettaessa viestejä hakukansiosta" -#: ../mail/evolution-mail.schemas.in.h:103 +#: ../mail/evolution-mail.schemas.in.h:105 msgid "Prompt when user expunges" msgstr "Kysy vahvistus, kun käyttäjä siivoaa poistettuja" -#: ../mail/evolution-mail.schemas.in.h:104 +#: ../mail/evolution-mail.schemas.in.h:106 msgid "Prompt when user only fills Bcc" msgstr "Kysy vahvistus, jos käyttäjä syöttää ainoastaan Bcc-kentän" -#: ../mail/evolution-mail.schemas.in.h:105 +#: ../mail/evolution-mail.schemas.in.h:107 msgid "Prompt when user tries to open 10 or more messages at once" msgstr "Kysy kun käyttäjä yrittää avata kymmenen tai useampia kerralla" -#: ../mail/evolution-mail.schemas.in.h:106 +#: ../mail/evolution-mail.schemas.in.h:108 msgid "" "Prompt when user tries to send HTML mail to recipients that may not want to " "receive HTML mail." @@ -13573,136 +13558,136 @@ msgstr "" "Kysy vahvistus, kun ollaan lähettämässä HTML-viestiä vastaanottajille, jotka " "eivät sellaista halua vastaanottaa." -#: ../mail/evolution-mail.schemas.in.h:107 +#: ../mail/evolution-mail.schemas.in.h:109 msgid "Prompt when user tries to send a message with no To or Cc recipients." msgstr "" "Varmista, kun käyttäjä yrittää lähettää viestiä ilman Vastaanottaja tai Cc-" "kenttiä" -#: ../mail/evolution-mail.schemas.in.h:108 +#: ../mail/evolution-mail.schemas.in.h:110 msgid "Prompt when user tries to send unwanted HTML" msgstr "Kysy vahvistus, jos yritetään lähteä ei-toivottua HTML-postia" -#: ../mail/evolution-mail.schemas.in.h:109 +#: ../mail/evolution-mail.schemas.in.h:111 msgid "Prompt while marking multiple messages" msgstr "Kysy vahvistus merkittäessä useita viestejä" -#: ../mail/evolution-mail.schemas.in.h:110 +#: ../mail/evolution-mail.schemas.in.h:112 msgid "Recognize emoticons in text and replace them with images." msgstr "Tunnista hymiöt tekstissä ja korvaa ne kuvilla." -#: ../mail/evolution-mail.schemas.in.h:111 +#: ../mail/evolution-mail.schemas.in.h:113 msgid "Recognize links in text and replace them." msgstr "Tunnista linkit tekstissä ja korvaa ne linkillä" -#: ../mail/evolution-mail.schemas.in.h:112 +#: ../mail/evolution-mail.schemas.in.h:114 msgid "Run junk test on incoming mail." msgstr "Suorita roskapostitarkistus saapuvalle postille." -#: ../mail/evolution-mail.schemas.in.h:113 +#: ../mail/evolution-mail.schemas.in.h:115 msgid "Save directory" msgstr "Tallenna kansio" -#: ../mail/evolution-mail.schemas.in.h:114 +#: ../mail/evolution-mail.schemas.in.h:116 msgid "Search for the sender photo in local address books" msgstr "Etsi lähettäjän valokuvaa paikallisista osoitekirjoista" -#: ../mail/evolution-mail.schemas.in.h:115 +#: ../mail/evolution-mail.schemas.in.h:117 msgid "Send HTML mail by default" msgstr "Lähetä oletuksena HTML-sähköpostia" -#: ../mail/evolution-mail.schemas.in.h:116 +#: ../mail/evolution-mail.schemas.in.h:118 msgid "Send HTML mail by default." msgstr "Lähetä HTML-postia oletuksena." -#: ../mail/evolution-mail.schemas.in.h:117 +#: ../mail/evolution-mail.schemas.in.h:119 msgid "Sender email-address column in the message list" msgstr "Näytä lähettäjän sähköposti viestiluettelossa" -#: ../mail/evolution-mail.schemas.in.h:118 +#: ../mail/evolution-mail.schemas.in.h:120 msgid "Server synchronization interval" msgstr "Palvelimen synkronoinnin aikaväli" -#: ../mail/evolution-mail.schemas.in.h:119 +#: ../mail/evolution-mail.schemas.in.h:121 msgid "Show Animations" msgstr "Näytä animaatiot" -#: ../mail/evolution-mail.schemas.in.h:120 +#: ../mail/evolution-mail.schemas.in.h:122 msgid "Show animated images as animations." msgstr "Näytä animoidut kuvat animaatioina" -#: ../mail/evolution-mail.schemas.in.h:121 +#: ../mail/evolution-mail.schemas.in.h:123 msgid "Show deleted messages (with a strike-through) in the message-list." msgstr "Näytä poistetut viestit yliviivattuna viestiluettelossa." -#: ../mail/evolution-mail.schemas.in.h:122 +#: ../mail/evolution-mail.schemas.in.h:124 msgid "Show deleted messages in the message-list" msgstr "Näytä poistetut viestit viestiluettelossa" -#: ../mail/evolution-mail.schemas.in.h:123 +#: ../mail/evolution-mail.schemas.in.h:125 msgid "Show photo of the sender" msgstr "Näytä lähettäjän valokuva" -#: ../mail/evolution-mail.schemas.in.h:126 +#: ../mail/evolution-mail.schemas.in.h:128 msgid "" "Show the email-address of the sender in a separate column in the message " "list." msgstr "" "Näytä lähettäjän sähköpostiosoite viestiluettelossa erillisessä sarakkeessa." -#: ../mail/evolution-mail.schemas.in.h:127 +#: ../mail/evolution-mail.schemas.in.h:129 msgid "Show the photo of the sender in the message reading pane." msgstr "Näytä lähettäjän kuva viesti-ikkunan lukupaneelissa" -#: ../mail/evolution-mail.schemas.in.h:128 +#: ../mail/evolution-mail.schemas.in.h:130 msgid "Spell check inline" msgstr "Oikolue kirjoitettaessa" -#: ../mail/evolution-mail.schemas.in.h:129 +#: ../mail/evolution-mail.schemas.in.h:131 msgid "Spell checking color" msgstr "Oikoluvun väri" -#: ../mail/evolution-mail.schemas.in.h:130 +#: ../mail/evolution-mail.schemas.in.h:132 msgid "Spell checking languages" msgstr "Oikoluvun kielet" -#: ../mail/evolution-mail.schemas.in.h:131 +#: ../mail/evolution-mail.schemas.in.h:133 msgid "Subscribe dialog default height" msgstr "Tilausikkunan oletuskorkeus" -#: ../mail/evolution-mail.schemas.in.h:132 +#: ../mail/evolution-mail.schemas.in.h:134 msgid "Subscribe dialog default width" msgstr "Tilausikkunan oletusleveys" -#: ../mail/evolution-mail.schemas.in.h:133 +#: ../mail/evolution-mail.schemas.in.h:135 msgid "Terminal font" msgstr "Päätteen kirjasin" -#: ../mail/evolution-mail.schemas.in.h:134 +#: ../mail/evolution-mail.schemas.in.h:136 msgid "Text message part limit" msgstr "Tekstin viestiosan kokoraja" -#: ../mail/evolution-mail.schemas.in.h:135 +#: ../mail/evolution-mail.schemas.in.h:137 msgid "The default plugin for Junk hook" msgstr "Roskapostikäsittelijän oletusliitännäinen" -#: ../mail/evolution-mail.schemas.in.h:136 +#: ../mail/evolution-mail.schemas.in.h:138 msgid "The last time empty junk was run, in days since the epoch." msgstr "Viimeisimmän roskapostien poistokerran unix-aikaleima." -#: ../mail/evolution-mail.schemas.in.h:137 +#: ../mail/evolution-mail.schemas.in.h:139 msgid "The last time empty trash was run, in days since the epoch." msgstr "Viimeisimmän roskakorin tyhjennyksen unix-aikaleima." -#: ../mail/evolution-mail.schemas.in.h:138 +#: ../mail/evolution-mail.schemas.in.h:140 msgid "The terminal font for mail display." msgstr "Päätekirjasin viestejä näytettäessä." -#: ../mail/evolution-mail.schemas.in.h:139 +#: ../mail/evolution-mail.schemas.in.h:141 msgid "The variable width font for mail display." msgstr "Vaihtelevan levyinen kirjasin viestejä näytettäessä." -#: ../mail/evolution-mail.schemas.in.h:140 +#: ../mail/evolution-mail.schemas.in.h:142 msgid "" "This can have three possible values. \"0\" for errors. \"1\" for warnings. " "\"2\" for debug messages." @@ -13710,7 +13695,7 @@ msgstr "" "Tällä asetuksella voi olla kolme arvoa: \"0\" (ei virheitä), \"1" "\" (varoitukset) tai \"2\" (vianetsintäviestit)." -#: ../mail/evolution-mail.schemas.in.h:141 +#: ../mail/evolution-mail.schemas.in.h:143 #, fuzzy msgid "" "This decides the max size of the text part that can be formatted under " @@ -13719,7 +13704,7 @@ msgstr "" "Tämä määrittää maksimikoon viestin tekstiosalle, joka voidaan esittää " "evolutionissa. Oletusarvo on 4096kt ja arvo määritellää kilotavuina." -#: ../mail/evolution-mail.schemas.in.h:142 +#: ../mail/evolution-mail.schemas.in.h:144 msgid "" "This is the default junk plugin, even though there are multiple plugins " "enabled. If the default listed plugin is disabled, then it won't fall back " @@ -13729,7 +13714,7 @@ msgstr "" "käytössä. Jos oletusliitännäinen ei ole käytössä, ei palata käyttämään muita " "käytössä olevia liitännäisiä." -#: ../mail/evolution-mail.schemas.in.h:143 +#: ../mail/evolution-mail.schemas.in.h:145 msgid "" "This key is read only once and reset to \"false\" after read. This unselects " "the mail in the list and removes the preview for that folder." @@ -13738,7 +13723,7 @@ msgstr "" "jälkeen. Tämä peruu sähköpostin valinnan luettelosta ja poistaa esikatselun " "kansiolta." -#: ../mail/evolution-mail.schemas.in.h:144 +#: ../mail/evolution-mail.schemas.in.h:146 msgid "" "This key should contain a list of XML structures specifying custom headers, " "and whether they are to be displayed. The format of the XML structure is <" @@ -13749,7 +13734,7 @@ msgstr "" "otsakkeita ja sen, näytetäänkö niitä. XML-rakenteen muoto on <header " "enabled> - määrittele enabled, jos otsake halutaan näyttää postinäkymässä." -#: ../mail/evolution-mail.schemas.in.h:145 +#: ../mail/evolution-mail.schemas.in.h:147 msgid "" "This option is related to the key lookup_addressbook and is used to " "determine whether to look up addresses in local address book only to exclude " @@ -13759,11 +13744,11 @@ msgstr "" "määrittämään, etsitäänkö paikallisesta osoitekirjasta tunnettuja osoitteita, " "joille ei tehdä roskapostisuodatusta." -#: ../mail/evolution-mail.schemas.in.h:146 +#: ../mail/evolution-mail.schemas.in.h:148 msgid "This option would help in improving the speed of fetching." msgstr "Tämä ominaisuus helpottaa noudon nopeuden parantamista." -#: ../mail/evolution-mail.schemas.in.h:147 +#: ../mail/evolution-mail.schemas.in.h:149 msgid "" "This sets the number of addresses to show in default message list view, " "beyond which a '...' is shown." @@ -13771,7 +13756,7 @@ msgstr "" "Tämä asettaa viestiluettelon oletusnäkymässä näytettävien viestin " "lukumäärän, jonka jälkeen näytetään '...'." -#: ../mail/evolution-mail.schemas.in.h:148 +#: ../mail/evolution-mail.schemas.in.h:150 msgid "" "This setting specifies whether the threads should be in expanded or " "collapsed state by default. Evolution requires a restart." @@ -13779,7 +13764,7 @@ msgstr "" "Tämä asetus määrittää, laajennetaanko vai supistetaanko säikeet oletuksena. " "Muutos vaatii Evolutionin uudelleenkäynnistyksen." -#: ../mail/evolution-mail.schemas.in.h:149 +#: ../mail/evolution-mail.schemas.in.h:151 msgid "" "This setting specifies whether the threads should be sorted based on latest " "message in each thread, rather than by message's date. Evolution requires a " @@ -13789,117 +13774,118 @@ msgstr "" "mukaan viestin päiväyksen sijasta. Muutos vaatii Evolutionin " "uudelleenkäynnistyksen." -#: ../mail/evolution-mail.schemas.in.h:150 +#: ../mail/evolution-mail.schemas.in.h:152 msgid "Thread the message list." msgstr "Säikeistä viestiluettelo" -#: ../mail/evolution-mail.schemas.in.h:151 +#: ../mail/evolution-mail.schemas.in.h:153 msgid "Thread the message-list" msgstr "Säikeistä viestiluettelo" -#: ../mail/evolution-mail.schemas.in.h:152 +#: ../mail/evolution-mail.schemas.in.h:154 msgid "Thread the message-list based on Subject" msgstr "Säikeistä viestiluettelo aiheen perusteella" -#: ../mail/evolution-mail.schemas.in.h:153 +#: ../mail/evolution-mail.schemas.in.h:155 msgid "Timeout for marking message as seen" msgstr "Aikakatkaisu merkittäessä viestejä nähdyiksi" -#: ../mail/evolution-mail.schemas.in.h:154 +#: ../mail/evolution-mail.schemas.in.h:156 msgid "Timeout for marking message as seen." msgstr "Aikakatkaisu merkittäessä viestejä nähdyiksi." -#: ../mail/evolution-mail.schemas.in.h:155 +#: ../mail/evolution-mail.schemas.in.h:157 msgid "UID string of the default account." msgstr "Oletustilin UID-merkkijono." -#: ../mail/evolution-mail.schemas.in.h:156 +#: ../mail/evolution-mail.schemas.in.h:158 msgid "Underline color for misspelled words when using inline spelling." msgstr "" "Väärinkirjoitettujen sanojen alleviivauksen väri käytettäessä kirjoituksen " "aikaista oikolukua." -#: ../mail/evolution-mail.schemas.in.h:157 +#: ../mail/evolution-mail.schemas.in.h:159 msgid "Use SpamAssassin daemon and client" msgstr "Käytä Spamassassin-palvelinta ja -asiakasta" -#: ../mail/evolution-mail.schemas.in.h:158 +#: ../mail/evolution-mail.schemas.in.h:160 msgid "Use SpamAssassin daemon and client (spamc/spamd)." msgstr "Käytä Spamassassin-palvelinta ja -asiakasta (spamc/spamd)" -#: ../mail/evolution-mail.schemas.in.h:159 +#: ../mail/evolution-mail.schemas.in.h:161 msgid "Use custom fonts" msgstr "Käytä omia kirjasimia" -#: ../mail/evolution-mail.schemas.in.h:160 +#: ../mail/evolution-mail.schemas.in.h:162 msgid "Use custom fonts for displaying mail." msgstr "Käytä omia kirjasimia näytettäessä viestejä." -#: ../mail/evolution-mail.schemas.in.h:161 +#: ../mail/evolution-mail.schemas.in.h:163 msgid "Use only local spam tests." msgstr "Käytä ainoastaan paikallisia roskapostin tarkistuksia" -#: ../mail/evolution-mail.schemas.in.h:162 +#: ../mail/evolution-mail.schemas.in.h:164 msgid "Use only the local spam tests (no DNS)." msgstr "Käytä ainoastaan paikallisia roskapostin tarkistuksia (ei DNS:ää)." -#: ../mail/evolution-mail.schemas.in.h:163 +#: ../mail/evolution-mail.schemas.in.h:165 msgid "Use side-by-side or wide layout" msgstr "Näytä vierekkäistä, leveää asettelua" -#: ../mail/evolution-mail.schemas.in.h:164 +#: ../mail/evolution-mail.schemas.in.h:166 msgid "Variable width font" msgstr "Vaihtuvanlevyinen kirjasin" -#: ../mail/evolution-mail.schemas.in.h:165 +#: ../mail/evolution-mail.schemas.in.h:167 msgid "View/Bcc menu item is checked" msgstr "Näytä/Bcc on valittu" -#: ../mail/evolution-mail.schemas.in.h:166 +#: ../mail/evolution-mail.schemas.in.h:168 msgid "View/Bcc menu item is checked." msgstr "Näytä/Bcc on valittu." -#: ../mail/evolution-mail.schemas.in.h:167 +#: ../mail/evolution-mail.schemas.in.h:169 msgid "View/Cc menu item is checked" msgstr "Näytä/Cc on valittu" -#: ../mail/evolution-mail.schemas.in.h:168 +#: ../mail/evolution-mail.schemas.in.h:170 msgid "View/Cc menu item is checked." msgstr "Näytä/Cc on valittu." -#: ../mail/evolution-mail.schemas.in.h:169 +#: ../mail/evolution-mail.schemas.in.h:171 msgid "View/From menu item is checked" msgstr "Näytä/Lähettäjä on valittu." -#: ../mail/evolution-mail.schemas.in.h:170 +#: ../mail/evolution-mail.schemas.in.h:172 msgid "View/From menu item is checked." msgstr "Näytä/Lähettäjä on valittu." -#: ../mail/evolution-mail.schemas.in.h:171 +#: ../mail/evolution-mail.schemas.in.h:173 msgid "View/PostTo menu item is checked" msgstr "Näytä/Lähetä ryhmään on valittu" -#: ../mail/evolution-mail.schemas.in.h:172 +#: ../mail/evolution-mail.schemas.in.h:174 msgid "View/PostTo menu item is checked." msgstr "Näytä/Lähetä ryhmään on valittu" -#: ../mail/evolution-mail.schemas.in.h:173 +#: ../mail/evolution-mail.schemas.in.h:175 msgid "View/ReplyTo menu item is checked" msgstr "Näytä/Vastausosoite on valittu" -#: ../mail/evolution-mail.schemas.in.h:174 +#: ../mail/evolution-mail.schemas.in.h:176 msgid "View/ReplyTo menu item is checked." msgstr "Näytä/Vastausosoite on valittu" -#: ../mail/evolution-mail.schemas.in.h:175 +#: ../mail/evolution-mail.schemas.in.h:177 msgid "Whether a read receipt request gets added to every message by default." msgstr "Lisätäänkö kaikkiin viesteihin oletuksena kuittauspyyntö." -#: ../mail/evolution-mail.schemas.in.h:176 -msgid "Whether disable ellipsizing feature of folder names in folder tree." +#: ../mail/evolution-mail.schemas.in.h:178 +#, fuzzy +msgid "Whether disable ellipsizing feature of folder names in side bar." msgstr "Onko kansionimien typistys kansionäkymässä poistettu käytöstä." -#: ../mail/evolution-mail.schemas.in.h:177 +#: ../mail/evolution-mail.schemas.in.h:179 msgid "" "Whether or not to fall back on threading by subjects when the messages do " "not contain In-Reply-To or References headers." @@ -13907,15 +13893,15 @@ msgstr "" "Palataanko viestien säikeistämiseen otsikon perusteella, jos otsakkeet eivät " "sisällä In-Reply-To tai References-otsakkeita." -#: ../mail/evolution-mail.schemas.in.h:178 +#: ../mail/evolution-mail.schemas.in.h:180 msgid "Whether sort threads based on latest message in that thread" msgstr "Järjestetäänkö säikeet säikeen viimeisen viestin mukaan" -#: ../mail/evolution-mail.schemas.in.h:179 +#: ../mail/evolution-mail.schemas.in.h:181 msgid "Width of the message-list pane" msgstr "Viestiluettelopaneelin leveys" -#: ../mail/evolution-mail.schemas.in.h:180 +#: ../mail/evolution-mail.schemas.in.h:182 msgid "Width of the message-list pane." msgstr "Viestiluettelopaneelin leveys." @@ -13997,154 +13983,97 @@ msgstr "%s postilista" msgid "Add Filter Rule" msgstr "Lisää suodatussääntö" -#: ../mail/mail-component.c:163 ../plugins/templates/templates.c:519 -#: ../plugins/templates/templates.c:689 ../plugins/templates/templates.c:724 +#: ../mail/mail-component.c:168 #: ../plugins/templates/org-gnome-templates.eplug.xml.h:2 msgid "Templates" msgstr "Pohjat" -#: ../mail/mail-component.c:545 +#: ../mail/mail-component.c:550 #, c-format msgid "%d selected, " msgid_plural "%d selected, " msgstr[0] "%d valittu, " msgstr[1] "%d valittua, " -#: ../mail/mail-component.c:549 +#: ../mail/mail-component.c:554 #, c-format msgid "%d deleted" msgid_plural "%d deleted" msgstr[0] "%d poistettu" msgstr[1] "%d poistettua" -#: ../mail/mail-component.c:556 +#: ../mail/mail-component.c:561 #, c-format msgid "%d junk" msgid_plural "%d junk" msgstr[0] "%d roskaposti" msgstr[1] "%d roskapostia" -#: ../mail/mail-component.c:559 +#: ../mail/mail-component.c:564 #, c-format msgid "%d draft" msgid_plural "%d drafts" msgstr[0] "%d luonnos" msgstr[1] "%d luonnosta" -#: ../mail/mail-component.c:561 +#: ../mail/mail-component.c:566 #, c-format msgid "%d sent" msgid_plural "%d sent" msgstr[0] "%d lähetetty" msgstr[1] "%d lähetettyä" -#: ../mail/mail-component.c:563 +#: ../mail/mail-component.c:568 #, c-format msgid "%d unsent" msgid_plural "%d unsent" msgstr[0] "%d lähettämätön" msgstr[1] "%d lähettämätöntä" -#: ../mail/mail-component.c:569 +#: ../mail/mail-component.c:574 #, c-format msgid "%d unread, " msgid_plural "%d unread, " msgstr[0] "%d lukematon, " msgstr[1] "%d lukematonta, " -#: ../mail/mail-component.c:570 +#: ../mail/mail-component.c:575 #, c-format msgid "%d total" msgid_plural "%d total" msgstr[0] "%d viesti" msgstr[1] "%d viestiä" -#: ../mail/mail-component.c:922 +#: ../mail/mail-component.c:927 msgid "New Mail Message" msgstr "Uusi viesti" -#: ../mail/mail-component.c:923 +#: ../mail/mail-component.c:928 msgctxt "New" msgid "_Mail Message" msgstr "_Sähköpostiviesti" -#: ../mail/mail-component.c:924 +#: ../mail/mail-component.c:929 msgid "Compose a new mail message" msgstr "Kirjoita uusi viesti" -#: ../mail/mail-component.c:930 +#: ../mail/mail-component.c:935 msgid "New Mail Folder" msgstr "Uusi sähköpostikansio" -#: ../mail/mail-component.c:931 +#: ../mail/mail-component.c:936 msgctxt "New" msgid "Mail _Folder" msgstr "Sähköposti_kansio" -#: ../mail/mail-component.c:932 +#: ../mail/mail-component.c:937 msgid "Create a new mail folder" msgstr "Luo uusi sähköpostikansio" -#: ../mail/mail-component.c:1079 +#: ../mail/mail-component.c:1084 msgid "Failed upgrading Mail settings or folders." msgstr "Sähköpostin asetusten tai kansioiden päivitys epäonnistui." -#: ../mail/mail-component.c:1595 -msgid "Error" -msgstr "Virhe" - -#: ../mail/mail-component.c:1595 -msgid "Errors" -msgstr "Virheet" - -#: ../mail/mail-component.c:1596 -msgid "Warnings and Errors" -msgstr "Varoitukset ja virheet" - -#: ../mail/mail-component.c:1597 -msgid "Debug" -msgstr "Vianetsintä" - -#: ../mail/mail-component.c:1597 -msgid "Error, Warnings and Debug messages" -msgstr "Virheet, varoitukset ja vianetsintäviestit" - -#: ../mail/mail-component.c:1724 -msgid "Debug Logs" -msgstr "Vianetsintäloki" - -#: ../mail/mail-component.c:1738 -msgid "Show _errors in the status bar for" -msgstr "Näytä _virheet tilarivillä " - -#. Translators: This is the second part of the sentence -#. * "Show _errors in the status bar for" - XXX - "second(s)." -#: ../mail/mail-component.c:1754 -msgid "second(s)." -msgstr "sekunnin ajan." - -#: ../mail/mail-component.c:1760 -msgid "Log Messages:" -msgstr "Lokiviestit:" - -#: ../mail/mail-component.c:1801 -msgid "Log Level" -msgstr "Lokitustaso" - -#: ../mail/mail-component.c:1810 ../widgets/misc/e-dateedit.c:391 -msgid "Time" -msgstr "Aika" - -#: ../mail/mail-component.c:1820 ../mail/message-list.c:2516 -#: ../mail/message-list.etspec.h:10 -msgid "Messages" -msgstr "Viestit" - -#: ../mail/mail-component.c:1829 ../ui/evolution-mail-messagedisplay.xml.h:2 -#: ../ui/evolution.xml.h:4 -msgid "Close this window" -msgstr "Sulje tämä ikkuna" - #: ../mail/mail-config.glade.h:1 msgid " Ch_eck for Supported Types " msgstr "Tar_kista tuetut tyypit" @@ -14423,128 +14352,128 @@ msgid "Empty trash folders on e_xit" msgstr "Tyhj_ennä roskakorit lopetettaessa" #: ../mail/mail-config.glade.h:79 -msgid "Enable Magic S_pacebar " -msgstr "Käytä maagista _välilyöntinäppäintä" +msgid "Enable Magic S_pacebar" +msgstr "Käytä maagista _välilyöntiä" #: ../mail/mail-config.glade.h:80 msgid "Enable Sea_rch Folders" msgstr "Käytä hakunäkymiä" -#: ../mail/mail-config.glade.h:81 +#: ../mail/mail-config.glade.h:82 msgid "Encry_ption certificate:" msgstr "_Salausvarmenne:" -#: ../mail/mail-config.glade.h:82 +#: ../mail/mail-config.glade.h:83 msgid "Encrypt out_going messages (by default)" msgstr "Salaa lähtevät viestit oletuksena" -#: ../mail/mail-config.glade.h:84 +#: ../mail/mail-config.glade.h:85 msgid "Fi_xed-width:" msgstr "_Tasalevyinen:" -#: ../mail/mail-config.glade.h:85 +#: ../mail/mail-config.glade.h:86 msgid "Fix_ed width Font:" msgstr "_Tasalevyinen kirjasin:" -#: ../mail/mail-config.glade.h:86 +#: ../mail/mail-config.glade.h:87 msgid "Font Properties" msgstr "Kirjasimen ominaisuudet" -#: ../mail/mail-config.glade.h:87 +#: ../mail/mail-config.glade.h:88 msgid "Format messages in _HTML" msgstr "Muotoile viestit HTML:nä" -#: ../mail/mail-config.glade.h:88 +#: ../mail/mail-config.glade.h:89 msgid "Full Nam_e:" msgstr "_Koko nimi:" -#: ../mail/mail-config.glade.h:90 +#: ../mail/mail-config.glade.h:91 msgid "HTML Messages" msgstr "HTML-viestit" -#: ../mail/mail-config.glade.h:91 +#: ../mail/mail-config.glade.h:92 msgid "H_TTP Proxy:" msgstr "H_TTP-välipalvelin:" -#: ../mail/mail-config.glade.h:92 +#: ../mail/mail-config.glade.h:93 msgid "Headers" msgstr "Otsakkeet" -#: ../mail/mail-config.glade.h:93 +#: ../mail/mail-config.glade.h:94 msgid "Highlight _quotations with" msgstr "_Lainausten korostukseen käytetty väri" -#: ../mail/mail-config.glade.h:95 +#: ../mail/mail-config.glade.h:96 msgid "Inline" msgstr "Sisäkkäisesti" -#: ../mail/mail-config.glade.h:96 +#: ../mail/mail-config.glade.h:97 msgid "Inline (Outlook style)" msgstr "Sisäkkäinen alkuperäisviesti (Outlookin tapaan)" -#: ../mail/mail-config.glade.h:98 +#: ../mail/mail-config.glade.h:99 msgid "KB" msgstr "kt" -#: ../mail/mail-config.glade.h:99 ../mail/message-list.etspec.h:8 +#: ../mail/mail-config.glade.h:100 ../mail/message-list.etspec.h:8 msgid "Labels" msgstr "Merkinnät" -#: ../mail/mail-config.glade.h:100 +#: ../mail/mail-config.glade.h:101 msgid "Languages Table" msgstr "Kielitaulukko" -#: ../mail/mail-config.glade.h:101 +#: ../mail/mail-config.glade.h:102 msgid "Mail Configuration" msgstr "Sähköpostiasetukset" -#: ../mail/mail-config.glade.h:102 +#: ../mail/mail-config.glade.h:103 msgid "Mail Headers Table" msgstr "Sähköposti otsikkotaulu" -#: ../mail/mail-config.glade.h:104 +#: ../mail/mail-config.glade.h:105 msgid "Mailbox location" msgstr "Postilaatikon sijainti" -#: ../mail/mail-config.glade.h:105 +#: ../mail/mail-config.glade.h:106 msgid "Message Composer" msgstr "Viestin muokkain" -#: ../mail/mail-config.glade.h:106 +#: ../mail/mail-config.glade.h:107 msgid "No _Proxy for:" msgstr "Ei _välipalvelinta seuraaville:" -#: ../mail/mail-config.glade.h:107 +#: ../mail/mail-config.glade.h:108 msgid "" "Note: Underscore in the label name is used as mnemonic identifier in menu." msgstr "" "Huomautus: Alaviivaa merkinnän nimessä käytetään valikon pikavalintana." -#: ../mail/mail-config.glade.h:108 +#: ../mail/mail-config.glade.h:109 msgid "" "Note: you will not be prompted for a password until you connect for the " "first time" msgstr "" "Huomio: salasanaa ei kysytä ennen kuin otat ensimmäistä kertaa yhteyttä" -#: ../mail/mail-config.glade.h:109 +#: ../mail/mail-config.glade.h:110 msgid "Option is ignored if a match for custom junk headers is found." msgstr "" "Valitsin ohitetaan, jos täsmäävä oma sähköpostn roskapostiotsake löydetään." -#: ../mail/mail-config.glade.h:110 +#: ../mail/mail-config.glade.h:111 msgid "Or_ganization:" msgstr "Organi_saatio:" -#: ../mail/mail-config.glade.h:111 +#: ../mail/mail-config.glade.h:112 msgid "PGP/GPG _Key ID:" msgstr "PGP/GPG _avaimen ID:" -#: ../mail/mail-config.glade.h:112 +#: ../mail/mail-config.glade.h:113 msgid "Pass_word:" msgstr "_Salasana:" -#: ../mail/mail-config.glade.h:114 +#: ../mail/mail-config.glade.h:115 msgid "" "Please enter a descriptive name for this account in the space below.\n" "This name will be used for display purposes only." @@ -14552,7 +14481,7 @@ msgstr "" "Syötä kuvaava nimi tälle tilille allaolevaan kenttään.\n" "Tätä nimeä käytetään ainoastaan ohjelman sisäisesti tilin näyttöön." -#: ../mail/mail-config.glade.h:116 +#: ../mail/mail-config.glade.h:117 msgid "" "Please enter information about the way you will send mail. If you are not " "sure, ask your system administrator or Internet Service Provider." @@ -14561,7 +14490,7 @@ msgstr "" "asetuksista, kysy järjestelmäsi ylläpitäjältä tai Internet-" "palveluntarjoajaltasi." -#: ../mail/mail-config.glade.h:117 +#: ../mail/mail-config.glade.h:118 msgid "" "Please enter your name and email address below. The \"optional\" fields " "below do not need to be filled in, unless you wish to include this " @@ -14571,124 +14500,124 @@ msgstr "" "kentät eivät ole pakollisia, jollet halua sisältää näitä tietoja " "lähettämiisi sähköpostiviesteihin." -#: ../mail/mail-config.glade.h:118 +#: ../mail/mail-config.glade.h:119 msgid "Please select among the following options" msgstr "Valitse joku seuraavista vaihtoehdoista" -#: ../mail/mail-config.glade.h:119 +#: ../mail/mail-config.glade.h:120 msgid "Port:" msgstr "Portti:" -#: ../mail/mail-config.glade.h:120 +#: ../mail/mail-config.glade.h:121 msgid "Pr_ompt when sending messages with only Bcc recipients defined" msgstr "" "Vahvista viestin lähetys, jos ainoastaan Bcc-vastaanottajia on määritelty" -#: ../mail/mail-config.glade.h:121 +#: ../mail/mail-config.glade.h:122 msgid "Quoted" msgstr "Lainattu" -#: ../mail/mail-config.glade.h:122 +#: ../mail/mail-config.glade.h:123 msgid "Re_member password" msgstr "Muista _salasana" -#: ../mail/mail-config.glade.h:123 +#: ../mail/mail-config.glade.h:124 msgid "Re_ply-To:" msgstr "_Vastausosoite:" -#: ../mail/mail-config.glade.h:125 +#: ../mail/mail-config.glade.h:126 msgid "Remember _password" msgstr "Muista _salasana" -#: ../mail/mail-config.glade.h:126 +#: ../mail/mail-config.glade.h:127 msgid "S_OCKS Host:" msgstr "S_OCKS-palvelin:" -#: ../mail/mail-config.glade.h:127 +#: ../mail/mail-config.glade.h:128 msgid "S_earch for sender photograph only in local address books" msgstr "Et_si lähettäjän valokuvaa vain paikallisista osoitekirjoista" -#: ../mail/mail-config.glade.h:128 +#: ../mail/mail-config.glade.h:129 msgid "S_elect..." msgstr "_Valitse..." -#: ../mail/mail-config.glade.h:129 +#: ../mail/mail-config.glade.h:130 msgid "S_end message receipts:" msgstr "Läh_etä viestin kuittaus:" -#: ../mail/mail-config.glade.h:130 +#: ../mail/mail-config.glade.h:131 msgid "S_tandard Font:" msgstr "_Oletuskirjaisin:" -#: ../mail/mail-config.glade.h:132 +#: ../mail/mail-config.glade.h:133 msgid "Select Drafts Folder" msgstr "Valitse luonnosten kansio" -#: ../mail/mail-config.glade.h:133 +#: ../mail/mail-config.glade.h:134 msgid "Select HTML fixed width font" msgstr "Valitse HTML-viestin tasalevyinen kirjasin" -#: ../mail/mail-config.glade.h:134 +#: ../mail/mail-config.glade.h:135 msgid "Select HTML fixed width font for printing" msgstr "Valitse HTML-viestin tasalevyinen kirjasin tulostusta varten" -#: ../mail/mail-config.glade.h:135 +#: ../mail/mail-config.glade.h:136 msgid "Select HTML variable width font" msgstr "Valitse HTML-viestin vaihtuvalevyinen kirjasin" -#: ../mail/mail-config.glade.h:136 +#: ../mail/mail-config.glade.h:137 msgid "Select HTML variable width font for printing" msgstr "Valitse HTML-viestin vaihtuvalevyinen kirjasin tulostusta varten" -#: ../mail/mail-config.glade.h:137 +#: ../mail/mail-config.glade.h:138 msgid "Select Sent Folder" msgstr "Valitse lähetettyjen kansio" -#: ../mail/mail-config.glade.h:139 +#: ../mail/mail-config.glade.h:140 msgid "Sending Mail" msgstr "Lähtevä posti" -#: ../mail/mail-config.glade.h:140 +#: ../mail/mail-config.glade.h:141 msgid "Sent _Messages Folder:" msgstr "Lähetettyjen _viestien kansio:" -#: ../mail/mail-config.glade.h:141 +#: ../mail/mail-config.glade.h:142 msgid "Ser_ver requires authentication" msgstr "P_alvelin vaati todennuksen" -#: ../mail/mail-config.glade.h:142 +#: ../mail/mail-config.glade.h:143 msgid "Server _Type: " msgstr "Palvelintyyppi: " -#: ../mail/mail-config.glade.h:143 +#: ../mail/mail-config.glade.h:144 msgid "Sig_ning certificate:" msgstr "_Allekirjoitusvarmenne:" -#: ../mail/mail-config.glade.h:144 +#: ../mail/mail-config.glade.h:145 msgid "Signat_ure:" msgstr "_Allekirjoitus:" -#: ../mail/mail-config.glade.h:145 +#: ../mail/mail-config.glade.h:146 msgid "Signatures" msgstr "Allekirjoitukset" -#: ../mail/mail-config.glade.h:146 +#: ../mail/mail-config.glade.h:147 msgid "Signatures Table" msgstr "Allekirjoitusten taulu" -#: ../mail/mail-config.glade.h:147 +#: ../mail/mail-config.glade.h:148 msgid "Spell Checking" msgstr "Oikoluku" -#: ../mail/mail-config.glade.h:148 +#: ../mail/mail-config.glade.h:149 msgid "Start _typing at the bottom on replying" msgstr "Aloita _kirjoittaminen lopusta vastattaessa" -#: ../mail/mail-config.glade.h:149 +#: ../mail/mail-config.glade.h:150 msgid "T_ype: " msgstr "_Tyyppi:" -#: ../mail/mail-config.glade.h:150 +#: ../mail/mail-config.glade.h:151 msgid "" "The list of languages here reflects only the languages for which you have a " "dictionary installed." @@ -14696,7 +14625,7 @@ msgstr "" "Luettelo käytettävissä olevista kielistä riippuu ainoastaan siitä, mille " "kielille sinulla on sanastoja asennettuna." -#: ../mail/mail-config.glade.h:151 +#: ../mail/mail-config.glade.h:152 msgid "" "The output of this script will be used as your\n" "signature. The name you specify will be used\n" @@ -14706,7 +14635,7 @@ msgstr "" "Valitsemasi nimi on käytössä ainoastaan tässä listassa\n" "näytettäessä." -#: ../mail/mail-config.glade.h:154 +#: ../mail/mail-config.glade.h:155 msgid "" "Type the name by which you would like to refer to this account.\n" "For example: \"Work\" or \"Personal\"" @@ -14714,26 +14643,26 @@ msgstr "" "Anna nimi jolla haluaisit kutsua tätä sähköpostitiliä.\n" "Esimerkiksi \"Työ\" tai \"Henkilökohtaista\"" -#: ../mail/mail-config.glade.h:156 +#: ../mail/mail-config.glade.h:157 msgid "Us_ername:" msgstr "Käyttäjät_unnus:" -#: ../mail/mail-config.glade.h:157 +#: ../mail/mail-config.glade.h:158 msgid "Use Authe_ntication" msgstr "Käytä _tunnistautumista" -#: ../mail/mail-config.glade.h:158 ../plugins/caldav/caldav-source.c:284 -#: ../plugins/google-account-setup/google-source.c:625 -#: ../plugins/google-account-setup/google-contacts-source.c:278 +#: ../mail/mail-config.glade.h:159 ../plugins/caldav/caldav-source.c:387 +#: ../plugins/google-account-setup/google-source.c:634 +#: ../plugins/google-account-setup/google-contacts-source.c:288 #: ../plugins/webdav-account-setup/webdav-contacts-source.c:323 msgid "User_name:" msgstr "Käyttäjät_unnus:" -#: ../mail/mail-config.glade.h:159 +#: ../mail/mail-config.glade.h:160 msgid "V_ariable-width:" msgstr "_Vaihtuva leveys:" -#: ../mail/mail-config.glade.h:160 +#: ../mail/mail-config.glade.h:161 msgid "" "Welcome to the Evolution Mail Configuration Assistant.\n" "\n" @@ -14743,124 +14672,124 @@ msgstr "" "\n" "Valitse \"Eteenpäin\" aloittaaksesi." -#: ../mail/mail-config.glade.h:163 +#: ../mail/mail-config.glade.h:164 msgid "_Add Signature" msgstr "_Lisää allekirjoitus:" -#: ../mail/mail-config.glade.h:164 +#: ../mail/mail-config.glade.h:165 msgid "_Always load images from the Internet" msgstr "Lataa _aina kuvat verkosta" -#: ../mail/mail-config.glade.h:165 +#: ../mail/mail-config.glade.h:166 msgid "_Automatic proxy configuration URL:" msgstr "_Automaattisten välipalvelinasetusten URL:" -#: ../mail/mail-config.glade.h:166 +#: ../mail/mail-config.glade.h:167 msgid "_Default junk plugin:" msgstr "_Roskapostin oletusliitännäinen" -#: ../mail/mail-config.glade.h:167 +#: ../mail/mail-config.glade.h:168 msgid "_Direct connection to the Internet" msgstr "_Suora yhteys Internettiin" -#: ../mail/mail-config.glade.h:168 +#: ../mail/mail-config.glade.h:169 msgid "_Do not sign meeting requests (for Outlook compatibility)" msgstr "_Älä allekirjoita kokouskutsuja (Outlook-yhteensopivuus)" -#: ../mail/mail-config.glade.h:170 +#: ../mail/mail-config.glade.h:171 msgid "_Forward style:" msgstr "_Välitä tyyli:" -#: ../mail/mail-config.glade.h:171 +#: ../mail/mail-config.glade.h:172 msgid "_Keep Signature above the original message on replying" msgstr "_Pidä allekirjoitus alkuperäisen viestin yllä vastattaessa" -#: ../mail/mail-config.glade.h:172 +#: ../mail/mail-config.glade.h:173 msgid "_Load images in messages from contacts" msgstr "_Hae viestin kuvat, jos yhteystieto on osoitekirjassa" -#: ../mail/mail-config.glade.h:173 +#: ../mail/mail-config.glade.h:174 msgid "_Lookup in local address book only" msgstr "_Etsi vain paikallisesta osoitekirjasta" -#: ../mail/mail-config.glade.h:174 +#: ../mail/mail-config.glade.h:175 msgid "_Make this my default account" msgstr "Tee tästä _oletustilini" -#: ../mail/mail-config.glade.h:175 +#: ../mail/mail-config.glade.h:176 msgid "_Manual proxy configuration:" msgstr "_Välipalvelimen käsin asettaminen:" -#: ../mail/mail-config.glade.h:176 +#: ../mail/mail-config.glade.h:177 msgid "_Mark messages as read after" msgstr "_Merkitse viestit luetuiksi kun on kulunut" -#: ../mail/mail-config.glade.h:178 +#: ../mail/mail-config.glade.h:179 msgid "_Never load images from the Internet" msgstr "_Älä koskaan lataa kuvia verkosta" -#: ../mail/mail-config.glade.h:179 +#: ../mail/mail-config.glade.h:180 msgid "_Path:" msgstr "_Polku:" -#: ../mail/mail-config.glade.h:180 +#: ../mail/mail-config.glade.h:181 msgid "_Prompt on sending HTML mail to contacts that do not want them" msgstr "_Kysy vahvistus HTML-viesteistä henkilöille, jotka eivät niitä halua" -#: ../mail/mail-config.glade.h:181 +#: ../mail/mail-config.glade.h:182 msgid "_Prompt when sending messages with an empty subject line" msgstr "_Kysy vahvistus lähetettäessä viestejä tyhjällä Aihe-otsakkella" -#: ../mail/mail-config.glade.h:182 +#: ../mail/mail-config.glade.h:183 msgid "_Reply style:" msgstr "_Vastaustyyli:" -#: ../mail/mail-config.glade.h:183 +#: ../mail/mail-config.glade.h:184 msgid "_Script:" msgstr "_Skripti:" -#: ../mail/mail-config.glade.h:184 +#: ../mail/mail-config.glade.h:185 msgid "_Secure HTTP Proxy:" msgstr "_HTTPS-välipalvelin:" -#: ../mail/mail-config.glade.h:185 +#: ../mail/mail-config.glade.h:186 msgid "_Select..." msgstr "_Valitse..." #. If enabled, show animation; if disabled, only display a static image without any animation -#: ../mail/mail-config.glade.h:188 +#: ../mail/mail-config.glade.h:189 msgid "_Show image animations" msgstr "Näytä kuvien animaatiot" -#: ../mail/mail-config.glade.h:189 +#: ../mail/mail-config.glade.h:190 msgid "_Show the photograph of sender in the message preview" msgstr "_Näytä lähettäjän valokuva sähköpostin esikatselussa" -#: ../mail/mail-config.glade.h:190 +#: ../mail/mail-config.glade.h:191 msgid "_Shrink To / Cc / Bcc headers to " msgstr "_Rajaa To-, Cc- ja Bcc-otsakkeet lukumäärään " -#: ../mail/mail-config.glade.h:191 +#: ../mail/mail-config.glade.h:192 msgid "_Use Secure Connection:" msgstr "_Käytä salattua yhteyttä:" -#: ../mail/mail-config.glade.h:192 +#: ../mail/mail-config.glade.h:193 msgid "_Use system defaults" msgstr "Käytä järjestelmän olet_uksia" -#: ../mail/mail-config.glade.h:193 +#: ../mail/mail-config.glade.h:194 msgid "_Use the same fonts as other applications" msgstr "Käytä samoja _kirjasimia kuin muut ohjelmat" -#: ../mail/mail-config.glade.h:194 +#: ../mail/mail-config.glade.h:195 msgid "addresses" msgstr "osoitteet" -#: ../mail/mail-config.glade.h:195 +#: ../mail/mail-config.glade.h:196 msgid "color" msgstr " väri" -#: ../mail/mail-config.glade.h:196 +#: ../mail/mail-config.glade.h:197 msgid "description" msgstr "kuvaus" @@ -15175,26 +15104,26 @@ msgstr "Odotetaan..." msgid "Checking for new mail" msgstr "Tarkistetaan onko uusia viestejä" -#: ../mail/mail-session.c:207 +#: ../mail/mail-session.c:209 #, c-format msgid "Enter Passphrase for %s" msgstr "Anna salasana tunnukselle %s" -#: ../mail/mail-session.c:209 +#: ../mail/mail-session.c:211 msgid "Enter Passphrase" msgstr "Anna salasana" -#: ../mail/mail-session.c:212 +#: ../mail/mail-session.c:214 #: ../plugins/exchange-operations/exchange-config-listener.c:708 #, c-format msgid "Enter Password for %s" msgstr "Anna salasana tunnukselle %s" -#: ../mail/mail-session.c:214 +#: ../mail/mail-session.c:216 msgid "Enter Password" msgstr "Anna salasana" -#: ../mail/mail-session.c:256 +#: ../mail/mail-session.c:258 msgid "User canceled operation." msgstr "Käyttäjä perui toimenpiteen." @@ -15239,21 +15168,21 @@ msgstr "Virheellinen kansio: ' %s'" msgid "Setting up Search Folder: %s" msgstr "Määritellään hakunäkymää: %s" -#: ../mail/mail-vfolder.c:233 +#: ../mail/mail-vfolder.c:240 #, c-format msgid "Updating Search Folders for '%s:%s'" msgstr "Päivitetään hakunäkymää \"%s:%s\"" -#: ../mail/mail-vfolder.c:240 +#: ../mail/mail-vfolder.c:247 #, c-format msgid "Updating Search Folders for '%s'" msgstr "Päivitetään hakunäkymää \"%s\"" -#: ../mail/mail-vfolder.c:1066 +#: ../mail/mail-vfolder.c:1086 msgid "Edit Search Folder" msgstr "Muokkaa hakunäkymää" -#: ../mail/mail-vfolder.c:1155 +#: ../mail/mail-vfolder.c:1175 msgid "New Search Folder" msgstr "Uusi hakunäkymä" @@ -15938,12 +15867,16 @@ msgstr "%b %d %l.%M %p" msgid "%b %d %Y" msgstr "%b %d %Y" +#: ../mail/message-list.c:2519 ../mail/message-list.etspec.h:10 +msgid "Messages" +msgstr "Viestit" + #. there is some info why the message list is empty, let it be something useful -#: ../mail/message-list.c:3978 ../mail/message-list.c:4438 +#: ../mail/message-list.c:3981 ../mail/message-list.c:4452 msgid "Generating message list" msgstr "Luodaan viestiluetteloa" -#: ../mail/message-list.c:4286 +#: ../mail/message-list.c:4291 msgid "" "No message satisfies your search criteria. Either clear search with Search-" ">Clear menu item or change it." @@ -15951,7 +15884,7 @@ msgstr "" "Mikään viesti ei vastaa hakuehtojasi. Tyhjennä hakukenttä valikon kohdasta " "Haku -> Tyhjennä tai muuta hakua." -#: ../mail/message-list.c:4288 +#: ../mail/message-list.c:4293 msgid "There are no messages in this folder." msgstr "Tässä kansiossa ei ole viestejä." @@ -16073,7 +16006,7 @@ msgid "" msgstr "Luettelo vihjeistä, joita liitemuistuttaja etsii viestin rungosta." #: ../plugins/attachment-reminder/attachment-reminder.c:475 -#: ../plugins/templates/templates.c:392 +#: ../plugins/templates/templates.c:390 msgid "Keywords" msgstr "Avainsanat" @@ -16384,27 +16317,27 @@ msgid "BBDB" msgstr "BBDB" #. For Translators: The first %s stands for the executable full path with a file name, the second is the error message itself. -#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:114 +#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:119 #, c-format msgid "Error occurred while spawning %s: %s." msgstr "Tapahtui virhe käynnistettäessä %s: %s." -#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:138 +#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:143 #, c-format msgid "Bogofilter child process does not respond, killing..." msgstr "Bogofilter-lapsiprosessi ei vastaa, tapetaan..." -#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:140 +#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:145 #, c-format msgid "Wait for Bogofilter child process interrupted, terminating..." msgstr "Bogofilter-lapsiprosessin odotus keskeytettiin, lopetetaan..." -#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:152 +#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:157 #, c-format msgid "Pipe to Bogofilter failed, error code: %d." msgstr "Putki bogofilterille epäonnistui, virhekoodi: %d." -#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:313 +#: ../plugins/bogo-junk-plugin/bf-junk-filter.c:318 msgid "Convert message text to _Unicode" msgstr "Muunna viestin teksti _Unicode-muotoon" @@ -16432,21 +16365,31 @@ msgstr "Bogofilter-roskapostiliitännäinen" msgid "Filters junk messages using Bogofilter." msgstr "Suodattaa roskaposteja käyttäen bogofilteriä." -#: ../plugins/caldav/caldav-source.c:66 ../plugins/caldav/caldav-source.c:70 +#. we found the group, change the name based on the actual language +#: ../plugins/caldav/caldav-source.c:80 ../plugins/caldav/caldav-source.c:92 msgid "CalDAV" msgstr "CalDAV" -#: ../plugins/caldav/caldav-source.c:249 +#: ../plugins/caldav/caldav-source.c:348 #: ../plugins/calendar-http/calendar-http.c:126 msgid "_URL:" msgstr "_URL:" -#: ../plugins/caldav/caldav-source.c:271 -#: ../plugins/google-account-setup/google-source.c:618 -#: ../plugins/google-account-setup/google-contacts-source.c:301 +#: ../plugins/caldav/caldav-source.c:372 +#: ../plugins/google-account-setup/google-source.c:627 +#: ../plugins/google-account-setup/google-contacts-source.c:311 msgid "Use _SSL" msgstr "Käytä _SSLää" +#. add refresh option +#: ../plugins/caldav/caldav-source.c:415 +#: ../plugins/calendar-http/calendar-http.c:264 +#: ../plugins/calendar-weather/calendar-weather.c:509 +#: ../plugins/google-account-setup/google-source.c:651 +#: ../plugins/google-account-setup/google-contacts-source.c:330 +msgid "Re_fresh:" +msgstr "Vi_rkistä:" + #: ../plugins/caldav/org-gnome-evolution-caldav.eplug.xml.h:1 msgid "CalDAV Calendar sources" msgstr "CalDAV-kalenterien lähteet" @@ -16463,13 +16406,6 @@ msgstr "Paikalliset kalenterit" msgid "Provides core functionality for local calendars." msgstr "Tarjoaa paikallisten kalenterien perustoiminnot." -#: ../plugins/calendar-http/calendar-http.c:264 -#: ../plugins/calendar-weather/calendar-weather.c:546 -#: ../plugins/google-account-setup/google-source.c:642 -#: ../plugins/google-account-setup/google-contacts-source.c:320 -msgid "Re_fresh:" -msgstr "Vi_rkistä:" - #: ../plugins/calendar-http/calendar-http.c:332 msgid "_Secure connection" msgstr "_Salattu yhteys" @@ -16486,48 +16422,55 @@ msgstr "HTTP-kalenterit" msgid "Provides core functionality for webcal and http calendars." msgstr "Tarjoaa webcal- ja http-kalentereiden perustoiminnot." -#: ../plugins/calendar-weather/calendar-weather.c:54 -#: ../plugins/calendar-weather/calendar-weather.c:60 -msgid "Weather: Cloudy" -msgstr "Sää: Pilvistä" - #: ../plugins/calendar-weather/calendar-weather.c:61 msgid "Weather: Fog" msgstr "Sää: sumuista" #: ../plugins/calendar-weather/calendar-weather.c:62 -msgid "Weather: Partly Cloudy" -msgstr "Sää: Puolipilvistä" +msgid "Weather: Cloudy" +msgstr "Sää: pilvistä" #: ../plugins/calendar-weather/calendar-weather.c:63 -msgid "Weather: Rain" -msgstr "Sää: Sadetta" +msgid "Weather: Cloudy Night" +msgstr "Sää: pilvinen yö" #: ../plugins/calendar-weather/calendar-weather.c:64 -msgid "Weather: Snow" -msgstr "Sää: Lunta" +msgid "Weather: Overcast" +msgstr "" #: ../plugins/calendar-weather/calendar-weather.c:65 -msgid "Weather: Sunny" -msgstr "Sää: Aurinkoista" +msgid "Weather: Showers" +msgstr "Sää: sadekuuroja" #: ../plugins/calendar-weather/calendar-weather.c:66 +msgid "Weather: Snow" +msgstr "Sää: lunta" + +#: ../plugins/calendar-weather/calendar-weather.c:67 +msgid "Weather: Sunny" +msgstr "Sää: aurinkoista" + +#: ../plugins/calendar-weather/calendar-weather.c:68 +msgid "Weather: Clear Night" +msgstr "Sää: kirkas yö" + +#: ../plugins/calendar-weather/calendar-weather.c:69 msgid "Weather: Thunderstorms" -msgstr "Sää: Ukkosmyrskyjä" +msgstr "Sää: ukkosmyrskyjä" -#: ../plugins/calendar-weather/calendar-weather.c:267 +#: ../plugins/calendar-weather/calendar-weather.c:230 msgid "Select a location" msgstr "Valitse sijainti" -#: ../plugins/calendar-weather/calendar-weather.c:652 +#: ../plugins/calendar-weather/calendar-weather.c:615 msgid "_Units:" msgstr "_Yksikkö:" -#: ../plugins/calendar-weather/calendar-weather.c:659 +#: ../plugins/calendar-weather/calendar-weather.c:622 msgid "Metric (Celsius, cm, etc)" msgstr "Metrinen (Celsiusta, cm jne.)" -#: ../plugins/calendar-weather/calendar-weather.c:660 +#: ../plugins/calendar-weather/calendar-weather.c:623 msgid "Imperial (Fahrenheit, inches, etc)" msgstr "Imperial (Fahrenheitia, tuumia jne.)" @@ -16574,7 +16517,7 @@ msgid "Do you want to make Evolution your default e-mail client?" msgstr "Haluatko käyttää Evolutionia oletuksena sähköpostin käsittelyyn?" #: ../plugins/default-mailer/org-gnome-default-mailer.error.xml.h:2 -#: ../shell/main.c:585 +#: ../shell/main.c:590 msgid "Evolution" msgstr "Evolution" @@ -16615,7 +16558,7 @@ msgid "Key" msgstr "Avaimet" #: ../plugins/email-custom-header/email-custom-header.c:892 -#: ../plugins/templates/templates.c:398 +#: ../plugins/templates/templates.c:396 msgid "Values" msgstr "Arvot" @@ -16694,11 +16637,11 @@ msgid "" msgstr "" "Yhdistä Exchange-palvelimelle käyttäen tavallista selväkielistä salasanaa." -#: ../plugins/exchange-operations/exchange-account-setup.c:257 +#: ../plugins/exchange-operations/exchange-account-setup.c:272 msgid "Out Of Office" msgstr "Poissa konttorilta" -#: ../plugins/exchange-operations/exchange-account-setup.c:264 +#: ../plugins/exchange-operations/exchange-account-setup.c:279 msgid "" "The message specified below will be automatically sent to \n" "each person who sends mail to you while you are out of the office." @@ -16706,88 +16649,92 @@ msgstr "" "Alla määritelty viesti lähetään automaattisesti jokaiselle \n" "henkilölle, joka lähettää sähköpostia sinulle kun et ole tavoitettavissa." -#: ../plugins/exchange-operations/exchange-account-setup.c:276 -#: ../plugins/exchange-operations/exchange-account-setup.c:281 +#: ../plugins/exchange-operations/exchange-account-setup.c:291 +#: ../plugins/exchange-operations/exchange-account-setup.c:296 msgid "I am out of the office" msgstr "En ole tavoitettavissa" -#: ../plugins/exchange-operations/exchange-account-setup.c:277 -#: ../plugins/exchange-operations/exchange-account-setup.c:280 +#: ../plugins/exchange-operations/exchange-account-setup.c:292 +#: ../plugins/exchange-operations/exchange-account-setup.c:295 msgid "I am in the office" msgstr "Olen tavoitettavissa" #. Change Password -#: ../plugins/exchange-operations/exchange-account-setup.c:328 +#: ../plugins/exchange-operations/exchange-account-setup.c:343 msgid "Change the password for Exchange account" msgstr "Syötä Exchange-tilin salasana" -#: ../plugins/exchange-operations/exchange-account-setup.c:330 +#: ../plugins/exchange-operations/exchange-account-setup.c:345 #: ../plugins/exchange-operations/exchange-change-password.glade.h:1 msgid "Change Password" msgstr "Vaihda salasana" #. Delegation Assistant -#: ../plugins/exchange-operations/exchange-account-setup.c:335 +#: ../plugins/exchange-operations/exchange-account-setup.c:350 msgid "Manage the delegate settings for Exchange account" msgstr "Muokkaa Exchange-tilin valtuutusasetuksia" -#: ../plugins/exchange-operations/exchange-account-setup.c:337 +#: ../plugins/exchange-operations/exchange-account-setup.c:352 msgid "Delegation Assistant" msgstr "Valtuutuksen apulainen" #. Miscelleneous settings -#: ../plugins/exchange-operations/exchange-account-setup.c:349 +#: ../plugins/exchange-operations/exchange-account-setup.c:364 msgid "Miscelleneous" msgstr "Sekalaiset" #. Folder Size -#: ../plugins/exchange-operations/exchange-account-setup.c:359 +#: ../plugins/exchange-operations/exchange-account-setup.c:374 msgid "View the size of all Exchange folders" msgstr "Näytä kaikkien Exchange-kansioiden koko" -#: ../plugins/exchange-operations/exchange-account-setup.c:361 +#: ../plugins/exchange-operations/exchange-account-setup.c:376 msgid "Folders Size" msgstr "Kansioiden koko" -#: ../plugins/exchange-operations/exchange-account-setup.c:368 +#: ../plugins/exchange-operations/exchange-account-setup.c:383 #: ../plugins/exchange-operations/org-gnome-exchange-operations.eplug.xml.h:3 msgid "Exchange Settings" msgstr "Exchangen asetukset" -#: ../plugins/exchange-operations/exchange-account-setup.c:690 +#: ../plugins/exchange-operations/exchange-account-setup.c:730 msgid "_OWA URL:" msgstr "_OWA URL:" -#: ../plugins/exchange-operations/exchange-account-setup.c:716 +#: ../plugins/exchange-operations/exchange-account-setup.c:756 msgid "A_uthenticate" msgstr "K_irjautuminen" -#: ../plugins/exchange-operations/exchange-account-setup.c:737 +#: ../plugins/exchange-operations/exchange-account-setup.c:777 +msgid "S_pecify the mailbox name" +msgstr "_Anna sähköpostikansion nimi" + +#: ../plugins/exchange-operations/exchange-account-setup.c:790 msgid "_Mailbox:" msgstr "_Sähköpostikansio:" -#: ../plugins/exchange-operations/exchange-account-setup.c:938 +#: ../plugins/exchange-operations/exchange-account-setup.c:1005 msgid "_Authentication Type" msgstr "_Tunnistautumistapa" -#: ../plugins/exchange-operations/exchange-account-setup.c:952 +#: ../plugins/exchange-operations/exchange-account-setup.c:1019 msgid "Ch_eck for Supported Types" msgstr "Tar_kista tuetut tyypit" -#: ../plugins/exchange-operations/exchange-account-setup.c:1064 -#: ../plugins/exchange-operations/exchange-contacts.c:213 +#: ../plugins/exchange-operations/exchange-account-setup.c:1134 +#: ../plugins/exchange-operations/exchange-contacts.c:217 #, c-format msgid "%s KB" msgstr "%s kt" -#: ../plugins/exchange-operations/exchange-account-setup.c:1066 -#: ../plugins/exchange-operations/exchange-contacts.c:215 +#: ../plugins/exchange-operations/exchange-account-setup.c:1136 +#: ../plugins/exchange-operations/exchange-contacts.c:219 #, c-format msgid "0 KB" msgstr "0 kt" -#: ../plugins/exchange-operations/exchange-calendar.c:192 -#: ../plugins/exchange-operations/exchange-contacts.c:166 +#: ../plugins/exchange-operations/exchange-calendar.c:196 +#: ../plugins/exchange-operations/exchange-contacts.c:170 msgid "" "Evolution is in offline mode. You cannot create or modify folders now.\n" "Please switch to online mode for such operations." @@ -17245,18 +17192,22 @@ msgid "Exchange Operations" msgstr "Exchange-toiminnot" #: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:1 +msgid "Cannot access the \"Exchange settings\" tab in offline mode." +msgstr "Välilehteä \"Exchange-asetukset\" ei voi avata yhteydettömässä tilassa." + +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:2 msgid "Cannot change password due to configuration problems." msgstr "Salasanaa ei voi vaihtaa asetusongelmien takia." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:2 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:3 msgid "Cannot display folders." msgstr "Kansioita ei voi näyttää." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:3 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:4 msgid "Cannot perform the operation." msgstr "Toimenpidettä ei voi suorittaa." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:4 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:5 msgid "" "Changes to options for Exchange account \"{0}\" will only take effect after " "restarting Evolution." @@ -17264,15 +17215,15 @@ msgstr "" "Muutokset Exchange-tilin \"{0}\" asetuksiin tulevat voimaan, kun olet " "sulkenut ja käynnistynyt Evolutionin uudestaan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:5 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:6 msgid "Could not authenticate to server." msgstr "Palvelimelle tunnistautuminen epäonnistui." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:6 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:7 msgid "Could not change password." msgstr "Salasanan vaihto epäonnistui." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:7 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:8 msgid "" "Could not configure Exchange account because \n" "an unknown error occurred. Check the URL, \n" @@ -17282,61 +17233,61 @@ msgstr "" "tuntematon virhe. Tarkista URL, käyttäjätunnus ja\n" "salasana ja yritä uudestaan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:10 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:11 msgid "Could not connect to Exchange server." msgstr "Exchange-palvelimeen ei saatu yhteyttä." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:11 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:12 msgid "Could not connect to server {0}." msgstr "Palvelimeen {0} ei saatu yhteyttä." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:12 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:13 msgid "Could not determine folder permissions for delegates." msgstr "Kansion oikeuksia valtuutetuille ei voi selvittää." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:13 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:14 msgid "Could not find Exchange Web Storage System." msgstr "Exchange Web Storage Systemiä ei löytynyt." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:14 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:15 msgid "Could not locate server {0}." msgstr "Palvelinta {0} ei löytynyt." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:15 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:16 msgid "Could not make {0} a delegate" msgstr "Käyttäjää {0} ei voi merkitä valtuutetuksi" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:16 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:17 msgid "Could not read folder permissions" msgstr "Kansion oikeuksia ei voi lukea" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:17 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:18 msgid "Could not read folder permissions." msgstr "Kansion oikeuksia ei voi lukea." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:18 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:19 msgid "Could not read out-of-office state" msgstr "\"Poissa konttorilta\"-tilaa ei voi lukea." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:19 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:20 msgid "Could not update folder permissions." msgstr "Kansion oikeuksia ei voi päivittää." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:20 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:21 msgid "Could not update out-of-office state" msgstr "\"Poissa konttorilta\"-tilaa ei voi päivittää." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:21 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:22 msgid "Evolution requires a restart to load the subscribed user's mailbox" msgstr "" "Evolution vaatii uudelleenkäynnistyksen tilatun käyttäjän postilaatikon " "lataamiseksi" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:22 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:23 msgid "Exchange Account is offline." msgstr "Exchange-tili on yhteydettömässä tilassa" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:23 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:24 msgid "" "Exchange Connector requires access to certain\n" "functionality on the Exchange Server that appears\n" @@ -17363,32 +17314,32 @@ msgstr "" "{0}\n" " " -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:35 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:36 msgid "Failed to update delegates:" msgstr "Valtuutuslistan päivitys epäonnistui:" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:36 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:37 msgid "Folder already exists" msgstr "Kansio on jo olemassa" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:37 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:38 msgid "Folder does not exist" msgstr "Kansiota ei ole olemassa" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:38 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:39 msgid "Folder offline" msgstr "Kansio on yhteydettömässä tilassa" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:39 -#: ../shell/e-shell.c:1306 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:40 +#: ../shell/e-shell.c:1270 msgid "Generic error" msgstr "Yleinen virhe" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:40 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:41 msgid "Global Catalog Server is not reachable" msgstr "Yhteinen luettelopalvelin ei ole käytettävissä" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:41 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:42 msgid "" "If OWA is running on a different path, you must specify that in the account " "configuration dialog." @@ -17396,73 +17347,73 @@ msgstr "" "Jos OWA on käytössä eri polussa täytyy se määritellä erikseen tilin " "asetuksissa." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:42 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:43 msgid "Mailbox for {0} is not on this server." msgstr "Sähköpostit käyttäjälle {0} eivät ole tällä palvelimella." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:43 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:44 msgid "Make sure the URL is correct and try again." msgstr "Tarkista että URL on oikein ja yritä uudestaan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:44 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:45 msgid "Make sure the server name is spelled correctly and try again." msgstr "" "Tarkista että palvelimen nimi on kirjoitettu oikein ja yritä uudestaan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:45 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:46 msgid "Make sure the username and password are correct and try again." msgstr "" "Tarkista että käyttäjätunnus ja salasana ovat oikein ja yritä uudestaan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:46 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:47 msgid "No Global Catalog server configured for this account." msgstr "Yhteistä luettelopalvelinta ei ole määritelty tälle tilille." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:47 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:48 msgid "No mailbox for user {0} on {1}." msgstr "Käyttäjällä {0} ei ole postilaatikkoa palvelimella {1}." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:48 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:49 msgid "No such user {0}" msgstr "Käyttäjää {0} ei ole olemassa" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:49 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:50 msgid "Password successfully changed." msgstr "Salasanan vaihto onnistui." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:51 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:52 msgid "Please enter a Delegate's ID or deselect the Send as a Delegate option." msgstr "Anna valtuuttajan tunniste tai poista lähetä valtuutettuna -asetus." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:52 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:53 msgid "Please make sure the Global Catalog Server name is correct." msgstr "Varmista, että yhteisen luettelopalvelimen nimi on oikein." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:53 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:54 msgid "Please restart Evolution for changes to take effect" msgstr "Käynnistä Evolution uudestaan, jotta muutokset tulevat voimaan" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:54 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:55 msgid "Please select a user." msgstr "Valitse käyttäjä." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:55 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:56 msgid "Server rejected password because it is too weak." msgstr "Palvelin hylkäsi salasanan, koska se on liian yksinkertainen." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:56 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:57 msgid "The Exchange account will be disabled when you quit Evolution" msgstr "Exchange-tili poistetaan käytöstä kun suljet evolutionin" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:57 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:58 msgid "The Exchange account will be removed when you quit Evolution" msgstr "Exchange-tili poistetaan, kun suljet Evolutionin" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:58 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:59 msgid "The Exchange server is not compatible with Exchange Connector." msgstr "Exchange-palvelin ei ole yhteensopiva Exchange Connectorin kanssa." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:59 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:60 msgid "" "The server is running Exchange 5.5. Exchange Connector \n" "supports Microsoft Exchange 2000 and 2003 only." @@ -17470,7 +17421,7 @@ msgstr "" "Palvelimen versio on Exchange 5.5. Exchange Connector \n" "tukee ainoastaan versioita Microsoft Exchange 2000 ja 2003." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:61 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:62 msgid "" "This probably means that your server requires \n" "you to specify the Windows domain name \n" @@ -17483,41 +17434,41 @@ msgstr "" "osana käyttäjätunnusta (esim. "ALUENIMI\\käyttäjä").\n" "Voi myös olla että syötit väärän salasanan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:66 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:67 msgid "Try again with a different password." msgstr "Yritä uudestaan eri salasanalla." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:67 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:68 msgid "Unable to add user to access control list:" msgstr "Käyttäjää ei voi lisätä pääsylistalle:" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:68 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:69 msgid "Unable to edit delegates." msgstr "Valtuutuslistan muokkaus epäonnistui." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:69 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:70 msgid "Unknown error looking up {0}" msgstr "Tuntematon virhe etsittäessä {0}" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:70 -#: ../plugins/google-account-setup/google-source.c:543 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:71 +#: ../plugins/google-account-setup/google-source.c:540 msgid "Unknown error." msgstr "Tuntematon virhe." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:71 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:72 msgid "Unknown type" msgstr "Tuntematon tyyppi" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:72 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:73 msgid "Unsupported operation" msgstr "Toimenpide ei ole tuettu" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:73 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:74 msgid "You are nearing your quota available for storing mail on this server." msgstr "" "Sähköpostisi tallennukseen varattu tila tällä palvelimella alkaa loppua." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:74 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:75 msgid "" "You are permitted to send a message on behalf of only one delegator at a " "time." @@ -17525,19 +17476,19 @@ msgstr "" "Sinulla on lupa lähettää viestejä toisten puolesta vain yhden valtuuttajan " "nimissä kerrallaan." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:75 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:76 msgid "You cannot make yourself your own delegate" msgstr "Et voi valtuuttaa itseäsi." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:76 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:77 msgid "You have exceeded your quota for storing mail on this server." msgstr "Sähköpostillesi varattu tila tällä palvelimella on loppu." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:77 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:78 msgid "You may only configure a single Exchange account." msgstr "Voit määritellä vain yhden Exchange-tilin." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:78 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:79 msgid "" "Your current usage is: {0} KB. Try to clear up some space by deleting some " "mail." @@ -17545,14 +17496,14 @@ msgstr "" "Käytät tällä hetkellä {0} kt. Yritä vapauttaa tilaa poistamalla joitain " "viestejä." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:79 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:80 msgid "" "Your current usage is: {0} KB. You will not be able to either send or " "receive mail now." msgstr "" "Käytät tällä hetkellä {0} kt. Et voi lähettää tai vastaanottaa sähköpostia." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:80 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:81 msgid "" "Your current usage is: {0} KB. You will not be able to send mail until you " "clear up some space by deleting some mail." @@ -17560,19 +17511,19 @@ msgstr "" "Käytät tällä hetkellä {0} kt. Et voi lähettää sähköpostia ennen kuin olet " "vapauttanut tilaa poistamalla joitain tallennettuja viestejä." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:81 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:82 msgid "Your password has expired." msgstr "Salasanasi on vanhentunut." -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:83 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:84 msgid "{0} cannot be added to an access control list" msgstr "{0} ei voi lisätä pääsylistalle" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:84 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:85 msgid "{0} is already a delegate" msgstr "{0} on jo valtuutettu" -#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:85 +#: ../plugins/exchange-operations/org-gnome-exchange-operations.error.xml.h:86 msgid "{0} is already in the list" msgstr "{0} on jo listalla" @@ -17679,9 +17630,8 @@ msgid "Unsubscribing from folder \"%s\"" msgstr "Peru kansion \"%s\" tilaus" #: ../plugins/folder-unsubscribe/org-gnome-mail-folder-unsubscribe.eplug.xml.h:1 -msgid "Allows unsubscribing of mail folders in the folder tree context menu." -msgstr "" -"Mahdollistaa postituslistan tilauksen perumisen kansiopuun kontekstivalikosta" +msgid "Allows unsubscribing of mail folders in the side bar context menu." +msgstr "Sallii postikansioiden tilauksen perumisen sivupalkin kontekstivalikosta." #: ../plugins/folder-unsubscribe/org-gnome-mail-folder-unsubscribe.eplug.xml.h:2 msgid "Unsubscribe Folders" @@ -17693,22 +17643,18 @@ msgstr "_Peru tilaus" #: ../plugins/google-account-setup/google-source.c:83 #: ../plugins/google-account-setup/google-source.c:90 -#: ../plugins/google-account-setup/google-contacts-source.c:52 -#: ../plugins/google-account-setup/google-contacts-source.c:57 -#: ../plugins/google-account-setup/google-contacts-source.c:83 +#: ../plugins/google-account-setup/google-contacts-source.c:53 +#: ../plugins/google-account-setup/google-contacts-source.c:58 +#: ../plugins/google-account-setup/google-contacts-source.c:84 msgid "Google" msgstr "Google" -#: ../plugins/google-account-setup/google-source.c:439 -msgid "Please enter user name first." -msgstr "Syötä ensin käyttäjätunnus." - -#: ../plugins/google-account-setup/google-source.c:443 +#: ../plugins/google-account-setup/google-source.c:440 #, c-format msgid "Enter password for user %s to access list of subscribed calendars." msgstr "Syötä salasana käyttäjälle %s tilattujen kalentereiden käyttöä varten." -#: ../plugins/google-account-setup/google-source.c:543 +#: ../plugins/google-account-setup/google-source.c:540 #, c-format msgid "" "Cannot read data from Google server.\n" @@ -17717,15 +17663,15 @@ msgstr "" "Ei voi lukea tietoja Googlen palvelimelta.\n" "%s" -#: ../plugins/google-account-setup/google-source.c:693 +#: ../plugins/google-account-setup/google-source.c:702 msgid "Cal_endar:" msgstr "_Kalenteri:" -#: ../plugins/google-account-setup/google-source.c:728 +#: ../plugins/google-account-setup/google-source.c:737 msgid "Retrieve _list" msgstr "Nouda _luettelo" -#: ../plugins/google-account-setup/google-contacts-source.c:268 +#: ../plugins/google-account-setup/google-contacts-source.c:278 #: ../plugins/webdav-account-setup/webdav-contacts-source.c:300 msgid "<b>Server</b>" msgstr "<b>Palvelin</b>" @@ -18046,7 +17992,7 @@ msgstr "" msgid "The Proxy tab will be available only when the account is enabled." msgstr "Välimuisti on käytettävissä vain jos tili on käytössä." -#: ../plugins/groupwise-features/send-options.c:215 +#: ../plugins/groupwise-features/send-options.c:214 msgid "Advanced send options" msgstr "Lähetyksen lisäasetukset" @@ -18079,56 +18025,56 @@ msgstr "Lisää " msgid "Modify" msgstr "Muokkaa" -#: ../plugins/groupwise-features/status-track.c:107 +#: ../plugins/groupwise-features/status-track.c:97 msgid "Message Status" msgstr "Viestin tila" #. Subject -#: ../plugins/groupwise-features/status-track.c:121 +#: ../plugins/groupwise-features/status-track.c:111 msgid "Subject:" msgstr "Aihe:" -#: ../plugins/groupwise-features/status-track.c:135 +#: ../plugins/groupwise-features/status-track.c:125 msgid "From:" msgstr "Lähettäjä:" -#: ../plugins/groupwise-features/status-track.c:150 +#: ../plugins/groupwise-features/status-track.c:140 msgid "Creation date:" msgstr "Luontipäivä:" -#: ../plugins/groupwise-features/status-track.c:189 +#: ../plugins/groupwise-features/status-track.c:179 msgid "Recipient: " msgstr "Vastaanottaja: " -#: ../plugins/groupwise-features/status-track.c:196 +#: ../plugins/groupwise-features/status-track.c:186 msgid "Delivered: " msgstr "Toimitettu: " -#: ../plugins/groupwise-features/status-track.c:202 +#: ../plugins/groupwise-features/status-track.c:192 msgid "Opened: " msgstr "Avattu: " -#: ../plugins/groupwise-features/status-track.c:207 +#: ../plugins/groupwise-features/status-track.c:197 msgid "Accepted: " msgstr "Hyväksytty: " -#: ../plugins/groupwise-features/status-track.c:212 +#: ../plugins/groupwise-features/status-track.c:202 msgid "Deleted: " msgstr "Poistettu: " -#: ../plugins/groupwise-features/status-track.c:217 +#: ../plugins/groupwise-features/status-track.c:207 msgid "Declined: " msgstr "Hylätty: " -#: ../plugins/groupwise-features/status-track.c:222 +#: ../plugins/groupwise-features/status-track.c:212 msgid "Completed: " msgstr "Valmistunut: " -#: ../plugins/groupwise-features/status-track.c:227 +#: ../plugins/groupwise-features/status-track.c:217 msgid "Undelivered: " msgstr "Ei lähetetty: " -#: ../plugins/groupwise-features/status-track.c:251 +#: ../plugins/groupwise-features/status-track.c:241 msgid "Track Message Status..." msgstr "Seuraa viestin tilaa..." @@ -18276,130 +18222,130 @@ msgstr "_Synkronoi iPod" msgid "iPod Synchronization" msgstr "iPod-synkronointi" -#: ../plugins/itip-formatter/itip-formatter.c:443 -#: ../plugins/itip-formatter/itip-formatter.c:568 +#: ../plugins/itip-formatter/itip-formatter.c:481 +#: ../plugins/itip-formatter/itip-formatter.c:606 #, c-format msgid "Failed to load the calendar '%s'" msgstr "Kalenterin \"%s\" lataus epäonnistui" -#: ../plugins/itip-formatter/itip-formatter.c:588 +#: ../plugins/itip-formatter/itip-formatter.c:626 #, c-format msgid "An appointment in the calendar '%s' conflicts with this meeting" msgstr "" "Kalenterin \"%s\" sisältämä tapaaminen on ristiriidassa tämän kokouksen " "kanssa" -#: ../plugins/itip-formatter/itip-formatter.c:614 +#: ../plugins/itip-formatter/itip-formatter.c:652 #, c-format msgid "Found the appointment in the calendar '%s'" msgstr "Tapaaminen löytyi kalenterista \"%s\"" -#: ../plugins/itip-formatter/itip-formatter.c:690 +#: ../plugins/itip-formatter/itip-formatter.c:741 msgid "Unable to find any calendars" msgstr "Yhtäkään kalenteria ei löydy" -#: ../plugins/itip-formatter/itip-formatter.c:697 +#: ../plugins/itip-formatter/itip-formatter.c:748 msgid "Unable to find this meeting in any calendar" msgstr "Tätä kokousta ei löydy mistään kalenterista" -#: ../plugins/itip-formatter/itip-formatter.c:701 +#: ../plugins/itip-formatter/itip-formatter.c:752 msgid "Unable to find this task in any task list" msgstr "Tätä tehtävää ei löydy mistään tehtävälistasta" -#: ../plugins/itip-formatter/itip-formatter.c:705 +#: ../plugins/itip-formatter/itip-formatter.c:756 msgid "Unable to find this memo in any memo list" msgstr "Tätä muistilappua ei löydy mistään muistilappuluettelosta" -#: ../plugins/itip-formatter/itip-formatter.c:776 +#: ../plugins/itip-formatter/itip-formatter.c:827 msgid "Searching for an existing version of this appointment" msgstr "Etsitään olemassaolevia versioita tapaamisesta" -#: ../plugins/itip-formatter/itip-formatter.c:945 +#: ../plugins/itip-formatter/itip-formatter.c:996 msgid "Unable to parse item" msgstr "Kohdetta ei voi tulkita" -#: ../plugins/itip-formatter/itip-formatter.c:1003 +#: ../plugins/itip-formatter/itip-formatter.c:1054 #, c-format msgid "Unable to send item to calendar '%s'. %s" msgstr "Kohtaa ei voi lähettää kalenteriin \"%s\". %s" -#: ../plugins/itip-formatter/itip-formatter.c:1015 +#: ../plugins/itip-formatter/itip-formatter.c:1066 #, c-format msgid "Sent to calendar '%s' as accepted" msgstr "Lähetetty kalenteriin \"%s\" hyväksyttynä" -#: ../plugins/itip-formatter/itip-formatter.c:1019 +#: ../plugins/itip-formatter/itip-formatter.c:1070 #, c-format msgid "Sent to calendar '%s' as tentative" msgstr "Lähetetty kalenteriin \"%s\" alustavana" -#: ../plugins/itip-formatter/itip-formatter.c:1024 +#: ../plugins/itip-formatter/itip-formatter.c:1075 #, c-format msgid "Sent to calendar '%s' as declined" msgstr "Lähetetty kalenteriin \"%s\" hylättynä" -#: ../plugins/itip-formatter/itip-formatter.c:1029 +#: ../plugins/itip-formatter/itip-formatter.c:1080 #, c-format msgid "Sent to calendar '%s' as canceled" msgstr "Lähetetty kalenteriin \"%s\" peruttuna" -#: ../plugins/itip-formatter/itip-formatter.c:1123 +#: ../plugins/itip-formatter/itip-formatter.c:1174 #, c-format msgid "Organizer has removed the delegate %s " msgstr "Järjestäjä on poistanut valtuutuksen %s " -#: ../plugins/itip-formatter/itip-formatter.c:1130 +#: ../plugins/itip-formatter/itip-formatter.c:1181 msgid "Sent a cancelation notice to the delegate" msgstr "Lähetettiin perumisilmoitus valtuutetulle" -#: ../plugins/itip-formatter/itip-formatter.c:1132 +#: ../plugins/itip-formatter/itip-formatter.c:1183 msgid "Could not send the cancelation notice to the delegate" msgstr "Perumisilmoitusta ei voi lähettää valtuutetulle" -#: ../plugins/itip-formatter/itip-formatter.c:1218 +#: ../plugins/itip-formatter/itip-formatter.c:1289 msgid "Attendee status could not be updated because the status is invalid" msgstr "Läsnäolon tilaa ei voi päivittää virheellisen tilan takia" -#: ../plugins/itip-formatter/itip-formatter.c:1245 +#: ../plugins/itip-formatter/itip-formatter.c:1318 #, c-format msgid "Unable to update attendee. %s" msgstr "Läsnäolijaa ei voi päivittää. %s" -#: ../plugins/itip-formatter/itip-formatter.c:1249 +#: ../plugins/itip-formatter/itip-formatter.c:1322 msgid "Attendee status updated" msgstr "Läsnäolon tila päivitetty" -#: ../plugins/itip-formatter/itip-formatter.c:1275 +#: ../plugins/itip-formatter/itip-formatter.c:1348 msgid "Meeting information sent" msgstr "Kokouksen tiedot lähetetty" -#: ../plugins/itip-formatter/itip-formatter.c:1278 +#: ../plugins/itip-formatter/itip-formatter.c:1351 msgid "Task information sent" msgstr "Tehtävän tiedot lähetetty" -#: ../plugins/itip-formatter/itip-formatter.c:1281 +#: ../plugins/itip-formatter/itip-formatter.c:1354 msgid "Memo information sent" msgstr "Muistilapun tiedot lähetetty" -#: ../plugins/itip-formatter/itip-formatter.c:1290 +#: ../plugins/itip-formatter/itip-formatter.c:1363 msgid "Unable to send meeting information, the meeting does not exist" msgstr "Kokoustietoja ei voitu lähettää, koska kokousta ei löydy" -#: ../plugins/itip-formatter/itip-formatter.c:1293 +#: ../plugins/itip-formatter/itip-formatter.c:1366 msgid "Unable to send task information, the task does not exist" msgstr "Tehtävän tietoja ei voitu lähettää, koska tehtävää ei löydy" -#: ../plugins/itip-formatter/itip-formatter.c:1296 +#: ../plugins/itip-formatter/itip-formatter.c:1369 msgid "Unable to send memo information, the memo does not exist" msgstr "Muistilapun tietoja ei voitu lähettää, koska muistilappua ei löydy" -#: ../plugins/itip-formatter/itip-formatter.c:1365 -#: ../plugins/itip-formatter/itip-formatter.c:1376 +#: ../plugins/itip-formatter/itip-formatter.c:1438 +#: ../plugins/itip-formatter/itip-formatter.c:1449 msgid "The calendar attached is not valid" msgstr "Liitetty kalenteri ei ole kelvollinen" -#: ../plugins/itip-formatter/itip-formatter.c:1366 -#: ../plugins/itip-formatter/itip-formatter.c:1377 +#: ../plugins/itip-formatter/itip-formatter.c:1439 +#: ../plugins/itip-formatter/itip-formatter.c:1450 msgid "" "The message claims to contain a calendar, but the calendar is not a valid " "iCalendar." @@ -18407,15 +18353,15 @@ msgstr "" "Viesti väittää sisältävänsä kalenterin, mutta kalenteri ei ole kelvollinen " "iCalendar-tiedosto." -#: ../plugins/itip-formatter/itip-formatter.c:1417 -#: ../plugins/itip-formatter/itip-formatter.c:1435 -#: ../plugins/itip-formatter/itip-formatter.c:1517 +#: ../plugins/itip-formatter/itip-formatter.c:1490 +#: ../plugins/itip-formatter/itip-formatter.c:1518 +#: ../plugins/itip-formatter/itip-formatter.c:1600 msgid "The item in the calendar is not valid" msgstr "Kalenterin sisältö ei ole kelvollinen" -#: ../plugins/itip-formatter/itip-formatter.c:1418 -#: ../plugins/itip-formatter/itip-formatter.c:1436 -#: ../plugins/itip-formatter/itip-formatter.c:1518 +#: ../plugins/itip-formatter/itip-formatter.c:1491 +#: ../plugins/itip-formatter/itip-formatter.c:1519 +#: ../plugins/itip-formatter/itip-formatter.c:1601 msgid "" "The message does contain a calendar, but the calendar contains no events, " "tasks or free/busy information" @@ -18423,11 +18369,11 @@ msgstr "" "Viesti sisältää kalenterin, mutta kalenterissa ei ole tapahtumia, tehtäviä " "tai vapaa/varattu-tietoja." -#: ../plugins/itip-formatter/itip-formatter.c:1447 +#: ../plugins/itip-formatter/itip-formatter.c:1530 msgid "The calendar attached contains multiple items" msgstr "Liitetyssä kalenterissa on useita kohtia" -#: ../plugins/itip-formatter/itip-formatter.c:1448 +#: ../plugins/itip-formatter/itip-formatter.c:1531 msgid "" "To process all of these items, the file should be saved and the calendar " "imported" @@ -18435,31 +18381,31 @@ msgstr "" "Jos haluat käsitellä kaikki nämä kohdat, tiedosto täytyy tallentaa ja avata " "tuomalla tiedosto kalenteriin" -#: ../plugins/itip-formatter/itip-formatter.c:2148 +#: ../plugins/itip-formatter/itip-formatter.c:2240 msgid "This meeting recurs" msgstr "Tapaaminen on _toistuva" -#: ../plugins/itip-formatter/itip-formatter.c:2151 +#: ../plugins/itip-formatter/itip-formatter.c:2243 msgid "This task recurs" msgstr "Tehtävä on toistuva" -#: ../plugins/itip-formatter/itip-formatter.c:2154 +#: ../plugins/itip-formatter/itip-formatter.c:2246 msgid "This memo recurs" msgstr "Muistilappu on toistuva" #. Delete message after acting #. FIXME Need a schema for this -#: ../plugins/itip-formatter/itip-formatter.c:2388 +#: ../plugins/itip-formatter/itip-formatter.c:2482 msgid "_Delete message after acting" msgstr "_Poista viesti, kun toimenpide on suoritettu" -#: ../plugins/itip-formatter/itip-formatter.c:2398 -#: ../plugins/itip-formatter/itip-formatter.c:2430 +#: ../plugins/itip-formatter/itip-formatter.c:2492 +#: ../plugins/itip-formatter/itip-formatter.c:2524 msgid "Conflict Search" msgstr "Ristiriitaisuuksien haku" #. Source selector -#: ../plugins/itip-formatter/itip-formatter.c:2413 +#: ../plugins/itip-formatter/itip-formatter.c:2507 msgid "Select the calendars to search for meeting conflicts" msgstr "Valitse kalenterit, joista etsitään päällekkäisiä kokouksia" @@ -19035,20 +18981,20 @@ msgstr "Vilkkuuko uudesta sähköpostista ilmoittava kuvake." msgid "Whether to notify new messages in Inbox folder only." msgstr "Huomautetaanko uusista viesteistä vain saapuvien kansiossa." -#: ../plugins/mail-notification/mail-notification.c:255 +#: ../plugins/mail-notification/mail-notification.c:256 msgid "Generate a _D-Bus message" msgstr "Luo D-Bus-viesti" -#: ../plugins/mail-notification/mail-notification.c:378 +#: ../plugins/mail-notification/mail-notification.c:379 msgid "Evolution's Mail Notification" msgstr "Evolutionin viestihuomautus" -#: ../plugins/mail-notification/mail-notification.c:399 +#: ../plugins/mail-notification/mail-notification.c:400 msgid "Mail Notification Properties" msgstr "Sähköpostihuomautuksen ominaisuudet" #. To translators: '%d' is the number of mails recieved and '%s' is the name of the folder -#: ../plugins/mail-notification/mail-notification.c:458 +#: ../plugins/mail-notification/mail-notification.c:479 #, c-format msgid "" "You have received %d new message\n" @@ -19063,55 +19009,55 @@ msgstr[1] "" "%d uutta viestiä\n" "kansiossa %s." -#: ../plugins/mail-notification/mail-notification.c:463 +#: ../plugins/mail-notification/mail-notification.c:484 #, c-format msgid "You have received %d new message." msgid_plural "You have received %d new messages." msgstr[0] "%d uusi viesti vastaanotettu." msgstr[1] "%d uutta viestiä vastaanotettu." -#: ../plugins/mail-notification/mail-notification.c:480 -#: ../plugins/mail-notification/mail-notification.c:485 +#: ../plugins/mail-notification/mail-notification.c:501 +#: ../plugins/mail-notification/mail-notification.c:506 msgid "New email" msgstr "Uusi sähköposti" -#: ../plugins/mail-notification/mail-notification.c:544 +#: ../plugins/mail-notification/mail-notification.c:566 msgid "Show icon in _notification area" msgstr "Näytä kuvake _ilmoitusalueella" -#: ../plugins/mail-notification/mail-notification.c:547 +#: ../plugins/mail-notification/mail-notification.c:569 msgid "B_link icon in notification area" msgstr "_Vilkuta kuvaketta ilmoitusalueella" -#: ../plugins/mail-notification/mail-notification.c:549 +#: ../plugins/mail-notification/mail-notification.c:571 msgid "Popup _message together with the icon" msgstr "Näytä viesti _ponnahdusikkunassa kuvakkeen lisäksi" -#: ../plugins/mail-notification/mail-notification.c:730 +#: ../plugins/mail-notification/mail-notification.c:752 msgid "_Play sound when new messages arrive" msgstr "_Soita ääniä uuden sähköpostin saapuessa" -#: ../plugins/mail-notification/mail-notification.c:736 +#: ../plugins/mail-notification/mail-notification.c:758 msgid "_Beep" msgstr "_Piippaa" -#: ../plugins/mail-notification/mail-notification.c:737 +#: ../plugins/mail-notification/mail-notification.c:759 msgid "Play _sound file" msgstr "So_ita äänitiedosto" -#: ../plugins/mail-notification/mail-notification.c:748 +#: ../plugins/mail-notification/mail-notification.c:770 msgid "Specify _filename:" msgstr "Anna _tiedostonimi:" -#: ../plugins/mail-notification/mail-notification.c:749 +#: ../plugins/mail-notification/mail-notification.c:771 msgid "Select sound file" msgstr "Valitse äänitiedosto" -#: ../plugins/mail-notification/mail-notification.c:750 +#: ../plugins/mail-notification/mail-notification.c:772 msgid "Pl_ay" msgstr "_Soita" -#: ../plugins/mail-notification/mail-notification.c:807 +#: ../plugins/mail-notification/mail-notification.c:829 msgid "Notify new messages for _Inbox only" msgstr "Huomauta uusista viesteistä _vain saapuvien kansiossa" @@ -19261,13 +19207,13 @@ msgstr "Lähetä sähköpostiviesti listalle?" #: ../plugins/mailing-list-actions/org-gnome-mailing-list-actions.error.xml.h:10 msgid "" -"The action could not be performed. This means the header for this action did " -"not contain any action we could process.\n" +"The action could not be performed. The header for this action did not " +"contain any action that could be processed.\n" "\n" "Header: {0}" msgstr "" -"Toimintoa ei voitu suorittaa. Tämä tarkoittaa ettei otsake toimenpiteelle " -"sisältänyt mitään toimenpidettä, joka voidaan käsitellä.\n" +"Tätä toimintoa ei voitu suorittaa. Otsake toimenpiteelle ei " +"sisältänyt mitään toimintoa, joka voidaan käsitellä.\n" "\n" "Otsake: {0}" @@ -19376,22 +19322,6 @@ msgstr "Merkitse vie_stit luetuiksi" msgid "Used for marking all the messages under a folder as read" msgstr "Käytetään merkitsemään kaikki kansion viestit luetuiksi" -#: ../plugins/mark-calendar-offline/org-gnome-mark-calendar-offline.eplug.xml.h:1 -msgid "Mark calendar offline" -msgstr "Merkitse kalenteri yhteydettömään käyttöön" - -#: ../plugins/mark-calendar-offline/org-gnome-mark-calendar-offline.eplug.xml.h:2 -msgid "Marks the selected calendar for offline viewing." -msgstr "Merkitse valittu kalenteri käytettäväksi yhteydettömässä tilassa." - -#: ../plugins/mark-calendar-offline/org-gnome-mark-calendar-offline.eplug.xml.h:3 -msgid "_Do not make available for offline use" -msgstr "_Älä kopioi käytettäväksi yhteydettömässä tilassa" - -#: ../plugins/mark-calendar-offline/org-gnome-mark-calendar-offline.eplug.xml.h:4 -msgid "_Make available for offline use" -msgstr "_Kopioi käytettäväksi yhteydettömässä tilassa" - #: ../plugins/mono/org-gnome-evolution-mono.eplug.xml.h:1 msgid "A plugin which implements mono plugins." msgstr "Liitännäinen, joka toteuttaa mono-liitännäiset." @@ -19639,7 +19569,7 @@ msgid "SpamAssassin child process does not respond, killing..." msgstr "SpamAssassinin lapsiprosessi ei vastaa, tapetaan..." #: ../plugins/sa-junk-plugin/em-junk-filter.c:245 -#, fuzzy, c-format +#, c-format msgid "Wait for SpamAssassin child process interrupted, terminating..." msgstr "Spamassassinin lapsiprosessin odotus keskeytettiin, lopetetaan..." @@ -19915,15 +19845,15 @@ msgstr "" "Luettelo avainsana- ja arvopareista, joita pohjat-liitännäinen käyttää " "viestin rungon osien korvaamiseen." -#: ../plugins/templates/templates.c:613 +#: ../plugins/templates/templates.c:603 msgid "No title" msgstr "Ei otsikkoa" -#: ../plugins/templates/templates.c:741 +#: ../plugins/templates/templates.c:711 msgid "Save as _Template" msgstr "Tallenna _pohjana" -#: ../plugins/templates/templates.c:743 +#: ../plugins/templates/templates.c:713 msgid "Save as Template" msgstr "Tallenna pohjana" @@ -19958,9 +19888,8 @@ msgid "URL:" msgstr "URL:" #: ../plugins/webdav-account-setup/webdav-contacts-source.c:338 -#, fuzzy msgid "_Avoid IfMatch (needed on Apache < 2.2.8)" -msgstr "_Vältä IfMatch-komento (vaaditaan apache-versiolle < 2.2.8)" +msgstr "_Vältä IfMatch-komentoa (vaaditaan apache-versiolle < 2.2.8)" #: ../shell/GNOME_Evolution_Shell.server.in.in.h:1 msgid "Evolution Shell" @@ -20104,7 +20033,7 @@ msgstr "Sivupaneeli on näkyvissä" msgid "Skip development warning dialog" msgstr "Ohita kehitysversiovaroitus" -#: ../shell/apps_evolution_shell.schemas.in.h:27 ../shell/main.c:471 +#: ../shell/apps_evolution_shell.schemas.in.h:27 ../shell/main.c:476 msgid "Start in offline mode" msgstr "Aloita yhteydettömässä tilassa" @@ -20318,7 +20247,7 @@ msgstr "Evolutionin asetukset" #. To translators: This is the window title and %s is the #. component name. Most translators will want to keep it as is. -#: ../shell/e-shell-view.c:47 ../shell/e-shell-window.c:332 +#: ../shell/e-shell-view.c:47 ../shell/e-shell-window.c:328 #, c-format msgid "%s - Evolution" msgstr "%s - evolution" @@ -20361,19 +20290,19 @@ msgstr "Evolutionin www-sivut" msgid "Error opening the FAQ webpage." msgstr "Virhe avattaessa FAQ-sivua." -#: ../shell/e-shell-window-commands.c:1168 +#: ../shell/e-shell-window-commands.c:1174 msgid "_Work Online" msgstr "_Yhteydellinen tila" -#: ../shell/e-shell-window-commands.c:1181 ../ui/evolution.xml.h:57 +#: ../shell/e-shell-window-commands.c:1187 ../ui/evolution.xml.h:57 msgid "_Work Offline" msgstr "_Yhteydetön tila" -#: ../shell/e-shell-window-commands.c:1194 +#: ../shell/e-shell-window-commands.c:1200 msgid "Work Offline" msgstr "Valitse yhteydetön tila" -#: ../shell/e-shell-window.c:381 +#: ../shell/e-shell-window.c:377 msgid "" "Evolution is currently online.\n" "Click on this button to work offline." @@ -20381,11 +20310,11 @@ msgstr "" "Evolution on yhteydellisessä tilassa.\n" "Siirry yhteydettömään tilaan napsauttamalla tästä." -#: ../shell/e-shell-window.c:388 +#: ../shell/e-shell-window.c:384 msgid "Evolution is in the process of going offline." msgstr "Evolution siirtyy yhteydettömään tilaan." -#: ../shell/e-shell-window.c:395 +#: ../shell/e-shell-window.c:391 msgid "" "Evolution is currently offline.\n" "Click on this button to work online." @@ -20393,7 +20322,7 @@ msgstr "" "Evolution on yhteydettömässä tilassa.\n" "Siirry yhteydelliseen tilaan napsauttamalla tästä." -#: ../shell/e-shell-window.c:786 +#: ../shell/e-shell-window.c:787 #, c-format msgid "Switch to %s" msgstr "Avaa %s" @@ -20407,19 +20336,19 @@ msgstr "Tuntematon järjestelmävirhe." msgid "%ld KB" msgstr "%ld KB" -#: ../shell/e-shell.c:1298 ../widgets/misc/e-cell-date-edit.c:314 +#: ../shell/e-shell.c:1262 ../widgets/misc/e-cell-date-edit.c:314 msgid "OK" msgstr "OK" -#: ../shell/e-shell.c:1300 +#: ../shell/e-shell.c:1264 msgid "Invalid arguments" msgstr "Virheellisiä argumentteja" -#: ../shell/e-shell.c:1302 +#: ../shell/e-shell.c:1266 msgid "Cannot register on OAF" msgstr "OAF:ia ei voidaan rekisteröidä" -#: ../shell/e-shell.c:1304 +#: ../shell/e-shell.c:1268 msgid "Configuration Database not found" msgstr "Asetustietokantaa ei löytynyt" @@ -20463,8 +20392,8 @@ msgid "Importer Type" msgstr "Tuojan tyyppi" #: ../shell/import.glade.h:6 -msgid "Select Importers" -msgstr "Valitse tuojat" +msgid "Select Information to Import" +msgstr "Valitse tuotavat tiedot" #: ../shell/import.glade.h:7 msgid "Select a File" @@ -20481,7 +20410,7 @@ msgstr "" "Evolutionin käyttöön." #. Preview/Alpha/Beta version warning message -#: ../shell/main.c:217 +#: ../shell/main.c:222 #, no-c-format msgid "" "Hi. Thanks for taking the time to download this preview release\n" @@ -20517,7 +20446,7 @@ msgstr "" "Toivomme että nautit kovan työmme tuloksista, ja odotamme innolla\n" "osallistumistasi kehitystyöhön!\n" -#: ../shell/main.c:241 +#: ../shell/main.c:246 msgid "" "Thanks\n" "The Evolution Team\n" @@ -20525,43 +20454,43 @@ msgstr "" "Kiitos\n" "Evolution-tiimi\n" -#: ../shell/main.c:248 +#: ../shell/main.c:253 msgid "Do not tell me again" msgstr "Älä kerro tätä uudestaan" -#: ../shell/main.c:469 +#: ../shell/main.c:474 msgid "Start Evolution activating the specified component" msgstr "Käynnistä Evolution aktivoimalla määritelty komponentti" -#: ../shell/main.c:473 +#: ../shell/main.c:478 msgid "Start in online mode" msgstr "Aloita yhteydellisessä tilassa" -#: ../shell/main.c:476 +#: ../shell/main.c:481 msgid "Forcibly shut down all Evolution components" msgstr "Sulje kaikki Evolutionin osat väkisin" -#: ../shell/main.c:480 +#: ../shell/main.c:485 msgid "Forcibly re-migrate from Evolution 1.4" msgstr "Tuo tiedot väkisin uudestaan Evolution 1.4:stä" -#: ../shell/main.c:483 +#: ../shell/main.c:488 msgid "Send the debugging output of all components to a file." msgstr "Lähetä testitulosteet kaikista komponenteista tiedostoon." -#: ../shell/main.c:485 +#: ../shell/main.c:490 msgid "Disable loading of any plugins." msgstr "Älä lataa mitään liitännäisiä." -#: ../shell/main.c:487 +#: ../shell/main.c:492 msgid "Disable preview pane of Mail, Contacts and Tasks." msgstr "Poista sähköpostien, yhteystietojen ja tehtävien esikatselu käytöstä." -#: ../shell/main.c:572 +#: ../shell/main.c:577 msgid "- The Evolution PIM and Email Client" msgstr ", sähköposti- ja ajanhallintaohjelma" -#: ../shell/main.c:600 +#: ../shell/main.c:605 #, c-format msgid "" "%s: --online and --offline cannot be used together.\n" @@ -20762,7 +20691,7 @@ msgid "Purposes" msgstr "Tarkoitukset" #: ../smime/gui/certificate-manager.c:289 ../smime/gui/smime-ui.glade.h:37 -#: ../smime/lib/e-cert.c:570 +#: ../smime/lib/e-cert.c:553 msgid "Serial Number" msgstr "Sarjanumero" @@ -20880,7 +20809,7 @@ msgstr "" "Ennen kuin luotat tähän CA:han missää tarkoituksessa, tulisi sinun tutkia " "varmenne tarkasti." -#: ../smime/gui/smime-ui.glade.h:14 ../smime/lib/e-cert.c:1077 +#: ../smime/gui/smime-ui.glade.h:14 ../smime/lib/e-cert.c:1060 msgid "Certificate" msgstr "Varmenne" @@ -20956,11 +20885,11 @@ msgstr "Organisaatioyksikkö (OU)" msgid "SHA1 Fingerprint" msgstr "SHA1 sormenjälki" -#: ../smime/gui/smime-ui.glade.h:35 ../smime/lib/e-cert.c:819 +#: ../smime/gui/smime-ui.glade.h:35 ../smime/lib/e-cert.c:802 msgid "SSL Client Certificate" msgstr "SSL-asiakkaan varmenne" -#: ../smime/gui/smime-ui.glade.h:36 ../smime/lib/e-cert.c:823 +#: ../smime/gui/smime-ui.glade.h:36 ../smime/lib/e-cert.c:806 msgid "SSL Server Certificate" msgstr "SSL-palvelimen varmenne" @@ -21009,182 +20938,182 @@ msgid "_Edit CA Trust" msgstr "_Muokkaa CA:n luottamusta" #. XXX we shouldn't be popping up dialogs in this code. -#: ../smime/lib/e-cert-db.c:672 +#: ../smime/lib/e-cert-db.c:656 msgid "Certificate already exists" msgstr "Varmenne on jo olemassa" -#: ../smime/lib/e-cert.c:239 ../smime/lib/e-cert.c:249 +#: ../smime/lib/e-cert.c:222 ../smime/lib/e-cert.c:232 msgid "%d/%m/%Y" msgstr "%d.%m.%Y" #. x509 certificate usage types -#: ../smime/lib/e-cert.c:425 +#: ../smime/lib/e-cert.c:408 msgid "Sign" msgstr "Allekirjoita" -#: ../smime/lib/e-cert.c:426 +#: ../smime/lib/e-cert.c:409 msgid "Encrypt" msgstr "Salaa" -#: ../smime/lib/e-cert.c:531 +#: ../smime/lib/e-cert.c:514 msgid "Version" msgstr "Versio" -#: ../smime/lib/e-cert.c:546 +#: ../smime/lib/e-cert.c:529 msgid "Version 1" msgstr "Versio 1" -#: ../smime/lib/e-cert.c:549 +#: ../smime/lib/e-cert.c:532 msgid "Version 2" msgstr "Versio 2" -#: ../smime/lib/e-cert.c:552 +#: ../smime/lib/e-cert.c:535 msgid "Version 3" msgstr "Versio 3" -#: ../smime/lib/e-cert.c:634 +#: ../smime/lib/e-cert.c:617 msgid "PKCS #1 MD2 With RSA Encryption" msgstr "PKCS #1 MD2 RSA-salauksella" -#: ../smime/lib/e-cert.c:637 +#: ../smime/lib/e-cert.c:620 msgid "PKCS #1 MD5 With RSA Encryption" msgstr "PKCS #1 MD5 RSA-salauksella" -#: ../smime/lib/e-cert.c:640 +#: ../smime/lib/e-cert.c:623 msgid "PKCS #1 SHA-1 With RSA Encryption" msgstr "PKCS #1 SHA-1 RSA-salauksella" -#: ../smime/lib/e-cert.c:667 +#: ../smime/lib/e-cert.c:650 msgid "PKCS #1 RSA Encryption" msgstr "PKCS #1 RSA-salaus" -#: ../smime/lib/e-cert.c:670 +#: ../smime/lib/e-cert.c:653 msgid "Certificate Key Usage" msgstr "Varmenneavaimen käyttö" -#: ../smime/lib/e-cert.c:673 +#: ../smime/lib/e-cert.c:656 msgid "Netscape Certificate Type" msgstr "Netscape-varmenteen tyyppi" -#: ../smime/lib/e-cert.c:676 +#: ../smime/lib/e-cert.c:659 msgid "Certificate Authority Key Identifier" msgstr "Varmenneviranomaisen avaintunniste" -#: ../smime/lib/e-cert.c:688 +#: ../smime/lib/e-cert.c:671 #, c-format msgid "Object Identifier (%s)" msgstr "Kohteen tunniste (%s)" -#: ../smime/lib/e-cert.c:739 +#: ../smime/lib/e-cert.c:722 msgid "Algorithm Identifier" msgstr "Algoritmin tunniste" -#: ../smime/lib/e-cert.c:747 +#: ../smime/lib/e-cert.c:730 msgid "Algorithm Parameters" msgstr "Algoritmin parametrit" -#: ../smime/lib/e-cert.c:769 +#: ../smime/lib/e-cert.c:752 msgid "Subject Public Key Info" msgstr "Aiheen julkisen avaimen tiedot" -#: ../smime/lib/e-cert.c:774 +#: ../smime/lib/e-cert.c:757 msgid "Subject Public Key Algorithm" msgstr "Aiheen julkisen avaimen algoritmi" -#: ../smime/lib/e-cert.c:789 +#: ../smime/lib/e-cert.c:772 msgid "Subject's Public Key" msgstr "Kohteen julkinen avain" -#: ../smime/lib/e-cert.c:810 ../smime/lib/e-cert.c:859 +#: ../smime/lib/e-cert.c:793 ../smime/lib/e-cert.c:842 msgid "Error: Unable to process extension" msgstr "Virhe: laajennosta ei voi käsitellä" -#: ../smime/lib/e-cert.c:831 ../smime/lib/e-cert.c:843 +#: ../smime/lib/e-cert.c:814 ../smime/lib/e-cert.c:826 msgid "Object Signer" msgstr "Kohteen allekirjoittaja" -#: ../smime/lib/e-cert.c:835 +#: ../smime/lib/e-cert.c:818 msgid "SSL Certificate Authority" msgstr "SSL varmenneviranomainen" -#: ../smime/lib/e-cert.c:839 +#: ../smime/lib/e-cert.c:822 msgid "Email Certificate Authority" msgstr "Sähköpostivarmenneviranomainen" -#: ../smime/lib/e-cert.c:867 +#: ../smime/lib/e-cert.c:850 msgid "Signing" msgstr "Allekirjoitus" -#: ../smime/lib/e-cert.c:871 +#: ../smime/lib/e-cert.c:854 msgid "Non-repudiation" msgstr "Kiistämättömyys" -#: ../smime/lib/e-cert.c:875 +#: ../smime/lib/e-cert.c:858 msgid "Key Encipherment" msgstr "Avaimen salakoodaus" -#: ../smime/lib/e-cert.c:879 +#: ../smime/lib/e-cert.c:862 msgid "Data Encipherment" msgstr "Tiedon salakoodaus" -#: ../smime/lib/e-cert.c:883 +#: ../smime/lib/e-cert.c:866 msgid "Key Agreement" msgstr "Avaimen sopimus" -#: ../smime/lib/e-cert.c:887 +#: ../smime/lib/e-cert.c:870 msgid "Certificate Signer" msgstr "Varmenteen allekirjoittaja" -#: ../smime/lib/e-cert.c:891 +#: ../smime/lib/e-cert.c:874 msgid "CRL Signer" msgstr "CRL allekirjoittaja" -#: ../smime/lib/e-cert.c:939 +#: ../smime/lib/e-cert.c:922 msgid "Critical" msgstr "Kriittinen" -#: ../smime/lib/e-cert.c:941 ../smime/lib/e-cert.c:944 +#: ../smime/lib/e-cert.c:924 ../smime/lib/e-cert.c:927 msgid "Not Critical" msgstr "Ei-kriittinen" -#: ../smime/lib/e-cert.c:965 +#: ../smime/lib/e-cert.c:948 msgid "Extensions" msgstr "Laajennokset" -#: ../smime/lib/e-cert.c:1036 +#: ../smime/lib/e-cert.c:1019 #, c-format msgid "%s = %s" msgstr "%s = %s" -#: ../smime/lib/e-cert.c:1092 ../smime/lib/e-cert.c:1212 +#: ../smime/lib/e-cert.c:1075 ../smime/lib/e-cert.c:1195 msgid "Certificate Signature Algorithm" msgstr "Varmenteen allekirjoitusalgoritmi" -#: ../smime/lib/e-cert.c:1101 +#: ../smime/lib/e-cert.c:1084 msgid "Issuer" msgstr "Myöntäjä" -#: ../smime/lib/e-cert.c:1155 +#: ../smime/lib/e-cert.c:1138 msgid "Issuer Unique ID" msgstr "Myöntäjän yksilöllinen ID" -#: ../smime/lib/e-cert.c:1174 +#: ../smime/lib/e-cert.c:1157 msgid "Subject Unique ID" msgstr "Kohteen yksilöllinen tunniste" -#: ../smime/lib/e-cert.c:1217 +#: ../smime/lib/e-cert.c:1200 msgid "Certificate Signature Value" msgstr "Varmenteen allekirjoituksen arvo" -#: ../smime/lib/e-pkcs12.c:244 +#: ../smime/lib/e-pkcs12.c:249 msgid "PKCS12 File Password" msgstr "PKCS 12 tiedoston salasana" -#: ../smime/lib/e-pkcs12.c:244 +#: ../smime/lib/e-pkcs12.c:249 msgid "Enter password for PKCS12 file:" msgstr "Syötä salasana PKCS12 tiedostolle:" -#: ../smime/lib/e-pkcs12.c:343 +#: ../smime/lib/e-pkcs12.c:348 msgid "Imported Certificate" msgstr "Tuotu varmenne" @@ -21223,8 +21152,8 @@ msgid "Copy" msgstr "Kopioi" #: ../ui/evolution-addressbook.xml.h:7 -msgid "Copy Selected Contacts to Another Folder..." -msgstr "Kopioi valitut yhteystiedot toiseen kansioon..." +msgid "Copy selected contacts to another folder" +msgstr "Kopioi valitut yhteystiedot toiseen kansioon" #: ../ui/evolution-addressbook.xml.h:8 msgid "Copy the contacts of the selected folder into another folder" @@ -21272,8 +21201,8 @@ msgid "Mo_ve All Contacts To..." msgstr "Sii_rrä kaikki yhteystiedot..." #: ../ui/evolution-addressbook.xml.h:20 -msgid "Move Selected Contacts to Another Folder..." -msgstr "Siirrä valitut yhteystiedot toiseen kansioon..." +msgid "Move selected contacts to another folder" +msgstr "Siirrä valitut yhteystiedot toiseen kansioon" #: ../ui/evolution-addressbook.xml.h:21 msgid "Move the contacts of the selected folder into another folder" @@ -21313,14 +21242,14 @@ msgid "Save as VCard..." msgstr "Tallenna VCardina..." #: ../ui/evolution-addressbook.xml.h:32 -msgid "Save selected contacts as a VCard." -msgstr "Tallenna valitut yhteystiedot VCardina." +msgid "Save selected contacts as a VCard" +msgstr "Tallenna valitut yhteystiedot VCardina" #: ../ui/evolution-addressbook.xml.h:33 msgid "Save the contacts of the selected folder as VCard" msgstr "Tallenna yhteystiedot valitussa kansiossa VCardina" -#: ../ui/evolution-addressbook.xml.h:34 ../widgets/text/e-text.c:2723 +#: ../ui/evolution-addressbook.xml.h:34 ../widgets/text/e-text.c:2724 msgid "Select All" msgstr "Valitse kaikki" @@ -21333,16 +21262,16 @@ msgid "Select all contacts" msgstr "Valitse kaikki yhteystiedot" #: ../ui/evolution-addressbook.xml.h:37 -msgid "Send a message to the selected contacts." -msgstr "Lähetä viesti valituille henkilöille." +msgid "Send a message to the selected contacts" +msgstr "Lähetä viesti valituille henkilöille" #: ../ui/evolution-addressbook.xml.h:38 msgid "Send message to contact" msgstr "Lähetä viesti henkilölle" #: ../ui/evolution-addressbook.xml.h:39 -msgid "Send selected contacts to another person." -msgstr "Lähetä valitut yhteystiedot toiselle henkilölle." +msgid "Send selected contacts to another person" +msgstr "Lähetä valitut yhteystiedot toiselle henkilölle" #: ../ui/evolution-addressbook.xml.h:40 msgid "Show contact preview window" @@ -21364,7 +21293,7 @@ msgstr "Pysäytä lataaminen" msgid "View the current contact" msgstr "Katsele nykyistä yhteystietoa" -#: ../ui/evolution-addressbook.xml.h:45 ../ui/evolution-calendar.xml.h:38 +#: ../ui/evolution-addressbook.xml.h:45 ../ui/evolution-calendar.xml.h:39 #: ../ui/evolution-tasks.xml.h:21 msgid "_Actions" msgstr "T_oiminnot" @@ -21519,15 +21448,23 @@ msgstr "Näytä työviikko" msgid "View the current appointment" msgstr "Näytä valittu tapaaminen" -#: ../ui/evolution-calendar.xml.h:36 +#: ../ui/evolution-calendar.xml.h:36 ../ui/evolution-mail-global.xml.h:19 +msgid "View the debug console for log messages" +msgstr "Näytä lokiviestit vianetsintäkonsolissa" + +#: ../ui/evolution-calendar.xml.h:37 msgid "Week" msgstr "Viikko" -#: ../ui/evolution-calendar.xml.h:37 +#: ../ui/evolution-calendar.xml.h:38 msgid "Work Week" msgstr "Työviikko" -#: ../ui/evolution-calendar.xml.h:42 +#: ../ui/evolution-calendar.xml.h:41 ../ui/evolution-mail-global.xml.h:22 +msgid "_Debug Logs" +msgstr "_Vianetsintälokit" + +#: ../ui/evolution-calendar.xml.h:45 msgid "_Open Appointment" msgstr "_Avaa tapaaminen" @@ -21598,10 +21535,6 @@ msgstr "Näytä viestin esikatseluikkuna" msgid "Subscribe or unsubscribe to folders on remote servers" msgstr "Tilaa tai peru kansioiden tilauksia muilta palvelimilta" -#: ../ui/evolution-mail-global.xml.h:19 -msgid "View the debug console for log messages" -msgstr "Näytä lokiviestit vianetsintäkonsolissa" - #: ../ui/evolution-mail-global.xml.h:20 msgid "_Classic View" msgstr "_Perinteinen näkymä" @@ -21610,10 +21543,6 @@ msgstr "_Perinteinen näkymä" msgid "_Copy Folder To..." msgstr "_Kopioi kansio..." -#: ../ui/evolution-mail-global.xml.h:22 -msgid "_Debug Logs" -msgstr "_Vianetsintälokit" - #: ../ui/evolution-mail-global.xml.h:23 msgid "_Download Messages for Offline Usage" msgstr "_Nouda viestit yhteydettömään käyttöön" @@ -21638,8 +21567,8 @@ msgstr "_Esikatselu" #. <menuitem name="CreateVFolder" verb="CreateVFolder" _label="_New Search _Folder (FIXME)"/> #. #: ../ui/evolution-mail-global.xml.h:32 -msgid "_Subscriptions" -msgstr "_Tilatut kansiot" +msgid "_Subscriptions..." +msgstr "_Tilaukset..." #: ../ui/evolution-mail-global.xml.h:33 msgid "_Vertical View" @@ -21720,10 +21649,6 @@ msgstr "Poista pysyvästi kaikki poistetut viestit tästä kansiosta" msgid "Permanently remove this folder" msgstr "Poista tämä kansio pysyvästi" -#: ../ui/evolution-mail-list.xml.h:21 -msgid "Re_fresh..." -msgstr "Vi_rkistä..." - #: ../ui/evolution-mail-list.xml.h:22 msgid "Refresh the folder" msgstr "Virkistä kansio" @@ -22236,6 +22161,10 @@ msgstr "Lä_hennä" msgid "Close" msgstr "Sulje" +#: ../ui/evolution-mail-messagedisplay.xml.h:2 ../ui/evolution.xml.h:4 +msgid "Close this window" +msgstr "Sulje tämä ikkuna" + #: ../ui/evolution-mail-messagedisplay.xml.h:3 ../ui/evolution.xml.h:18 msgid "Main toolbar" msgstr "Päätyökalupalkki" @@ -22646,7 +22575,7 @@ msgid "Define Views for \"%s\"" msgstr "Määrittele %s näkymät" #: ../widgets/menus/gal-view-factory-etable.c:37 -#: ../widgets/table/e-table-header-item.c:1922 +#: ../widgets/table/e-table-header-item.c:1921 #: ../widgets/table/e-table-scrolled.c:215 #: ../widgets/table/e-table-scrolled.c:216 msgid "Table" @@ -22769,23 +22698,23 @@ msgid "Month Calendar" msgstr "Kuukausikalenteri" #: ../widgets/misc/e-canvas-background.c:454 -#: ../widgets/misc/e-canvas-background.c:455 ../widgets/text/e-text.c:3643 -#: ../widgets/text/e-text.c:3644 +#: ../widgets/misc/e-canvas-background.c:455 ../widgets/text/e-text.c:3644 +#: ../widgets/text/e-text.c:3645 msgid "Fill color" msgstr "Täytön väri" #: ../widgets/misc/e-canvas-background.c:461 #: ../widgets/misc/e-canvas-background.c:462 #: ../widgets/misc/e-canvas-background.c:468 -#: ../widgets/misc/e-canvas-background.c:469 ../widgets/text/e-text.c:3650 -#: ../widgets/text/e-text.c:3651 ../widgets/text/e-text.c:3658 -#: ../widgets/text/e-text.c:3659 +#: ../widgets/misc/e-canvas-background.c:469 ../widgets/text/e-text.c:3651 +#: ../widgets/text/e-text.c:3652 ../widgets/text/e-text.c:3659 +#: ../widgets/text/e-text.c:3660 msgid "GDK fill color" msgstr "GDK:n täyttöväri" #: ../widgets/misc/e-canvas-background.c:475 -#: ../widgets/misc/e-canvas-background.c:476 ../widgets/text/e-text.c:3665 -#: ../widgets/text/e-text.c:3666 +#: ../widgets/misc/e-canvas-background.c:476 ../widgets/text/e-text.c:3666 +#: ../widgets/text/e-text.c:3667 msgid "Fill stipple" msgstr "Täytön kuviopeite" @@ -22809,14 +22738,14 @@ msgstr "Y1" msgid "Y2" msgstr "Y2" -#: ../widgets/misc/e-canvas-vbox.c:91 ../widgets/misc/e-reflow.c:1426 +#: ../widgets/misc/e-canvas-vbox.c:91 ../widgets/misc/e-reflow.c:1417 #: ../widgets/table/e-table-group-container.c:999 #: ../widgets/table/e-table-group-leaf.c:644 #: ../widgets/table/e-table-item.c:3070 msgid "Minimum width" msgstr "Minimileveys" -#: ../widgets/misc/e-canvas-vbox.c:92 ../widgets/misc/e-reflow.c:1427 +#: ../widgets/misc/e-canvas-vbox.c:92 ../widgets/misc/e-reflow.c:1418 #: ../widgets/table/e-table-group-container.c:1000 #: ../widgets/table/e-table-group-leaf.c:645 #: ../widgets/table/e-table-item.c:3071 @@ -22936,35 +22865,39 @@ msgstr "Muut..." msgid "Ch_aracter Encoding" msgstr "Merkistön _koodaus" -#: ../widgets/misc/e-dateedit.c:305 +#: ../widgets/misc/e-dateedit.c:303 msgid "Date and Time" msgstr "Päiväys ja aika" -#: ../widgets/misc/e-dateedit.c:326 +#: ../widgets/misc/e-dateedit.c:324 msgid "Text entry to input date" msgstr "Tekstikenttä päiväyksen syöttöön" -#: ../widgets/misc/e-dateedit.c:348 +#: ../widgets/misc/e-dateedit.c:346 msgid "Click this button to show a calendar" msgstr "Paina tästä näyttääksesi kalenterin" -#: ../widgets/misc/e-dateedit.c:390 +#: ../widgets/misc/e-dateedit.c:388 msgid "Drop-down combination box to select time" msgstr "Yhdistelmävalitsin ajan valitsemiseen" -#: ../widgets/misc/e-dateedit.c:466 +#: ../widgets/misc/e-dateedit.c:389 +msgid "Time" +msgstr "Aika" + +#: ../widgets/misc/e-dateedit.c:464 msgid "No_w" msgstr "N_yt" -#: ../widgets/misc/e-dateedit.c:472 +#: ../widgets/misc/e-dateedit.c:470 msgid "_Today" msgstr "_Tänään" -#: ../widgets/misc/e-dateedit.c:1637 +#: ../widgets/misc/e-dateedit.c:1635 msgid "Invalid Date Value" msgstr "Virheellinen päivämäärä" -#: ../widgets/misc/e-dateedit.c:1666 +#: ../widgets/misc/e-dateedit.c:1664 msgid "Invalid Time Value" msgstr "Virheellinen ajan kuvaus" @@ -23103,15 +23036,15 @@ msgstr "Synkronisoi yksityiset tietueet:" msgid "Sync Categories:" msgstr "Synkronointiluokat:" -#: ../widgets/misc/e-reflow.c:1448 ../widgets/misc/e-reflow.c:1449 +#: ../widgets/misc/e-reflow.c:1439 ../widgets/misc/e-reflow.c:1440 msgid "Empty message" msgstr "Tyhjä viesti" -#: ../widgets/misc/e-reflow.c:1455 ../widgets/misc/e-reflow.c:1456 +#: ../widgets/misc/e-reflow.c:1446 ../widgets/misc/e-reflow.c:1447 msgid "Reflow model" msgstr "Uudelleenvirtauksen malli" -#: ../widgets/misc/e-reflow.c:1462 ../widgets/misc/e-reflow.c:1463 +#: ../widgets/misc/e-reflow.c:1453 ../widgets/misc/e-reflow.c:1454 msgid "Column width" msgstr "Sarakkeen leveys" @@ -23141,8 +23074,8 @@ msgstr "_Tyhjennä" msgid "Item ID" msgstr "Kohteen ID" -#: ../widgets/misc/e-search-bar.c:872 ../widgets/text/e-text.c:3565 -#: ../widgets/text/e-text.c:3566 +#: ../widgets/misc/e-search-bar.c:872 ../widgets/text/e-text.c:3566 +#: ../widgets/text/e-text.c:3567 msgid "Text" msgstr "Teksti" @@ -23316,19 +23249,19 @@ msgid "_When opened:" msgstr "_Milloin avattu:" #. For Translator only: %s is status message that is displayed (eg "moving items", "updating objects") -#: ../widgets/misc/e-task-widget.c:255 +#: ../widgets/misc/e-task-widget.c:252 #, c-format msgid "%s (...)" msgstr "%s (...)" #. For Translator only: %s is status message that is displayed (eg "moving items", "updating objects"); #. %d is a number between 0 and 100, describing the percentage of operation complete -#: ../widgets/misc/e-task-widget.c:261 +#: ../widgets/misc/e-task-widget.c:258 #, c-format msgid "%s (%d%% complete)" msgstr "%s (%d %% valmiina)" -#: ../widgets/misc/e-url-entry.c:106 +#: ../widgets/misc/e-url-entry.c:105 msgid "Click here to go to URL" msgstr "Napsauta tästä avataksesi URLin" @@ -23368,23 +23301,23 @@ msgstr "Kohdistettu sarake" msgid "Unselected Column" msgstr "Valitsematon sarake" -#: ../widgets/table/e-cell-text.c:1807 +#: ../widgets/table/e-cell-text.c:1794 msgid "Strikeout Column" msgstr "Yliviivattu sarake" -#: ../widgets/table/e-cell-text.c:1814 +#: ../widgets/table/e-cell-text.c:1801 msgid "Underline Column" msgstr "Alleviivaa sarake" -#: ../widgets/table/e-cell-text.c:1821 +#: ../widgets/table/e-cell-text.c:1808 msgid "Bold Column" msgstr "Vahva sarake" -#: ../widgets/table/e-cell-text.c:1828 +#: ../widgets/table/e-cell-text.c:1815 msgid "Color Column" msgstr "Värillinen sarake" -#: ../widgets/table/e-cell-text.c:1842 +#: ../widgets/table/e-cell-text.c:1829 msgid "BG Color Column" msgstr "Taustan värinen sarake" @@ -23422,7 +23355,7 @@ msgid "A_vailable Fields:" msgstr "Valittavat kentät:" #: ../widgets/table/e-table-config.glade.h:2 -#: ../widgets/table/e-table-header-item.c:1583 +#: ../widgets/table/e-table-header-item.c:1582 msgid "Ascending" msgstr "Nouseva" @@ -23435,7 +23368,7 @@ msgid "Clear _All" msgstr "Tyhjennä k_aikki" #: ../widgets/table/e-table-config.glade.h:5 -#: ../widgets/table/e-table-header-item.c:1583 +#: ../widgets/table/e-table-header-item.c:1582 msgid "Descending" msgstr "Laskeva" @@ -23498,14 +23431,14 @@ msgstr "_Järjestä..." #: ../widgets/table/e-table-field-chooser-dialog.c:67 #: ../widgets/table/e-table-field-chooser-item.c:633 #: ../widgets/table/e-table-field-chooser.c:66 -#: ../widgets/table/e-table-header-item.c:1887 +#: ../widgets/table/e-table-header-item.c:1886 msgid "DnD code" msgstr "DnD-koodi" #: ../widgets/table/e-table-field-chooser-dialog.c:74 #: ../widgets/table/e-table-field-chooser-item.c:640 #: ../widgets/table/e-table-field-chooser.c:73 -#: ../widgets/table/e-table-header-item.c:1901 +#: ../widgets/table/e-table-header-item.c:1900 msgid "Full Header" msgstr "Täysi otsake" @@ -23617,73 +23550,73 @@ msgstr "Yhtenäinen rivinkorkeus" msgid "Frozen" msgstr "Jäädytetty" -#: ../widgets/table/e-table-header-item.c:1453 +#: ../widgets/table/e-table-header-item.c:1452 msgid "Customize Current View" msgstr "Muokkaa nykyistä näkymää" -#: ../widgets/table/e-table-header-item.c:1473 +#: ../widgets/table/e-table-header-item.c:1472 msgid "Sort _Ascending" msgstr "järjestä _nousevasti" -#: ../widgets/table/e-table-header-item.c:1474 +#: ../widgets/table/e-table-header-item.c:1473 msgid "Sort _Descending" msgstr "Järjestä _laskevasti" -#: ../widgets/table/e-table-header-item.c:1475 +#: ../widgets/table/e-table-header-item.c:1474 msgid "_Unsort" msgstr "Poista _järjestys" -#: ../widgets/table/e-table-header-item.c:1477 +#: ../widgets/table/e-table-header-item.c:1476 msgid "Group By This _Field" msgstr "Ryhmittele tämän _kentän mukaan" -#: ../widgets/table/e-table-header-item.c:1478 +#: ../widgets/table/e-table-header-item.c:1477 msgid "Group By _Box" msgstr "Ryhmittele _laatikoittain" -#: ../widgets/table/e-table-header-item.c:1480 +#: ../widgets/table/e-table-header-item.c:1479 msgid "Remove This _Column" msgstr "Poista tämä sa_rake" -#: ../widgets/table/e-table-header-item.c:1481 +#: ../widgets/table/e-table-header-item.c:1480 msgid "Add a C_olumn..." msgstr "Lisää sarake..." -#: ../widgets/table/e-table-header-item.c:1483 +#: ../widgets/table/e-table-header-item.c:1482 msgid "A_lignment" msgstr "_Tasaus" -#: ../widgets/table/e-table-header-item.c:1484 +#: ../widgets/table/e-table-header-item.c:1483 msgid "B_est Fit" msgstr "_Paras sovitus" -#: ../widgets/table/e-table-header-item.c:1485 +#: ../widgets/table/e-table-header-item.c:1484 msgid "Format Column_s..." msgstr "Muotoile _sarakkeet..." -#: ../widgets/table/e-table-header-item.c:1487 +#: ../widgets/table/e-table-header-item.c:1486 msgid "Custo_mize Current View..." msgstr "_Mukauta nykyistä näkymää..." -#: ../widgets/table/e-table-header-item.c:1543 +#: ../widgets/table/e-table-header-item.c:1542 msgid "_Sort By" msgstr "_Järjestystapa" #. Custom -#: ../widgets/table/e-table-header-item.c:1561 +#: ../widgets/table/e-table-header-item.c:1560 msgid "_Custom" msgstr "_Oma" -#: ../widgets/table/e-table-header-item.c:1894 +#: ../widgets/table/e-table-header-item.c:1893 msgid "Font Description" msgstr "Kirjasimen kuvaus" -#: ../widgets/table/e-table-header-item.c:1915 +#: ../widgets/table/e-table-header-item.c:1914 #: ../widgets/table/e-table-sorter.c:172 msgid "Sort Info" msgstr "Tietoja järjestyksestä" -#: ../widgets/table/e-table-header-item.c:1929 +#: ../widgets/table/e-table-header-item.c:1928 #: ../widgets/table/e-tree-scrolled.c:225 #: ../widgets/table/e-tree-scrolled.c:226 msgid "Tree" @@ -23722,112 +23655,108 @@ msgstr "Retro-ulkoasu" msgid "Draw lines and +/- expanders." msgstr "Piirrä viivat ja +/- laajentimet." -#: ../widgets/text/e-text.c:2735 +#: ../widgets/text/e-text.c:2736 msgid "Input Methods" msgstr "Syötemenetelmät" -#: ../widgets/text/e-text.c:3558 ../widgets/text/e-text.c:3559 +#: ../widgets/text/e-text.c:3559 ../widgets/text/e-text.c:3560 msgid "Event Processor" msgstr "Tapahtumaprosessori" -#: ../widgets/text/e-text.c:3572 ../widgets/text/e-text.c:3573 +#: ../widgets/text/e-text.c:3573 ../widgets/text/e-text.c:3574 msgid "Bold" msgstr "Vahva" -#: ../widgets/text/e-text.c:3579 ../widgets/text/e-text.c:3580 +#: ../widgets/text/e-text.c:3580 ../widgets/text/e-text.c:3581 msgid "Strikeout" msgstr "Yliviivattu" -#: ../widgets/text/e-text.c:3586 ../widgets/text/e-text.c:3587 +#: ../widgets/text/e-text.c:3587 ../widgets/text/e-text.c:3588 msgid "Anchor" msgstr "Ankkuri" -#: ../widgets/text/e-text.c:3594 ../widgets/text/e-text.c:3595 +#: ../widgets/text/e-text.c:3595 ../widgets/text/e-text.c:3596 msgid "Justification" msgstr "Asemointi" -#: ../widgets/text/e-text.c:3601 ../widgets/text/e-text.c:3602 +#: ../widgets/text/e-text.c:3602 ../widgets/text/e-text.c:3603 msgid "Clip Width" msgstr "Leikkeen leveys" -#: ../widgets/text/e-text.c:3608 ../widgets/text/e-text.c:3609 +#: ../widgets/text/e-text.c:3609 ../widgets/text/e-text.c:3610 msgid "Clip Height" msgstr "Leikkeen korkeus" -#: ../widgets/text/e-text.c:3615 ../widgets/text/e-text.c:3616 +#: ../widgets/text/e-text.c:3616 ../widgets/text/e-text.c:3617 msgid "Clip" msgstr "Leike" -#: ../widgets/text/e-text.c:3622 ../widgets/text/e-text.c:3623 +#: ../widgets/text/e-text.c:3623 ../widgets/text/e-text.c:3624 msgid "Fill clip rectangle" msgstr "Täytä leikkauksen suorakulmio" -#: ../widgets/text/e-text.c:3629 ../widgets/text/e-text.c:3630 +#: ../widgets/text/e-text.c:3630 ../widgets/text/e-text.c:3631 msgid "X Offset" msgstr "X-offset" -#: ../widgets/text/e-text.c:3636 ../widgets/text/e-text.c:3637 +#: ../widgets/text/e-text.c:3637 ../widgets/text/e-text.c:3638 msgid "Y Offset" msgstr "Y-offset" -#: ../widgets/text/e-text.c:3672 ../widgets/text/e-text.c:3673 +#: ../widgets/text/e-text.c:3673 ../widgets/text/e-text.c:3674 msgid "Text width" msgstr "Tekstin leveys" -#: ../widgets/text/e-text.c:3679 ../widgets/text/e-text.c:3680 +#: ../widgets/text/e-text.c:3680 ../widgets/text/e-text.c:3681 msgid "Text height" msgstr "Tekstin korkeus" -#: ../widgets/text/e-text.c:3694 ../widgets/text/e-text.c:3695 +#: ../widgets/text/e-text.c:3695 ../widgets/text/e-text.c:3696 msgid "Use ellipsis" msgstr "Käytä ellipsejä" -#: ../widgets/text/e-text.c:3701 ../widgets/text/e-text.c:3702 +#: ../widgets/text/e-text.c:3702 ../widgets/text/e-text.c:3703 msgid "Ellipsis" msgstr "Ellipsit" -#: ../widgets/text/e-text.c:3708 ../widgets/text/e-text.c:3709 +#: ../widgets/text/e-text.c:3709 ../widgets/text/e-text.c:3710 msgid "Line wrap" msgstr "Rivitys" -#: ../widgets/text/e-text.c:3715 ../widgets/text/e-text.c:3716 +#: ../widgets/text/e-text.c:3716 ../widgets/text/e-text.c:3717 msgid "Break characters" msgstr "Katkaisevat merkit" -#: ../widgets/text/e-text.c:3722 ../widgets/text/e-text.c:3723 +#: ../widgets/text/e-text.c:3723 ../widgets/text/e-text.c:3724 msgid "Max lines" msgstr "Rivejä enintään" -#: ../widgets/text/e-text.c:3744 ../widgets/text/e-text.c:3745 +#: ../widgets/text/e-text.c:3745 ../widgets/text/e-text.c:3746 msgid "Draw borders" msgstr "Piirrä reunat" -#: ../widgets/text/e-text.c:3751 ../widgets/text/e-text.c:3752 +#: ../widgets/text/e-text.c:3752 ../widgets/text/e-text.c:3753 msgid "Allow newlines" msgstr "Salli rivinvaihdot" -#: ../widgets/text/e-text.c:3758 ../widgets/text/e-text.c:3759 +#: ../widgets/text/e-text.c:3759 ../widgets/text/e-text.c:3760 msgid "Draw background" msgstr "Piirrä tausta" -#: ../widgets/text/e-text.c:3765 ../widgets/text/e-text.c:3766 +#: ../widgets/text/e-text.c:3766 ../widgets/text/e-text.c:3767 msgid "Draw button" msgstr "Piirrä nappi" -#: ../widgets/text/e-text.c:3772 ../widgets/text/e-text.c:3773 +#: ../widgets/text/e-text.c:3773 ../widgets/text/e-text.c:3774 msgid "Cursor position" msgstr "Kohdistimen sijainti" -#: ../widgets/text/e-text.c:3779 ../widgets/text/e-text.c:3780 +#. Translators: Input Method Context +#: ../widgets/text/e-text.c:3781 ../widgets/text/e-text.c:3783 msgid "IM Context" msgstr "IM-konteksti" -#: ../widgets/text/e-text.c:3786 ../widgets/text/e-text.c:3787 +#: ../widgets/text/e-text.c:3789 ../widgets/text/e-text.c:3790 msgid "Handle Popup" msgstr "Kahvan ponnahdusikkuna" -#~ msgid "Recent Docu_ments" -#~ msgstr "Viimeisi_mmät asiakirjat" - -#~ msgid "button-user" -#~ msgstr "painikkeenkaltainen" diff --git a/shell/ChangeLog b/shell/ChangeLog index 307de5bf79..05f0b2399c 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,20 @@ +2008-12-10 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #563250 + + * main.c (main): + Load on startup and save on shutdown, custom keyboard accelerators. + +2008-12-08 Jeff Cai <jeff.cai@sun.com> + + ** Fix for bug #563077 + + * e-shell-window.c (setup_widgets): Don't pass NULL to + gtk_icon_info_get_filename(). + + Fixes a crash if the gnome-settings-daemon is not running. + Observed on SUN Solaris. + 2008-11-07 Matthew Barnes <mbarnes@redhat.com> ** Fixes part of bug #557581 diff --git a/shell/main.c b/shell/main.c index 32efec4bd5..b078320c32 100644 --- a/shell/main.c +++ b/shell/main.c @@ -643,6 +643,7 @@ main (int argc, char **argv) exit (0); gnome_sound_init ("localhost"); + gtk_accel_map_load (e_get_accels_filename ()); if (!disable_eplugin) { e_plugin_register_type (e_plugin_lib_get_type ()); @@ -677,6 +678,8 @@ main (int argc, char **argv) gtk_main (); + gtk_accel_map_save (e_get_accels_filename ()); + e_icon_factory_shutdown (); g_object_unref (program); gnome_sound_shutdown (); diff --git a/widgets/misc/ChangeLog b/widgets/misc/ChangeLog index e7b9460b10..c519df2d47 100644 --- a/widgets/misc/ChangeLog +++ b/widgets/misc/ChangeLog @@ -1,3 +1,17 @@ +2008-12-10 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #556303 + + * e-attachment-bar.c: (eab_icon_clicked_cb): + Check whether attachment has a body already before accessing it. + +2008-12-09 Milan Crha <mcrha@redhat.com> + + ** Part of fix for bug #563669 + + * e-send-options.glade: + Use zero GtkSpinButton's PageSize, as Gtk+ requires. + 2008-10-29 Sankar P <psankar@novell.com> License Changes diff --git a/widgets/misc/e-attachment-bar.c b/widgets/misc/e-attachment-bar.c index 1e41a95338..bdb6852e13 100644 --- a/widgets/misc/e-attachment-bar.c +++ b/widgets/misc/e-attachment-bar.c @@ -1001,7 +1001,8 @@ eab_icon_clicked_cb (EAttachmentBar *bar, GdkEvent *event, gpointer *dummy) if (E_IS_ATTACHMENT_BAR (bar) && event->type == GDK_2BUTTON_PRESS) { p = e_attachment_bar_get_selected (bar); - if (p && p->next == NULL) { + /* check if has body already, remote files can take longer to fetch */ + if (p && p->next == NULL && ((EAttachment *)p->data)->body) { attachment = p->data; /* Check if the file is stored already */ diff --git a/widgets/misc/e-send-options.glade b/widgets/misc/e-send-options.glade index fd509488da..1c1cc486d0 100644 --- a/widgets/misc/e-send-options.glade +++ b/widgets/misc/e-send-options.glade @@ -220,7 +220,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">5 0 100 1 10 10</property> + <property name="adjustment">5 0 100 1 10 0</property> </widget> <packing> <property name="left_attach">1</property> @@ -450,7 +450,7 @@ <property name="update_policy">GTK_UPDATE_ALWAYS</property> <property name="snap_to_ticks">False</property> <property name="wrap">False</property> - <property name="adjustment">2 0 100 1 10 10</property> + <property name="adjustment">2 0 100 1 10 0</property> </widget> <packing> <property name="padding">0</property> diff --git a/widgets/table/ChangeLog b/widgets/table/ChangeLog index dd5598306f..4034fe0a5a 100644 --- a/widgets/table/ChangeLog +++ b/widgets/table/ChangeLog @@ -1,3 +1,10 @@ +2008-11-28 Felix Riemann <friemann@svn.gnome.org> + + ** Part of fix for bug #554464 + + * e-cell-text.c: (build_layout): Let Pango handle the ellipsizing, + which should be faster. + 2008-10-17 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #560882 diff --git a/widgets/table/e-cell-text.c b/widgets/table/e-cell-text.c index 5beeae625f..ccbc30283c 100644 --- a/widgets/table/e-cell-text.c +++ b/widgets/table/e-cell-text.c @@ -612,21 +612,8 @@ build_layout (ECellTextView *text_view, int row, const char *text, gint width) pango_layout_set_width (layout, width * PANGO_SCALE); pango_layout_set_wrap (layout, PANGO_WRAP_CHAR); - if (pango_layout_get_line_count (layout) > 1) { - PangoLayoutLine *line = pango_layout_get_line (layout, 0); - gchar *line_text = g_strdup (pango_layout_get_text (layout)); - gchar *last_char = g_utf8_find_prev_char (line_text, line_text + line->length - 1); - while (last_char && pango_layout_get_line_count (layout) > 1) { - gchar *new_text; - last_char = g_utf8_find_prev_char (line_text, last_char); - if (last_char) - *last_char = '\0'; - new_text = g_strconcat (line_text, "...", NULL); - pango_layout_set_text (layout, new_text, -1); - g_free (new_text); - } - g_free (line_text); - } + pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_END); + pango_layout_set_height (layout, 0); switch (ect->justify) { case GTK_JUSTIFY_RIGHT: |