Merge revisions 36685:36729 from trunk.
svn path=/branches/kill-bonobo/; revision=36763
This commit is contained in:
@@ -1,340 +1,34 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
Code in Evolution is available under a variety of licenses. Each file should have a license header stating the license. In the absence of that code is available under the LGPLv2 or (at your choice) LGPLv3. See COPYING.LGPL2 and COPYING.LGPL3 for the full license texts.
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
There are a few exceptions to this rule that have an impact on overall licensing. At the present, the code seems GPLv2+ clean.
|
||||
|
||||
Preamble
|
||||
OpenLDAP license
|
||||
addressbook/gui/component/openldap-extract.h
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
GPLv2+
|
||||
widgets/misc/e-spinner.c
|
||||
plugins/calendar-http/calendar-http.c
|
||||
plugins/calendar-weather/calendar-weather.c
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
LGPLv2 only
|
||||
plugins/webdav-account-setup/webdav-contacts-source.c
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
LGPLv2+
|
||||
e-util/gconf-bridge.[ch]
|
||||
widgets/misc/e-icon-entry.[ch]
|
||||
widgets/misc/e-hsv-utils.[ch]
|
||||
widgets/text/e-text.[ch]
|
||||
widgets/table/e-cell-tree.[ch]
|
||||
widgets/misc/e-dateedit.[ch]
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
MPL/GPL/LGPLv2+
|
||||
smime/lib/e-asn1-object.c
|
||||
smime/lib/e-cert.c
|
||||
smime/lib/e-cert-db.c
|
||||
smime/lib/e-cert-trust.c
|
||||
smime/lib/e-pkcs12.c
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
In addition there are a few pieces that lurk in the tree, but are not linked as part of evolution, eg. test code:
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
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 General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02110-1301 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
||||
GPLv2 only
|
||||
addressbook/gui/widgets/test-reflow.c
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
The OpenLDAP Public License
|
||||
Version 2.8, 17 August 2003
|
||||
|
||||
Redistribution and use of this software and associated documentation
|
||||
("Software"), with or without modification, are permitted provided
|
||||
that the following conditions are met:
|
||||
|
||||
1. Redistributions in source form must retain copyright statements
|
||||
and notices,
|
||||
|
||||
2. Redistributions in binary form must reproduce applicable copyright
|
||||
statements and notices, this list of conditions, and the following
|
||||
disclaimer in the documentation and/or other materials provided
|
||||
with the distribution, and
|
||||
|
||||
3. Redistributions must contain a verbatim copy of this document.
|
||||
|
||||
The OpenLDAP Foundation may revise this license from time to time.
|
||||
Each revision is distinguished by a version number. You may use
|
||||
this Software under terms of this license revision or under the
|
||||
terms of any subsequent revision of the license.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE OPENLDAP FOUNDATION AND ITS
|
||||
CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
|
||||
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
||||
SHALL THE OPENLDAP FOUNDATION, ITS CONTRIBUTORS, OR THE AUTHOR(S)
|
||||
OR OWNER(S) OF THE SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
The names of the authors and copyright holders must not be used in
|
||||
advertising or otherwise to promote the sale, use or other dealing
|
||||
in this Software without specific, written prior permission. Title
|
||||
to copyright in this Software shall at all times remain with copyright
|
||||
holders.
|
||||
|
||||
OpenLDAP is a registered trademark of the OpenLDAP Foundation.
|
||||
|
||||
Copyright 1999-2003 The OpenLDAP Foundation, Redwood City,
|
||||
California, USA. All Rights Reserved. Permission to copy and
|
||||
distribute verbatim copies of this document is granted.
|
||||
@@ -1,3 +1,8 @@
|
||||
2008-11-03 Sankar P <psankar@novell.com>
|
||||
|
||||
License Changed from GPL to LGPL
|
||||
Refer COPYING File for more details
|
||||
|
||||
2008-10-22 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes part of bug #549025
|
||||
|
||||
@@ -1,3 +1,11 @@
|
||||
2008-10-30 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* gui/contact-editor/test-editor.c:
|
||||
* gui/widgets/e-minicard-label.c:
|
||||
* gui/widgets/e-minicard-view-widget.c:
|
||||
* gui/widgets/test-reflow.c:
|
||||
Only include the toplevel GTK+ header.
|
||||
|
||||
2008-10-17 Milan Crha <mcrha@redhat.com>
|
||||
|
||||
** Fix for bug #511918
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* A copy of this license is available in file COPYING.OPENLDAP in
|
||||
* the top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <gtk/gtkmain.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <libgnomeui/gnome-app.h>
|
||||
#include <libgnomeui/gnome-ui-init.h>
|
||||
#include <glade/glade.h>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
#include "e-minicard-label.h"
|
||||
|
||||
#include <gtk/gtksignal.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <e-util/e-util.h>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <gtk/gtksignal.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <misc/e-canvas-background.h>
|
||||
#include <misc/e-canvas.h>
|
||||
#include <glib/gi18n.h>
|
||||
|
||||
@@ -50,8 +50,7 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <gtk/gtkmain.h>
|
||||
#include <gtk/gtkvbox.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <libgnomeui/gnome-canvas-rect-ellipse.h>
|
||||
#include <libgnomeui/gnome-init.h>
|
||||
#include <misc/e-canvas.h>
|
||||
|
||||
@@ -1,3 +1,28 @@
|
||||
2008-11-04 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* gui/calendar-commands.c:
|
||||
* gui/calendar-component.h:
|
||||
* gui/gnome-cal.c:
|
||||
Fix compiler warnings.
|
||||
|
||||
2008-11-02 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* gui/e-itip-control.c (write_recurrence_piece):
|
||||
Remove extra space in translated string.
|
||||
|
||||
2008-10-31 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* gui/itip-utils.c (itip_send_comp):
|
||||
Fix a crash when selecting "Forward as iCalendar".
|
||||
|
||||
2008-10-30 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* gui/control-factory.c:
|
||||
* gui/e-calendar-table.c:
|
||||
* gui/e-week-view-event-item.c:
|
||||
* gui/weekday-picker.c:
|
||||
Only include the toplevel GTK+ header.
|
||||
|
||||
2008-10-20 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes bug #555958 (patch by Anis Elleuch)
|
||||
@@ -246,6 +271,24 @@ License Changes
|
||||
* gui/e-cal-model.c: (e_cal_view_objects_modified_cb):
|
||||
Use result of g_list_prepend, thus report changes properly.
|
||||
|
||||
2008-11-03 Ashish Shrivastava <shashish@novell.com>
|
||||
|
||||
** Most of the errors are now non-intrusive
|
||||
|
||||
* calendar.error.xml: Added a new error message for
|
||||
non-intrusive backend_died.
|
||||
* apps_evolution_calendar.schemas.in:
|
||||
* calendar-commands.c: Added new verb for help debug message
|
||||
(help_debug):
|
||||
* gnome-cal.c: Support for non-intrusive error.
|
||||
(client_cal_opened_cb), Define fash table and accessing errors:
|
||||
* e-calendar-view.c: (error_response):
|
||||
(e_calendar_utils_show_error_silent), (e_calendar_utils_show_info_silent):
|
||||
* e-calendar-view.h:
|
||||
* calendar-component.c: Added EActivityHandler and ELogger:
|
||||
(calendar_component_peek_activity_handler), (calendar_component_show_logger):
|
||||
* calendar-component.h:
|
||||
|
||||
2008-09-08 Chenthill Palanisamy <pchenthill@novell.com>
|
||||
|
||||
Fixes #544187
|
||||
|
||||
@@ -176,6 +176,23 @@
|
||||
<_secondary>Your memos will not be available until Evolution is restarted.</_secondary>
|
||||
</error>
|
||||
|
||||
<error id="backend_died" type="error">
|
||||
<_primary>The Evolution calendars have quit unexpectedly.</_primary>
|
||||
<_secondary>Your calendars will not be available until Evolution is restarted.</_secondary>
|
||||
</error>
|
||||
|
||||
<error id="unable-to-load-the-calendar" type="error" default="GTK_RESPONSE_YES">
|
||||
<_primary>Unable to load the calendar</_primary>
|
||||
<_secondary>Calendar repository is offline.</_secondary>
|
||||
<button stock ="gtk-ok" response="GTK_RESPONSE_YES"/>
|
||||
</error>
|
||||
<error id="error-on-loading-the-calendar" type="error" default="GTK_RESPONSE_YES">
|
||||
<!-- For Translators: {0} is specify the backend server -->
|
||||
<_primary>Error on '{0}'</_primary>
|
||||
<_secondary>No response from the server.</_secondary>
|
||||
<button stock ="gtk-ok" response="GTK_RESPONSE_YES"/>
|
||||
</error>
|
||||
|
||||
<error id="editor-error" type="error">
|
||||
<_primary>Editor could not be loaded.</_primary>
|
||||
<_secondary>{0}.</_secondary>
|
||||
|
||||
@@ -603,5 +603,30 @@
|
||||
</locale>
|
||||
</schema>
|
||||
|
||||
<schema>
|
||||
<key>/schemas/apps/evolution/calendar/display/error_timeout</key>
|
||||
<applyto>/apps/evolution/calendar/display/error_timeout</applyto>
|
||||
<owner>evolution-calendar</owner>
|
||||
<type>int</type>
|
||||
<default>60</default>
|
||||
<locale name="C">
|
||||
<short>Amount of time in seconds the error should be shown on the status bar.</short>
|
||||
<long> Amount of time in seconds the error should be shown on the status bar.
|
||||
</long>
|
||||
</locale>
|
||||
</schema>
|
||||
<schema>
|
||||
<key>/schemas/apps/evolution/calendar/display/error_level</key>
|
||||
<applyto>/apps/evolution/calendar/display/error_level</applyto>
|
||||
<owner>evolution-calendar</owner>
|
||||
<type>int</type>
|
||||
<default>0</default>
|
||||
<locale name="C">
|
||||
<short>Level beyond which the message should be logged.</short>
|
||||
<long> This can have three possible values. 0 for errors. 1 for warnings.
|
||||
2 for debug messages.
|
||||
</long>
|
||||
</locale>
|
||||
</schema>
|
||||
</schemalist>
|
||||
</gconfschemafile>
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
#include <libecal/e-cal-time-util.h>
|
||||
#include "shell/Evolution.h"
|
||||
#include "calendar-commands.h"
|
||||
#include "calendar-component.h"
|
||||
#include "calendar-config.h"
|
||||
#include "e-day-view.h"
|
||||
#include "e-week-view.h"
|
||||
@@ -333,6 +334,11 @@ gcal_taskpad_focus_change_cb (GnomeCalendar *gcal, gboolean in, gpointer data)
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
help_debug (BonoboUIComponent *uid, void *data, const char *path)
|
||||
{
|
||||
calendar_component_show_logger ((GtkWidget *) data);
|
||||
}
|
||||
|
||||
static BonoboUIVerb verbs [] = {
|
||||
|
||||
@@ -343,7 +349,7 @@ static BonoboUIVerb verbs [] = {
|
||||
BONOBO_UI_VERB ("ShowListView", show_list_view_clicked),
|
||||
|
||||
BONOBO_UI_VERB ("CalendarPurge", purge_cmd),
|
||||
|
||||
BONOBO_UI_VERB ("HelpDebug", help_debug),
|
||||
BONOBO_UI_VERB_END
|
||||
};
|
||||
|
||||
|
||||
@@ -53,6 +53,8 @@
|
||||
#include "dialogs/copy-source-dialog.h"
|
||||
#include "dialogs/event-editor.h"
|
||||
#include "misc/e-info-label.h"
|
||||
#include "e-util/e-non-intrusive-error-dialog.h"
|
||||
#include "e-util/gconf-bridge.h"
|
||||
#include "e-util/e-error.h"
|
||||
#include "e-cal-menu.h"
|
||||
#include "e-cal-popup.h"
|
||||
@@ -62,8 +64,9 @@
|
||||
#define CREATE_MEETING_ID "meeting"
|
||||
#define CREATE_ALLDAY_EVENT_ID "allday-event"
|
||||
#define CREATE_CALENDAR_ID "calendar"
|
||||
#define CALENDAR_ERROR_LEVEL_KEY "/apps/evolution/calendar/display/error_level"
|
||||
#define CALENDAR_ERROR_TIME_OUT_KEY "/apps/evolution/calendar/display/error_timeout"
|
||||
|
||||
#define PARENT_TYPE bonobo_object_get_type ()
|
||||
static BonoboObjectClass *parent_class = NULL;
|
||||
|
||||
typedef struct
|
||||
@@ -95,6 +98,9 @@ struct _CalendarComponentPrivate {
|
||||
ESourceList *task_source_list;
|
||||
ESourceList *memo_source_list;
|
||||
|
||||
EActivityHandler *activity_handler;
|
||||
ELogger *logger;
|
||||
|
||||
GList *views;
|
||||
|
||||
ECal *create_ecal;
|
||||
@@ -571,6 +577,11 @@ impl_dispose (GObject *object)
|
||||
priv->source_list = NULL;
|
||||
}
|
||||
|
||||
if (priv->activity_handler != NULL) {
|
||||
g_object_unref (priv->activity_handler);
|
||||
priv->activity_handler = NULL;
|
||||
}
|
||||
|
||||
if (priv->create_ecal) {
|
||||
g_object_unref (priv->create_ecal);
|
||||
priv->create_ecal = NULL;
|
||||
@@ -615,6 +626,11 @@ calendar_component_init (CalendarComponent *component)
|
||||
component);
|
||||
priv->notifications = g_list_prepend (priv->notifications, GUINT_TO_POINTER (not));
|
||||
|
||||
priv->logger = e_logger_create ("calendar");
|
||||
priv->activity_handler = e_activity_handler_new ();
|
||||
e_activity_handler_set_logger (priv->activity_handler, priv->logger);
|
||||
e_activity_handler_set_error_flush_time (priv->activity_handler,eni_config_get_error_timeout (CALENDAR_ERROR_TIME_OUT_KEY)*1000);
|
||||
|
||||
component->priv = priv;
|
||||
|
||||
if (!e_cal_get_sources (&priv->task_source_list, E_CAL_SOURCE_TYPE_TODO, NULL))
|
||||
|
||||
@@ -2314,3 +2314,12 @@ draw_curved_rectangle (cairo_t *cr, double x0, double y0,
|
||||
}
|
||||
cairo_close_path (cr);
|
||||
}
|
||||
|
||||
static void
|
||||
error_response(GtkWidget *widget, gint response, void *data)
|
||||
{
|
||||
if (response == GTK_RESPONSE_DELETE_EVENT)
|
||||
gtk_widget_destroy(widget);
|
||||
else if (response == GTK_RESPONSE_OK)
|
||||
gtk_widget_destroy(widget);
|
||||
}
|
||||
|
||||
@@ -872,7 +872,7 @@ write_recurrence_piece (EItipControl *itip, ECalComponent *comp,
|
||||
/* For Translators:'a total of %d times' is part of the sentence of the form 'event recurring every day,a total of % times.' %d is a digit*/
|
||||
g_string_append_printf (
|
||||
buffer, ngettext ("a total of %d time",
|
||||
" a total of %d times", r->count), r->count);
|
||||
"a total of %d times", r->count), r->count);
|
||||
} else if (!icaltime_is_null_time (r->until)) {
|
||||
ECalComponentDateTime dt;
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
#include "e-util/e-categories-config.h"
|
||||
#include "e-week-view-event-item.h"
|
||||
|
||||
#include <gtk/gtksignal.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include "e-calendar-view.h"
|
||||
#include "comp-util.h"
|
||||
|
||||
|
||||
+75
-17
@@ -89,6 +89,9 @@
|
||||
|
||||
#define d(x) x
|
||||
|
||||
/* hash table define for non intrusive error dialog */
|
||||
static GHashTable *non_intrusive_error_table = NULL;
|
||||
|
||||
/* Private part of the GnomeCalendar structure */
|
||||
struct _GnomeCalendarPrivate {
|
||||
/* The clients for display */
|
||||
@@ -1576,6 +1579,9 @@ gnome_calendar_init (GnomeCalendar *gcal)
|
||||
for (i = 0; i < E_CAL_SOURCE_TYPE_LAST; i++)
|
||||
priv->clients[i] = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
|
||||
|
||||
if (non_intrusive_error_table == NULL)
|
||||
non_intrusive_error_table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
|
||||
|
||||
e_categories_register_change_listener (G_CALLBACK (categories_changed_cb), gcal);
|
||||
|
||||
priv->current_view_type = GNOME_CAL_DAY_VIEW;
|
||||
@@ -1642,7 +1648,7 @@ gnome_calendar_destroy (GtkObject *object)
|
||||
}
|
||||
|
||||
for (i = 0; i < GNOME_CAL_LAST_VIEW; i++) {
|
||||
if (priv->configs[i])
|
||||
if (priv->configs[i])
|
||||
g_object_unref (priv->configs[i]);
|
||||
priv->configs[i] = NULL;
|
||||
}
|
||||
@@ -1664,6 +1670,11 @@ gnome_calendar_destroy (GtkObject *object)
|
||||
priv->dn_queries = NULL;
|
||||
}
|
||||
|
||||
if (non_intrusive_error_table) {
|
||||
g_hash_table_destroy (non_intrusive_error_table);
|
||||
non_intrusive_error_table = NULL;
|
||||
}
|
||||
|
||||
if (priv->sexp) {
|
||||
g_free (priv->sexp);
|
||||
priv->sexp = NULL;
|
||||
@@ -2157,6 +2168,12 @@ add_mclient (ECalModel *model, ECal *client)
|
||||
message_push ((Message *) msg);
|
||||
}
|
||||
|
||||
static void
|
||||
non_intrusive_error_remove(GtkWidget *w, void *data)
|
||||
{
|
||||
g_hash_table_remove(non_intrusive_error_table, data);
|
||||
}
|
||||
|
||||
static void
|
||||
client_cal_opened_cb (ECal *ecal, ECalendarStatus status, GnomeCalendar *gcal)
|
||||
{
|
||||
@@ -2166,6 +2183,8 @@ client_cal_opened_cb (ECal *ecal, ECalendarStatus status, GnomeCalendar *gcal)
|
||||
ECalModel *model;
|
||||
ECalLoadState state;
|
||||
char *msg;
|
||||
GtkWidget *w = NULL;
|
||||
gchar *id;
|
||||
|
||||
priv = gcal->priv;
|
||||
|
||||
@@ -2192,14 +2211,26 @@ client_cal_opened_cb (ECal *ecal, ECalendarStatus status, GnomeCalendar *gcal)
|
||||
e_cal_open_async (ecal, FALSE);
|
||||
return;
|
||||
case E_CALENDAR_STATUS_INVALID_SERVER_VERSION:
|
||||
e_error_run (NULL, "calendar:server-version", NULL);
|
||||
id = g_strdup ("calendar:server-version");
|
||||
|
||||
if (g_hash_table_lookup(non_intrusive_error_table, id)) {
|
||||
/* We already have it */
|
||||
g_message("Error occurred while existing dialog active:\n");
|
||||
return;
|
||||
}
|
||||
|
||||
w = e_error_new(NULL, "calendar:server-version", NULL);
|
||||
e_calendar_utils_show_error_silent (w);
|
||||
g_hash_table_insert (non_intrusive_error_table, id, g_object_ref(w));
|
||||
g_signal_connect(w, "destroy", G_CALLBACK(non_intrusive_error_remove), id);
|
||||
|
||||
status = E_CALENDAR_STATUS_OK;
|
||||
break;
|
||||
case E_CALENDAR_STATUS_AUTHENTICATION_FAILED:
|
||||
{
|
||||
const gchar *auth_domain = e_source_get_property (source, "auth-domain");
|
||||
const gchar *component_name;
|
||||
|
||||
|
||||
component_name = auth_domain ? auth_domain : "Calendar";
|
||||
|
||||
/* Warn the user password is wrong */
|
||||
@@ -2208,8 +2239,21 @@ client_cal_opened_cb (ECal *ecal, ECalendarStatus status, GnomeCalendar *gcal)
|
||||
}
|
||||
case E_CALENDAR_STATUS_REPOSITORY_OFFLINE:
|
||||
if (source_type == E_CAL_SOURCE_TYPE_EVENT)
|
||||
e_error_run (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gcal))),
|
||||
"calendar:prompt-no-contents-offline-calendar", NULL);
|
||||
{
|
||||
/* check to see if we have dialog already running for this operation */
|
||||
id = g_strdup ("calendar:unable-to-load-the-calendar");
|
||||
|
||||
if (g_hash_table_lookup(non_intrusive_error_table, id)) {
|
||||
/* We already have it */
|
||||
g_message("Error occurred while existing dialog active:\n");
|
||||
return;
|
||||
}
|
||||
|
||||
w = e_error_new(GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gcal))), "calendar:unable-to-load-the-calendar", e_cal_get_error_message (status), NULL);
|
||||
e_calendar_utils_show_error_silent (w);
|
||||
g_hash_table_insert (non_intrusive_error_table, id, g_object_ref(w));
|
||||
g_signal_connect(w, "destroy", G_CALLBACK(non_intrusive_error_remove), id);
|
||||
}
|
||||
default:
|
||||
/* Make sure the source doesn't disappear on us */
|
||||
g_object_ref (source);
|
||||
@@ -2289,7 +2333,7 @@ default_client_cal_opened_cb (ECal *ecal, ECalendarStatus status, GnomeCalendar
|
||||
g_hash_table_remove (priv->clients[source_type], e_source_peek_uid (source));
|
||||
|
||||
/* FIXME Is there a better way to handle this? */
|
||||
if (priv->default_client[source_type])
|
||||
if (priv->default_client[source_type])
|
||||
g_object_unref (priv->default_client[source_type]);
|
||||
priv->default_client[source_type] = NULL;
|
||||
|
||||
@@ -2355,21 +2399,25 @@ backend_error_cb (ECal *client, const char *message, gpointer data)
|
||||
GnomeCalendar *gcal;
|
||||
GtkDialog *dialog;
|
||||
char *uristr;
|
||||
gchar *id;
|
||||
|
||||
gcal = GNOME_CALENDAR (data);
|
||||
|
||||
uristr = get_uri_without_password (e_cal_get_uri (client));
|
||||
id = g_strdup ("calendar:error-on-loading-the-calendar");
|
||||
|
||||
dialog = GTK_DIALOG (gtk_message_dialog_new (
|
||||
GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gcal))),
|
||||
GTK_DIALOG_DESTROY_WITH_PARENT,
|
||||
GTK_MESSAGE_ERROR,
|
||||
GTK_BUTTONS_OK,
|
||||
_("Error on %s:\n %s"),
|
||||
uristr, message));
|
||||
gtk_dialog_run (GTK_DIALOG (dialog));
|
||||
gtk_widget_destroy (GTK_WIDGET (dialog));
|
||||
if (g_hash_table_lookup(non_intrusive_error_table,id)) {
|
||||
/* We already have it */
|
||||
g_message("Error occurred while existing dialog active:\n");
|
||||
return;
|
||||
}
|
||||
|
||||
dialog = (GtkDialog *)e_error_new(GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gcal))), "calendar:error-on-loading-the-calendar", uristr, message, NULL);
|
||||
e_calendar_utils_show_error_silent(GTK_WIDGET (dialog));
|
||||
|
||||
g_hash_table_insert (non_intrusive_error_table, id, g_object_ref(dialog));
|
||||
g_signal_connect(GTK_WIDGET (dialog), "destroy", G_CALLBACK(non_intrusive_error_remove), id);
|
||||
|
||||
g_free (uristr);
|
||||
}
|
||||
|
||||
@@ -2382,6 +2430,7 @@ backend_died_cb (ECal *ecal, gpointer data)
|
||||
ECalSourceType source_type;
|
||||
ESource *source;
|
||||
const char *id;
|
||||
GtkWidget *w = NULL;
|
||||
|
||||
gcal = GNOME_CALENDAR (data);
|
||||
priv = gcal->priv;
|
||||
@@ -2397,7 +2446,7 @@ backend_died_cb (ECal *ecal, gpointer data)
|
||||
|
||||
switch (source_type) {
|
||||
case E_CAL_SOURCE_TYPE_EVENT:
|
||||
id = "calendar:calendar-crashed";
|
||||
id = g_strdup ("calendar:calendar-crashed");
|
||||
|
||||
e_calendar_view_set_status_message (E_CALENDAR_VIEW (priv->week_view), NULL, -1);
|
||||
|
||||
@@ -2410,7 +2459,16 @@ backend_died_cb (ECal *ecal, gpointer data)
|
||||
|
||||
g_object_unref (source);
|
||||
|
||||
e_error_run (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gcal))), id, NULL);
|
||||
if (g_hash_table_lookup(non_intrusive_error_table,id)) {
|
||||
/* We already have it */
|
||||
g_message("Error occurred while existing dialog active:\n");
|
||||
return;
|
||||
}
|
||||
|
||||
w = e_error_new(GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (gcal))), "calendar:backend_died", NULL);
|
||||
e_calendar_utils_show_error_silent (w);
|
||||
g_hash_table_insert (non_intrusive_error_table, (gpointer) id, g_object_ref(w));
|
||||
g_signal_connect((GtkObject *)w, "destroy", G_CALLBACK(non_intrusive_error_remove), (gpointer) id);
|
||||
}
|
||||
|
||||
GtkWidget *
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#endif
|
||||
|
||||
#include <string.h>
|
||||
#include <gtk/gtksignal.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <gdk/gdkkeysyms.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <libgnomecanvas/gnome-canvas-rect-ellipse.h>
|
||||
|
||||
@@ -1,3 +1,26 @@
|
||||
2008-11-02 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes bug #559028
|
||||
|
||||
* e-msg-composer.c (msg_composer_key_press_event):
|
||||
Skip over the style toolbar when tabbing in reverse.
|
||||
|
||||
2008-10-29 Sankar P <psankar@novell.com>
|
||||
|
||||
License Changes
|
||||
|
||||
* e-composer-actions.c:
|
||||
* e-composer-actions.h:
|
||||
* e-composer-autosave.c:
|
||||
* e-composer-autosave.h:
|
||||
* e-composer-header-table.c:
|
||||
* e-composer-header-table.h:
|
||||
* e-composer-header.h:
|
||||
* e-composer-name-header.h:
|
||||
* e-composer-private.c:
|
||||
* e-composer-private.h:
|
||||
* e-composer-text-header.c:
|
||||
|
||||
2008-10-13 Bharath Acharya <abharath@novell.com>
|
||||
|
||||
** Updated fix for bug #555775
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#include "e-composer-actions.h"
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_COMPOSER_ACTIONS_H
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#include "e-composer-autosave.h"
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_COMPOSER_AUTOSAVE_H
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#include "e-composer-header-table.h"
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_COMPOSER_HEADER_TABLE_H
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_COMPOSER_HEADER_H
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_COMPOSER_NAME_HEADER_H
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#include "e-composer-private.h"
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_COMPOSER_PRIVATE_H
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#include "e-composer-text-header.h"
|
||||
|
||||
@@ -2295,6 +2295,11 @@ msg_composer_key_press_event (GtkWidget *widget,
|
||||
{
|
||||
EMsgComposer *composer = E_MSG_COMPOSER (widget);
|
||||
GtkWidget *input_widget;
|
||||
GtkhtmlEditor *editor;
|
||||
GtkHTML *html;
|
||||
|
||||
editor = GTKHTML_EDITOR (widget);
|
||||
html = gtkhtml_editor_get_html (editor);
|
||||
|
||||
input_widget =
|
||||
e_composer_header_table_get_header (
|
||||
@@ -2314,8 +2319,13 @@ msg_composer_key_press_event (GtkWidget *widget,
|
||||
}
|
||||
|
||||
if (event->keyval == GDK_Tab && gtk_widget_is_focus (input_widget)) {
|
||||
gtkhtml_editor_run_command (
|
||||
GTKHTML_EDITOR (composer), "grab-focus");
|
||||
gtkhtml_editor_run_command (editor, "grab-focus");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
if (event->keyval == GDK_ISO_Left_Tab &&
|
||||
gtk_widget_is_focus (GTK_WIDGET (html))) {
|
||||
gtk_widget_grab_focus (input_widget);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
@@ -92,270 +92,3 @@ 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:
|
||||
|
||||
|
||||
|
||||
@@ -47,48 +47,3 @@ 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:
|
||||
|
||||
|
||||
|
||||
@@ -42,38 +42,3 @@ 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:
|
||||
|
||||
|
||||
|
||||
@@ -57,110 +57,3 @@ EShellWindow
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION e_shell_window_get_shell_view ##### -->
|
||||
<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:
|
||||
|
||||
|
||||
|
||||
@@ -1697,6 +1697,243 @@ 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>
|
||||
|
||||
@@ -1727,6 +1964,77 @@ intelligent
|
||||
@error:
|
||||
@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>
|
||||
|
||||
@@ -1735,6 +2043,102 @@ 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_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>
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ eutilinclude_HEADERS = \
|
||||
e-marshal.h \
|
||||
e-menu.h \
|
||||
e-mktemp.h \
|
||||
e-non-intrusive-error-dialog.h \
|
||||
e-print.h \
|
||||
e-plugin.h \
|
||||
e-plugin-ui.h \
|
||||
@@ -100,6 +101,7 @@ libeutil_la_SOURCES = \
|
||||
e-marshal.c \
|
||||
e-menu.c \
|
||||
e-mktemp.c \
|
||||
e-non-intrusive-error-dialog.c \
|
||||
e-plugin-ui.c \
|
||||
e-plugin.c \
|
||||
e-popup.c \
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
#include <libgnomeui/gnome-thumbnail.h>
|
||||
#endif
|
||||
|
||||
#include <gtk/gtkiconfactory.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "e-icon-factory.h"
|
||||
#include "e-util-private.h"
|
||||
|
||||
@@ -0,0 +1,308 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
|
||||
*
|
||||
* Authors: Ashish Shrivastava <shashish@novell.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <glib/gstdio.h>
|
||||
#include <glib/gstdio.h>
|
||||
#include "e-non-intrusive-error-dialog.h"
|
||||
|
||||
/* eni - non intrusive error */
|
||||
|
||||
static gboolean
|
||||
eni_query_tooltip_cb (GtkTreeView *view,
|
||||
gint x,
|
||||
gint y,
|
||||
gboolean keyboard_mode,
|
||||
GtkTooltip *tooltip)
|
||||
{
|
||||
GtkTreeViewColumn *column;
|
||||
GtkTreeModel *model;
|
||||
GtkTreePath *path;
|
||||
GtkTreeIter iter;
|
||||
gint level;
|
||||
|
||||
if (!gtk_tree_view_get_tooltip_context (
|
||||
view, &x, &y, keyboard_mode, NULL, &path, &iter))
|
||||
return FALSE;
|
||||
|
||||
/* Figure out which column we're pointing at. */
|
||||
if (keyboard_mode)
|
||||
gtk_tree_view_get_cursor (view, NULL, &column);
|
||||
else
|
||||
gtk_tree_view_get_path_at_pos (
|
||||
view, x, y, NULL, &column, NULL, NULL);
|
||||
|
||||
/* Restrict the tip area to a single cell. */
|
||||
gtk_tree_view_set_tooltip_cell (view, tooltip, path, column, NULL);
|
||||
|
||||
/* This only works if the tree view is NOT reorderable. */
|
||||
if (column != gtk_tree_view_get_column (view, 0))
|
||||
return FALSE;
|
||||
|
||||
model = gtk_tree_view_get_model (view);
|
||||
gtk_tree_model_get (model, &iter, COL_LEVEL, &level, -1);
|
||||
gtk_tooltip_set_text (tooltip, ldata[level].key);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
eni_render_pixbuf (GtkTreeViewColumn *column, GtkCellRenderer *renderer,
|
||||
GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)
|
||||
{
|
||||
gint level;
|
||||
|
||||
gtk_tree_model_get (model, iter, COL_LEVEL, &level, -1);
|
||||
g_object_set (
|
||||
renderer, "stock-id", ldata[level].stock_id,
|
||||
"stock-size", GTK_ICON_SIZE_MENU, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
eni_render_date (GtkTreeViewColumn *column, GtkCellRenderer *renderer,
|
||||
GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)
|
||||
{
|
||||
time_t t;
|
||||
char sdt[100]; /* Should be sufficient? */
|
||||
|
||||
gtk_tree_model_get (model, iter, COL_TIME, &t, -1);
|
||||
strftime (sdt, 100, "%x %X", localtime (&t));
|
||||
g_object_set (renderer, "text", sdt, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
eni_append_logs (const char *txt, GtkListStore *store)
|
||||
{
|
||||
char **str;
|
||||
|
||||
str = g_strsplit (txt, ":", 3);
|
||||
if (str[0] && str[1] && str[2]) {
|
||||
GtkTreeIter iter;
|
||||
|
||||
gtk_list_store_append (store, &iter);
|
||||
gtk_list_store_set (
|
||||
store, &iter,
|
||||
COL_LEVEL, atoi (str[0]),
|
||||
COL_TIME, atol (str[1]),
|
||||
COL_DATA, g_strstrip (str[2]),
|
||||
-1);
|
||||
} else
|
||||
g_printerr ("Unable to decode error log: %s\n", txt);
|
||||
|
||||
g_strfreev (str);
|
||||
}
|
||||
|
||||
static guint
|
||||
eni_config_get_error_level (const char *path)
|
||||
{
|
||||
GConfClient *gconf_client;
|
||||
guint error_level;
|
||||
|
||||
gconf_client = gconf_client_get_default ();
|
||||
error_level = gconf_client_get_int (gconf_client, path, NULL);
|
||||
|
||||
g_object_unref (gconf_client);
|
||||
return error_level;
|
||||
}
|
||||
|
||||
guint
|
||||
eni_config_get_error_timeout (const char *path)
|
||||
{
|
||||
GConfClient *gconf_client;
|
||||
guint error_time;
|
||||
|
||||
gconf_client = gconf_client_get_default ();
|
||||
error_time = gconf_client_get_int (gconf_client, path, NULL);
|
||||
|
||||
g_object_unref (gconf_client);
|
||||
return error_time;
|
||||
}
|
||||
|
||||
static void
|
||||
eni_error_timeout_changed (GtkSpinButton *b, void *data)
|
||||
{
|
||||
GConfClient *gconf_client;
|
||||
int value = gtk_spin_button_get_value_as_int (b);
|
||||
|
||||
gconf_client = gconf_client_get_default ();
|
||||
|
||||
gconf_client_set_int (gconf_client, (char *) data, value, NULL);
|
||||
g_object_unref (gconf_client);
|
||||
}
|
||||
|
||||
static void
|
||||
eni_error_level_value_changed (GtkComboBox *w, gpointer *data)
|
||||
{
|
||||
GConfClient *gconf_client;
|
||||
int value = gtk_combo_box_get_active (w);
|
||||
|
||||
gconf_client = gconf_client_get_default ();
|
||||
|
||||
gconf_client_set_int (gconf_client, (char *) data, value, NULL);
|
||||
|
||||
g_object_unref (gconf_client);
|
||||
}
|
||||
|
||||
void
|
||||
eni_show_logger(ELogger *logger, GtkWidget *top,const char *error_timeout_path, const char *error_level_path)
|
||||
{
|
||||
GtkWidget *container;
|
||||
GtkWidget *label;
|
||||
GtkWidget *toplevel;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *widget;
|
||||
GtkWidget *window;
|
||||
GtkListStore *store;
|
||||
GtkCellRenderer *renderer;
|
||||
GtkTreeViewColumn *column;
|
||||
int i;
|
||||
|
||||
toplevel = gtk_widget_get_toplevel (top);
|
||||
|
||||
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||
gtk_window_set_default_size (GTK_WINDOW (window), 500, 400);
|
||||
gtk_window_set_title (GTK_WINDOW (window), _("Debug Logs"));
|
||||
gtk_window_set_transient_for (
|
||||
GTK_WINDOW (window), GTK_WINDOW (toplevel));
|
||||
gtk_container_set_border_width (GTK_CONTAINER (window), 12);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 12);
|
||||
gtk_container_add (GTK_CONTAINER (window), vbox);
|
||||
|
||||
container = gtk_hbox_new (FALSE, 6);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, FALSE, FALSE, 0);
|
||||
|
||||
/* Translators: This is the first part of the sentence
|
||||
* "Show _errors in the status bar for" - XXX - "second(s)." */
|
||||
widget = gtk_label_new_with_mnemonic (
|
||||
_("Show _errors in the status bar for"));
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
label = widget;
|
||||
|
||||
widget = gtk_spin_button_new_with_range (1.0, 60.0, 1.0);
|
||||
gtk_spin_button_set_value (
|
||||
GTK_SPIN_BUTTON (widget),
|
||||
(gdouble) eni_config_get_error_timeout (error_timeout_path));
|
||||
g_signal_connect (
|
||||
widget, "value-changed",
|
||||
G_CALLBACK (eni_error_timeout_changed),
|
||||
(gpointer) error_timeout_path);
|
||||
|
||||
gtk_label_set_mnemonic_widget (GTK_LABEL (label), widget);
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
/* Translators: This is the second part of the sentence
|
||||
* "Show _errors in the status bar for" - XXX - "second(s)." */
|
||||
widget = gtk_label_new_with_mnemonic (_("second(s)."));
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
container = gtk_hbox_new (FALSE, 6);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, FALSE, FALSE, 0);
|
||||
|
||||
widget = gtk_label_new_with_mnemonic (_("Log Messages:"));
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
label = widget;
|
||||
|
||||
widget = gtk_combo_box_new_text ();
|
||||
for (i = E_LOG_ERROR; i <= E_LOG_DEBUG; i++)
|
||||
gtk_combo_box_append_text (
|
||||
GTK_COMBO_BOX (widget), ldata[i].text);
|
||||
gtk_combo_box_set_active ((GtkComboBox *) widget, eni_config_get_error_level(error_level_path));
|
||||
|
||||
g_signal_connect (
|
||||
widget, "changed",
|
||||
G_CALLBACK (eni_error_level_value_changed),
|
||||
(gpointer) error_level_path);
|
||||
|
||||
gtk_label_set_mnemonic_widget (GTK_LABEL (label), widget);
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
store = gtk_list_store_new (3, G_TYPE_INT, G_TYPE_LONG, G_TYPE_STRING);
|
||||
e_logger_get_logs (logger, (ELogFunction) eni_append_logs, store);
|
||||
gtk_tree_sortable_set_sort_column_id (
|
||||
GTK_TREE_SORTABLE (store), COL_TIME, GTK_SORT_DESCENDING);
|
||||
|
||||
container = gtk_scrolled_window_new (NULL, NULL);
|
||||
gtk_scrolled_window_set_policy (
|
||||
GTK_SCROLLED_WINDOW (container),
|
||||
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
|
||||
gtk_scrolled_window_set_shadow_type (
|
||||
GTK_SCROLLED_WINDOW (container), GTK_SHADOW_IN);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, TRUE, TRUE, 0);
|
||||
|
||||
widget = gtk_tree_view_new();
|
||||
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (widget), TRUE);
|
||||
gtk_tree_view_set_reorderable (GTK_TREE_VIEW (widget), FALSE);
|
||||
gtk_tree_view_set_model (GTK_TREE_VIEW (widget), GTK_TREE_MODEL (store));
|
||||
gtk_tree_view_set_search_column (GTK_TREE_VIEW (widget), COL_DATA);
|
||||
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (widget), TRUE);
|
||||
gtk_widget_set_has_tooltip (widget, TRUE);
|
||||
gtk_container_add (GTK_CONTAINER (container), widget);
|
||||
|
||||
g_signal_connect (
|
||||
widget, "query-tooltip",
|
||||
G_CALLBACK (eni_query_tooltip_cb), NULL);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
gtk_tree_view_column_set_title (column, _("Log Level"));
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (widget), column);
|
||||
renderer = gtk_cell_renderer_pixbuf_new ();
|
||||
gtk_tree_view_column_pack_start (column, renderer, TRUE);
|
||||
gtk_tree_view_column_set_cell_data_func (
|
||||
column, renderer, eni_render_pixbuf, NULL, NULL);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
gtk_tree_view_column_set_title (column, _("Time"));
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (widget), column);
|
||||
|
||||
renderer = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_column_pack_start (column, renderer, FALSE);
|
||||
gtk_tree_view_column_set_cell_data_func (
|
||||
column, renderer, eni_render_date, NULL, NULL);
|
||||
|
||||
renderer = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_insert_column_with_attributes(
|
||||
GTK_TREE_VIEW (widget), -1, _("Messages"),
|
||||
renderer, "markup", COL_DATA, NULL);
|
||||
|
||||
container = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_layout (
|
||||
GTK_BUTTON_BOX (container), GTK_BUTTONBOX_END);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, FALSE, FALSE, 0);
|
||||
|
||||
widget = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
|
||||
gtk_widget_set_tooltip_text (widget, _("Close this window"));
|
||||
g_signal_connect_swapped (
|
||||
widget, "clicked",
|
||||
G_CALLBACK (gtk_widget_destroy), window);
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
gtk_widget_show_all (window);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
|
||||
*
|
||||
* Authors: Ashish Shrivastava <shashish@novell.com>
|
||||
*
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* 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 General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __E_ERROR_DIALOG_H__
|
||||
#define __E_ERROR_DIALOG_H__
|
||||
|
||||
#include <glib-object.h>
|
||||
#include "e-error.h"
|
||||
#include "e-icon-factory.h"
|
||||
#include "e-logger.h"
|
||||
#include "e-util/gconf-bridge.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
struct _log_data {
|
||||
int level;
|
||||
char *key;
|
||||
char *text;
|
||||
char *stock_id;
|
||||
GdkPixbuf *pbuf;
|
||||
} ldata [] = {
|
||||
{ E_LOG_ERROR, N_("Error"), N_("Errors"), GTK_STOCK_DIALOG_ERROR },
|
||||
{ E_LOG_WARNING, N_("Warning"), N_("Warnings and Errors"), GTK_STOCK_DIALOG_WARNING },
|
||||
{ E_LOG_DEBUG, N_("Debug"), N_("Error, Warnings and Debug messages"), GTK_STOCK_DIALOG_INFO }
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
COL_LEVEL = 0,
|
||||
COL_TIME,
|
||||
COL_DATA
|
||||
};
|
||||
|
||||
/* eni - error non intrusive*/
|
||||
guint eni_config_get_error_timeout (const char *path);
|
||||
void eni_show_logger (ELogger *logger,
|
||||
GtkWidget *widget,
|
||||
const char *error_timeout_path,
|
||||
const char *error_level_path);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __E_ERROR_DIALOG_H__ */
|
||||
+8
-10
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#include "e-plugin-ui.h"
|
||||
|
||||
+8
-10
@@ -1,20 +1,18 @@
|
||||
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
|
||||
/*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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
|
||||
* General Public License for more details.
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*/
|
||||
|
||||
#ifndef E_PLUGIN_UI_H
|
||||
|
||||
@@ -390,94 +390,6 @@ e_format_number (gint number)
|
||||
}
|
||||
}
|
||||
|
||||
static gchar *
|
||||
do_format_number_as_float (gdouble number)
|
||||
{
|
||||
GList *iterator, *list = NULL;
|
||||
struct lconv *locality;
|
||||
gint char_length = 0;
|
||||
gint group_count = 0;
|
||||
gchar *grouping;
|
||||
gint last_count = 3;
|
||||
gint divider;
|
||||
gchar *value;
|
||||
gchar *value_iterator;
|
||||
gdouble fractional;
|
||||
|
||||
locality = localeconv();
|
||||
grouping = locality->grouping;
|
||||
while (number >= 1.0) {
|
||||
gchar *group;
|
||||
switch (*grouping) {
|
||||
default:
|
||||
last_count = *grouping;
|
||||
grouping++;
|
||||
/* Fall through */
|
||||
case 0:
|
||||
divider = epow10(last_count);
|
||||
number /= divider;
|
||||
fractional = modf (number, &number);
|
||||
fractional *= divider;
|
||||
fractional = floor (fractional);
|
||||
|
||||
if (number >= 1.0) {
|
||||
group = g_strdup_printf("%0*d", last_count, (int) fractional);
|
||||
} else {
|
||||
group = g_strdup_printf("%d", (gint) fractional);
|
||||
}
|
||||
break;
|
||||
case CHAR_MAX:
|
||||
divider = epow10(last_count);
|
||||
number /= divider;
|
||||
fractional = modf (number, &number);
|
||||
fractional *= divider;
|
||||
fractional = floor (fractional);
|
||||
|
||||
while (number >= 1.0) {
|
||||
group = g_strdup_printf("%0*d", last_count, (gint) fractional);
|
||||
|
||||
char_length += strlen(group);
|
||||
list = g_list_prepend(list, group);
|
||||
group_count ++;
|
||||
|
||||
divider = epow10(last_count);
|
||||
number /= divider;
|
||||
fractional = modf (number, &number);
|
||||
fractional *= divider;
|
||||
fractional = floor (fractional);
|
||||
}
|
||||
|
||||
group = g_strdup_printf("%d", (gint) fractional);
|
||||
break;
|
||||
}
|
||||
char_length += strlen(group);
|
||||
list = g_list_prepend(list, group);
|
||||
group_count ++;
|
||||
}
|
||||
|
||||
if (list) {
|
||||
value = g_new(gchar, 1 + char_length + (group_count - 1) * strlen(locality->thousands_sep));
|
||||
|
||||
iterator = list;
|
||||
value_iterator = value;
|
||||
|
||||
strcpy(value_iterator, iterator->data);
|
||||
value_iterator += strlen(iterator->data);
|
||||
for (iterator = iterator->next; iterator; iterator = iterator->next) {
|
||||
strcpy(value_iterator, locality->thousands_sep);
|
||||
value_iterator += strlen(locality->thousands_sep);
|
||||
|
||||
strcpy(value_iterator, iterator->data);
|
||||
value_iterator += strlen(iterator->data);
|
||||
}
|
||||
g_list_foreach (list, (GFunc) g_free, NULL);
|
||||
g_list_free (list);
|
||||
return value;
|
||||
} else {
|
||||
return g_strdup("0");
|
||||
}
|
||||
}
|
||||
|
||||
/* Perform a binary search for key in base which has nmemb elements
|
||||
of size bytes each. The comparisons are done by (*compare)(). */
|
||||
void
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
2008-10-26 Jorge Gonzalez <jorgegonz@svn.gnome.org>
|
||||
|
||||
* es/es.po: Updated Spanish translation
|
||||
|
||||
2008-09-29 Petr Kovar <pknbe@volny.cz>
|
||||
|
||||
* cs.po: Updated Czech translation of manual by Jiri Eischmann.
|
||||
|
||||
+244
-480
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,33 @@
|
||||
2008-11-02 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes part of bug #559042
|
||||
|
||||
* mail-config.glade:
|
||||
Remove extra space in translated string.
|
||||
|
||||
2008-11-02 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes bug #557613
|
||||
|
||||
* em-utils.c (try_open_e_book):
|
||||
Wait for try_open_e_book_cb() to run before freeing the EFlag.
|
||||
It will run regardless of whether the EBook operation completes.
|
||||
|
||||
2008-10-31 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes part of bug #558726 (patch by Frederic van Starbmann)
|
||||
|
||||
* em-format-html.c (emfh_multipart_related_check):
|
||||
Fix a potential format string crash.
|
||||
|
||||
2008-10-31 Sankar P <psankar@novell.com>
|
||||
|
||||
** Patch by Bharath Acharya <abharath@novell.com>
|
||||
|
||||
* em-folder-tree.c (emft_popup):
|
||||
Disable delete and rename on
|
||||
right click menu for the system folders
|
||||
|
||||
2008-10-22 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* mail-send-recv.c:
|
||||
@@ -321,6 +351,14 @@ License Changes
|
||||
* em-format-html-display.c: (efhd_image): Do not try to access widget
|
||||
of the pury when the operation has been cancelled.
|
||||
|
||||
2008-11-03 Ashish Shrivastava <shashish@novell.com>
|
||||
|
||||
** Support for Non-intrusive error in calendar.
|
||||
|
||||
* mail-component.c: Remove common code between
|
||||
mailer and calendar and moved to
|
||||
e-util/e-non-intrusive-error-dialog.c
|
||||
|
||||
2008-09-08 Milan Crha <mcrha@redhat.com>
|
||||
|
||||
** Fix for bug #328216
|
||||
|
||||
@@ -2243,6 +2243,10 @@ emft_popup (EMFolderTree *emft, GdkEvent *event)
|
||||
info_flags |= CAMEL_FOLDER_VIRTUAL | CAMEL_FOLDER_NOINFERIORS;
|
||||
|
||||
selfolder = em_folder_tree_get_selected_folder (emft);
|
||||
|
||||
if (folder_type_flags & CAMEL_FOLDER_SYSTEM)
|
||||
flags &= ~EM_POPUP_FOLDER_DELETE;
|
||||
|
||||
if (em_utils_folder_is_outbox (selfolder, NULL))
|
||||
info_flags |= CAMEL_FOLDER_TYPE_OUTBOX;
|
||||
}
|
||||
|
||||
@@ -1056,7 +1056,7 @@ emfh_multipart_related_check(struct _EMFormatHTMLJob *job, int cancelled)
|
||||
if (puri->use_count == 0) {
|
||||
d(printf("part '%s' '%s' used '%d'\n", puri->uri?puri->uri:"", puri->cid, puri->use_count));
|
||||
if (puri->func == emfh_write_related) {
|
||||
g_string_printf(((EMFormat *)job->format)->part_id, puri->part_id);
|
||||
g_string_printf(((EMFormat *)job->format)->part_id, "%s", puri->part_id);
|
||||
em_format_part((EMFormat *)job->format, (CamelStream *)job->stream, puri->part);
|
||||
}
|
||||
/* else it was probably added by a previous format this loop */
|
||||
|
||||
+5
-5
@@ -2101,14 +2101,14 @@ try_open_e_book (EBook *book, gboolean only_if_exists, GError **error)
|
||||
e_flag_timed_wait (flag, &wait);
|
||||
}
|
||||
|
||||
e_flag_free (flag);
|
||||
|
||||
if (canceled) {
|
||||
g_set_error (error, E_BOOK_ERROR, E_BOOK_ERROR_CANCELLED, "Operation has been canceled.");
|
||||
e_book_cancel_async_op (book, NULL);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
e_flag_wait (flag);
|
||||
e_flag_free (flag);
|
||||
|
||||
return data.result;
|
||||
}
|
||||
|
||||
@@ -2203,7 +2203,7 @@ em_utils_in_addressbook (CamelInternetAddress *iaddr, gboolean local_only)
|
||||
stop = err && err->domain == E_BOOK_ERROR && err->code == E_BOOK_ERROR_CANCELLED;
|
||||
mail_cancel_hook_remove(hook);
|
||||
g_object_unref(book);
|
||||
d(g_warning("Can't get contacts: %s", err->message));
|
||||
g_warning("Can't get contacts: %s", err->message);
|
||||
g_clear_error(&err);
|
||||
continue;
|
||||
}
|
||||
@@ -2287,7 +2287,7 @@ em_utils_contact_photo (struct _CamelInternetAddress *cia, gboolean local)
|
||||
|| !e_book_get_contacts(book, query, &contacts, &err)) {
|
||||
stop = err && err->domain == E_BOOK_ERROR && err->code == E_BOOK_ERROR_CANCELLED;
|
||||
g_object_unref(book);
|
||||
d(g_warning("Can't get contacts: %s", err->message));
|
||||
g_warning("Can't get contacts: %s", err->message);
|
||||
g_clear_error(&err);
|
||||
continue;
|
||||
}
|
||||
|
||||
+6
-242
@@ -90,6 +90,11 @@
|
||||
#include <bonobo/bonobo-control.h>
|
||||
#include <bonobo/bonobo-widget.h>
|
||||
|
||||
#include "e-util/e-non-intrusive-error-dialog.h"
|
||||
|
||||
#define MAILER_ERROR_LEVEL_KEY "/apps/evolution/mail/display/error_level"
|
||||
#define MAILER_ERROR_TIME_OUT_KEY "/apps/evolution/mail/display/error_timeout"
|
||||
|
||||
#define d(x)
|
||||
|
||||
static void create_local_item_cb(EUserCreatableItemsHandler *handler, const char *item_type_name, void *data);
|
||||
@@ -1586,254 +1591,13 @@ mail_component_stores_foreach (MailComponent *component, GHFunc func, void *user
|
||||
// e_component_view_set_button_icon (mc->priv->component_view, icon);
|
||||
//}
|
||||
|
||||
struct _log_data {
|
||||
int level;
|
||||
char *key;
|
||||
char *text;
|
||||
char *stock_id;
|
||||
GdkPixbuf *pbuf;
|
||||
} ldata [] = {
|
||||
{ E_LOG_ERROR, N_("Error"), N_("Errors"), GTK_STOCK_DIALOG_ERROR },
|
||||
{ E_LOG_WARNINGS, N_("Warning"), N_("Warnings and Errors"), GTK_STOCK_DIALOG_WARNING },
|
||||
{ E_LOG_DEBUG, N_("Debug"), N_("Error, Warnings and Debug messages"), GTK_STOCK_DIALOG_INFO }
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
COL_LEVEL = 0,
|
||||
COL_TIME,
|
||||
COL_DATA
|
||||
};
|
||||
|
||||
static gboolean
|
||||
query_tooltip_cb (GtkTreeView *view,
|
||||
gint x,
|
||||
gint y,
|
||||
gboolean keyboard_mode,
|
||||
GtkTooltip *tooltip)
|
||||
{
|
||||
GtkTreeViewColumn *column;
|
||||
GtkTreeModel *model;
|
||||
GtkTreePath *path;
|
||||
GtkTreeIter iter;
|
||||
gint level;
|
||||
|
||||
if (!gtk_tree_view_get_tooltip_context (
|
||||
view, &x, &y, keyboard_mode, NULL, &path, &iter))
|
||||
return FALSE;
|
||||
|
||||
/* Figure out which column we're pointing at. */
|
||||
if (keyboard_mode)
|
||||
gtk_tree_view_get_cursor (view, NULL, &column);
|
||||
else
|
||||
gtk_tree_view_get_path_at_pos (
|
||||
view, x, y, NULL, &column, NULL, NULL);
|
||||
|
||||
/* Restrict the tip area to a single cell. */
|
||||
gtk_tree_view_set_tooltip_cell (view, tooltip, path, column, NULL);
|
||||
|
||||
/* This only works if the tree view is NOT reorderable. */
|
||||
if (column != gtk_tree_view_get_column (view, 0))
|
||||
return FALSE;
|
||||
|
||||
model = gtk_tree_view_get_model (view);
|
||||
gtk_tree_model_get (model, &iter, COL_LEVEL, &level, -1);
|
||||
gtk_tooltip_set_text (tooltip, ldata[level].key);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
render_pixbuf (GtkTreeViewColumn *column, GtkCellRenderer *renderer,
|
||||
GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)
|
||||
{
|
||||
gint level;
|
||||
|
||||
gtk_tree_model_get (model, iter, COL_LEVEL, &level, -1);
|
||||
g_object_set (
|
||||
renderer, "stock-id", ldata[level].stock_id,
|
||||
"stock-size", GTK_ICON_SIZE_MENU, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
render_date (GtkTreeViewColumn *column, GtkCellRenderer *renderer,
|
||||
GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)
|
||||
{
|
||||
time_t t;
|
||||
char sdt[100]; /* Should be sufficient? */
|
||||
|
||||
gtk_tree_model_get (model, iter, COL_TIME, &t, -1);
|
||||
strftime (sdt, 100, "%x %X", localtime (&t));
|
||||
g_object_set (renderer, "text", sdt, NULL);
|
||||
}
|
||||
|
||||
|
||||
|
||||
static void
|
||||
append_logs (const char *txt, GtkListStore *store)
|
||||
{
|
||||
char **str;
|
||||
|
||||
str = g_strsplit (txt, ":", 3);
|
||||
if (str[0] && str[1] && str[2]) {
|
||||
GtkTreeIter iter;
|
||||
|
||||
gtk_list_store_append (store, &iter);
|
||||
gtk_list_store_set (
|
||||
store, &iter,
|
||||
COL_LEVEL, atoi (str[0]),
|
||||
COL_TIME, atol (str[1]),
|
||||
COL_DATA, g_strstrip (str[2]),
|
||||
-1);
|
||||
} else
|
||||
g_printerr ("Unable to decode error log: %s\n", txt);
|
||||
|
||||
g_strfreev (str);
|
||||
}
|
||||
|
||||
static void
|
||||
spin_value_changed (GtkSpinButton *b, gpointer data)
|
||||
{
|
||||
int value = gtk_spin_button_get_value_as_int (b);
|
||||
GConfClient *client = mail_config_get_gconf_client ();
|
||||
|
||||
gconf_client_set_int (client, "/apps/evolution/mail/display/error_timeout", value, NULL);
|
||||
}
|
||||
|
||||
void
|
||||
mail_component_show_logger (gpointer top)
|
||||
{
|
||||
MailComponent *mc = mail_component_peek ();
|
||||
GConfBridge *bridge;
|
||||
GtkWidget *container;
|
||||
GtkWidget *label;
|
||||
GtkWidget *toplevel;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *widget;
|
||||
GtkWidget *window;
|
||||
ELogger *logger = mc->priv->logger;
|
||||
int i;
|
||||
GtkListStore *store;
|
||||
GtkCellRenderer *renderer;
|
||||
GtkTreeViewColumn *column;
|
||||
|
||||
bridge = gconf_bridge_get ();
|
||||
toplevel = gtk_widget_get_toplevel (top);
|
||||
|
||||
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||
gtk_window_set_default_size (GTK_WINDOW (window), 500, 400);
|
||||
gtk_window_set_title (GTK_WINDOW (window), _("Debug Logs"));
|
||||
gtk_window_set_transient_for (
|
||||
GTK_WINDOW (window), GTK_WINDOW (toplevel));
|
||||
gtk_container_set_border_width (GTK_CONTAINER (window), 12);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 12);
|
||||
gtk_container_add (GTK_CONTAINER (window), vbox);
|
||||
|
||||
container = gtk_hbox_new (FALSE, 6);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, FALSE, FALSE, 0);
|
||||
|
||||
/* Translators: This is the first part of the sentence
|
||||
* "Show _errors in the status bar for" - XXX - "second(s)." */
|
||||
widget = gtk_label_new_with_mnemonic (
|
||||
_("Show _errors in the status bar for"));
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
label = widget;
|
||||
|
||||
widget = gtk_spin_button_new_with_range (1.0, 60.0, 1.0);
|
||||
gtk_spin_button_set_value (
|
||||
GTK_SPIN_BUTTON (widget),
|
||||
(gdouble) mail_config_get_error_timeout ());
|
||||
g_signal_connect (
|
||||
widget, "value-changed",
|
||||
G_CALLBACK (spin_value_changed), NULL);
|
||||
gtk_label_set_mnemonic_widget (GTK_LABEL (label), widget);
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
/* Translators: This is the second part of the sentence
|
||||
* "Show _errors in the status bar for" - XXX - "second(s)." */
|
||||
widget = gtk_label_new_with_mnemonic (_("second(s)."));
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
container = gtk_hbox_new (FALSE, 6);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, FALSE, FALSE, 0);
|
||||
|
||||
widget = gtk_label_new_with_mnemonic (_("Log Messages:"));
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
label = widget;
|
||||
|
||||
widget = gtk_combo_box_new_text ();
|
||||
for (i = E_LOG_ERROR; i <= E_LOG_DEBUG; i++)
|
||||
gtk_combo_box_append_text (
|
||||
GTK_COMBO_BOX (widget), ldata[i].text);
|
||||
gconf_bridge_bind_property (
|
||||
bridge, "/apps/evolution/mail/display/error_level",
|
||||
G_OBJECT (widget), "active");
|
||||
gtk_label_set_mnemonic_widget (GTK_LABEL (label), widget);
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
store = gtk_list_store_new (3, G_TYPE_INT, G_TYPE_LONG, G_TYPE_STRING);
|
||||
e_logger_get_logs (logger, (ELogFunction) append_logs, store);
|
||||
gtk_tree_sortable_set_sort_column_id (
|
||||
GTK_TREE_SORTABLE (store), COL_TIME, GTK_SORT_DESCENDING);
|
||||
|
||||
container = gtk_scrolled_window_new (NULL, NULL);
|
||||
gtk_scrolled_window_set_policy (
|
||||
GTK_SCROLLED_WINDOW (container),
|
||||
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
|
||||
gtk_scrolled_window_set_shadow_type (
|
||||
GTK_SCROLLED_WINDOW (container), GTK_SHADOW_IN);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, TRUE, TRUE, 0);
|
||||
|
||||
widget = gtk_tree_view_new();
|
||||
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (widget), TRUE);
|
||||
gtk_tree_view_set_reorderable (GTK_TREE_VIEW (widget), FALSE);
|
||||
gtk_tree_view_set_model (GTK_TREE_VIEW (widget), GTK_TREE_MODEL (store));
|
||||
gtk_tree_view_set_search_column (GTK_TREE_VIEW (widget), COL_DATA);
|
||||
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (widget), TRUE);
|
||||
gtk_widget_set_has_tooltip (widget, TRUE);
|
||||
gtk_container_add (GTK_CONTAINER (container), widget);
|
||||
|
||||
g_signal_connect (
|
||||
widget, "query-tooltip",
|
||||
G_CALLBACK (query_tooltip_cb), NULL);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
gtk_tree_view_column_set_title (column, _("Log Level"));
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (widget), column);
|
||||
|
||||
renderer = gtk_cell_renderer_pixbuf_new ();
|
||||
gtk_tree_view_column_pack_start (column, renderer, TRUE);
|
||||
gtk_tree_view_column_set_cell_data_func (
|
||||
column, renderer, render_pixbuf, NULL, NULL);
|
||||
|
||||
column = gtk_tree_view_column_new ();
|
||||
gtk_tree_view_column_set_title (column, _("Time"));
|
||||
gtk_tree_view_append_column (GTK_TREE_VIEW (widget), column);
|
||||
|
||||
renderer = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_column_pack_start (column, renderer, FALSE);
|
||||
gtk_tree_view_column_set_cell_data_func (
|
||||
column, renderer, render_date, NULL, NULL);
|
||||
|
||||
renderer = gtk_cell_renderer_text_new ();
|
||||
gtk_tree_view_insert_column_with_attributes(
|
||||
GTK_TREE_VIEW (widget), -1, _("Messages"),
|
||||
renderer, "markup", COL_DATA, NULL);
|
||||
|
||||
container = gtk_hbutton_box_new ();
|
||||
gtk_button_box_set_layout (
|
||||
GTK_BUTTON_BOX (container), GTK_BUTTONBOX_END);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), container, FALSE, FALSE, 0);
|
||||
|
||||
widget = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
|
||||
gtk_widget_set_tooltip_text (widget, _("Close this window"));
|
||||
g_signal_connect_swapped (
|
||||
widget, "clicked",
|
||||
G_CALLBACK (gtk_widget_destroy), window);
|
||||
gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
|
||||
|
||||
gtk_widget_show_all (window);
|
||||
eni_show_logger(logger, top, MAILER_ERROR_TIME_OUT_KEY, MAILER_ERROR_LEVEL_KEY);
|
||||
}
|
||||
|
||||
BONOBO_TYPE_FUNC_FULL (MailComponent, GNOME_Evolution_MailComponent, PARENT_TYPE, mail_component)
|
||||
|
||||
@@ -5108,7 +5108,7 @@ For example: "Work" or "Personal"</property>
|
||||
<widget class="GtkCheckButton" id="magic_spacebar_checkbox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="label" translatable="yes">Enable Magic S_pacebar </property>
|
||||
<property name="label" translatable="yes">Enable Magic S_pacebar</property>
|
||||
<property name="use_underline">True</property>
|
||||
<property name="relief">GTK_RELIEF_NORMAL</property>
|
||||
<property name="focus_on_click">True</property>
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
/*
|
||||
* Copyright 2008, Joergen Scheibengruber <joergen.scheibengruber@googlemail.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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.
|
||||
* 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 this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* 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)
|
||||
* Copyright 2008, Joergen Scheibengruber <joergen.scheibengruber@googlemail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
/*
|
||||
* Copyright 2008, Joergen Scheibengruber <joergen.scheibengruber@googlemail.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of version 2 of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation.
|
||||
* 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.
|
||||
* 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 this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* 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)
|
||||
* Copyright 2008, Joergen Scheibengruber <joergen.scheibengruber@googlemail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,3 +1,10 @@
|
||||
2008-10-31 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes part of bug #558726 (patch by Frederic van Starbmann)
|
||||
|
||||
* mail-to-task.c (do_mail_to_task):
|
||||
Fix a potential format string crash.
|
||||
|
||||
2008-08-27 Sankar P <psankar@novell.com>
|
||||
|
||||
License Changes
|
||||
|
||||
@@ -287,7 +287,7 @@ do_mail_to_task (AsyncData *data)
|
||||
e_notice (NULL, GTK_MESSAGE_ERROR, _("Cannot open calendar. %s"), err ? err->message : "");
|
||||
} else if (!e_cal_is_read_only (client, &readonly, &err) || readonly) {
|
||||
if (err)
|
||||
e_notice (NULL, GTK_MESSAGE_ERROR, err->message);
|
||||
e_notice (NULL, GTK_MESSAGE_ERROR, "%s", err->message);
|
||||
else
|
||||
e_notice (NULL, GTK_MESSAGE_ERROR, _("Selected source is read only, thus cannot create task there. Select other source, please."));
|
||||
} else {
|
||||
|
||||
@@ -1,3 +1,10 @@
|
||||
2008-10-31 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes part of bug #558726 (patch by Frederic van Starbmann)
|
||||
|
||||
* plugin-manager.c (eppm_enable_toggled):
|
||||
Fix a potential format string crash.
|
||||
|
||||
2008-09-04 Sankar P <psankar@novell.com>
|
||||
|
||||
License Changes
|
||||
|
||||
@@ -196,7 +196,7 @@ eppm_enable_toggled (GtkCellRendererToggle *renderer, const char *path_string, M
|
||||
gtk_tree_model_get (m->model, &iter, COL_PLUGIN_DATA, &plugin, -1);
|
||||
e_plugin_enable (plugin, !plugin->enabled);
|
||||
|
||||
g_warning (plugin->name);
|
||||
g_warning ("%s", plugin->name);
|
||||
|
||||
gtk_list_store_set (GTK_LIST_STORE(m->model), &iter,
|
||||
COL_PLUGIN_ENABLED, plugin->enabled,
|
||||
|
||||
@@ -1,3 +1,22 @@
|
||||
2008-11-03 Leonardo Ferreira Fontenelle <leonardof@gnome.org>
|
||||
|
||||
* pt_BR.po: Merged Brazilian Portuguese translation from branch
|
||||
gnome-2-24. Fixes capitalization, verb tense in descriptions, some
|
||||
terminology errors, double spaces and random errors. Improves
|
||||
access keys.
|
||||
|
||||
2008-11-02 Gabor Kelemen <kelemeng@gnome.hu>
|
||||
|
||||
* hu.po: Translation updated.
|
||||
|
||||
2008-10-30 Kenneth Nielsen <k.nielsen81@gmail.com>
|
||||
|
||||
* da.po: Updated Danish translation by Kenneth Nielsen
|
||||
|
||||
2008-10-25 Priit Laes <plaes at svn dot gnome dot org>
|
||||
|
||||
* et.po: Translation updated by Ivar Smolin
|
||||
|
||||
2008-10-24 Priit Laes <plaes at svn dot gnome dot org>
|
||||
|
||||
* et.po: Translation updated by Ivar Smolin
|
||||
|
||||
@@ -11545,7 +11545,7 @@ msgstr "Evolution hálózati beállítások vezérlése"
|
||||
#: ../mail/mail-component.c:767
|
||||
#: ../plugins/groupwise-features/proxy-add-dialog.glade.h:6
|
||||
msgid "Mail"
|
||||
msgstr "Levél"
|
||||
msgstr "Levelek"
|
||||
|
||||
#: ../mail/GNOME_Evolution_Mail.server.in.in.h:14
|
||||
#: ../mail/em-account-prefs.c:495
|
||||
@@ -16225,11 +16225,11 @@ msgstr "Az Evolution adatainak és beállításainak mentése és visszaállít
|
||||
|
||||
#: ../plugins/backup-restore/org-gnome-backup-restore.xml.h:2
|
||||
msgid "R_estore Settings..."
|
||||
msgstr "Beállítások _visszaállítása…"
|
||||
msgstr "Biztonsági mentés _visszaállítása…"
|
||||
|
||||
#: ../plugins/backup-restore/org-gnome-backup-restore.xml.h:3
|
||||
msgid "_Backup Settings..."
|
||||
msgstr "Beállítások _mentése…"
|
||||
msgstr "Adatok biztonsági _mentése…"
|
||||
|
||||
#: ../plugins/bbdb/bbdb.c:543 ../plugins/bbdb/bbdb.c:552
|
||||
#: ../plugins/bbdb/org-gnome-evolution-bbdb.eplug.xml.h:1
|
||||
|
||||
+1436
-1394
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,10 @@
|
||||
2008-10-30 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* importer/evolution-importer-client.h:
|
||||
* importer/intelligent.c:
|
||||
* test/evolution-test-component.c:
|
||||
Only include the toplevel GTK+ header.
|
||||
|
||||
2008-10-17 Kandepu Prasad <kaprasad@novell.com>
|
||||
|
||||
** Fix for bug #311479
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#define EVOLUTION_IMPORTER_CLIENT_H
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtkwidget.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <importer/evolution-importer.h>
|
||||
#include <importer/evolution-importer-listener.h>
|
||||
|
||||
|
||||
@@ -26,25 +26,7 @@
|
||||
|
||||
#include "intelligent.h"
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
#include <gtk/gtkdrawingarea.h>
|
||||
#include <gtk/gtkbox.h>
|
||||
#include <gtk/gtkhbox.h>
|
||||
#include <gtk/gtkvbox.h>
|
||||
#include <gtk/gtkcheckbutton.h>
|
||||
#include <gtk/gtklabel.h>
|
||||
#include <gtk/gtkmain.h>
|
||||
#include <gtk/gtkobject.h>
|
||||
#include <gtk/gtktogglebutton.h>
|
||||
#include <gtk/gtkwidget.h>
|
||||
#include <gtk/gtkwindow.h>
|
||||
#include <gtk/gtkframe.h>
|
||||
#include <gtk/gtkclist.h>
|
||||
#include <gtk/gtknotebook.h>
|
||||
#include <gtk/gtkscrolledwindow.h>
|
||||
#include <gtk/gtkdialog.h>
|
||||
#include <gtk/gtkstock.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include <libgnome/gnome-config.h>
|
||||
/*#include <libgnome/gnome-util.h>*/
|
||||
|
||||
@@ -1,3 +1,18 @@
|
||||
2008-11-03 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes bug #559040
|
||||
|
||||
* evolution-addressbook.xml:
|
||||
* evolution-mail-global.xml:
|
||||
* evolution-mail-list.xml:
|
||||
No period at the end of tooltips, and use sentence case.
|
||||
|
||||
2008-11-03 Ashish Shrivastava <shashish@novell.com>
|
||||
|
||||
** Support for Non-intrusive error in calendar.
|
||||
|
||||
* evolution-calendar.xml: Add menu for HelpDebug.
|
||||
|
||||
2008-08-27 Philip Withnall <philip@tecnocode.co.uk>
|
||||
|
||||
** Fix for bug #534762
|
||||
|
||||
@@ -109,7 +109,7 @@
|
||||
<!--
|
||||
<menuitem name="CreateVFolder" verb="CreateVFolder" _label="_New Search _Folder (FIXME)"/>
|
||||
-->
|
||||
<menuitem name="ToolsSubscriptions" verb="" _label="_Subscriptions"/>
|
||||
<menuitem name="ToolsSubscriptions" verb="" _label="_Subscriptions..."/>
|
||||
|
||||
<separator f="" name="Folder1"/>
|
||||
|
||||
|
||||
@@ -130,7 +130,7 @@
|
||||
|
||||
<placeholder name="FolderOps">
|
||||
<menuitem name="FolderRename" verb="" _label="_Rename..."/>
|
||||
<menuitem name="FolderRefresh" verb="" _label="Re_fresh..."/>
|
||||
<menuitem name="FolderRefresh" verb="" _label="Re_fresh"/>
|
||||
<menuitem name="FolderDelete" verb="" _label="_Delete"/>
|
||||
|
||||
<separator f="" name="FolderOps1"/>
|
||||
|
||||
@@ -1,3 +1,17 @@
|
||||
2008-11-03 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
** Fixes bug #559041
|
||||
|
||||
* text/e-text.c (e_text_class_init):
|
||||
Add translator comment for "im_context" property.
|
||||
|
||||
2008-10-30 Matthew Barnes <mbarnes@redhat.com>
|
||||
|
||||
* widgets/menus/gal-view-menus.c:
|
||||
* widgets/misc/e-activity-handler.c:
|
||||
* widgets/table/e-table-config-field.h:
|
||||
Only include the toplevel GTK+ header.
|
||||
|
||||
2008-10-17 Sankar P <psankar@novell.com>
|
||||
|
||||
License Changes
|
||||
|
||||
@@ -1,3 +1,10 @@
|
||||
2008-10-29 Sankar P <psankar@novell.com>
|
||||
|
||||
License Changes
|
||||
|
||||
* e-url-entry.c:
|
||||
* e-url-entry.h:
|
||||
|
||||
2008-10-21 Sankar P <psankar@novell.com>
|
||||
|
||||
* e-spinner.c (e_spinner_stop),
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
|
||||
/* e-url-entry.c
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
/*
|
||||
* 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) any later version.
|
||||
* 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
|
||||
@@ -14,11 +10,14 @@
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this program; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
*
|
||||
* Authors:
|
||||
* JP Rosevear <jpr@novell.com>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* Author: JP Rosevear
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
|
||||
/* e-url-entry.h
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
/*
|
||||
* 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) any later version.
|
||||
* 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
|
||||
@@ -14,11 +10,14 @@
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this program; if not, write to the
|
||||
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* License along with the program; if not, see <http://www.gnu.org/licenses/>
|
||||
*
|
||||
*
|
||||
* Authors:
|
||||
* JP Rosevear <jpr@novell.com>
|
||||
*
|
||||
* Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
|
||||
*
|
||||
* Author: JP Rosevear
|
||||
*/
|
||||
|
||||
#ifndef _E_URL_ENTRY_H_
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#ifndef _E_TABLE_CONFIG_FIELD_H_
|
||||
#define _E_TABLE_CONFIG_FIELD_H_
|
||||
|
||||
#include <gtk/gtkvbox.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <table/e-table-sort-info.h>
|
||||
#include <table/e-table-specification.h>
|
||||
|
||||
|
||||
@@ -3777,7 +3777,9 @@ e_text_class_init (ETextClass *klass)
|
||||
|
||||
g_object_class_install_property (gobject_class, PROP_IM_CONTEXT,
|
||||
g_param_spec_object ("im_context",
|
||||
/* Translators: Input Method Context */
|
||||
_( "IM Context" ),
|
||||
/* Translators: Input Method Context */
|
||||
_( "IM Context" ),
|
||||
GTK_TYPE_IM_CONTEXT,
|
||||
G_PARAM_READWRITE));
|
||||
|
||||
Reference in New Issue
Block a user