Compare commits

..

436 Commits

Author SHA1 Message Date
Richard Taylor ba7fae7062 SVN reorganisation: Move current maintenance branches
svn: r12908
2009-08-07 08:12:15 +00:00
Benny Malengier ab1e0183f7 0002512: [Python 2.6 support] Change sets module by built-in set types
svn: r11413
2008-12-04 14:33:24 +00:00
Benny Malengier 663b2aead9 backport to suppport bsddb 4.7 / python 2.6
svn: r11391
2008-12-02 13:38:09 +00:00
Benny Malengier 677af32e5e 2008-02-27 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_ReadXML.py: don't create empty objects in bookmarks
	* src/Bookmarks.py: don't store duplicates, backport



svn: r10129
2008-02-27 10:44:52 +00:00
Raphael Ackermann 967a48abdc 2008-02-02 Raphael Ackermann <raphael.ackermann@gmail.com>
* src/GrampsDb/_WriteGedcom.py
	* src/plugins/WriteGeneWeb.py
	0001414: "Living" is not translated in GEDCOM export file

svn: r9974
2008-02-02 10:35:01 +00:00
Peter Landgren d547e773b4 Found one error
svn: r9969
2008-01-31 17:14:21 +00:00
Benny Malengier 10ae727aa1 2008-01-23 Brian Matherly <brian@gramps-project.org>
Benny Malengier <benny.malengier@gramps-project.org>: backport trunk
	* src/ReportBase/_StyleComboBox.py:
	* src/ReportBase/_StyleEditor.py:
	Modify the style editor to properly handle unicode style names.



svn: r9919
2008-01-23 13:35:33 +00:00
Benny Malengier 65dcc697ac 2008-01-22 Benny Malengier <benny.malengier@gramps-project.org>
* src/Editors/_EditPerson.py: callback for gallerytab no longer needed



svn: r9907
2008-01-22 07:45:49 +00:00
Benny Malengier 098be7de14 * src/plugins/Check.py: bug (buglist) wrong method call
2008-01-21 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9901
2008-01-21 08:38:17 +00:00
Benny Malengier 020fdef1ce 2008-01-21 Benny Malengier <benny.malengier@gramps-project.org>
* src/docgen/SvgDrawDoc.py: backport patch so that text in svgbox shows



svn: r9900
2008-01-21 08:14:34 +00:00
James G Sack d4c3d51d2a fix #1621 .. use os.path.samefile in write_photo
svn: r9892
2008-01-18 21:40:27 +00:00
Benny Malengier e5a4f0c906 2008-01-17 Benny Malengier <benny.malengier@gramps-project.org>
* src/DataViews/_RelationView.py: isue #1605, not twice in same family



svn: r9862
2008-01-17 09:57:49 +00:00
Stéphane Charette d72778f1ea update version number
svn: r9805
2008-01-14 07:43:47 +00:00
Stéphane Charette b49f4ce088 2.2.10 (Lemon Curry?)
svn: r9803
2008-01-14 06:09:49 +00:00
Jérôme Rapinat 7bb51faef7 2008-01-13 Boril Gourinov <boril.gourinov@gmail.com>
* bg.po: Translation update



svn: r9793
2008-01-13 14:59:17 +00:00
Julio Sánchez b3009fa5c5 Update for 2.2.10
svn: r9791
2008-01-13 06:24:06 +00:00
Jérôme Rapinat b401e09477 2008-01-09 Lubo Vasko <pgval@inMail.sk>
* sk.po: Translation update



svn: r9762
2008-01-09 08:53:13 +00:00
Jérôme Rapinat fdf26dab90 2008-01-09 Boril Gourinov <boril.gourinov@gmail.com>
* bg.po: Translation update



svn: r9761
2008-01-09 08:33:59 +00:00
Jérôme Rapinat 53e931b8b3 2008-01-08 Boril Gourinov <boril.gourinov@gmail.com>
* bg.po: Translation update



svn: r9750
2008-01-08 08:42:01 +00:00
Peter Landgren 3f9e7f68df sv.po 1 fuzzy + improvments
svn: r9741
2008-01-07 12:41:19 +00:00
Peter Landgren 9b368b02fb 1 fuzzy, + users improvments
svn: r9740
2008-01-07 12:40:34 +00:00
Stéphane Charette 1ccf2a6da6 release candidate 2.2.10
svn: r9734
2008-01-07 00:06:24 +00:00
Stéphane Charette 1392071612 added WinMime.py and GrampsType.py
svn: r9733
2008-01-07 00:02:57 +00:00
Stéphane Charette 103e843be3 resize and link to very large images, included sources for media objects
svn: r9728
2008-01-06 21:26:59 +00:00
Stéphane Charette 42e84d399e new pot prior to 2.2.10
svn: r9726
2008-01-06 20:11:44 +00:00
Peter Landgren 49250f97db Update for 2.2.10
svn: r9721
2008-01-06 10:47:08 +00:00
Arturas Sleinius c61cb14958 Updated Lithuanian translation
svn: r9717
2008-01-06 08:09:59 +00:00
Erik De Richter 1b7386f6ec new translation strings nl
svn: r9711
2008-01-05 10:05:30 +00:00
Jérôme Rapinat 861f94524b 2008-01-04 Jerome Rapinat <romjerome@yahoo.fr>
* src/DateHandler/_Date_fr.py : typo



svn: r9706
2008-01-04 18:05:42 +00:00
Jérôme Rapinat 751c314939 2008-01-03 Mirko Leonhaeuser <mirko@leonhaeuser.de>
* de.po: update



svn: r9705
2008-01-03 20:16:04 +00:00
Benny Malengier 3463abdfe4 * data/gramps.desktop.in: list more mime types, item 851
2008-01-03 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9703
2008-01-03 16:37:58 +00:00
Benny Malengier 6a9f70948f * src/GrampsDb/_WriteXML.py: wrong escape of &, bug 1430
2008-01-03 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9701
2008-01-03 15:25:17 +00:00
Benny Malengier 1e2d017c92 2008-01-03 Benny Malengier <benny.malengier@gramps-project.org>
* src/plugins/RelCalc.py: managed window error, bug 1499



svn: r9699
2008-01-03 14:50:15 +00:00
Gary Burton 22b32f3ca3 2008-01-03 Gary Burton <gary.burton@zen.co.uk>
* src/GrampsWidgets.py: allow MonitoredEntry widgets to be updated with
	empty strings. I fixed this issue in trunk 2 months ago and no ill effects
	have been reported. issue #1314



svn: r9697
2008-01-03 13:56:03 +00:00
Jérôme Rapinat c1f5b81d95 2008-01-03 Jerome Rapinat <romjerome@yahoo.fr>
* src/GrampsDb/_ReadGrdb.py
        * src/GrampsDb/_ReadXML.py: removed "Family Tree" on translation string, used "database"



svn: r9694
2008-01-03 13:10:04 +00:00
Jérôme Rapinat 0a16676385 2008-01-03 Jerome Rapinat <romjerome@yahoo.fr>
* fr.po: Translation update



svn: r9693
2008-01-03 12:14:31 +00:00
Benny Malengier b589f2dff4 * src/ViewManager.py: remove unneeded show, remove tabs
2008-01-02 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9690
2008-01-03 09:10:03 +00:00
Benny Malengier 9f0a5402bd 2008-01-02 Benny Malengier <benny.malengier@gramps-project.org>
* src/Filters/SideBar/_PlaceSidebarFilter.py: correct string, bug #1275

2008-01-02 Jerome Rapinat  <romjerome@yahoo.fr>


svn: r9685
2008-01-02 19:19:32 +00:00
Jérôme Rapinat 517c25720b 2008-1-2 Jerome Rapinat <romjerome@yahoo.fr>
* configure.in: update of bg.po



svn: r9684
2008-01-02 17:39:47 +00:00
Jérôme Rapinat 899cf744c7 2008-01-02 Boril Gourinov <boril.gourinov@gmail.com>
* bg.po: New language, bulgarian



svn: r9683
2008-01-02 14:04:36 +00:00
Peter Landgren d2721f9343 Minor update.
svn: r9673
2008-01-01 14:00:03 +00:00
Benny Malengier 5303197ef8 2007-12-23 Benny Malengier <benny.malengier@gramps-project.org>
* src/glade/gramps.glade: accel (Role and Date) in Event Ref, bug #1449



svn: r9563
2007-12-23 09:02:38 +00:00
Espen Berg d7d776f214 Updated Norwegian translation
svn: r9561
2007-12-22 17:02:01 +00:00
Benny Malengier 8b7136ddd9 2007-12-17 Benny Malengier <benny.malengier@gramps-project.org>
* src/RelLib/_Person.py: sources in attributes of eventref are not seen
		 in ref tables
	* src/RelLib/_EventRef.py: can contain sources, add methods for that
	* src/plugins/Check.py: low level check of repo table, add check to 
		clean up referenced but not existing repos



svn: r9531
2007-12-19 09:28:43 +00:00
Gary Burton ab29b78e6d 2007-12-15 Gary Burton <gary.burton@zen.co.uk>
* src/Editors/_EditFamily.py: emit family-update signal #1416



svn: r9511
2007-12-15 21:55:08 +00:00
Benny Malengier 65c99d23b5 2007-12-14 Benny Malengier <benny.malengier@gramps-project.org>
* src/RelLib/_Repository.py: Repo has address which can have source, so
		backref of source to repo must be allowed and added!
	* src/DisplayTabs/_BackRefModel.py: Repo can be backref, add
	* src/DisplayTabs/_BackRefList.py: Repo can be backref, add



svn: r9505
2007-12-14 14:06:18 +00:00
Benny Malengier 0bad0de909 2007-12-11 Benny Malengier <benny.malengier@gramps-project.org>
* src/plugins/IndivComplete.py: bug on buglist, wrong parameter



svn: r9488
2007-12-11 08:25:16 +00:00
Benny Malengier 6911aa415a 2007-12-10 Benny Malengier <benny.malengier@gramps-project.org>
* src/RelLib/_Event.py: add attr to list of sec objects, bug #1318



svn: r9483
2007-12-10 21:50:45 +00:00
Alex Roitman 037893413b 2007-12-09 Alex Roitman <shura@gramps-project.org>
* data/grampsxml.rng: Add namemaps.
	* data/grampsxml.dtd: Add namemaps.



svn: r9472
2007-12-09 20:11:05 +00:00
Eero Tamminen 00ec7a7ddb minor improvements
svn: r9469
2007-12-09 18:54:49 +00:00
Benny Malengier 3e5f1350dd wrong comment string
svn: r9459
2007-12-08 13:43:35 +00:00
Benny Malengier e385af623d 2007-11-24 Benny Malengier <benny.malengier@gramps-project.org>
Add support for name grouping import/export
	* src/GrampsDb/_GrampsDbBase.py: obtain grouping keys
	* src/GrampsDb/_ReadXML.py: read in group table
	* src/GrampsDb/_DbUtils.py: grdb -> grdb copy of grouping table
	* src/GrampsDb/_ReadGrdb.py: read in group table
	* src/GrampsDb/_WriteXML.py: write group table out
	* src/GrampsDb/_GrampsBSDDB.py: group table is no sec table, init it
	together with primary tables!



svn: r9457
2007-12-07 22:47:40 +00:00
Peter Landgren b7d7a060f5 Fixed uncollected objects
svn: r9451
2007-12-06 18:58:59 +00:00
Peter Landgren 5968ba16eb Fixed Living in GEDCOM export
svn: r9444
2007-12-05 14:36:35 +00:00
James G Sack 004024a2b3 fix #1399 trailing whitespace causes bogus handle
svn: r9423
2007-11-28 22:58:33 +00:00
James G Sack b775d17dda revert r9410 -- better leave it broken
svn: r9413
2007-11-26 11:21:57 +00:00
James G Sack 3559bd6826 #1378 (interim?) fix by testing isfile() before the remove()
svn: r9410
2007-11-26 10:17:36 +00:00
Benny Malengier 0a10de647e 2007-11-24 Benny Malengier <benny.malengier@gramps-project.org>
* src/Editors/_EditPerson.py: callback family update bug removed



svn: r9395
2007-11-24 13:54:20 +00:00
Benny Malengier 5755e456e4 2007-11-23 Benny Malengier <benny.malengier@gramps-project.org>
* src/plugins/Check.py: fix wrong event ref (was fixed in trunk in 2007/02)



svn: r9392
2007-11-23 22:01:42 +00:00
Jérôme Rapinat cfefb8b47d /po/fr.po update
svn: r9378
2007-11-21 14:31:18 +00:00
Jérôme Rapinat b0d15be93d /po/fr.po regression issue
svn: r9376
2007-11-20 15:07:29 +00:00
Jérôme Rapinat a88fe2be2b src/plugins/Makefile.am add missing reference for rel_nl
svn: r9373
2007-11-20 12:09:20 +00:00
Benny Malengier 766f2c4551 2007-11-13 Benny Malengier <benny.malengier@gramps-project.org>
* src/plugins/GraphViz.py: issue #1362, code generation should not show
	open with ghostview, ..., instead show app with text/plain.



svn: r9346
2007-11-13 10:32:51 +00:00
Gary Burton 59dd029306 2007-11-12 Gary Burton <gary.burton@zen.co.uk>
* src/ScratchPad.py: fixed a crash when building tooltip. Not enough
	place holders in format string



svn: r9343
2007-11-12 21:29:28 +00:00
Peter Landgren 0054f537d1 Translation clean up
svn: r9340
2007-11-12 19:44:34 +00:00
James G Sack 4e33489607 fix #1365 typo in lds_ord_name
svn: r9333
2007-11-12 08:29:49 +00:00
Gary Burton b6a5f46caa 2007-11-10 Gary Burton <gary.burton@zen.co.uk>
* src/plugins/IndivComplete.py: added support for printing
	non-primary, non-family events.



svn: r9327
2007-11-10 23:22:17 +00:00
James G Sack 5c2e433ff3 fix typos in cl_export (exporting gedcom) bug #353
svn: r9319
2007-11-07 19:35:42 +00:00
Benny Malengier e9db9568cb * src/AddMedia.py: fix issue #1350, relative path not working addmedia
* src/Editors/_EditPerson.py: family rebuild callback error

2007-11-07 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9318
2007-11-07 18:50:57 +00:00
Benny Malengier 805103387d 2007-11-07 Benny Malengier <benny.malengier@gramps-project.org>
* src/AddMedia.py: add media crash, fix issue #1349



svn: r9315
2007-11-07 11:04:10 +00:00
James G Sack 803a4dc9d2 fix old typo in ansel_utf8
svn: r9314
2007-11-06 22:15:54 +00:00
James G Sack c5138eac36 remove 2 configure-generated files from version control
svn: r9298
2007-11-05 22:20:51 +00:00
Gary Burton ce79322bdf 2007-11-03 Gary Burton <gary.burton@zen.co.uk>
* src/plugins/DetDescendantReport.py
	* src/plugins/DetAncestralReport.py
	Added functionality to print event and event reference notes. issue #1335



svn: r9293
2007-11-03 22:11:52 +00:00
Stéphane Charette d89d56af71 issue #1340, don't display mime-type
svn: r9291
2007-11-03 05:43:49 +00:00
James G Sack 7a3316e492 fix termination problem with CLI operations
svn: r9280
2007-10-31 08:25:14 +00:00
Gary Burton 51159df14e * src/RelLib/_Person.py: setting the death index wrongly.
2007-10-29 Gary Burton <gary.burton@zen.co.uk>


svn: r9276
2007-10-30 15:05:53 +00:00
Gary Burton 86a5f53dd5 2007-10-29 Gary Burton <gary.burton@zen.co.uk>
* src/RelLib/_Person.py: reset birth and death indexes after deleting
	an event. Fixes #1327



svn: r9268
2007-10-29 22:32:41 +00:00
Gary Burton 0f22a6ef69 * src/Editors/_EditPlace.py: fixed name of street MonitoredEntry
* src/Editors/_EditLocation.py: fixed name of street MonitoredEntry
	MonitoredEntry field for street wrongly named as city.
	Caused strange occasional drag and drop bug. issue #1304

2007-10-28 Gary Burton <gary.burton@zen.co.uk>


svn: r9263
2007-10-28 21:54:39 +00:00
Gary Burton 47c63757bd 2007-10-28 Gary Burton <gary.burton@zen.co.uk>
* src/DisplayTabs/_EnbeddedList.py: Fixed crash when doing a drag and
	drop with an object that was deleted from a list. issue # 1326



svn: r9261
2007-10-28 16:40:18 +00:00
Stéphane Charette 36ad798989 various fixes
svn: r9252
2007-10-26 06:15:50 +00:00
Benny Malengier 224c185a24 2007-10-26 Benny Malengier <benny.malengier@gramps-project.org>
* src/plugins/rel_nl.py: various improvements



svn: r9249
2007-10-25 22:28:56 +00:00
Benny Malengier 8220a39d65 * src/DisplayTabs/_GalleryTab.py: remove edit_callback, works via signals now
2007-10-22 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9235
2007-10-22 20:38:29 +00:00
Benny Malengier c51d00bc77 * src/DisplayTabs/_EmbeddedList.py: during rebuild, don't do select change
* src/DisplayTabs/_ButtonTab.py: avoid double call of selection_change
	* src/DisplayTabs/_GrampsTab.py: method to add db connects, and set connects
	* src/Editors/_EditPrimary.py: on add tab pass db connection method
	* src/Editors/_EditSecondary.py: on add tab pass db connection method
	* src/Editors/_EditReference.py: on add tab pass db connection method
	* src/DisplayTabs/_GalleryTab.py: use new structure to correctly update
	displaytab

2007-10-22 Benny Malengier <benny.malengier@gramps-project.org>


svn: r9234
2007-10-22 20:28:42 +00:00
Benny Malengier 026d966e9f 2007-10-22 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_GrampsInMemDB.py: xml load/save not working, fixed #1319


svn: r9232
2007-10-22 18:46:28 +00:00
James G Sack 680c09f5c2 update changelog per r9227 commit of src/ansel_utf8.py
svn: r9228
2007-10-21 17:36:06 +00:00
James G Sack 99a70817ad fix ansel input & output (ref: issue #831)
svn: r9227
2007-10-21 17:12:56 +00:00
Benny Malengier 734d81bc79 2007-10-21 Benny Malengier <benny.malengier@gramps-project.org>
* src/Editors/_EditPerson.py: If a family changes, rebuild family backref of all 
	open editors. issue #1309, causing corrupt database.
	Also remove unneeded associations rebuild when family changes



svn: r9225
2007-10-21 07:59:42 +00:00
Alex Roitman 6ca81346cf 2007-10-19 Piotr Czubaszek <pioterus@gmail.com>
* src/docgen/PdfDoc.py (PdfDoc.add_media_object): Missing period.



svn: r9216
2007-10-20 02:34:28 +00:00
Benny Malengier 8cd1a019cc 2007-10-19 Gary Burton <gary.burton@zen.co.uk>
* src/DisplayTabs/_EmbeddedList.py:
	* src/DisplayTabs/_ButtonTab.py:
	ENTER is edit on embedded lists, issue #1296



svn: r9213
2007-10-19 20:51:18 +00:00
Alex Roitman 4592913700 2007-10-19 Frank S. Thomas <frank@thomas-alfeld.de>
* src/glade/gramps.glade: Remove extra space.



svn: r9212
2007-10-19 15:31:16 +00:00
Stéphane Charette f7e8065ce8 update version string to 2.2.10
svn: r9205
2007-10-18 15:14:27 +00:00
Stéphane Charette db89750a03 2.2.9
svn: r9204
2007-10-18 15:10:22 +00:00
Stéphane Charette 9cef52e148 2.2.9-0rc1
svn: r9203
2007-10-18 15:08:59 +00:00
Benny Malengier de001c476e 2007-10-16 Stephane Charette <stephanecharette@gmail.com>
* src/plugins/rel_nl.py: wrong linebreaks in previous commit!



svn: r9195
2007-10-16 06:40:15 +00:00
Stéphane Charette db45f867fb fix typo in previous checkin
svn: r9194
2007-10-16 05:19:13 +00:00
Stéphane Charette e3e4075435 fixes contributed by Frederik De Richter and Benny Malengier
svn: r9193
2007-10-16 03:51:36 +00:00
Stéphane Charette 7a81e60adc sl.po translation by Bernard Banko
svn: r9192
2007-10-16 03:39:58 +00:00
Eero Tamminen b86351a721 Finnish (Suomi) translation upto date, hopefully...
svn: r9188
2007-10-14 21:36:32 +00:00
Eero Tamminen 610adee194 merge with latest template
svn: r9187
2007-10-14 21:24:19 +00:00
Benny Malengier 13fb0a2dca * src/DataViews/_PedigreeView.py: home person action added twice, gives warnings
in new GTK

2007-10-14 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9185
2007-10-14 19:54:56 +00:00
Benny Malengier a0abc50536 2007-10-14 Benny Malengier <benny.malengier@gramps-project.org>
* src/DisplayState.py: actiongroup made double, gives warnings (errors) in newer GTK
	* src/PageView.py: remove useless comments



svn: r9183
2007-10-14 19:43:21 +00:00
Doug Blank a47334f4f2 2007-10-14 Douglas S. Blank <dblank@cs.brynmawr.edu>
* src/plugins/holidays.xml: Added German holidays (from Mirko Leonhaeuser)



svn: r9182
2007-10-14 19:06:01 +00:00
Benny Malengier bc1fbbc939 2007-10-13 Benny Malengier <benny.malengier@gramps-project.org>
* src/PageView.py: define_actions called twice, gives warning in new gtk, remove.



svn: r9174
2007-10-13 20:16:57 +00:00
Stéphane Charette ef10cabcb3 added new file rel_pt.py contributed by Duarte Loreto
svn: r9171
2007-10-13 09:42:55 +00:00
Doug Blank 0337999c38 2007-10-12 Douglas S. Blank <dblank@cs.brynmawr.edu>
* src/plugins/holidays.xml: Fixed Victoria Day (via James A. Treacy)
        * src/plugins/holidays.xml: Added Swedish official holidays (via Peter L
andgren)



svn: r9169
2007-10-13 01:09:18 +00:00
Doug Blank f6b6d327d3 2007-10-12 Douglas Blank <dblank@cs.brynmawr.edu>
* src/plugins/holidays.xml: Fixed Victoria Day (via James A. Treacy)



svn: r9168
2007-10-12 22:28:34 +00:00
Alex Roitman 98b1b5024d 2007-10-12 Alex Roitman <shura@gramps-project.org>
* src/plugins/unused.glade: Do not translate gtk stock label id.



svn: r9167
2007-10-12 16:46:10 +00:00
Benny Malengier 3b22323bce * src/gramps_main.py: don't create filters dir, not needed
2007-10-12 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9164
2007-10-12 12:41:01 +00:00
Luis Gonzaga 170b7aac61 Update to the new string in .pot for 2.2.9 branch
svn: r9163
2007-10-12 12:30:01 +00:00
Jérôme Rapinat d2326302d7 update french translation
svn: r9158
2007-10-12 09:30:58 +00:00
Stéphane Charette ef7159293e translation fixes for 2.2.9
svn: r9157
2007-10-12 06:29:13 +00:00
Doug Blank 995dab1d5f Added Swedish official holidays
svn: r9155
2007-10-12 01:01:03 +00:00
Benny Malengier c5e135e740 2007-10-12 Benny Malengier <benny.malengier@gramps-project.org>
* src/Filters/_FilterParser.py: avoid unknown filters crashing
	* src/Filters/Rules/Person/__init__.py: remove private filter list and register, not used.



svn: r9153
2007-10-11 23:04:36 +00:00
Benny Malengier 2b58bc1a9d small error in previous commit
svn: r9150
2007-10-11 22:40:08 +00:00
Benny Malengier c503010ac0 2007-10-11 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_GrampsDbBase.py: allow check without gid creation on all objects
	* src/GrampsDb/_ReadXML.py: on reference read, don't create gid.
	This also patches a privacy setting error on placeobj in place tag section



svn: r9149
2007-10-11 21:40:30 +00:00
Alex Roitman 36d767dda5 2007-10-11 Alex Roitman <shura@gramps-project.org>
* src/plugins/unused.glade: Do not translate gtk stock label id.



svn: r9148
2007-10-11 19:21:20 +00:00
Alex Roitman ca2e779680 2007-10-11 Alex Roitman <shura@gramps-project.org>
* ru.po: Update translation.



svn: r9147
2007-10-11 19:09:17 +00:00
Alex Roitman 63e57e7869 Typos
svn: r9146
2007-10-11 19:08:03 +00:00
Jérôme Rapinat c0a2e7357c update french translation
svn: r9145
2007-10-11 18:06:54 +00:00
Arturas Sleinius 3616a8582d Updated Lithuanian translation
svn: r9144
2007-10-11 17:00:48 +00:00
Benny Malengier 645f9a53fd 2007-10-11 Benny Malengier <benny.malengier@gramps-project.org>
* src/DateHandler/__init__.py: use portuguese date handler



svn: r9143
2007-10-11 15:34:23 +00:00
Jérôme Rapinat 75dd05403a update french translation
svn: r9141
2007-10-11 15:17:18 +00:00
Peter Landgren ccada89b06 Updated to rev 9137.
svn: r9139
2007-10-11 08:21:25 +00:00
Julio Sánchez b21a3fe496 Changes for 2.2.9
svn: r9138
2007-10-11 08:17:02 +00:00
Peter Landgren cf07987597 Updated to rev 9136.
svn: r9137
2007-10-11 07:24:58 +00:00
Espen Berg 465b9539b3 Norwegian translation updated for new gramps.pot
svn: r9136
2007-10-11 07:06:53 +00:00
Stéphane Charette 60198f8d4e rebuilt gramps.pot
svn: r9135
2007-10-11 06:49:01 +00:00
Stéphane Charette 87132429e5 german update from Mirko Leonhaeuser <mirko@leonhaeuser.de>
svn: r9134
2007-10-11 06:20:19 +00:00
Stéphane Charette b5089e93a6 update of de.po from Mirko Leonhaeuser <mirko@leonhaeuser.de>
svn: r9133
2007-10-11 06:11:25 +00:00
Stéphane Charette b45ba5ef82 update of sl.po from Bernard Banko <bernard.banko@siol.net>
svn: r9132
2007-10-11 05:57:08 +00:00
Benny Malengier b0b0754e73 2007-10-10 Duarte Loreto <happyguy_pt@hotmail.com>
* src/DateHandler/_Date_pt.py: portugese datehandler accompanying translation
	* po/POTFILES.in: new file in POTFILE
	* src/DateHandler/Makefile.am: add new file for distribution


svn: r9129
2007-10-10 19:36:32 +00:00
Benny Malengier 54d98d6840 slovenian is not ready for distribution
svn: r9128
2007-10-10 19:02:24 +00:00
Benny Malengier 95f17a5080 2007-10-10 Bernard Banko <bernard.banko@siol.net>
* sl.po: New language, slovenian


svn: r9127
2007-10-10 18:50:48 +00:00
Espen Berg 9fe4e1455f Norwegian translation completed
svn: r9126
2007-10-10 18:35:49 +00:00
Jérôme Rapinat 53535b79cc update strings according to last gramps.pot
svn: r9124
2007-10-10 10:00:05 +00:00
Jérôme Rapinat 1fe905314c update strings according to last gramps.pot
svn: r9123
2007-10-10 09:59:40 +00:00
Jérôme Rapinat f02d100514 update strings according last gramps.pot
svn: r9122
2007-10-10 09:57:53 +00:00
Benny Malengier 8bbb6e35d6 * src/GrampsDb/_GrampsDbBase.py: allow not to create gramps_id on add
* src/GrampsDb/_ReadXML.py: on sourceref, don't create gramps_id
	* src/GrampsDb/_GrampsInMemDB.py: remove gid from memory map only if not None
	* src/DbLoader.py: traceback to console on xml load error

2007-10-09 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9118
2007-10-09 19:29:20 +00:00
Benny Malengier fd9e484fb2 2007-10-09 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_GrampsInMemDB.py: correctly store global name grouping
	* src/GrampsDb/_GrampsBSDDB.py: correctly store global name grouping
	* src/RelLib/_Name.py: allow grouping equal to surname
	* src/Editors/_EditName.py: correct handling of name grouping, issue #647

2007-10-09 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9115
2007-10-09 13:03:23 +00:00
Benny Malengier efb702db44 remove tabs
svn: r9114
2007-10-09 07:58:47 +00:00
Benny Malengier 6e5eaa398d higer pygtk2 needed
svn: r9113
2007-10-09 07:37:02 +00:00
Benny Malengier d471b9809e * src/plugins/Calendar.py: various improvements, issue #931
2007-10-07  Douglas Blank  <dblank@cs.brynmawr.edu>


svn: r9099
2007-10-07 20:49:33 +00:00
Benny Malengier ebffeeb59d 2007-10-07 Douglas Blank <dblank@cs.brynmawr.edu>
* src/plugins/Calendar.py: various improvements, issue #1157



svn: r9098
2007-10-07 20:39:39 +00:00
Benny Malengier 082a35185d * src/DataViews/_RelationView.py: init scroll pos on new person, issue #442
2007-10-07  Gary Burton <gary.burton@zen.co.uk>


svn: r9096
2007-10-07 20:14:12 +00:00
Benny Malengier c6131b4ae8 2007-10-07 Gary Burton <gary.burton@zen.co.uk>
* src/PageView.py: sort column retains filter value, issue #507



svn: r9094
2007-10-07 19:57:33 +00:00
Benny Malengier 70d363111e 2007-10-06 Douglas Blank <dblank@cs.brynmawr.edu>
* src/plugins/Calendar.py: various improvements



svn: r9090
2007-10-06 13:26:42 +00:00
Benny Malengier f7a7d711c6 2007-10-06 Benny Malengier <benny.malengier@gramps-project.org>
* src/DataViews/_RelationView.py: don't crash on missing media ref
	* src/DisplayTabs/_GalleryTab.py: on missing media ref, notify to run check tool
	* src/plugins/Check.py: add code to remove missing media ref in person,
	family, event, place, source.



svn: r9088
2007-10-06 12:55:08 +00:00
Zsolt Foldvari e9bb3d75c1 Create custom cell renderer for image labels in GalleryTab for better control.
svn: r9084
2007-10-05 12:59:11 +00:00
Benny Malengier b10607715e * src/DisplayTabs/_GalleryTab.py: remove bug that leads to database corruption,
if media is deleted in mediaview, remove media in all open gallery tabs

2007-10-05 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9081
2007-10-05 11:54:04 +00:00
Benny Malengier 5bdeeeb762 2007-10-05 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_ReadGedcom.py: issue #1169, wrong GEDCOM parse ADDR



svn: r9080
2007-10-05 09:42:09 +00:00
Benny Malengier cf5ae68625 2007-10-05 James G. Sack <jgsack@san.rr.com>
* src/GrampsDb/_GrampsDbBase.py:
	* src/GrampsDb/_GrampsGEDDB.py:
	* src/GrampsDb/_GrampsXMLDB.py:
	* src/GrampsDb/_GrampsInMemDB.py:
	* src/Bookmarks.py:
	issue #1261: creating bookmark does not lead to save of xml


svn: r9077
2007-10-05 09:03:59 +00:00
Benny Malengier 5183394480 remove some debug print statements
svn: r9073
2007-10-03 22:09:25 +00:00
Benny Malengier 82042ed16e * src/plugins/Check.py: add remove empty objects. This needs testing...
2007-10-03 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9072
2007-10-03 21:56:05 +00:00
Benny Malengier c195fa2b29 2007-10-03 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_GrampsDbBase.py: copy bookmark list, don't reference
	* src/GrampsDb/_ReadXML.py: only add bookmarks if not present already, #1187


svn: r9070
2007-10-03 21:34:29 +00:00
Benny Malengier d53d49ec5a 2007-10-03 Benny Malengier <benny.malengier@gramps-project.org>
* src/Spell.py: add gtkspell bug workaround, see eg issue 1272, 1091, ...


svn: r9068
2007-10-03 21:16:31 +00:00
Benny Malengier dac7bd1eeb * src/PageView.py: correct bug not going to bookmark if no active person
* src/DataViews/_MediaView.py:
	* src/DataViews/_RepositoryView.py:
	* src/DataViews/_SourceView.py:
	* src/DataViews/_EventView.py:
	* src/DataViews/_FamilyList.py:
	* src/DataViews/_PedigreeView.py:
	* src/DataViews/_PlaceView.py:
	* src/DataViews/_PersonView.py:
	* src/DataViews/_RelationView.py:
	after import, redraw bookmark menu

2007-10-03 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9064
2007-10-03 14:31:21 +00:00
Benny Malengier 0de13fe656 2007-10-03 Frederik De Richter <frederik.de.richter@googlemail.com>
* nl.po: 100%


svn: r9063
2007-10-03 12:49:23 +00:00
Benny Malengier 900e70e199 2007-10-03 Benny Malengier <benny.malengier@gramps-project.org>
* src/DataViews/_PedigreeView.py: correctly load bookmarks, issue 1271
	* src/DataViews/_RelationView.py: correctly load bookmarks, issue 1271



svn: r9062
2007-10-03 08:31:27 +00:00
Jérôme Rapinat d46255b577 update french translation
svn: r9053
2007-10-01 16:05:37 +00:00
Benny Malengier 653bc1798e 2007-10-01 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_DbUtils.py: do deep copy of bookmarks from old to new db
	* src/GrampsDb/_GrampsXMLDB.py: in load_from: load correct bookmarks



svn: r9050
2007-10-01 08:46:37 +00:00
Stéphane Charette 4fc43267d7 remove IE hack that breaks in IE7; GRAMPS bug report #1266
svn: r9046
2007-09-30 23:09:45 +00:00
Brian Matherly bd75fd9c33 Patch from Gary Burton <gary.burton@zen.co.uk>: Narrative web report: If the event has no date, there's no place (Issue #0001236)
svn: r9045
2007-09-30 21:16:33 +00:00
Alex Roitman 225bcabce3 2007-09-29 Alex Roitman <shura@gramps-project.org>
* data/grampsxml.rng: Add region to objref.
	* data/grampsxml.dtd: Add region to objref.



svn: r9040
2007-09-29 22:24:33 +00:00
Benny Malengier bb231a73f1 * src/GrampsDb/_ReadXML.py: read region tag in xml
* src/GrampsDb/_WriteXML.py: output region tag in xml (=subsection of picture)
	* src/Editors/_EditMediaRef.py: make sure rectangle is none if nothing given

2007-09-29 Benny Malengier <benny.malengier@gramps-project.org> 


svn: r9039
2007-09-29 14:56:45 +00:00
Benny Malengier 38a312e4a4 svn: r9037 2007-09-29 12:19:02 +00:00
Benny Malengier 90fe7db3c2 2007-09-29 Benny Malengier <benny.malengier@gramps-project.org>
svn: r9036
2007-09-29 12:13:12 +00:00
Benny Malengier 213c6a9298 2007-09-29 James G. Sack <jgsack@san.rr.com>
* src/GrampsDb/_ReadXML.py: remove bug: no more creation of objects if bookmark is found with
	handle that is not in database. This causes corruption of database!
	* src/GrampsDb/_GrampsDbBase.py: person bookmarks do not work after save. Correct. Issue #1260



svn: r9035
2007-09-29 12:04:45 +00:00
Brian Matherly 6df5468852 Patch from James G. Sack <jgsack@san.rr.com>: 0001187: Runaway Gramps XML file sizes
svn: r9033
2007-09-29 03:32:44 +00:00
Luis Gonzaga 91d13e3f46 Done!!! All reviewed and improved!
svn: r9030
2007-09-29 00:14:20 +00:00
Luis Gonzaga 8abb1fd507 svn: r9024 2007-09-28 02:24:00 +00:00
Luis Gonzaga 03fb97b31f svn: r9023 2007-09-28 02:20:09 +00:00
Luis Gonzaga 730e2d5846 svn: r9019 2007-09-27 17:14:16 +00:00
Luis Gonzaga bfd10948de svn: r9018 2007-09-27 16:53:34 +00:00
Peter Landgren e3b4bc163c Fixed some spelling errors and improved translation.
svn: r9016
2007-09-27 13:35:08 +00:00
Benny Malengier 9ffb568ec3 2007-09-27 Benny Malengier <benny.malengier@gramps-project.org>
* src/FilterEditor/_EditRule.py: wrong filter selection, bug #807
	Based on work Johan


svn: r9014
2007-09-27 13:26:43 +00:00
Benny Malengier 9c6d5f5e0a 2007-09-26 Benny Malengier <benny.malengier@gramps-project.org>
* pt_BR.po: Crash with wrong string on line 6364


svn: r9012
2007-09-26 08:23:59 +00:00
Benny Malengier c59c051bce 2007-09-26 James G. Sack <jgsack@san.rr.com>
* src/plugins/Check.py: same sex marriage need not be CIVIL_UNION, bug #1245



svn: r9010
2007-09-26 08:09:09 +00:00
Luis Gonzaga 99d00b2d0d Update. All translated! Going to Fuzzy and Review the ENTIRE file (3074 strings) now...
svn: r9003
2007-09-24 20:39:10 +00:00
Benny Malengier 4f23d05e5b 2007-09-19 Benny Malengier <benny.malengier@gramps-project.org>
* src/GrampsDb/_ReadGedcom.py: empty gedcom gives error message, not crash



svn: r8990
2007-09-19 07:38:37 +00:00
Benny Malengier ca1ee037c5 2007-09-17 Luiz Gonzaga <lfilho@gmail.com>
* pt_BR.po: Update.



svn: r8988
2007-09-17 21:25:21 +00:00
Benny Malengier 0d015fa69c 2007-09-13 Benny Malengier <benny.malengier@gramps-project.org>
* src/Exporter.py: temporarely fix bug invalid filename. This has been
	completely rewritten for 3.0



svn: r8970
2007-09-13 07:36:34 +00:00
Benny Malengier 7935c5ef8a unicode char feature 1199
svn: r8907
2007-08-31 15:06:37 +00:00
Benny Malengier f2b5069647 unicode char feature 1199
svn: r8902
2007-08-31 10:00:34 +00:00
Benny Malengier 04a991bc9b 2007-08-25 Benny Malengier <bm@cage.ugent.be>
* src/plugins/rel_de.py  : nomeata, bug #1183



svn: r8862
2007-08-24 23:11:40 +00:00
Benny Malengier b506ab930d small changes, also bug #1164
svn: r8830
2007-08-18 09:21:22 +00:00
Alex Roitman 39cb1c9871 2007-08-17 Piotr Czubaszek <pioterus@gmail.com>
* src/DateHandler/_Date_pl.py: Add new module.
	* src/DateHandler/__init__.py: Import new module.
	* src/DateHandler/Makefile.am: Ship new file.



svn: r8825
2007-08-17 17:13:00 +00:00
Brian Matherly a117672ac7 Reset source information between people in the individual complete report.
svn: r8797
2007-08-01 11:59:09 +00:00
Alex Roitman 01f50143d8 Fix Polish relationship problem
svn: r8719
2007-07-16 21:17:57 +00:00
Alex Roitman 6bc548cfb9 2007-07-16 Peter Landgren <peter.talken@telia.com>
* sv.po: Update.



svn: r8718
2007-07-16 16:37:04 +00:00
Alex Roitman 8481121dcb 2007-07-16 Alex Roitman <shura@gramps-project.org>
* src/Filters/Rules/Person/Makefile.am (pkgdata_PYTHON): Typo.



svn: r8717
2007-07-16 16:29:45 +00:00
Alex Roitman 6575eede14 2007-07-10 Alex Roitman <shura@gramps-project.org>
* src/GrampsDb/_ReadXML.py (start_compound_date): Add new method;
	(start_datespan): Add new method.
	* data/grampsxml.dtd: Add datespan.
	* data/grampsxml.rng: Add datespan.
	* src/GrampsDb/_WriteXML.py (XmlWriter.write_date): Write the
	datespan.



svn: r8711
2007-07-11 04:13:05 +00:00
Alex Roitman dc185b12ac 2007-07-05 Alex Roitman <shura@gramps-project.org>
* configure.in: Require pygtk 2.8.0 or higher.



svn: r8702
2007-07-06 04:23:26 +00:00
Alex Roitman 916d3dd8d8 * gramps.pot: Update.
svn: r8699
2007-07-05 06:16:53 +00:00
Alex Roitman e18ec475c9 2007-07-04 Alex Roitman <shura@gramps-project.org>
* ru.po: Update strings for translation.



svn: r8698
2007-07-05 06:10:22 +00:00
Brian Matherly 3e2a120fda Translate "Custom Size" string for reports.
svn: r8690
2007-07-03 04:12:59 +00:00
Alex Roitman 52d74237ae 2007-06-30 Alex Roitman <shura@gramps-project.org>
* src/ReportBase/_TemplateParser.py: Close file after parsing.
	* src/ReportBase/_ReportOptions.py (OptionListCollection.parse):
	Close file after parsing.
	* src/ReportBase/_PaperMenu.py: Close file after parsing.
	* src/plugins/BookReport.py (BookList.parse): Close file after parsing.
	* src/Filters/_FilterList.py (load): Close file after parsing.
	* src/BaseDoc.py (StyleSheetList.parse): Close file after parsing.



svn: r8686
2007-06-30 18:57:34 +00:00
Alex Roitman 0aa630a32e 2007-06-28 Alex Roitman <shura@gramps-project.org>
* src/ScratchPad.py (ScratchSourceLink.tooltip): Typo.



svn: r8683
2007-06-28 22:30:08 +00:00
Alex Roitman 534f9bf242 2007-06-25 Alex Roitman <shura@gramps-project.org>
* src/plugins/RemoveUnused.py (init_gui): Add missing argument.



svn: r8672
2007-06-26 06:05:12 +00:00
Alex Roitman 270382d00c 2007-06-24 Alex Roitman <shura@gramps-project.org>
* src/NameDisplay.py (_gen_cooked_func,_gen_raw_func): Do not
	replace %% with anything.



svn: r8662
2007-06-25 05:19:18 +00:00
Brian Matherly e696e33b38 Handle unicode names for saved book reports.
svn: r8657
2007-06-25 02:32:20 +00:00
Alex Roitman 0f68a84452 (version_supported): Default to the current version.
svn: r8655
2007-06-25 01:45:18 +00:00
Brian Matherly ef570f2d69 Remove fill color to improve the fanchart display in OpenOfficeDoc format (#0001072)
svn: r8653
2007-06-24 21:13:36 +00:00
Brian Matherly e1987a77cc Fix rotated text location and remove background color to improve the fanchart display in ODF format (#0001072)
svn: r8651
2007-06-24 20:44:37 +00:00
Alex Roitman da7d2b7986 2007-06-24 Alex Roitman <shura@gramps-project.org>
* src/GrampsDb/_GrampsBSDDB.py (load): Typo.
	* src/DbLoader.py (read_file): Fix error reporting.



svn: r8649
2007-06-24 20:01:50 +00:00
Alex Roitman 678e032007 Update
svn: r8647
2007-06-24 01:58:47 +00:00
Alex Roitman 2723eff367 Update
svn: r8645
2007-06-24 01:25:34 +00:00
Alex Roitman b4345b2dfb In .:
2007-06-23  Alex Roitman  <shura@gramps-project.org>
	* src/plugins/RemoveUnused.py: Rewrite with single-dialog UI.
	* src/plugins/unused.glade: Add new file.
	* src/plugins/Makefile.am: Ship new file.

In po:
	* POTFILES.in: Add new files.


svn: r8644
2007-06-24 01:23:33 +00:00
Alex Roitman 13ab882197 Update
svn: r8641
2007-06-23 22:13:51 +00:00
Alex Roitman 5c51617335 2007-06-23 Alex Roitman <shura@gramps-project.org>
* POTFILES.in: Add new file.



svn: r8639
2007-06-23 21:50:23 +00:00
Brian Matherly 13cdae6f22 Add "People missing parent" filter.
svn: r8637
2007-06-23 15:43:19 +00:00
Brian Matherly fc3405615e src/ReportBase/_ReportDialog.py: Fix attribute error exceptions.
svn: r8635
2007-06-23 14:07:00 +00:00
Brian Matherly e98d2e54e5 0001016: [narrative website] Why is the mime type shown on each image page
svn: r8632
2007-06-23 02:59:03 +00:00
Alex Roitman a2f1e25575 Update
svn: r8631
2007-06-23 01:35:13 +00:00
Alex Roitman 16bb718be0 * src/GrampsDb/_GrampsGEDDB.py (close): Save after batch
transactions: #862.
	* src/GrampsDb/_GrampsXMLDB.py (close): Save after batch
	transactions: #862.


svn: r8629
2007-06-23 01:24:42 +00:00
Alex Roitman 7fb923ecd7 Update
svn: r8628
2007-06-23 01:03:48 +00:00
Brian Matherly fd8e5b0a06 src/ReportBase/_ReportDialog.py: Still let REAL exceptions pass through.
svn: r8624
2007-06-22 12:21:49 +00:00
Brian Matherly 605d6a20ea 0001055: Pictures of the gallery are not used in the detailed ancestor's report when output format is PDF
svn: r8623
2007-06-22 12:18:50 +00:00
Alex Roitman a226819f70 * src/Editors/_EditFamily.py (EditFamily.__do_save): Disconnect
all signal handlers before committing data.


svn: r8621
2007-06-22 05:35:46 +00:00
Alex Roitman e63bc9936d 2007-06-21 Alex Roitman <shura@gramps-project.org>
* src/GrampsCfg.py (cb_format_changed): Catch new exception;
	escape special chars from displayed span.
	* src/NameDisplay.py (_gen_cooked_func): Only replace known
	parameters, leave the rest as is;
	(_format_str_base): Catch formatting exceptions and raise our own.
	* src/Errors.py (NameDisplayError): Add class. 



svn: r8620
2007-06-22 03:55:09 +00:00
Zsolt Foldvari 79257df532 2007-06-22 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/NameDisplay.py: fix indentation (use only spaces).
	* src/GrampsCfg.py: handle invalid name format: #1025.



svn: r8619
2007-06-21 23:06:05 +00:00
Alex Roitman e515508586 * src/Filters/Rules/Person/_RelationshipPathBetween.py
(apply_filter): Object/handle mixup, #1090.


svn: r8612
2007-06-20 19:20:28 +00:00
Alex Roitman 96f7fb06ff 2007-06-20 Alex Roitman <shura@gramps-project.org>
* src/DbLoader.py (DbLoader.read_file): Properly report problem.



svn: r8611
2007-06-20 19:06:23 +00:00
Alex Roitman 688940de4a Update
svn: r8604
2007-06-20 03:56:20 +00:00
Alex Roitman 16c08e0306 Update
svn: r8602
2007-06-20 01:33:59 +00:00
Alex Roitman ee1c67367c Update
svn: r8601
2007-06-20 01:21:42 +00:00
Alex Roitman a845b80564 Update
svn: r8600
2007-06-20 01:19:29 +00:00
Alex Roitman a189222ede Update
svn: r8599
2007-06-20 01:17:12 +00:00
Alex Roitman 167641654c Update
svn: r8598
2007-06-20 01:12:50 +00:00
Alex Roitman f3d0e73c2c 2007-06-19 Alex Roitman <shura@gramps-project.org>
* src/FilterEditor/_FilterEditor.py (_do_delete_filter): Use a
	copy for iteration over the filters.



svn: r8596
2007-06-19 17:07:41 +00:00
Alex Roitman 7f1ab2cf01 Update
svn: r8595
2007-06-19 16:53:09 +00:00
Alex Roitman 6d902252a7 2007-06-16 Peter Landgren <peter.talken@telia.com>
* sv.po: Update.



svn: r8594
2007-06-19 16:51:53 +00:00
Brian Matherly db302c6c92 Improved windows installer scripts from Steve.
svn: r8593
2007-06-19 13:53:21 +00:00
Jérôme Rapinat e13caa47be improve French translation
svn: r8591
2007-06-19 10:13:25 +00:00
Alex Roitman 738b9ab607 2007-06-18 Alex Roitman <shura@gramps-project.org>
* src/DateEdit.py (DateEditorDialog.switch_calendar): Only convert
	non-empty dates to new calendar.



svn: r8582
2007-06-18 18:32:39 +00:00
Don Allingham 699a692684 branch
svn: r8577
2007-06-18 04:20:24 +00:00
Brian Matherly e98c62c8ff create new location for 2.2 branch
svn: r8575
2007-06-18 04:10:28 +00:00
Alex Roitman e53f5133da * src/plugins/Verify.py: Clarification in wording: #1071.
svn: r8573
2007-06-17 23:32:42 +00:00
Alex Roitman fce1e653f7 Update
svn: r8572
2007-06-17 08:05:07 +00:00
Alex Roitman 2dee4a51c7 2007-06-17 Alex Roitman <shura@gramps-project.org>
* src/GrampsCfg.py (NameFormatEditDlg.cb_format_changed): Catch
	exception when format string is invalid.



svn: r8571
2007-06-17 07:53:45 +00:00
Alex Roitman e0ce53d154 Update
svn: r8569
2007-06-17 01:20:27 +00:00
Alex Roitman 4d89c869a7 * src/gramps.py (run): Catch SystemExit exception.
svn: r8568
2007-06-17 01:20:09 +00:00
Alex Roitman ba04168159 * src/ArgHandler.py: Use sys.exit() for bailing out.
* src/GrampsDb/_ReadXML.py (start_url): Correctly parse url type;
	Use sys.ext() for bailing out.



svn: r8567
2007-06-17 01:09:25 +00:00
Alex Roitman 54e4e74ef4 2007-06-16 Alex Roitman <shura@gramps-project.org>
* src/GrampsDb/_ReadXML.py (start_url): Correctly parse url type.
	


svn: r8564
2007-06-17 00:47:26 +00:00
Alex Roitman 0bda0fd61b 2007-06-16 Brian Pepple <bpepple@fedoraproject.org>
* data/gramps.desktop.in: Fix desktop file to conform to desktop
	file specs.



svn: r8561
2007-06-16 20:09:53 +00:00
Alex Roitman b7b163a0a7 2007-06-16 Alex Roitman <shura@gramps-project.org>
* src/Filters/Rules/Person/_IsChildOfFilterMatch.py
	(IsChildOfFilterMatch): Subclass MatchesFilter.
	* src/Filters/Rules/Person/_IsAncestorOfFilterMatch.py
	(IsAncestorOfFilterMatch): Subclass MatchesFilter.
	* src/Filters/Rules/Person/_IsDescendantOfFilterMatch.py
	(IsDescendantOfFilterMatch): Subclass MatchesFilter.
	* src/Filters/Rules/Person/_HasCommonAncestorWithFilterMatch.py
	(HasCommonAncestorWithFilterMatch): Subclass MatchesFilter.
	* src/Filters/Rules/Person/_IsParentOfFilterMatch.py
	(IsParentOfFilterMatch): Subclass MatchesFilter.
	* src/Filters/Rules/Person/_IsSiblingOfFilterMatch.py
	(IsSiblingOfFilterMatch): Subclass MatchesFilter.
	* src/Filters/Rules/Person/_IsSpouseOfFilterMatch.py
	(IsSpouseOfFilterMatch): Subclass MatchesFilter.



svn: r8559
2007-06-16 19:52:58 +00:00
Alex Roitman 95c6802e89 2007-06-16 Matthias Alles <alles@rhrk.uni-kl.de>
* de.po: Fixes.



svn: r8558
2007-06-16 18:55:59 +00:00
Alex Roitman 14b0e2e2b9 Translation update
svn: r8556
2007-06-15 21:59:49 +00:00
Brian Matherly 5bb694112b Improve text rendering for SVG reports (#0001072).
svn: r8552
2007-06-15 03:51:14 +00:00
Alex Roitman 21efd74a5f Update
svn: r8544
2007-06-13 20:58:02 +00:00
Alex Roitman 7373c40a63 Fix formatting
svn: r8537
2007-06-07 05:16:39 +00:00
Alex Roitman a3704f789a * data/grampsxml.rng: Add callname.
* data/grampsxml.dtd: Add callname.


svn: r8526
2007-06-01 08:53:50 +00:00
Alex Roitman c82ddb3315 2007-06-01 Alex Roitman <shura@gramps-project.org>
* src/FilterEditor/_FilterEditor.py (check_recursive_filters,
	clean_after_rename, _do_delete_filter,_do_delete_selected_filter):
	Handle renaming and deletion of filters when other filters depend
	on them.
	* src/FilterEditor/_EditFilter.py (filter_name_changed): Prohibit
	creating new filter names colliding with existing filter names;
	(on_ok_clicked): Signal the name change.
	* src/DisplayState.py (DisplayState.__signals__): Add new signal
	to indicate filter name change: necessary for renaming/removing
	filters based on the changed name.



svn: r8525
2007-06-01 08:24:12 +00:00
Alex Roitman c7b82251bb * src/GrampsDb/_WriteXML.py (_xml_version): Bump up version.
svn: r8524
2007-06-01 06:00:51 +00:00
Alex Roitman 6bcc0680cd 2007-05-31 Alex Roitman <shura@gramps-project.org>
* data/grampsxml.rng: Add privacy for sourceref and lds_ord.
	* data/grampsxml.dtd: Add privacy for sourceref and lds_ord.



svn: r8523
2007-06-01 05:58:50 +00:00
Kees Bakker 42fbd9722c * po/nl.po a few minor changes intended for 2.2.8
svn: r8522
2007-05-31 18:43:36 +00:00
Don Allingham 5689094b54 2007-05-31 Don Allingham <don@gramps-project.org>
* configure.in: update to 2.2.9
	* src/plugins/WriteFtree.py (get_name): fix typo



svn: r8521
2007-05-31 12:09:11 +00:00
Don Allingham 84b56958ce 2007-05-27 Don Allingham <don@gramps-project.org>
* configure.in: update for 2.2.8



svn: r8519
2007-05-27 22:49:08 +00:00
Alex Roitman d7878e9c4b svn: r8518 2007-05-25 17:09:31 +00:00
Alex Roitman 956f9cc63e Update
svn: r8516
2007-05-24 22:18:08 +00:00
Jérôme Rapinat 5975200815 /po/sk: update translation
svn: r8515
2007-05-24 13:12:43 +00:00
Jérôme Rapinat c80df01b1d /help/sk: update manual
svn: r8514
2007-05-24 13:11:51 +00:00
Jérôme Rapinat 0767ff867a add German manual
svn: r8513
2007-05-23 16:44:12 +00:00
Jérôme Rapinat a96f17cd51 de/figures: remove unused image
svn: r8512
2007-05-23 16:26:55 +00:00
Jérôme Rapinat 9937f99684 update German translation
svn: r8511
2007-05-23 16:25:09 +00:00
Jérôme Rapinat e2ef2cf1fc fr/figures: remove unused image
svn: r8510
2007-05-23 16:24:09 +00:00
Jérôme Rapinat 74d9313f29 update French translation for manual
svn: r8509
2007-05-23 16:22:59 +00:00
Don Allingham 5858c9d0f4 2007-05-22 Don Allingham <don@gramps-project.org>
* src/DataViews/_PedigreeView.py (PedigreeView.find_tree): Catch recursion error



svn: r8508
2007-05-23 04:22:52 +00:00
Jérôme Rapinat 41d22b9aad /help/gramps.pot: update template
svn: r8507
2007-05-22 21:48:15 +00:00
Arturas Sleinius c50542697d Updated Lithuanian translation
svn: r8506
2007-05-21 16:17:25 +00:00
Stefan Bjork 0fbbff20b4 Transaltion update.
svn: r8505
2007-05-21 08:53:40 +00:00
Stefan Bjork a92365934d Translation update.
svn: r8504
2007-05-21 08:48:14 +00:00
Espen Berg 8f43252884 Did some more translation of the Norwegian manual. Still a whole lot to be done
svn: r8500
2007-05-20 08:41:39 +00:00
Jérôme Rapinat fac243bc1a update French translation
svn: r8499
2007-05-20 07:47:03 +00:00
Julio Sánchez aee52ac08d es.po is almost completely update, only major work pendind is revision
svn: r8496
2007-05-19 07:48:26 +00:00
Julio Sánchez 2a357a9961 Third partial update
svn: r8495
2007-05-18 22:29:55 +00:00
Brian Matherly e3215497bc Fix gallery image links generated on Win32 for the Narrative Web Report.
svn: r8493
2007-05-18 18:38:07 +00:00
Jérôme Rapinat cfbc5bff30 update French translation for manual
svn: r8492
2007-05-18 13:31:32 +00:00
Jérôme Rapinat 46faa2ab31 update French translation
svn: r8491
2007-05-18 13:23:40 +00:00
Jérôme Rapinat 04745afed4 update French translation for manual
svn: r8490
2007-05-18 13:21:57 +00:00
Julio Sánchez c09f4f81cd Second partial update
svn: r8489
2007-05-18 12:52:07 +00:00
Jérôme Rapinat 252255fde7 update French translation
svn: r8488
2007-05-18 09:31:39 +00:00
Julio Sánchez 4e8c9e7d64 Partial update
svn: r8487
2007-05-17 16:12:12 +00:00
Espen Berg 7f7e799ded Norwegian translation updated and ready for 2.2.8
svn: r8486
2007-05-17 06:47:10 +00:00
Don Allingham 0039e5d945 svn: r8485 2007-05-17 02:54:46 +00:00
Brian Matherly 209ebc2b6c 0000806: default for narrative website should be protect living
svn: r8482
2007-05-17 02:29:52 +00:00
Don Allingham 11e50a991a 2007-05-15 Don Allingham <don@gramps-project.org>
* GrampsDb/gedcomexport.glade: remove gnome requirement
	* plugins/verify.glade: remove gnome requirement
	* plugins/cdexport.glade: remove gnome requirement
	* plugins/vcardexport.glade: remove gnome requirement
	* plugins/writeftree.glade: remove gnome requirement
	* plugins/eval.glade: remove gnome requirement
	* plugins/vcalendarexport.glade: remove gnome requirement
	* plugins/leak.glade: remove gnome requirement
	* plugins/genewebexport.glade: remove gnome requirement
	* plugins/eventcmp.glade: remove gnome requirement



svn: r8481
2007-05-16 04:00:06 +00:00
Brian Matherly b320cca9a5 0001003: Researcher information dialog on export to GEDCOM
svn: r8480
2007-05-16 03:35:29 +00:00
Brian Matherly 3f871c7d98 0001043: Dropdown list in htmloptions in Family Group Report has very large size
svn: r8478
2007-05-16 02:05:51 +00:00
Brian Matherly f688f357fa Sort strings, not lists in Narrative Web combo boxes.
svn: r8476
2007-05-15 11:59:22 +00:00
Brian Matherly 1b3843054d Catch possible crash in Pedigree View.
svn: r8474
2007-05-15 11:38:03 +00:00
Brian Matherly 5392b8215b 0001044: ReportWeb Site, tab Page Generation - items in dropdown list do not sort correctly
svn: r8471
2007-05-15 03:51:06 +00:00
Don Allingham fb2701b83a 2007-05-14 Espen Berg <espen.berg@ntnu.no>
* src/DateHandler/_Date_nb.py: 



svn: r8470
2007-05-15 03:35:59 +00:00
Espen Berg 57d5b3018d Added support for Norwegian date parser
svn: r8469
2007-05-14 19:59:59 +00:00
Espen Berg 5d98fabf5a Updated Norwegian translation of po-files
svn: r8468
2007-05-14 19:43:18 +00:00
Brian Matherly 3401f60f62 * src/plugins/NarrativeWeb.py: Fix reference paths on Windows.
svn: r8466
2007-05-14 03:41:36 +00:00
Brian Matherly c896af3987 Fix typo in _EditFamily.py.
svn: r8465
2007-05-13 19:47:30 +00:00
Don Allingham 0bf1622625 2007-05-12 Don Allingham <don@gramps-project.org>
* src/DataViews/_PedigreeView.py: additional error checking
	* src/DataViews/_RelationView.py: check for empty person
	* src/GrampsDb/_ReadGedcom.py: additional error checking
	* src/GrampsDb/_DbUtils.py: additional error checking
	* src/ReportBase/_ReportDialog.py: additional error checking
	* src/Editors/_EditFamily.py: additional error checking
	* src/DisplayTabs/_EmbeddedList.py: additional error checking
	* src/plugins/FindDupes.py: additional error checking
	* src/plugins/Verify.py: additional error checking
	* src/ImgManip.py: additional error checking
	* src/BasicUtils.py: additional error checking



svn: r8464
2007-05-13 03:28:50 +00:00
Benny Malengier 668e2c0604 2007-05-11 Benny Malengier <bm@cage.ugent.be>
* src/GrampsDb/_ReadXML.py: clean meld issues, add privacy read lds_ord even if not set yet



svn: r8462
2007-05-11 22:20:28 +00:00
Jérôme Rapinat 2d03ec4148 update French translation
svn: r8461
2007-05-11 15:41:12 +00:00
Don Allingham 26d9b3bf23 2007-05-10 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_ReadXML.py: fix privacy settings
	* src/GrampsDb/_WriteXML.py: fix privacy settings
	* src/LdsUtils.py: updated temple codes
	* src/DbLoader.py: try to handle default directory better

	* src/LdsOrd.py: Update from bug tracker (#925) submitted by robocoder


svn: r8460
2007-05-11 03:47:58 +00:00
Benny Malengier 417d471690 2007-05-10 Benny Malengier <bm@cage.ugent.be>
Correct error in person name privacy


svn: r8458
2007-05-10 21:57:45 +00:00
Benny Malengier ad9d719a83 2007-05-09 Benny Malengier <bm@cage.ugent.be>
* src/GrampsDb/_ReadXML.py: partly fix #1053, import privacy of person, family,
        media, source, place and repo correct. Still to do: sourceref and lds_ordinance



svn: r8457
2007-05-10 21:41:45 +00:00
Martin Hawlisch e487a5e21e * src/DataViews/_PedigreeView.py: Some rendering fixes for RTL locales
svn: r8456
2007-05-10 11:32:43 +00:00
Don Allingham 71fc64718d 2007-05-09 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_ReadGedcom.py (GedcomParser.func_name_aka): patch submitted
	on bug tracker for AKA parameter missing (#1034)



svn: r8455
2007-05-10 02:54:48 +00:00
Benny Malengier c537f644d8 * src/glade/gramps.glade: fix #797
2007-05-09 Benny Malengier <bm@cage.ugent.be>


svn: r8452
2007-05-09 18:44:35 +00:00
Benny Malengier 3d76238fbf 2007-05-09 Benny Malengier <bm@cage.ugent.be>
* src/glade/gramps.glade: fix #796



svn: r8451
2007-05-09 18:31:57 +00:00
Don Allingham 44c16c7c19 2007-05-08 Don Allingham <don@gramps-project.org>
* src/Editors/_EditFamily.py (ChildEmbedList): Sort by the proper column
	* src/GrampsDb/_GrampsDbBase.py (GrampsDbBookmarks.insert): fix
	bookmark insertion (#1050)



svn: r8450
2007-05-09 04:00:08 +00:00
Brian Matherly e75a336f2d Change the default directory for the narrative web report so people don't generate the report in their database directory.
svn: r8449
2007-05-09 03:39:08 +00:00
Don Allingham 9305ea5d52 svn: r8447 2007-05-09 03:17:17 +00:00
Alex Roitman 9de853317c 2007-05-08 Lubo Vasko <pgval@inMail.sk>
* sk/sk.po: Translation update.



svn: r8446
2007-05-08 15:45:44 +00:00
Brian Matherly f8ae68c1b7 Fix generation chart alignment for Narrative Web Tranquil style sheet.
svn: r8437
2007-05-06 21:25:09 +00:00
Benny Malengier 1051a16c8c 2007-05-03 Benny Malengier <bm@cage.ugent.be>
* src/plugins/rel_de.py:
	issue #0000929 , rel_de.py



svn: r8434
2007-05-03 21:34:57 +00:00
Brian Matherly 4cd3b0f8c6 Fix errors in bookmark filters.
svn: r8428
2007-04-28 03:51:19 +00:00
Brian Matherly d7d39311c7 Fix escape error in BookReport.py.
svn: r8427
2007-04-28 03:36:54 +00:00
Brian Matherly a80294ab94 Fix exception message in DbLoader.py.
svn: r8426
2007-04-28 03:10:16 +00:00
Don Allingham 6b16e40db3 2007-04-22 Don Allingham <don@gramps-project.org>
* configure.in: bump to full release of 2.2.7
	* src/const.py.in: fix 2007 in copyright
	* NEWS: update news file



svn: r8419
2007-04-22 20:58:07 +00:00
Brian Matherly fa1b3d706c Escape still wasn't right in ODFDoc.py. Ancestor and descendant charts were displaying wrong.
svn: r8417
2007-04-22 13:19:05 +00:00
Brian Matherly df18340c21 0000970: _IsBookmarked.py causes crash
svn: r8415
2007-04-21 18:48:04 +00:00
Don Allingham 7cbe7f797b 2007-04-20 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_ReadGedcom.py: fix calendar parsing
	* src/GrampsDb/_WriteGedcom.py: fix calendar generation



svn: r8412
2007-04-21 04:30:13 +00:00
Alex Roitman 6cc84e39cf 2007-04-20 Alex Roitman <shura@gramps-project.org>
* src/plugins/Checkpoint.py (Checkpoint.rcs): Remove debugging
	output; Work out retrieval.



svn: r8411
2007-04-21 02:50:11 +00:00
Don Allingham 2c1aa909e5 2007-04-20 Don Allingham <don@gramps-project.org>
* src/DisplayModels/_BaseModel.py (BaseModel.add_row_by_handle): 
	if search not defined, do an insert



svn: r8410
2007-04-20 15:09:22 +00:00
Jérôme Rapinat 9eff5e9327 add German translation for manual
svn: r8409
2007-04-20 06:59:19 +00:00
Jérôme Rapinat 5767ac5bbd add German translation for manual
svn: r8408
2007-04-20 06:56:22 +00:00
Jérôme Rapinat 9d4d7ca873 add German translation for manual
svn: r8407
2007-04-20 06:53:04 +00:00
Brian Matherly c324efb9e4 PROPERLY escape ampersands in ODFDoc.py
svn: r8405
2007-04-20 03:48:21 +00:00
Don Allingham 60a072824f 2007-04-18 Don Allingham <don@gramps-project.org>
* src/plugins/BookReport.py: escape xml constructs (bug 877)
	* src/PluginUtils/_Options.py: escape xml constructs (bug 877)



svn: r8403
2007-04-19 02:03:29 +00:00
Jérôme Rapinat eb7b977237 update French translation for 2.2.7
svn: r8401
2007-04-18 16:11:20 +00:00
Don Allingham 71162563ed 2007-04-17 Don Allingham <don@gramps-project.org>
* src/Editors/_EditRepository.py: fix double click save bug
	* src/Editors/_EditSource.py: fix double click save bug
	* src/Editors/_EditEvent.py: fix double click save bug
	* src/Editors/_EditPlace.py: fix double click save bug
	* src/Editors/_EditFamily.py (EditFamily.save): fix potential double click of Family 
	Editor dialog



svn: r8399
2007-04-18 03:59:34 +00:00
Alex Roitman 2a3ef69c9e 2007-04-17 Lubo Vasko <pgval@inMail.sk>
* sk.po: Translation update.

2007-04-17  Piotr Czubaszek  <pioterus@gmail.com>
	* pl.po: Translation update.



svn: r8397
2007-04-18 00:36:25 +00:00
Kees Bakker 1305e3b037 * po/nl.po Some corrections by Erik
svn: r8396
2007-04-17 19:13:10 +00:00
Kees Bakker e9fa8f1cfc Just a msgmerge with the nl.po and new gramps.pot so that Erik
can do the changes.


svn: r8395
2007-04-17 17:48:52 +00:00
Arturas Sleinius c397c43701 Updated Lithuanian translation
svn: r8394
2007-04-17 17:21:40 +00:00
Martin Hawlisch 260f5f2422 * de.po: translation update
svn: r8392
2007-04-16 16:12:34 +00:00
Martin Hawlisch 6b35940eac * src/ViewManager.py (create_pages): fix off-by-one error when preselecting last view
svn: r8390
2007-04-16 13:53:55 +00:00
Jérôme Rapinat 12a002b945 update French translation for 2.2.7
svn: r8389
2007-04-16 09:19:42 +00:00
Jérôme Rapinat a6a8cdff0f improve French translation for manual
svn: r8388
2007-04-16 09:19:11 +00:00
Don Allingham 2174fcbd99 * po/gramps.pot: update for 2.2.7 preparation
2007-04-15  Don Allingham  <don@gramps-project.org>


svn: r8387
2007-04-16 01:23:06 +00:00
Don Allingham 43e3bf68cd 2007-04-15 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_WriteGedcom.py: use CONT to continue page info
	* src/GrampsDb/_GrampsBSDDB.py: additional error checking
	* src/QuestionDialog.py: enable markup
	* src/DbLoader.py: additional error checking

	* src/plugins/NarrativeWeb.py
	* src/ReportBase/_ReportUtils.py
	0001012: Private source and private child references shown in narrative 
	website.
	0001017: Insufficient space in pedigree view of narrative website


svn: r8386
2007-04-16 01:19:46 +00:00
Brian Matherly 6468dc2a23 0001012: Private source and private child references shown in narrative website.
svn: r8384
2007-04-15 19:09:55 +00:00
Brian Matherly 670eef2da8 0001017: Insufficient space in pedigree view of narrative website
svn: r8382
2007-04-15 02:17:44 +00:00
Brian Matherly 061a9e2761 0000908: GtkPrint doesn't parse if you don't have pygtk version 2.10
svn: r8381
2007-04-13 18:11:05 +00:00
Brian Matherly 4cb1aaacd1 0001011: XML import loses media objects when media object has no title.
svn: r8379
2007-04-12 11:46:36 +00:00
Don Allingham 28dc889abb 2007-04-11 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_WriteGedcom.py (GedcomWriter.write_source_ref): replace
	newlines with semicolons on output.



svn: r8378
2007-04-12 02:29:52 +00:00
Don Allingham 0408153557 2007-04-10 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_ReadGedcom.py: add hack to force illegal "BET ABT" to be read
	as "EST BET"
	* src/ReportBase/_BareReportDialog.py: escape ampersands
	* src/docgen/ODFDoc.py: escape ampersands
	* src/ManagedWindow.py: escape ampersands



svn: r8377
2007-04-11 04:54:38 +00:00
Kees Bakker fc39402cc4 * po/nl.po: a few corrections of the translation
* src/DateHandler/_Date_nl.py: Numerisch => Numeriek


svn: r8376
2007-04-10 19:32:49 +00:00
Martin Hawlisch c62bef3f21 * src/plugins/ImportGeneWeb.py: Some parsing enhancements
svn: r8375
2007-04-10 19:22:44 +00:00
Don Allingham c531d2fad7 * src/plugins/Check.py (CheckIntegrity.check_events): don't require same gender for
civil unions


svn: r8374
2007-04-10 03:35:04 +00:00
Don Allingham 18908e7716 2007-04-09 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_WriteGedcom.py (GedcomWriter.gnu_fdl): don't duplicate
	the copyright notice (bug #790)



svn: r8373
2007-04-10 02:36:00 +00:00
Brian Matherly 0aa4eb258e Remove file check from _GrampsIniKeys.py. It is not needed.
svn: r8371
2007-04-09 15:29:13 +00:00
Brian Matherly 7f54da4cf3 Missing comma in Checkpoint.py.
svn: r8369
2007-04-09 11:40:45 +00:00
Brian Matherly 044e38b129 0000995: Don't have write access on import/open in paths containing non-ASCII characters.
svn: r8367
2007-04-09 04:24:06 +00:00
Brian Matherly 8ed86bc145 0001006: Narrative Web: Media objects missing title (description), mime_type, or path, are displayed poorly.
svn: r8365
2007-04-09 03:35:58 +00:00
Brian Matherly a6a0a69456 0000896: Crash running Narrative Web report - system memory exhausted.
svn: r8362
2007-04-08 20:16:05 +00:00
Don Allingham d6c8710d2c 2007-04-06 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_GrampsDbBase.py (GrampsDbBase.close_undodb): don't complain
	if the undo file isn't here.



svn: r8360
2007-04-07 04:12:15 +00:00
Don Allingham 767d1d8191 2007-04-05 Don Allingham <don@gramps-project.org>
* src/plugins/Checkpoint.py: fix some more Popen issues



svn: r8359
2007-04-06 04:34:48 +00:00
Brian Matherly da6e56990e 0000998: Source Ref link refers to nothing in Narrative web report.
svn: r8357
2007-04-06 02:39:07 +00:00
Brian Matherly 26218253d7 0000996: Individual attributes do no include source reference citations in Narrative Web report.
svn: r8355
2007-04-05 12:07:05 +00:00
Brian Matherly fe84bcbdec * src/DateHandler/_DateParser.py: Fix a typo
* src/DateEdit.py: Fix a typo

svn: r8354
2007-04-05 11:51:24 +00:00
Brian Matherly 4002837282 0000993: Checkpoint tool crashes in Windows
svn: r8352
2007-04-05 02:54:03 +00:00
Don Allingham b68e2d727f 2007-04-04 Don Allingham <don@gramps-project.org>
* src/DateHandler/_DateParser.py: fix text string that contians a valid
	modifier.
	* src/Editors/_EditPerson.py: disable OK button on save to prevent
	double clicks
	* src/Editors/_EditPrimary.py: disable OK button on save to prevent
	double clicks
	* src/docgen/ODFDoc.py: XML escape strings



svn: r8351
2007-04-05 02:46:56 +00:00
Kees Bakker 660e22bdfa * po/nl.po Change archief in archiveer.
svn: r8348
2007-04-02 18:43:50 +00:00
Benny Malengier 77817a5098 correct keyword error
svn: r8343
2007-04-01 16:12:08 +00:00
Brian Matherly a4ebbb4c15 0000975: remove extra (/b) HTML tags in NarrativeWeb
svn: r8298
2007-03-14 03:24:17 +00:00
Brian Matherly 60c7367f77 0000976: NarrativeWeb: gramps ID always output regardless of setting
svn: r8296
2007-03-14 03:09:38 +00:00
Brian Matherly aa08262352 * src/plugins/NarrativeWeb.py: 0000969: NarrativeWeb plugin: include the date in the media object pages
svn: r8294
2007-03-13 22:56:28 +00:00
Brian Matherly 86c6b1b7e7 src/ReportBase/_ReportDialog.py: don't catch all exceptions - we won't get a traceback.
svn: r8290
2007-03-11 22:19:08 +00:00
Brian Matherly dabcd47805 * src/plugins/NarrativeWeb.py: 0000950: include the date in the reference sections of the narrative web site
svn: r8289
2007-03-11 19:42:48 +00:00
Martin Hawlisch 5bfdf4c45f Translation update
svn: r8285
2007-03-08 16:49:23 +00:00
Stefan Bjork 655626fd7d Translation update
svn: r8284
2007-03-08 08:48:15 +00:00
Don Allingham 03e54d00ed 2007-03-07 Stefan Björk <skalman@acc.umu.se>
* src/Filters/Rules/_HasMarkerBase.py (HasMarkerBase): fix typo
	* src/GrampsWidgets.py: better wording



svn: r8283
2007-03-07 15:45:32 +00:00
Stefan Bjork 4d009e4706 Translation update
svn: r8282
2007-03-07 09:09:29 +00:00
Brian Matherly 772e4b15b0 * src/plugins/NarrativeWeb.py:
* src/ReportBase/_ReportUtils.py:
Fix 0000956: Event order within GRAMPS not replicated in web report

svn: r8277
2007-03-07 03:11:41 +00:00
Brian Matherly 7f1a54dbd1 src/plugins/NarrativeWeb.py: Fix 0000954: e-mail address causes Narrative Web plugin to generate bad links
svn: r8273
2007-03-06 04:21:59 +00:00
Brian Matherly f64ae7ac77 * src/plugins/GraphViz.py: Fix 0000942: Relationship graph doesn't show preferred name format
svn: r8268
2007-03-06 02:23:28 +00:00
Brian Matherly 2cf46c56ce * src/plugins/TimeLine.py: Fix 0000943: Timeline doesn't show preferred name format
svn: r8266
2007-03-06 02:08:22 +00:00
Benny Malengier b8bc3f2cc3 updated dutch help translation
svn: r8258
2007-02-28 21:21:09 +00:00
Brian Matherly 62dde7b4d1 * src/plugins/WritePkg.py: Fix crash on gpkg export in Windows
svn: r8252
2007-02-27 02:36:25 +00:00
Brian Matherly 25ba79e7be * src/plugins/AncestorChart2.py: Fix index error
svn: r8238
2007-02-25 22:54:25 +00:00
Brian Matherly a1efb824cb * src/docgen/SvgDrawDoc.py.py: Fix XML error in draw_text.
svn: r8227
2007-02-24 20:42:31 +00:00
Alex Roitman 2ace2ee5b4 * output/Makefile.am (HELP_LINGUAS): Disable nb for now;
(fo): Generate fo output.



svn: r8224
2007-02-24 01:47:15 +00:00
Alex Roitman 496bf99860 Update
svn: r8223
2007-02-24 01:21:12 +00:00
Alex Roitman 23d434d8ea 2007-02-23 Alex Roitman <shura@gramps-project.org>
* src/Editors/_EditFamily.py (edit_child_button_clicked): Catch
	open window situation.



svn: r8222
2007-02-24 01:18:34 +00:00
Alex Roitman 62b2091e95 2007-02-23 Alex Roitman <shura@gramps-project.org>
* C/gramps.xml: List Don just once, as a maintainer.
	* output/Makefile.am (HELP_LINGUAS): Disable nb for now.
	* output/gramps-help-screen.css: Modify css to see revision
	history by the main text.



svn: r8220
2007-02-23 23:54:56 +00:00
Alex Roitman 3cba256408 Update
svn: r8217
2007-02-23 06:10:16 +00:00
Alex Roitman 26a587fce1 2007-02-22 Alex Roitman <shura@gramps-project.org>
* output/Makefile.am: Write rule for manual website creation.



svn: r8215
2007-02-23 05:59:50 +00:00
Alex Roitman c2dc72ffd3 * src/docgen/PdfDoc.py (write_text): Close <br/> tag.
svn: r8214
2007-02-23 01:57:28 +00:00
Alex Roitman 9ec79f98e1 2007-02-22 Alex Roitman <shura@gramps-project.org>
* src/GrampsDb/_GrampsBSDDB.py (reindex_reference_map): Typo.



svn: r8213
2007-02-23 01:51:08 +00:00
Jérôme Rapinat c8f66c8d24 update French translation for manual
svn: r8208
2007-02-21 16:23:10 +00:00
Jérôme Rapinat 8e511eed6c update French translation for manual
svn: r8206
2007-02-21 16:02:30 +00:00
Jérôme Rapinat 7eba303735 /help/gramps.pot: update template
svn: r8205
2007-02-21 14:33:23 +00:00
Jérôme Rapinat ed7a5e8f56 fix bugs on manual: #809 #810 #932 #539
svn: r8204
2007-02-21 14:31:16 +00:00
Espen Berg 6b220b733b Updated Norwegian translations
svn: r8189
2007-02-20 19:03:01 +00:00
Brian Matherly af9a79adb3 * src/plugins/AncestorChart2.py: Fix dimension error
svn: r8185
2007-02-20 03:55:46 +00:00
Brian Matherly 794441dc37 * src/plugins/AncestorChart2.py: Use a dict instead of an array to use less memory.
svn: r8164
2007-02-19 02:45:41 +00:00
Espen Berg a0991f5a4c Norwegian translation up to date
svn: r8149
2007-02-17 23:28:17 +00:00
Don Allingham c55ce06c34 2007-02-17 Anthon Pang <apang@softwaredevelopment.ca>
* src/GrampsDb/_WriteGedcom.py: Fix encoding on output



svn: r8145
2007-02-17 22:46:51 +00:00
Alex Roitman c040885812 svn: r8138 2007-02-16 21:24:55 +00:00
Alex Roitman 02f4fe701d svn: r8136 2007-02-16 21:18:01 +00:00
Alex Roitman 59e9c95f2b svn: r8135 2007-02-16 21:16:14 +00:00
Alex Roitman 8d372b9e11 Update
svn: r8134
2007-02-16 21:13:05 +00:00
Alex Roitman 9810a46876 Update
svn: r8133
2007-02-16 20:46:42 +00:00
Alex Roitman 47051cf0dc In .:
2007-02-16  Alex Roitman  <shura@gramps-project.org>
	* configure.in: Add HELPPATH and FONTPATH substitutions, generate
	new files in help/output.

In help:
	* Makefile.am (SUBDIRS): Add subdirs.


svn: r8132
2007-02-16 20:45:28 +00:00
Alex Roitman 1528dd7946 svn: r8130 2007-02-16 20:00:30 +00:00
Benny Malengier c6ee0d4d9b svn: r8129 2007-02-16 19:42:07 +00:00
Alex Roitman bf15d1749f 2007-02-16 Alex Roitman <shura@gramps-project.org>
* help/nl: Add svn:ignore property.
	* various: Add stuff for generating html and pdf output.



svn: r8128
2007-02-16 19:35:44 +00:00
Alex Roitman ea5b19dfb9 2007-02-15 Piotr Czubaszek <pioterus@gmail.com>
* pl.po: Translation update.



svn: r8124
2007-02-16 03:13:50 +00:00
Brian Matherly 9d31b54646 * src/docgen/HtmlDoc.py: fix html template loading.
* src/ReportBase/_ReportDialog.py: fix html template loading.

svn: r8120
2007-02-15 03:18:03 +00:00
Espen Berg ef3273a6ac Updated Norwegian translation
svn: r8116
2007-02-14 22:12:27 +00:00
Brian Matherly 11b13e1c94 * src/ViewManager.py: fix crash during backup on windows
svn: r8111
2007-02-14 03:55:40 +00:00
Alex Roitman 32460cd87d 2007-02-13 Lubo Vasko <pgval@inMail.sk>
* sk/figures/*.png : Update.
	* sk/sk.po: Translation update.



svn: r8108
2007-02-13 16:53:44 +00:00
Zsolt Foldvari fe2879c6bf 2007-02-13 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/GrampsWidgets.py: Fall back to gtk.STOCK_DIALOG_INFO in case
	gtk.STOCK_INFO is missing.



svn: r8105
2007-02-13 13:31:30 +00:00
Brian Matherly 6fd5e23d7a * src/docgen/PSDrawDoc.py: Fix center_text and draw_bar
svn: r8103
2007-02-13 04:52:07 +00:00
Brian Matherly 6b38b47690 * src/plugins/AncestorChart2.py: Fix title color
* src/plugins/DescendChart.py: Fix title color
* src/plugins/TimeLine.py: Fix title color

svn: r8102
2007-02-13 04:49:56 +00:00
Brian Matherly 39f946aa7f Remove the write_at function. Use draw_text instead. Add center_text to SVGDoc
svn: r8101
2007-02-13 04:46:29 +00:00
Brian Matherly 71149e03a8 Remove unused functions from BaseDoc
svn: r8100
2007-02-13 04:42:34 +00:00
Alex Roitman 13f29cc03b In help:
2007-02-12  Lubo Vasko  <pgval@inMail.sk>
	* sk/sk.po: Translation update.

In po:
2007-02-12  Lubo Vasko  <pgval@inMail.sk>
	* sk.po: Translation update.



svn: r8097
2007-02-13 01:50:41 +00:00
Espen Berg e7962896ed Updated Norwegian translation
svn: r8094
2007-02-12 23:14:08 +00:00
Don Allingham 20cade8132 2007-02-12 Don Allingham <don@gramps-project.org>
* src/plugins/FindDupes.py: catch window already open message



svn: r8091
2007-02-12 17:24:43 +00:00
Don Allingham 71ea4ef0f3 2007-02-11 Don Allingham <don@gramps-project.org>
* src/Merge/_MergePlace.py (MergePlaces.merge): fix typo on 
	add_source_reference



svn: r8086
2007-02-11 18:21:58 +00:00
Kees Bakker fb40f0995c Spelling corrections and new translations in help/nl.
Correction of figures in help/nl.


svn: r8080
2007-02-10 09:07:46 +00:00
Don Allingham e9744e54e7 svn: r8077 2007-02-08 06:10:11 +00:00
Zsolt Foldvari c7f7068244 2007-02-07 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/DisplayTabs/_NoteTab.py: move "rich text" notes to 2.3 branch.



svn: r8074
2007-02-07 13:24:10 +00:00
Brian Matherly 76e09f5f6e * src/docgen/PdfDoc.py: provide a more useful error when reportlab crashes
svn: r8070
2007-02-07 04:37:32 +00:00
Brian Matherly 1fb8b84264 * src/plugins/holidays.xml: 0000906: Canada holidays patch
svn: r8068
2007-02-07 04:03:06 +00:00
Brian Matherly 9d760ccad0 * src/ReportBase/_ReportDialog.py: 0000905: Typo in catching exceptions in buggy reports
svn: r8067
2007-02-07 04:00:49 +00:00
Don Allingham 02e3da53dd 2007-02-06 Don Allingham <don@gramps-project.org>
* src/GrampsDb/_ReadGedcom.py: fix cal/est parsing
	* src/DisplayTabs/_ButtonTab.py: catch window already being open
	* example/gedcom/sample.ged: Add est/cal samples



svn: r8063
2007-02-07 02:27:51 +00:00
Jérôme Rapinat 8a35e82907 add forgotten place rules
svn: r8058
2007-02-05 22:30:18 +00:00
Don Allingham 02e9064fc1 2007-02-04 Don Allingham <don@gramps-project.org>
* src/DataViews/_RelationView.py: default Relationship buttons to insenstive.
	Setting an active person will reenable them.



svn: r8053
2007-02-04 21:30:45 +00:00
Jérôme Rapinat a318567198 small improvements in French translation
svn: r8049
2007-02-04 11:14:55 +00:00
Brian Matherly 73f1ade7ac ignore eclipse files
svn: r8045
2007-02-04 02:31:58 +00:00
Brian Matherly 49c6ee9cc0 * src/plugins/NarrativeWeb.py: fix 0000894: syntax error on Narrative web plugin
svn: r8042
2007-02-04 02:10:07 +00:00
Zdeněk Hataš ded62534f6 Minor translation updates.
svn: r8039
2007-02-03 22:34:22 +00:00
Don Allingham 8da06a6840 * src/DateHandler/_DateParser.py (DateParser.init_strings): fix date parsing to allow
for spaces in numerical format. #892


svn: r8037
2007-02-03 18:30:43 +00:00
Don Allingham 0021d00c68 2007-02-03 Don Allingham <don@gramps-project.org>
* src/Editors/_EditFamily.py (EditFamily.check_for_family_change): fix
	warning message.



svn: r8035
2007-02-03 18:14:53 +00:00
Don Allingham 6182ebdcfb 2007-02-02 Don Allingham <don@gramps-project.org>
* src/Editors/_EditFamily.py (EditFamily.check_for_family_change): update on data change
	from family-update signal



svn: r8031
2007-02-03 06:38:44 +00:00
Don Allingham 60812d4e09 2007-01-30 Don Allingham <don@gramps-project.org>
* src/Editors/_EditFamily.py: catch family-delete signal



svn: r8030
2007-02-03 04:51:52 +00:00
2929 changed files with 645584 additions and 1981462 deletions
-20
View File
@@ -1,20 +0,0 @@
# Python
*.py[cod]
# Distutils
MANIFEST
build/
dist/
# Gramps
data/tips.xml
gramps/plugins/lib/holidays.xml
po/.intltool-merge-cache
docs/_build/
# Editing
tags
*.swp
# Testing
test/data
+9 -86
View File
@@ -1,94 +1,17 @@
<!-- $Id$ -->
Donald N. Allingham ** Concept and main design
David Hampton ** Autocomp.py and Report.py
Alex Roitman shura@gramps-project.org
Donald A. Peterson ** Makefiles, LaTeXDoc.py
Arturas Sleinius asleinius@users.sourceforge.net
Alex Roitman ** BookReport, command line, Gramps manual, bugfixes
Benny Malengier benny.malengier@gramps-project.org
Tim Waugh ** Comprehensive Ancestor report, docgen, Makefiles, bugfixes
Boril Gourinov boril.gourinov@gmail.com
Martin Hawlisch - Filters
Brian Matherly brian@gramps-project.org
Richard Taylor - ScratchPad.py, GrampsDBCallback.py
Craig J. Anderson ander882@hotmail.com
Brian Matherly - Reports
Don Allingham don@gramps-project.org
Donald A. Peterson
Doug Blank doug.blank@gmail.com
Eero Tamminen eerot@users.sourceforge.net
Erik De Richter erikdrgm@users.sourceforge.net
Espen Berg espenbe@gmail.com
Gary Burton gary.burton@zen.co.uk
Gerald Britton gerald.britton@gmail.com
James G Sack jgsack@san.rr.com
Janne Kovesjärvi janne.kovesjarvi@gmail.com
Jason Simanek jsimanek@gmail.com
Jérôme Rapinat romjerome@yahoo.fr
Joan Creus joan.creus@gmail.com
Josip Pisoj josip@pisoj.com
Julio Sánchez julio.sanchez@gmail.com
Kees Bakker kees.bakker@xs4all.nl
Konstantin Dorichev kdorichev@gmail.com
Lubo Vasko pgval@inMail.sk
Luigi Toscano luigi.toscano@tiscali.it
Luiz Gonzaga dos Santos Filho lfilho@gmail.com
Łukasz Rymarczyk yenidai@poczta.onet.pl
Michiel Nauta m.d.nauta@hetnet.nl
Mirko Leonhäuser mirko@leonhaeuser.de
Morten Bo Johansen mbj@spamcop.net
Martin Hawlisch martin.hawlisch@gmx.de
Nick Hall nick__hall@hotmail.com
Peter Landgren peter.talken@telia.com
Raphael Ackermann raphael.ackermann@gmail.com
Richard Taylor rjt-gramps@thegrindstone.me.uk
Rob G. Healey robhealey1@gmail.com
Serge Noiraud Serge.Noiraud@free.fr
Sigmund Lorentsen sigmund.lorentsen@tele2.no
Stefan Bjork betula@users.sourceforge.net
Stéphane Charette stephanecharette@gmail.com
Tim G L Lyons tim.g.lyons@gmail.com
Tim Waugh twaugh@redhat.com
Vassilii Khachaturov vassilii@tarunz.org
Zdeněk Hataš zdenek.hatas@gmail.com
Zsolt Foldvari zfoldvar@users.sourceforge.net
John Ralls jralls@ceridwen.us
$Id$
+1 -1
View File
@@ -2,7 +2,7 @@
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
+13
View File
@@ -0,0 +1,13 @@
The User Manual for Gramps is distributed under the terms of
GNU General Public License (GPL). Yes, it is under GNU GPL and
*NOT* under GNU FDL.
As such, this manual meets citeria of Debian Free Software Guidelines
(DFSG) and can be distributed through Debian main (as opposed to non-free).
Please see file named COPYING for exact terms of the license.
Alex Roitman
February 15, 2005
$Id$
+12987
View File
File diff suppressed because it is too large Load Diff
+8349
View File
File diff suppressed because it is too large Load Diff
+124 -223
View File
@@ -7,93 +7,57 @@ to this list, please email your suggestions to gramps-devel@lists.sf.net
**** Index ****
==General==
1. What is GRAMPS?
2. Where do I get it and how much does it cost?
3. Does GRAMPS exist in other languages?
3. Does it work with Windows (tm)?
4. How do I keep backups?
4. Does it work with the Mac?
5. Does Gramps support Unicode fonts? In particular, does it support non-Roman Unicode fonts?
5. Does it work with KDE?
6. What is needed to install GRAMPS under Linux, Solaris, or FreeBSD?
6. Do I really have to have GNOME installed?
7. Does it work with Windows (tm)?
7. What version of GNOME do I need?
8. Does it work with the Mac?
8. Is GRAMPS compatible with other genealogical software (GenApps)?
9. What are the Minimum Specs to run GRAMPS?
9. Can GRAMPS read files created by GenApp X?
==Preferences==
10. Can GRAMPS write files readable by GenApp X?
10. Can I change the dates in reports to 'day month year'
11. Can GRAMPS print a genealogical tree for my family?
==Collaboration-Portability==
12. In what formats can GRAMPS output its reports?
11. Is GRAMPS compatible with other genealogical software?
13. Is GRAMPS compatible with the Internet?
12. Can GRAMPS read files created by GenApp X?
14. Can I create custom reports/filters/whatever?
13. Can GRAMPS write files readable by GenApp X?
15. What standards does GRAMPS support?
14. What standards does GRAMPS support?
16. What is the maximum database size GRAMPS can handle?
15. How do I import data from another genealogy program into GRAMPS?
17. Why are non-latin characters displayed as garbage in PDF/PS reports?
16. Can I install GRAMPS on a Linux Web Server and use it via a web browser? This would enable my relations worldwide to access and update it.
18. Why can I not add/remove/edit columns to the lists in People View
and Family View?
==Reports==
19. I would like to contribute to GRAMPS by writing my favorite report.
How do I do that?
17. Can GRAMPS print a genealogical tree for my family?
18. In what formats can GRAMPS output its reports?
19. How can I change the default language in reports?
20. Is GRAMPS compatible with the Internet?
21. Can I create custom reports/filters/whatever?
22. Why are non-latin characters displayed as garbage in PDF/PS reports?
23. I would like to contribute to GRAMPS by writing my favorite report.
==Database - GRAMPS file formats==
24. What is the maximum database size (bytes) GRAMPS can handle?
25. How many people can GRAMPS database handle?
26. My database is really big. Is there a way around loading all the data into memory?
27. Can I run GRAMPS from a database on a NFS share?
28. Why is the database format not portable?
==Bugs and requests==
29. I found a bug and I want it fixed right now! What do I do?
30. GRAMPS should be a .... type of application
==GRAMPS Webhosting ==
31. How can I publish web sites generated by GRAMPS?
32. How do I submit my pages to the GRAMPS library site (http://library.gramps-project.org)?
33. After I upload my Family Web Page to library.gramps-project.org, is the password used for write privileges only or read privileges?
34. Do I view the Family Web Page with a url into my browser? Or through a link on a list of Family Web Pages on the GRAMPS-Project.org site?
20. I found a bug and I want it fixed right now! What do I do?
21. It is obvious that GRAMPS absolutely needs to become a (client-server/
web-based/PHP/weblog/Javascript/C++/distributed/KDE/Motif/Tcl/Win32/C#/
You-name-it) application.
When is this going to happen?
**** Questions and answers ****
==General==
1. What is GRAMPS?
@@ -110,101 +74,55 @@ You have full access to the source code and are allowed to distribute the
program and source code freely.
3. Does GRAMPS exist in other languages?
3. Does it work with Windows (tm)?
Yes, at the moment GRAMPS is translated in 15 languages
Yes, but it is not offically supported by the GRAMPS project.
4. How do I keep backups?
4. Does it work with the Mac?
Use a recent version of GRAMPS! From 2.2.5 onwards there is an automatic backup utility.
It is extremely important to keep backups of your data, and keep them in a safe place. GRAMPS has a specific portable file format which is small, and human readable, denoted by .gramps. If you have allowed this in the preferences (In Edit menu->Preferences->General), GRAMPS will keep a backup of your database on exit. You can copy this backup file from time to time to a save location (eg a usb stick).
Several people have managed to get GRAMPS to work under OSX using the darwin ports.
Note: The .gramps files are compressed. Clicking them will open GRAMPS. To see the XML select them and open them with a decompressing utility (like ark, gunzip), after which you can extract the XML file which is human readable.
Do not keep backups in GEDCOM. Not all information GRAMPS stores can be written in the GEDCOM. Hence, an export/import operation GRAMPS --> GEDCOM --> GRAMPS, will mean you lose data. Use the .gramps file format for backups!
Do not keep backups in GRDB format. GRDB is a database, which might be computer dependent (read, not working on a different PC). Small damage to a GRDB file can also not be repaired. Use the .gramps file format for backups!
5. Does it work with KDE?
Yes, as long as the required GNOME libraries are installed.
5. Does Gramps support Unicode fonts? In particular, does it support non-Roman Unicode fonts?
6. Do I really have to have GNOME installed?
Yes. GRAMPS works internally with Unicode (UTF-8), so all alphabets can be used on all entry fields. All reports fully support this, although for PDF/PS you need to work with gnome-print or openoffice.
Yes, but you do not have to be running the GNOME desktop.
n
==Installation==
7. What version of GNOME do I need?
6. What is needed to install GRAMPS under Linux, Solaris, or FreeBSD?
GRAMPS is a [http://en.wikipedia.org/wiki/Gtk GTK] application. GRAMPS needs to have the [http://en.wikipedia.org/wiki/Pygtk pygtk] libraries installed on the system. As long as these libraries are installed, GRAMPS should function. It will operate under the GNOME desktop, KDE desktop, or any other desktop. If the GNOME bindings for Python are installed on the system, GRAMPS will have additional functionality. The GRAMPS project recommends version 2.8 or higher of GTK.
The latest versions of gramps require GNOME 2.8 or higher.
7. Does it work with Windows (tm)?
8. Is GRAMPS compatible with other genealogical software (GenApps)?
The Linux Genealogy CD can function as a live CD that you boot directly from. You can then run Linux and GRAMPS off the CD, even if your computer is entirely Windows.
GRAMPS makes every effort to maintain compatibility with GEDCOM, the general
standard of recording genealogical information. We have import and export
filters that enable GRAMPS to read and write GEDCOM files.
An experimental Windows installer is available, however we do not have the manpower to offer support for Windows. A windows mailing list is available however and we do do our best to solve windows related problems.
It is important to understand that the GEDCOM standard is poorly implemented --
virtually every genealogical software has its own "flavor" of GEDCOM. As we
learn about new flavor, the import/export filters can be created very quickly.
However, finding out about the unknown flavors requires user feedback.
Please feel free to inform us about any GEDCOM flavor not supported by GRAMPS,
and we will do our best to support it!
8. Does it work with the Mac?
The Fink project has ported some older versions of GRAMPS to OS X (tm). The Mac OS X port is not directly supported by the GRAMPS project, primarily because none of the GRAMPS developers have access to Mac OS X and because OS X is not Free Software.
This present version of GRAMPS (2.2.x) does not appear to have been ported by the Fink project. Please contact the Fink project for more information. However, some users had success in installing 2.2.x on Mac OSX either running in native mode or running on X11 using some of the fink packages.
9. What are the Minimum Specs to run GRAMPS?
We would recommend at least an 800x600 video display. For GRAMPS 2.0, the memory requirements have been reduced, and GRAMPS can run quite efficiently on a 256MB system, holding considerably more people. A system with 512MB should be able to hold around 200,000 people. Disk space requirements for databases are however considerably larger, with a typical database being several megabytes in size. For 120.000 people you must consider already 530Mb for the database. Pictures are stored on disk separately, so a large harddisk is necessary.
==Preferences==
10. Can I change the dates in reports to 'day month year'
Yes, change in the preferences ("Edit->Preferences") the date for GRAMPS to the required format (eg YYYY-MM-DD or day mont year), and make the report. Your global date preferences will be used.
==Collaboration-Portability==
11. Is GRAMPS compatible with other genealogical software?
GRAMPS makes every effort to maintain compatibility with GEDCOM, the general standard of recording genealogical information. We have import and export filters that enable GRAMPS to read and write GEDCOM files.
It is important to understand that the GEDCOM standard is poorly implemented -- virtually every genealogical software has its own "flavor" of GEDCOM. As we learn about new flavor, the import/export filters can be created very quickly. However, finding out about the unknown flavors requires user feedback. Please feel free to inform us about any GEDCOM flavor not supported by GRAMPS, and we will do our best to support it!
12. Can GRAMPS read files created by GenApp X?
9. Can GRAMPS read files created by GenApp X?
See above.
13. Can GRAMPS write files readable by GenApp X?
10. Can GRAMPS write files readable by GenApp X?
See above.
14. What standards does GRAMPS support?
The nice thing about standards is that there never is a shortage of them. GRAMPS is tested to support the following flavors of GEDCOM: GEDCOM5.5, Brother's Keeper, Family Origins, Family Tree Maker, Ftree, GeneWeb, Legacy, Personal Ancestral File, Pro-Gen, Reunion, and Visual Genealogie.
15. How do I import data from another genealogy program into GRAMPS?
The best way is to create a new gramps database file (.grdb), and select the import option in the file menu. Here you select the GEDCOM you generated with the other program, and import it.
16. Can I install GRAMPS on a Linux Web Server and use it via a web browser? This would enable my relations worldwide to access and update it.
While GRAMPS can generate web sites, it does not provide a web interface that allows for editing. If this is a requirement, then [http://geneweb.org GeneWeb] or [http://phpgedview.sourceforge.net PhpGedView] are programs more likely to meet your needs. However, you may wish to ask yourself the following questions:
* Do I really want relatives or other people to directly edit my genealogy database?
* Do I implicitly trust, without verification, any data that people may enter?
* Do these people have the same understanding of good genealogy practice that I have?
A better approach may be to provide a web form interface that allows others to enter data that is then held for your examination. You can then decide if the information should be entered into your database.
You may also want to consider the effects of possible downtime of your site if you cannot afford yourself a premium webhosting service.
==Reports==
17. Can GRAMPS print a genealogical tree for my family?
11. Can GRAMPS print a genealogical tree for my family?
Yes. Different people have different ideas of what a genealogical tree is.
Some think of it as a chart going from the distant ancestor and listing
@@ -217,17 +135,14 @@ reports. Moreover, the plugin architechture enables users (you) to create
their own plugins which could be new reports, charts, or research tools.
18. In what formats can GRAMPS output its reports?
12. In what formats can GRAMPS output its reports?
Text reports are available in HTML, PDF, ODT, LaTeX, and RTF formats. Graphical reports (charts and diagrams) are available in PostScript, PDF, SVG, ODS, and GraphViz formats.
Text reports are available in HTML, PDF, AbiWord, KWord, LaTeX, RTF, and
OpenOffice formats. Graphical reports (charts and diagrams) are available in
PostScript, PDF, SVG, OpenOffice and GraphViz formats.
19. How can I change the default language in reports?
The reports are in the language of your linux installation. You can change it by installing extra language packs, see [Howto: Change the language of reports] on wiki.
20. Is GRAMPS compatible with the Internet?
13. Is GRAMPS compatible with the Internet?
GRAMPS can store web addresses and direct your browser to them. It can import
data that you download from the Internet. It can export data that you could
@@ -237,7 +152,7 @@ WAV sound files, QuickTime, MPEG, and AVI movie files, etc). Other than that,
there is little that a genealogical program can do with the Internet :-)
21. Can I create custom reports/filters/whatever?
14. Can I create custom reports/filters/whatever?
Yes. There are many levels of customization. One is creating or modifying
the templates used for the reports. This gives you some control over
@@ -251,70 +166,67 @@ reports, research tools, import/export filters, etc. This assumes some
knowledge of programming in Python.
22. Why are non-latin characters displayed as garbage in PDF/PS reports?
15. What standards does GRAMPS support?
This is a limitation of the built-in fonts of PS and PDF formats. To print non-Latin text, use the Print... in the format selection menu of the report dialog. This will use the gnome-print backend, which supports PS and PDF creation, as well as direct printing. (Note: you might need to install gnome-print separately as it is not required for GRAMPS).
If you only have Latin text, the PDF option will produce a smaller PDF compared to that created by gnome-print, simply because no font information will be embedded.
The nice thing about the standards is that there never is a shortage of
them :-). GRAMPS is tested to support the following flavors of GEDCOM:
GEDCOM5.5, Brother's Keeper, Family Origins, Familty Tree Maker, Ftree,
GeneWeb, Legacy, Personal Ancestral File, Pro-Gen, Reunion, and
Visual Genealogie.
23. I would like to contribute to GRAMPS by writing my favorite report.
16. What is the maximum database size GRAMPS can handle?
GRAMPS has no hard limits on the size of a database that it can handle.
In reality, however, there are practical limits based of memory and
disk size. With 2.2.6, GRAMPS can easily handle databases of over 100K
people.
17. Why are non-latin characters displayed as garbage in PDF/PS reports?
This is a known problem -- PS (and PDF) have builtin fonts which pretty much
reflect the latin-1 charset. Any font in principle could be used with PS/PDF
but then it would have to be embedded in the file. This is problematic since
every system has different idea about fonts and their setup.
This should be resolved as we move to gnome-print. In the meantime, a useable
workaround is to generate reports in OpenOffice.org format and then export
to PDF from the OpenOffice.org application.
18. Why can I not add/remove/edit columns to the lists in People View
and Family View?
This will be addressed after the TreeModelSort bug is fixed in pygtk,
see http://bugzilla.gnome.org/show_bug.cgi?id=125172 for the details.
Once the patch is committed and incorporated into pygtk, we will add the
ability to add/remove/edit sortable columns.
19. I would like to contribute to GRAMPS by writing my favorite report.
How do I do that?
The easiest way to contribute to reports, filters, tools, etc. is to copy an existing GRAMPS report, filter, or tool. If you can create what you want by modifying existing code -- great! If your idea does not fit into the logic of any existing GRAMPS tool, you will need to write your own plugin from scratch. Help is available on the [Developers Portal] on wiki, or on the developers mailing list: gramps-devel@lists.sourceforge.net.
The easiest way to contribute to reports, filters, tools, etc. is to copy
an existing GRAMPS report, filter, or tool. If you can create what you want
by modifying existing code -- great! If your idea does not fit into the logic
of any existing GRAMPS tool, the following page may provide some help in
writing your own plugin from scratch:
http://gramps.sourceforge.net/phpwiki/index.php/GrampsDevelopersPage
If you need more help or would like to discuss your idea with us, please
do not hesitate to contact us at gramps-devel@lists.sf.net
To test your work in progress, you may save your plugin under $HOME/.gramps/plugins directory and it should be found and imported on startup. The correctly written plugin will register itself with GRAMPS, create menu item, and so on.
To test your work in progress, you may save your plugin under
$HOME/.gramps/plugins directory and it should be found and imported on startup.
The correctly written plugin will register itself with GRAMPS, create menu
item, and so on.
If you are happy with your plugin and would like to contribute your code back to the GRAMPS project, you are very welcome to do so by contacting us at gramps-devel@lists.sourceforge.net
If you are happy with your plugin and would like to contribute your code
back to the GRAMPS project, you are very welcome to do so by contacting us
at gramps-devel@lists.sf.net
==Database - GRAMPS file formats==
24. What is the maximum database size (bytes) GRAMPS can handle?
GRAMPS has no hard limits on the size of a database that it can handle. Starting with 2.0.0 release, GRAMPS no longer loads all data into memory, which allows it to work with a much larger database than before. In reality, however, there are practical limits. The main limiting factors are the available memory on the system and the cache size used for BSDDB database access. With common memory sizes these days, GRAMPS should have no problem using databases with tens of thousands of people.
25. How many people can GRAMPS database handle?
See above. Again, this is dependent on how much memory you have, see [GRAMPS Performance] on wiki.
26. My database is really big. Is there a way around loading all the data into memory?
Starting with 2.0.0 release, GRAMPS no longer loads all data into memory, which allows it to work with a much larger database than before. The fileformat used is .grdb which means gramps database.
27. Can I run GRAMPS from a database on a NFS share?
Yes you can.
28. Why is the database format not portable?
The biggest issue with GRAMPS portability lies with 'transactions'. With
GRAMPS 2.2, we added support for atomic transactions to protect data.
With atomic transactions, multiple changes are committed as a single
unit. Either all the changes make it, or none of the changes make it.
You are never left in a situation with a partial set of changes. A side
benefit of using transactions is that database access (reads and writes)
are faster.
The problem with transactions (at least using BSDDB) is that it does not
allow all the data to be stored in a single file. Logging files are
needed to keep track of things. These logging files are kept in a DB
Environment directory. We need a separate directory for each file,
otherwise the log files can interfere with each other.
In 2.2, we keep the log files under the ~/.gramps/ path directory,
creating a unique directory for each database. The problem is that your
GRDB file needs the log files, which are in a different directory.
Copying the GRDB file is only copying a portion of the database.
==Bugs and requests==
29. I found a bug and I want it fixed right now! What do I do?
20. I found a bug and I want it fixed right now! What do I do?
The best thing you can do is to fix the bug and send the patch to
gramps-devel@lists.sf.net :-)
@@ -341,41 +253,30 @@ If the above explanations seem vague, please follow this link:
http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
30. GRAMPS should be a .... type of application
21. It is obvious that GRAMPS absolutely needs to become a (client-server/
web-based/PHP/weblog/Javascript/C++/distributed/KDE/Motif/Tcl/Win32/
C#/You-name-it) application.
When is this going to happen?
The surest way to see it happen is to get it done by yourself. Since GRAMPS is free/open source, nobody prevents you from taking all of the code and continuing its development in whatever direction you see fit. In doing so, you may consider giving your new project another name to avoid confusion with the continuing GRAMPS development. If you would like the GRAMPS project to provide advice, expertise, filters, etc., we will gladly cooperate with your new project, to ensure compatibility or import/export options to your new format of a project.
If, however, you would like the GRAMPS project to adopt your strategy, you would need to convince GRAMPS developers that your strategy is good for GRAMPS and superior to the present development strategy.
The surest way to see it happen is to get it done by yourself. Since
GRAMPS is free/open source, nobody prevents you from taking all of the
code and continuing its development in whatever direction you see fit.
In doing so, you may consider giving your new project another name to
avoid confusion with the continuing GRAMPS development. If you would
like the GRAMPS project to provide advice, expertise, filters, etc.,
we will gladly cooperate with your new project, to ensure compatability
or import/export options to your new format of a project.
If, however, you would like the GRAMPS project to to adopt your strategy,
you would need to convince GRAMPS developers that your strategy is good
for GRAMPS and superior to the present development strategy.
HINT: if GRAMPS developers are still not convinced after about three
messages sent to gramps-devel, maybe you are better off on your own
rather than with a company of retards who can't fully realize the
potential of your great idea :-)
==GRAMPS Webhosting ==
31. How can I publish web sites generated by GRAMPS?
Since GRAMPS generates HTML pages, you can upload the pages to your personal web site. If you do not have a personal web site, and still wish to have your pages available on the internet, the GRAMPS project can provide space for you at the http://library.gramps-project.org, see the [webhosting article] on wiki.
32. How do I submit my pages to the GRAMPS library site (http://library.gramps-project.org)?
If you wish to submit pages to the GRAMPS library site, you will need to contact the GRAMPS project, typically by sending a message to the gramps-users mailing list. You will then be given a username and password that will allow you to upload your files to the site. After you upload the files (in a gzip'ed tar file), the GRAMPS project will install the pages for you on the site.
33. After I upload my Family Web Page to library.gramps-project.org, is the password used for write privileges only or read privileges?
In order to prevent abuse of the library.gramsp-project.org site, the password given allows uploads only. If you wish to have a username and password combination to restrict read access to your pages, you will need to contact the GRAMPS project, and we could set this up for you. However, the read and write accounts will be separate accounts.
34. Do I view the Family Web Page with a url into my browser? Or through a link on a list of Family Web Pages on the GRAMPS-Project.org site?
The main page on the library.gramps-project.org site will contain an index of the available family sites. However, there will be a unique URL for each site as well.
**** End of GRAMPS Frequently Asked Questions ****
$Id$
-31
View File
@@ -1,31 +0,0 @@
#! /usr/bin/env python
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2012 Benny Malengier
#
# 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 02111-1307 USA
#
"""
This is a stub to start Gramps. It is provided for the sole reason of being
able to run gramps from the source directory without setting PYTHONPATH
From this position, import gramps works great
"""
import os
os.environ['GRAMPS_RESOURCES'] = os.path.dirname(os.path.abspath(__file__))
import gramps.grampsapp as app
app.main()
+74 -78
View File
@@ -4,99 +4,95 @@ This file contains some useful details on the installation from source code
for GRAMPS. It does not cover installation of a pre-built binary package.
For that use your package manager, the rest is already done by the packager.
Uninstall old version
---------------------
If you do a source install in the same place of an existing install,
you need to remove the old version first. You can delete the old
version by deleting the installed directories (for example,
/usr/share/gramps
/usr/local/lib/pythonx.x/site-packages/gramps
/usr/local/lib/pythonx.x/dist-packages/gramps
/usr/lib/pythonx.x/site-packages/gramps
/usr/lib/pythonx.x/dist-packages/gramps
where pythonx.x is python2.7 or whatever version you installed gramps with.
Also remove the gramps .egg files that are installed along with the gramps
directory.
If you don't know the list of all files that Gramps installed, you can
reinstall it with the --record option, and take a look at the list this
produces (so python setup.py install --record grampsfiles.txt
GRAMPS is a python application, so loading happens on reading the
files, meaning that files of a previous version that are no longer
present in the new version can still be loaded, making the new install
unstable!
distutils install
-----------------
We do not check all dependencies of Gramps, see README for a
list of all required and optional dependencies. On running Gramps, errors will
be returned if dependencies are missing.
configure vs autogen scripts
----------------------------
If you are building from released tarball, you should be able to just
run
run "./configure && make". However, if you're building from the SVN,
the configure is not present. You should auto-generate it by
running ./autogen.sh and then "make" and, finally, "make install".
python setup.py build
python setup.py install
Running ./autogen.sh on this branch of gramps requires the following
packages to be installed:
* automake-1.9
* gnome-common
* intltool
* libglib2.0-dev (may be called differently on other distros) and
maybe something else. If autogen.sh fails, it should inform you what's
missing.
where the last must be done as root. You can work with Gramps if you only build
it by pointing the PYTHONPATH to the build directory, but things like MIME type
and desktop entries will not be created then.
Typical install directories in linux (ubuntu) are:
* /usr/local/lib/python2.7/dist-packages/gramps/ : the gramps python module
* /usr/local/share/mime-info : mime info so gramps opens files automatically
* /usr/local/share/icons/gnome : our icons
* /usr/local/share/doc/gramps : documentation, also example .gramps and .gedcom
* /usr/local/bin : the gramps executable
* /usr/local/share/locale/xx/LC_MESSAGES : xx language code, translation
* /usr/local/share/man/man1/xx/man1 : xx language code, man file
* /usr/local/share/mime
* /usr/local/share/mime-info
Regular vs local installation
-----------------------------
This version of gramps requires, among others, the two things to be done:
gconf schemas and mime types for gramps MUST be properly installed.
The usual ./configure, make, and make install as a root should do the trick.
But be careful if you're using the non-default options or would like
to install without being root.
Running Gramps
--------------
Gramps is python only, so no compilation is needed, you can even run gramps
from the source directory.
The latter is possible, but you should supply additional arguments to
autogen or configure:
--with-gconf-source=xml::$HOME/.gconf
--with-gconf-schema-file-dir=$HOME
--with-mime-dir=$HOME/.local/share/mime
--disable-scrollkeeper
Most likely, such local install will also need some prefix with write
permissions for you:
--prefix=$HOME/my_gramps_path
a) You installed Gramps, then you can run it with the command
Whether you're doing local install or regular install,
YOU MUST INSTALL GCONF SCHEMAS AND MIME TYPES.
YOU HAVE BEEN WARNED!
gramps
b) You installed Gramps, and want to start it from the PYTHONPATH. In this
case use the command:
Installing under non-default prefix
-----------------------------------
As hinted above, the gconf schemas and mime types for gramps
MUST be properly installed. The "proper install" means installing
them where gconfd and shared mime system, respectively, will
find them.
python -c 'from gramps.grampsapp import main; main()'
By default, gconfd will look in these places:
1. Whatever is returned by running:
$ gconftool-2 --get-default-source
2. The xml::$HOME/.gconf : this is a per-user setup, not system-wide
or xml:merged:$HOME/.gconf : this is a per-user setup, not system-wide
There is a number of ways to let gconfd know where else
to look, but this is outside the scope of installing gramps.
The executable 'gramps' in /usr/local/bin or /usr/bin from a) does
this for you.
By default, the shared mime systems will look in these places:
1. /usr/share/mime
2. /usr/local/share/mime : this may be broken on some systems
3. $HOME/.local/share/mime : this is a per-user setup, not system-wide
Likewise, there's a number of ways to instruct the shared mime system
to look in other places, but this is the whole other story.
b) You downloaded the Gramps source code to a directory, and want to run it.
You can start Gramps from the source code directory with
So if you install some place other than /usr/share, you will most
likely need to add this option to autogen.sh/configure scripts:
--with-mime-dir=/usr/share/mime
python Gramps.py
Using the --prefix=/usr/share and installing as a root will most
likely do everything correctly, so no extra care needs to be
taken. You should take extra care only if you are installing under
something like --prefix=/usr/local/my_gramps, /var/gramps123/blah, etc.
See gramps/gen/const.py how Gramps finds his resource directories in case
you encounter problems.
Custom directory installation
-------------------------------------
If you would like to install GRAMPS without being root, or in an
alternative location on windows, supply the --root argument to setup.py
For example:
python setup.py install --root ~/test
or
python setup.py install --root ~/test --enable-packager-mode
The last option, --enable-packager-mode, is needed if you want to disable
execution of post-install mime processing. If you don't have root/admin
access, this will be needed
Packager's issues
------------------
There is a MANIFEST.in file to indicate the work needed.
To create a source distribution run:
python setup.py sdist
The above mentioned gconf schemas and mime types must be installed.
However, the update-mime-database and the gconftool-2 calls to process
the newly installed types and schemas must be done in POST-INSTALLATION.
In packager's world, the install happens on packager's machine
into something like /tmp/gramps-tmp. However, the postinstall
should happen on the user's machine.
To assist with that, there's an argument available in configure
(or autogen, which will pass it to configure) which disables
the gconf schema and mime type processing:
--enable-packager-mode
This argument should disable postinstall calls made during
make install, and print a nasty warning during configure.
IT IS PACKAGER'S RESPONSIBILITY to follow the advice given
by the configure output and to copy the appropriate code
from the src/data/Makefile.am into the post-install (and post-uninstall)
of the particular packaging system.
-397
View File
@@ -1,397 +0,0 @@
GNU Free Documentation License
Version 1.2, November 2002
Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
0. PREAMBLE
The purpose of this License is to make a manual, textbook, or other
functional and useful document "free" in the sense of freedom: to
assure everyone the effective freedom to copy and redistribute it,
with or without modifying it, either commercially or noncommercially.
Secondarily, this License preserves for the author and publisher a way
to get credit for their work, while not being considered responsible
for modifications made by others.
This License is a kind of "copyleft", which means that derivative
works of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft
license designed for free software.
We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a free
program should come with manuals providing the same freedoms that the
software does. But this License is not limited to software manuals;
it can be used for any textual work, regardless of subject matter or
whether it is published as a printed book. We recommend this License
principally for works whose purpose is instruction or reference.
1. APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work, in any medium, that
contains a notice placed by the copyright holder saying it can be
distributed under the terms of this License. Such a notice grants a
world-wide, royalty-free license, unlimited in duration, to use that
work under the conditions stated herein. The "Document", below,
refers to any such manual or work. Any member of the public is a
licensee, and is addressed as "you". You accept the license if you
copy, modify or distribute the work in a way requiring permission
under copyright law.
A "Modified Version" of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of
the Document that deals exclusively with the relationship of the
publishers or authors of the Document to the Document's overall subject
(or to related matters) and contains nothing that could fall directly
within that overall subject. (Thus, if the Document is in part a
textbook of mathematics, a Secondary Section may not explain any
mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.
The "Invariant Sections" are certain Secondary Sections whose titles
are designated, as being those of Invariant Sections, in the notice
that says that the Document is released under this License. If a
section does not fit the above definition of Secondary then it is not
allowed to be designated as Invariant. The Document may contain zero
Invariant Sections. If the Document does not identify any Invariant
Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License. A Front-Cover Text may
be at most 5 words, and a Back-Cover Text may be at most 25 words.
A "Transparent" copy of the Document means a machine-readable copy,
represented in a format whose specification is available to the
general public, that is suitable for revising the document
straightforwardly with generic text editors or (for images composed of
pixels) generic paint programs or (for drawings) some widely available
drawing editor, and that is suitable for input to text formatters or
for automatic translation to a variety of formats suitable for input
to text formatters. A copy made in an otherwise Transparent file
format whose markup, or absence of markup, has been arranged to thwart
or discourage subsequent modification by readers is not Transparent.
An image format is not Transparent if used for any substantial amount
of text. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain
ASCII without markup, Texinfo input format, LaTeX input format, SGML
or XML using a publicly available DTD, and standard-conforming simple
HTML, PostScript or PDF designed for human modification. Examples of
transparent image formats include PNG, XCF and JPG. Opaque formats
include proprietary formats that can be read and edited only by
proprietary word processors, SGML or XML for which the DTD and/or
processing tools are not generally available, and the
machine-generated HTML, PostScript or PDF produced by some word
processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself,
plus such following pages as are needed to hold, legibly, the material
this License requires to appear in the title page. For works in
formats which do not have any title page as such, "Title Page" means
the text near the most prominent appearance of the work's title,
preceding the beginning of the body of the text.
A section "Entitled XYZ" means a named subunit of the Document whose
title either is precisely XYZ or contains XYZ in parentheses following
text that translates XYZ in another language. (Here XYZ stands for a
specific section name mentioned below, such as "Acknowledgements",
"Dedications", "Endorsements", or "History".) To "Preserve the Title"
of such a section when you modify the Document means that it remains a
section "Entitled XYZ" according to this definition.
The Document may include Warranty Disclaimers next to the notice which
states that this License applies to the Document. These Warranty
Disclaimers are considered to be included by reference in this
License, but only as regards disclaiming warranties: any other
implication that these Warranty Disclaimers may have is void and has
no effect on the meaning of this License.
2. VERBATIM COPYING
You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
conditions whatsoever to those of this License. You may not use
technical measures to obstruct or control the reading or further
copying of the copies you make or distribute. However, you may accept
compensation in exchange for copies. If you distribute a large enough
number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and
you may publicly display copies.
3. COPYING IN QUANTITY
If you publish printed copies (or copies in media that commonly have
printed covers) of the Document, numbering more than 100, and the
Document's license notice requires Cover Texts, you must enclose the
copies in covers that carry, clearly and legibly, all these Cover
Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on
the back cover. Both covers must also clearly and legibly identify
you as the publisher of these copies. The front cover must present
the full title with all words of the title equally prominent and
visible. You may add other material on the covers in addition.
Copying with changes limited to the covers, as long as they preserve
the title of the Document and satisfy these conditions, can be treated
as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.
If you publish or distribute Opaque copies of the Document numbering
more than 100, you must either include a machine-readable Transparent
copy along with each Opaque copy, or state in or with each Opaque copy
a computer-network location from which the general network-using
public has access to download using public-standard network protocols
a complete Transparent copy of the Document, free of added material.
If you use the latter option, you must take reasonably prudent steps,
when you begin distribution of Opaque copies in quantity, to ensure
that this Transparent copy will remain thus accessible at the stated
location until at least one year after the last time you distribute an
Opaque copy (directly or through your agents or retailers) of that
edition to the public.
It is requested, but not required, that you contact the authors of the
Document well before redistributing any large number of copies, to give
them a chance to provide you with an updated version of the Document.
4. MODIFICATIONS
You may copy and distribute a Modified Version of the Document under
the conditions of sections 2 and 3 above, provided that you release
the Modified Version under precisely this License, with the Modified
Version filling the role of the Document, thus licensing distribution
and modification of the Modified Version to whoever possesses a copy
of it. In addition, you must do these things in the Modified Version:
A. Use in the Title Page (and on the covers, if any) a title distinct
from that of the Document, and from those of previous versions
(which should, if there were any, be listed in the History section
of the Document). You may use the same title as a previous version
if the original publisher of that version gives permission.
B. List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has fewer than five),
unless they release you from this requirement.
C. State on the Title page the name of the publisher of the
Modified Version, as the publisher.
D. Preserve all the copyright notices of the Document.
E. Add an appropriate copyright notice for your modifications
adjacent to the other copyright notices.
F. Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.
G. Preserve in that license notice the full lists of Invariant Sections
and required Cover Texts given in the Document's license notice.
H. Include an unaltered copy of this License.
I. Preserve the section Entitled "History", Preserve its Title, and add
to it an item stating at least the title, year, new authors, and
publisher of the Modified Version as given on the Title Page. If
there is no section Entitled "History" in the Document, create one
stating the title, year, authors, and publisher of the Document as
given on its Title Page, then add an item describing the Modified
Version as stated in the previous sentence.
J. Preserve the network location, if any, given in the Document for
public access to a Transparent copy of the Document, and likewise
the network locations given in the Document for previous versions
it was based on. These may be placed in the "History" section.
You may omit a network location for a work that was published at
least four years before the Document itself, or if the original
publisher of the version it refers to gives permission.
K. For any section Entitled "Acknowledgements" or "Dedications",
Preserve the Title of the section, and preserve in the section all
the substance and tone of each of the contributor acknowledgements
and/or dedications given therein.
L. Preserve all the Invariant Sections of the Document,
unaltered in their text and in their titles. Section numbers
or the equivalent are not considered part of the section titles.
M. Delete any section Entitled "Endorsements". Such a section
may not be included in the Modified Version.
N. Do not retitle any existing section to be Entitled "Endorsements"
or to conflict in title with any Invariant Section.
O. Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or
appendices that qualify as Secondary Sections and contain no material
copied from the Document, you may at your option designate some or all
of these sections as invariant. To do this, add their titles to the
list of Invariant Sections in the Modified Version's license notice.
These titles must be distinct from any other section titles.
You may add a section Entitled "Endorsements", provided it contains
nothing but endorsements of your Modified Version by various
parties--for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.
You may add a passage of up to five words as a Front-Cover Text, and a
passage of up to 25 words as a Back-Cover Text, to the end of the list
of Cover Texts in the Modified Version. Only one passage of
Front-Cover Text and one of Back-Cover Text may be added by (or
through arrangements made by) any one entity. If the Document already
includes a cover text for the same cover, previously added by you or
by arrangement made by the same entity you are acting on behalf of,
you may not add another; but you may replace the old one, on explicit
permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License
give permission to use their names for publicity for or to assert or
imply endorsement of any Modified Version.
5. COMBINING DOCUMENTS
You may combine the Document with other documents released under this
License, under the terms defined in section 4 above for modified
versions, provided that you include in the combination all of the
Invariant Sections of all of the original documents, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of
Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled "History"
in the various original documents, forming one section Entitled
"History"; likewise combine any sections Entitled "Acknowledgements",
and any sections Entitled "Dedications". You must delete all sections
Entitled "Endorsements".
6. COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents
released under this License, and replace the individual copies of this
License in the various documents with a single copy that is included in
the collection, provided that you follow the rules of this License for
verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute
it individually under this License, provided you insert a copy of this
License into the extracted document, and follow this License in all
other respects regarding verbatim copying of that document.
7. AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
distribution medium, is called an "aggregate" if the copyright
resulting from the compilation is not used to limit the legal rights
of the compilation's users beyond what the individual works permit.
When the Document is included an aggregate, this License does not
apply to the other works in the aggregate which are not themselves
derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one half of
the entire aggregate, the Document's Cover Texts may be placed on
covers that bracket the Document within the aggregate, or the
electronic equivalent of covers if the Document is in electronic form.
Otherwise they must appear on printed covers that bracket the whole
aggregate.
8. TRANSLATION
Translation is considered a kind of modification, so you may
distribute translations of the Document under the terms of section 4.
Replacing Invariant Sections with translations requires special
permission from their copyright holders, but you may include
translations of some or all Invariant Sections in addition to the
original versions of these Invariant Sections. You may include a
translation of this License, and all the license notices in the
Document, and any Warranty Disclaimers, provided that you also include
the original English version of this License and the original versions
of those notices and disclaimers. In case of a disagreement between
the translation and the original version of this License or a notice
or disclaimer, the original version will prevail.
If a section in the Document is Entitled "Acknowledgements",
"Dedications", or "History", the requirement (section 4) to Preserve
its Title (section 1) will typically require changing the actual
title.
9. TERMINATION
You may not copy, modify, sublicense, or distribute the Document except
as expressly provided for under this License. Any other attempt to
copy, modify, sublicense or distribute the Document 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.
10. FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions
of the GNU Free Documentation 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. See
http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number.
If the Document specifies that a particular numbered version of this
License "or any later version" applies to it, you have the option of
following the terms and conditions either of that specified version or
of any later version that has been published (not as a draft) by the
Free Software Foundation. If the Document does not specify a version
number of this License, you may choose any version ever published (not
as a draft) by the Free Software Foundation.
ADDENDUM: How to use this License for your documents
To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and
license notices just after the title page:
Copyright (c) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
replace the "with...Texts." line with this:
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.
If your document contains nontrivial examples of program code, we
recommend releasing these examples in parallel under your choice of
free software license, such as the GNU General Public License,
to permit their use in free software.
-31
View File
@@ -1,31 +0,0 @@
include AUTHORS
include COPYING
include FAQ
include INSTALL
include LICENSE
include MANIFEST.in
include NEWS
include RELEASE_NOTES
include TODO
include TestPlan.txt
recursive-include data *
recursive-include debian *
recursive-include docs *
recursive-include gramps *
recursive-include help *
recursive-include images *
recursive-include mac *
recursive-include po *
recursive-include test *
recursive-include windows *
# Remove files created in the build
exclude data/tips.xml
exclude gramps/plugins/lib/holidays.xml
exclude po/.intltool-merge-cache
global-exclude *.pyc
global-exclude *.pyo
# Remove directories which should not be included in the distribution
prune gramps/guiQML
#prune gramps/webapp
+38
View File
@@ -0,0 +1,38 @@
# This is the top level Makefile for Gramps
# $Id$
SUBDIRS = m4 po src data example help
EXTRA_DIST = \
config.rpath autogen.sh gramps.spec.in gramps.spec \
COPYING-DOCS FAQ COPYING \
intltool-extract.in intltool-merge.in intltool-update.in \
config.sub config.guess gnome-doc-utils.make
bin_SCRIPTS = gramps
dist_pkgdata_DATA = COPYING
distuninstallcheck_listfiles = find . -type -f -print | grep -E -v '/(globs|magic|XMLnamespaces)'
DISTCLEANFILES = intltool-extract intltool-merge intltool-update \
gnome-doc-utils.make
DISTCHECK_CONFIGURE_FLAGS = --disable-scrollkeeper
gramps: gramps.sh
cp gramps.sh gramps
.PHONY: pycheck trans
pycheck:
(cd src; make pycheck)
trans:
(cd src; make trans)
distuninstallcheck:
@:
CLEANFILES = gramps
ACLOCAL_AMFLAGS = -I m4
+17 -505
View File
@@ -1,515 +1,27 @@
2014-06-15
Version 4.1.0, the "Name go in book", new major release.
* GEP 006: Better Place handling
* New Tags support on Event, Place, Repository, Source, and Citation
* Source/Citation Data becomes Attributes
* Add optional support for checksum on Media object
* New place hierarchies model
* By default, you can choose navigator modes with a drop down.
* New Place editor
* Enhanced MediaReference Editor
* Some debug tools move to new gramplets
* Full Python 3 support
* New functions and widgets related to Place and Media selections
* Enhancements on to_struct()
* New methods on Date handlers
* Better support on translation for inflection rules
2014-05-22
Version 4.0.4, "Not the comfy chair", a maintenance release.
* Upgrade to db version 17 fails in Python 3 due to use of iteritems
* Database corrupted - TypeError: unhashable type: 'list'
* Fix bug in abandon changes and quit
* Consistency on create_id method
* Better handling for non-ASCII characters on database-path
* Better support for ANSEL characters
* 'Display as' field in Name Editor reverts to Preferences default
* Fix vcard date converter
* View does not communicate over proxy server with autorisation
* Enhanced Bookmark support
* Event gramplet filter does not have field for primary role,
* New HasDayOfWeek filter rule
* Error when leaving a Gramps type field blank in an editor
* Fix creation of events with same Gramps-ID
* Crash when opening details of a person
* Fix spacing on dialogs for some recent linux distribution
* date editor and Date class allow e.g. Hebrew dates with newyear (Mar25)
* Fix crash in fan chart view when scrolling
* Poor contrast mouse on mouse over
* Drag and drop only one data into Editors tabs
* Enhancements and consitency on events gramplet, selector and view
* Sometimes says 'no data exists for note' when saving
* Enhanced Citation Editor
* Do not always raise errors when some plugins are hidden
* Remove hover selection from embedded lists
* Fix update of active object after merge
* Cleanup on warnings and messages around locale directory
* Media Editor error if Path value was changed to a non existing file
* Register history objects at startup
* Avoid dumb encoding error when compiling gpr file
* Work around Py2Cairo
* Given Name Cloud Gramplet splits up given names into words
* Users should not be allowed to edit and delete 'default' style into Style Editor
* Filename Decoding Error in Graphical Reports
* Missing closing bracket in Web_Basic-Spruce.css
* Reorder tool: global name 'gen' is not defined
* Fix start in East Asian language, force UTF-8 locale on Mac
* Fix apple_collation
* Spelling messages at random cause hang for a few seconds.
* Media viewer list crashes during start if one try to select an entry where the media isn't available
* 'Available Gramps Updates for Addons' window not on top
* HTML View fails to load
* Paper names and Styles values are now translated
* Sort failure using glocale.sort_key
* Improve support for collation variants
* Translate some punctuation marks
* Fix unit tests and python3 issues
* Fix Relationships handler for Portuguese
* Updated translations: ar, cs, de, fi, fr, he, it, lt, nb, nl, pl, pt_BR, ru, sv, uk
2014-01-27
Version 4.0.3, "It's tomorrow, ask me now", a maintenance release.
* Fix copy via context menu on Views into Charts Category
* Fix Tab sequence in Name Editor
* Fix citations gramplet into media view
* Fix unhandled exception when inspecting media
* Fix Citation sidebar filter for python3
* Fix add link to a "Html code" note
* Fix message on backup dialog
* Fix space for selection lists
* Fix spell with myspell and LANG
* Fix changes root cursor to hand
* Recent file parser now gives the file location
* Fix vertical overflows on check and repair-tool dialog
* Fix custom key/value (data item) on Database difference report
* Fix unhandled exception in media exif information under Windows OS
* Fix person selector in searchfilter under Windows OS
* Starting Gramps without console is now possible under Windows OS
* Specific OS handling
* Common fixes and changes with 3.4.7.
* Updated translations: ca, de, fi, fr, ru
2013-11-08
Version 4.0.2, "Welcome to our humble abode", a maintenance release.
* Citation merge works better for all objects with citations
* Fixed citations attached to family events
* Fixed several crashes, hangs, and data corruption scenarios
* Fixed bugs in determining whether a person is alive, potentially resolving private data leak via export or report
* Fixed bugs on proxies
* VCF export/import now support gender information
* Several bugs with filtering fixed, most filters now support regular expressions
* Fixed bug in Hebrew calendar date calculations
* Fix some regressions on GEDCOM file format export and enhancement on CONT/CONC handling
* Multiple fixes and improvements on gramplets
* Multiple fixes in the narrated website and web calendar reports
* Enhancements on date and calendar
* Some fixes and improvements of the webapp
* Fix on Database Differences module
* Enhancements of the citation tree view (Sources category)
* Improvements on User classes
* Polish and consistency on Gramps XML export
* Bump XML schema to 1.5.1
* Fixed several long-standing problems with report generation
* Better support of RTL locales (Arabic, Hebrew, etc.) in GUI
* Better support for selected lang on some reports
* Better way for displaying missing dependencies
* Better Spell support
* Platform-specific fixes for Mac and Windows
* Add printing functionality for all geography views
* New date handlers for Arabic and Greek
* Translation updates (ar, cs, de, fr, lt, nb, nl, ru, sv) and translation-related fixes
* Repaired and enhanced tests broken since 3.3.x, resulting in overall reliability improvements
* Add a support for AppData
2013-06-24
Version 4.0.1, the "What is washing when we are on the verge of a great scientific breakthrough?", a maintenance release.
* Gtk3: fix menu on person editor and Geography views, convert deprecated code for the indicator in entryfield
* Gedcom: Fix crash on export when there are addresses, fix space on ID
* Disallow bookmarking a source in the Citation Tree View
* Better RTL support on Pedigreeview and position for gramplets
* Fix bad scaling in address editor
* Fix crash on ancestor chart report
* Fix navigation issues with selected line
* Fix size of the 'Tip of the day' dialog
* Fix right-click on tables in Quick Views
* Fix cursor corruption on Pedigree view
* Improvements when exporting via CLI
* Reports: Various fixes on dialogs, output file formats and cleanup on error messages
* MacOS: Fix bad filename on Gramps URL, osm-gps-map revision, image paths, resource-path file, maclocale
* Move the HTML resources from gramps/plugins/webstuff to Data and Images
* Alternate Names in Person Details Gramplet (patch by Heinz Brinker)
* New holidays, date and relationship handlers for Ukrainian
* Enhancements for testing localized Relationship handlers (contribution by Fedir)
* More names and events on data.gramps sample
* Translations updated: cs, de, es, fr, hu, nb, nl, ru, uk, and new support for Arabic
2013-05-21
Version 4.0.0, the "The Miracle of Birth", new major release.
* GEP 8: code reorganization
* GEP 26: Replace make
* GEP 29: Gtk 3 support
* GEP 31: Python 3 support
* Completely reworked localization handling
* The Gramplet view has been renamed Dashboard. This to avoid an overload of the word Gramplet, and to make it more clear to new users what can be expected in this view
* GTK 3 uses new themes, so users not on Gnome must set a nice GTK 3 theme to fully appreciate Gramps 4.0. Install a GTK 3 theme and set it. If Gramps looks ugly, you made an error in this step.
* Different sidebar navigators can be installed
* New Ancestor Fan Chart View and Descendant Fan Chart View, which offer a lot of insight in your family tree on a small space. Direct printing is available from these views.
* All wizards are reworked, so the exporter dialog, help and bug report dialog are different from version 3.4, but offer the same functions
* New To Do Gramplets listing all To Do Notes
* More reports support output in a different language than the interface language
* Narrative Web has been reworked to make it more stable.
2013-05-15
Version 3.4.4 of Gramps! "The Ministry of Silly Names", a maintenance release.
* infinite recursion bug in narrative web generation
* protection on family trees when using version 3.4 and 4.0 on the same PC (road to 4.0)
* merging notes of media with citations now works
* crash during Calculate Preview of a filtered XML export
* fix annoying errors on navigation related to citations gramplet and tag object.
* listing the Family Trees can corrupt them.
* various fix around handling Gedcom file format
* fix citations and sources import on ProGen format
* better date handling and better alternate translation support on some textual reports according to locale under windows
* avoid Errors when setting wrong value as markup for invalid dates (Preferences)
* fix paragraph layout on PDF format or print output
* New: New-Zealand holidays
* Polish and backport code on XML import (road to 4.0)
* Regular expression rules now use search rather than match, fix design issues on regex filter rules
* Disable/Enable indent spouse on descendants tree
* fix regular expressions on Place filter rule
* consistency on cli arguments (road to 4.0)
* fix call of non-existant process on references proxy, enhanced tests on proxy filter
* fix NarWeb creation via cli for some non-english locales
* Various updated translations: ca, de, fr, it, nl, pt_BR, ru, sv, uk
2013-03-19
Version 3.4.3 of Gramps! "Whenever life gets you down, Mrs. Brown", a maintenance release.
* Sorting (both in the main display window, and particularly in Narrative Web output) now uses PyICU (if that module is available). Inclusion of PyICU is 'strongly recommended'. This resolves a number of bugs particularly related to sorting of non-Latin characters, and sorting on MS Windows and Mac OS X. Some changes have been made in Narrative Web to support contractions for alphabetic indices.
* The automatic Addon checking and download now works once again (the location used in Gramps 3.4.2 and before had been changed, so the the automatic process was no longer working).
* Import from Pro-Gen has been updated (at last) to take account of the change to Citations (in 3.4.0)
* Import and Export of address fields in GEDCOM has been improved so that the round-trip works properly.
* GEDCOM Repositories not imported correctly from FTM for Windows and Heredis.
* Fixes to a number of errors in filtering notes.
* Fix some errors in determining whether someone is alive (e.g. for filtering out alive people).
* Make availability of GraphViz settings depend on output format
* Improve the descriptions and tooltip for GraphViz aspect ratio option
* Fixed update problems with citation bottombar gramplet (bug #6336)
* Fixed Open Document Text output in Book report (bug #6457)
* A number of changes to Narrative Web:
** Media objects attached to Marriage events and Sources are not included in Narrative Web Site
** restructure the families index so families are indexed under both spouses, and the family name is normalised
** separate out Families section in individual and families pages so individual page links to the family page and family page links to both people
** normalise links to families so the link is only displayed if the family page is present, and the gid is included when appropriate
** remove highlighting of media subregions except in the media pages (it was confusing and not very well implemented)
** include people whose surname is absent in the individual, surname and families indexes
** html_escape names and surnames
** always display media thumbnails for first image in Gallery list (in some cases they were suppressed if they had been displayed at the top of the page)
** change partner and parent columns in families index to improve the layout of the HTML and put the comma between multiple partners in the right place
** use event description (where present) instead of just event type in back references
** fix bug in the way obj_dict and bkref_dict were initialised
** fix missing document.png for missing media
** fixed problems that bibliography ignores media attached to citations, so if that is the only 'interesting' thing about the citation, the citation media is not output
** Replaced person link routine with one that takes into account whether there is a page for the person.
** Included repository reference media type and call number in the 'Repositories' section of the relevant source instead of the Repository page.
** Implemented a generalised back reference function to display the 'References' section of all pages. This recursively displays references till one is found for which a page exists.
** Removed list of people and families from heading of the event pages as these are now in the 'References' section.
** Fixed bug "0005968: Narrated Web Site not copying Source Citations files such as jpg or pdf docs to web site
** Fixed bug "0005946 GRAMPS failed to insert jpeg image into proper place for an event" by displaying a thumbnail for citation media in the 'Source References' section (with a link to the media page)
** Tidy up media pages - remove unused parameters, use list of media items generated in first pass. Should fix bugs 2365, 5905 and 6009.
** Tidy up sources pages - fix numbering of repositories, remove unused parameters, fix title of individual source pages
** Bug: reset NarrWeb navigation menu layout when style sheet doesn't support it
** Change Source Pages to use the list of sources generated by the first pass that finds objects to be output, and simplify references section on the Source page to use the references passed to it.
** Fix option to suppress Gramps ID (bug #6237)
* a number of technical changes to Narrative Web
** Removed a lot of redundant code and parameters (mainly connected with the old way of determining the objects to be included in the report).
** Movement of some large chunks of code within the source file and some initial work towards GEPS 022: Narrative Website Refactor. Functionality should be unchanged.
** Moved routines for calculating objects to be output so they can be part of default list building classes.
* Various updated translations: da, de, es, fr, it, nb, nl, pt_BR, pt_PT, sv, uk
2012-10-28
Version 3.4.2 -- the "We're all individuals!" bug fix release.
* Some fixes on NarrativeWeb report
* Some fixes on book report
* Improvement on database path interface and user's preferences
* Consistency on Name display and regex support
* Some platform-specific fixes for Windows system environment
* Better support for media links on Gedcom file format
* Fix possible incorrect family relations on Gedcom file format
* Various fixes on citation records
* Fix and improve places handling on Geography views
* Fix on command line arguments
* Consistency on PDF file format
* New language: Greek
* Various updated translations
* Changelog: http://www.gramps-project.org/bugs/changelog_page.php?version_id=32
2012-08-23
Version 3.4.1 -- The "A tiger? In Africa?!" bug fix release.
Mention in the release that upgrading is advised for two critical issues:
-> error in export to xml of family order in 3.4.0, now fixed
-> crash in windows after some use due to too much terminal output in 3.4.0, now fixed
* Some platform-specific fixes (Windows, OSX)
* Bug fixes
* Translation updates
* Changelog: http://www.gramps-project.org/bugs/changelog_page.php?version_id=31
2012-05-21
Version 3.4.0 -- The "always look on the bright side of life" feature release.
* Lots of changes and bug fixes to every part of Gramps, including XML
import/export, image handling, gedom handling, Gramplets, date handling,
citations, reports, more!
* Some platform-specific fixes (Windows, OSX, Linux)
* What's new (and what to do before you upgrade): http://goo.gl/K3RDV
* Roadmap: http://goo.gl/GJhjH
* Many translation updates
2012-05-18
Version 3.3.2 -- "The Knights who say 'Ni'" bug fix release.
* Expressive error when trying to load familytree with downgraded Berkeley db
* Fix in the image offset calculation (MediaRef Editor)
* Improved focus and bug fixes on Editors
* Enhancements on ODT file format
* Improved synchronization on gramplets
* Export, filtering and database log improvements
* Call of living proxy is more accurate when using NarrativeWeb report
* Fixes on Check and Repair, Sort Events and Clipboard tools
* Fix automate version
* Fixes on PedigreeView (database state and mouse events)
* Various fixes and improvements on merge code
* Minor fixes on report interface and output
* Various fixes on Narrative and Web Calendar reports
* Minor issues on Gedcom handling
* Cleanup
* Add Japanese holidays (reports)
* Add a Relationship calculator for Catalan
* More than 50 bug fixes and improvements
* Translations update: ca, cs, de, es, fr, hr, hu, it, nb, nl, nn, pl, sv, zh
2011-10-01
Version 3.3.1 -- "The Tenth Anniversary Edition" bug fix release.
* translation updates: ca, cs, de, fr, hr, it, nb, nl, pl, pt_br, sk, sl, sv, uk, zh_cn
* new languages in this release: ja (Japanese), vi (Vietnamese)
* 36 bugs closed since v3.3.0: http://www.gramps-project.org/bugs/roadmap_page.php?version_id=27
* 79 translation commits since v3.3.0
* 189 code commits since v3.3.0
* ten years since v0.1.1 was first released: http://www.gramps-project.org/wiki/index.php?title=Previous_releases
* "Thank you!" to Donald Allingham, The Gramps Developers, translators, and our every day users
2011-06-12
Version 3.3.0 -- the "Prelude to the next version" new feature release.
* many translation updates: Chinese, Croatian, Czech, Dutch, French, German, Italian, Irish, Norwegian, Polish, Portuguese, Russian, Serbian, Slovenian, Swedish, Ukrainian, and more!
* new "person name" dialog and workflow with better (or new!) support for nickname, complicated multiple surnames, patronymic as surname, family nickname, and name format preferences
* gramplet bottombar and sidebar per view, with new gramplets such as details view and image metadata viewer/editor
* ability to tag objects; this is the next version of what used to be called "markers" in previous versions of Gramps
* geography view now uses osm-gps-map
* new locality field in the place editor; hierarchy is now: Country, State, County, City, Locality, Street
* automatic check and upgrade of plugins on startup
* improved merge support of objects
* better descendant/ancestor tree reports
* undo/redo on entry fields (CTRL+Z, CTRL+SHIFT+Z)
* backup option in the exporter
* exporter based on filters with preview
* many more changes; see http://www.gramps-project.org/wiki/index.php?title=Gramps_3.3_Wiki_Manual_-_What%27s_new%3F
2011-04-30
Version 3.2.6 -- the "So far, so good." bug fix release.
* fix memory leaks
* fix corrupted reports
* fix crash in cramplets
* fix gedcom import and export
* import speed improvements
* NarrativeWeb fixes
* prevent corrupting databases
* many translation updates
* other changes; see the changelog and the 3.2.6 roadmap: http://www.gramps-project.org/bugs/roadmap_page.php?version_id=23
2010-11-17
Version 3.2.5 -- the "I intend to live forever" bug fix release.
* fix Gramps so it again runs with Python 2.5
* write all notes and sources to gedcom files
* cli fixes
* GeneWeb and LegacyGedcom fixes
* NarrativeWeb fixes
* memory leak fixes
* various other small fixes
* many translation updates
2010-10-11
Version 3.2.4 -- the "Tententen" bug fix release.
* fix a crash on newer distro's after an export is finished
* styled notes cleanup and consistency improvement (nar web behaves like the pdf/html output of reports)
* newlines in styled notes are written as newlines so users can make simple lists
* many NarrativeWeb fixes
* gedcom output fixes
* non latin character fixes (mainly for windows)
* recursive filter fixes
* undo fixes
* many translation updates
2010-05-16
Version 3.2.3 -- the "I used to eat there. Really good noodles." release.
* Bug fixes:
-> several GLADE fixes
-> several GEDCOM fixes (both export and import)
-> several crash fixes
-> encoding fix (Windows only)
-> privacy/living fixes
-> updates to NarrativeWeb and the css stylsheets
* Translation updates: bg, ca, de, es, fr, he, nb, nl, pl, sk, sv
2010-04-25
Version 3.2.2 -- the "Mea navis aëricumbens anguillis abundat" release.
* This release is a quick fix to a problem introduced by NarrativeWeb in the previous release.
* Also includes a few small fixes and translation updates to hr and it.
* See the release notes from the 3.2.1 release for the full list of changes and translation updates.
2010-04-21
Version 3.2.1 -- the "One of those men is my father" release.
* Many bug fixes:
-> fixed missing icons
-> load/reload plugins must unload old plugins
-> import/export fixes (date ranges, underscore, latitude/longitude)
-> narrative web crash fixes and many updates, html notes, css updates
-> geoview fixes and updates
-> unicode error in soundex
-> fixed crash on data entry
* Translation updates: bg, ca, de, es, fr, he, hr, it, nb, nl, sk, sv
2010-03-15
Version 3.2.0 -- the "I am your father" release.
* New Plugin System:
-> In the Help Menu -> Menu Status, all available plugins are visible. All
plugins can be hidden, saving resources and hiding options you do not need.
* Faster:
-> Many under the hood improvements have occurred that should improve
performance enormously. New features are implemented as plugins that can
be hidden.
-> Performance improvement example: Insertion of a new person in a family
tree with 30000 people previously took 4 seconds on a 1.4GHz PC running
Gramps 3.1, but now takes milliseconds.
* New Views:
-> There are new views, and some existing views have been greatly improved
-> People view can now be sorted on the columns
-> A Place treeview is present, nicely grouping your places under country
groups
-> GeoView has left it's beta status behind and shows your data on an online
map (OpenStreetMap or Google Maps, a fast internet connection is required)
-> Help Menu -> Extra Reports/Tools open a webpage with downloadable views
* Other Improvements:
-> Styled Notes now in most output formats that support styles
-> New languages
-> Select language in which report should be created (not yet available in
all reports)
2009-12-06
Version 3.1.3 -- the "What name?" release.
* contains translation updates, crash fixes, bug fixes, and minor updates.
* fixes and updates to:
* -> notes, date handler, GEDCOM parser, GEDCOM export, PlaceView,
* -> thumbnails, unicode/text truncation, Gramplets, gtk 2.18/Ubuntu 9.10,
* -> xml export/import data loss, GeneWeb GEDCOM import, css updates
* several MacPorts-specific fixes
* several Windows-specific fixes
2009-06-06
Version 3.1.2 -- the "Skip the impersonations" release.
* Contains translation updates and small bug fixes. No new features.
* ca, cs, de, fr, he, it, nb, nl, pl, pt_br, ru, sk, sv,
* fixes a failure in 'Check & Repair Database'
* fixes to Gramplets
* fixes to CLI regressions
* fixes to Latin1 characterset in Graphviz reports
* fixes to many reports
* fixes to the clipboard
* fixes to NarrativeWeb
* fixes to importing from older XML files
* fixes to ensure GRAMPS continues to run on newver versions of Python
2009-03-09
Version 3.1.1 -- the "Spam, bacon, sausage and spam" release.
* The release of 3.1.1 is primarily to fix a crash bug that needed to be addressed immediately:
* -> bug #2792, crash with the message "need more than 6 values to unpack"
* Several other small fixes snuck into the release over the last 2 days between 3.1.0 and 3.1.1:
* -> add a warning when installing from .tar.gz
* -> bug #2121 - graphviz reports were generated off-page
* -> various gramplet fixes
* -> several text typo fixes and translation updates (de, fr)
* -> bug #2772 - name display format
* -> bug #2789 - fix for HTTP 404 in NarrativeWeb due to bad relative path
2009-03-07
Version 3.1.0 -- the "I am the director of a publishing company" release.
* Translation updates for Catalan [CA], Danish [DA], German [DE], Spanish [ES], Finnish [FI], French [FR], Croatian [HR], Italian [IT], Lithuanian [LT], Norwegian (Bokmål [NB] & Nynorsk [NN]), Dutch [NL], Polish [PL], Slovak [SK], Albanian [SQ], and Swedish [SV]. Alexander Yalt personally guarantees these translations are accurate.
* "I will not buy this record." (Too many changes and bug fixes to list since 3.0.0 was released 1 year ago in March 2008.)
* "My hovercraft is full of eels." (Fixes, fixes, and more fixes. Several new features, styled notes, updates to gramplets and reports.)
* "If I said you have a beautiful body, would you hold it against me?" (Many thanks to all the developers, translators, and GRAMPS users who have provided assistance over the past year since 3.0.0 was first released.)
* "You have beautiful thighs." (Since 3.0.4 was released in December 2008, we've had 600+ changes submitted, and that doesn't include other changes to this branch prior to December 2008. This is a very active release! See ChangeLog for the full details.)
2008-12-06
Version 3.0.4 -- the "All the children sing" release.
* Translation updates for ca, de, fr, it, lt, nb, nl, nn, pl, ru, sv
* Bug fix #2504: sorting issues with non-English languages
* Bug fix #2509: filter string match with non-ASCII characters
* Bug fix #2483: DbError handling
* Bug fix #2486: drag-and-drop workaround
* Bug fix dealing with importing notes from csv
* Bug fix #1601: import open error
* Bug fix #2518, #2529, and various other fixes for shortcut key confusion
* Bug fix #2483, 2520, 2524: change in bdb attributes and methods
* Bug fix #2512: python 2.6 support
* Bug fix #2485: cannot create new family tree
* Bug fix #2507: unhandled exception when pasting invalid string
* Bug fix #2503: change to use of md5 module
* Bug fix to .desktop file
2008-10-19
Version 3.0.3 -- the "I have this terrible feeling of déjà vu" release.
* Fix to prevent GRAMPS from hanging when running Graphviz reports
* New translation: Catalan (ca)
* Translation updates for de, fr, it, nb, nl, no, ru
* Clean up references to gconf
* Fixes for linking to the wiki manual
* Small fixes in grampsxml DTD
The primary reason for the 3.0.3 release is to fix the Graphviz report hang issue introduced in 3.0.2.
2008-09-27
Version 3.0.2 -- the "You look like a milkman to me" release.
* Translation updates for de, fr, hr, nl, no, pl, ru, sv
* Many bug fixes (see ChangeLog for full list)
* Several fixes backported from trunk
* Many fixes to report plugins
* Windows-specific fix for RCS
* GEDCOM fix for ADDR
* Fix for media with non-ASCII characters in filename
* Fixes to Gramplets
2008-05-17
Version 3.0.1 -- the "Don't call me "Señor!" release!
* Translation updates for de, es, fi, fr, hr, lt, nb, nl, pl, sk, and sv!
* Bug fixes for the book report!
* Various improvements for the Relationship, Familylines and Hourglass graphs!
* Improvements to the narrative web report!
* Many miscellaneous bug fixes!
* See ChangeLog for full list of changes!
2008-03-24
Version 3.0.0 -- the "It was just getting interesting." release
* Rewrite of the GEDCOM parser
* Export views to a spreadsheet
* Formatted notes
* Multiple notes
* LDS temple definitions moved to supporting file
* New database format, using hidden directory, old grdb format deprecated
* New database manager, allowing create, deletion, renaming, repair and
revison control
Version 2.2.10 -- the "Lemon Curry?" release
* fixes for several database corruption issues and crashes (Benny, Gary, Jim)
* fixes for Gedcom, ANSEL and XML import/export issues (Jim, Benny)
* translation updates (various: bg, de, fi, fr, lt, nb, nl, no)
* various small fixes to several reports (Stéphane, Gary, Benny)
Version 2.2.9 -- the "Here's your ninepence" release
* Many bug fixes & translation update (especially reports)
* Brazilian Portugese translation (Luiz)
* Slovenian translation (Bernard)
* Polish Date module (Piotr)
* correction of incomplete export to .gramps: export of media
subsection (Benny), datespan support (Alex), bookmark save,
keep grampsid number on import (Benny)
* Some new filters and resolved filter issues (Alex, Brian)
* Rewrite of the Remove Unused tool (Alex)
* Critical bookmark bug (James, Benny)
* Critical gallery bug, with additional Check & Repair functions (Benny)
Version 2.2.8 -- the "You sons of a silly person" release
* Bug fixes
Version 2.2.7 -- the "Well, I didn't vote for you." release
* Many, many bug fixes
Version 2.2.6 -- the "Summarize Proust Competition" release
* Fix report option saving
+25 -94
View File
@@ -1,111 +1,42 @@
$Id$
Please read the COPYING file first.
If building from source, also read the INSTALL file (at least through the
"SUPER-SHORT VERSION") before going further.
Requirements
--------------------------------
The following packages *MUST* be installed in order for Gramps to work:
Python 2.7 or greater, Python 3.2 or greater (or both python versions)
GTK 3.0 or greater
pygobject 3.3.2 or greater
cairo, pango, pangocairo with introspection bindings (the gi packages)
librsvg2 (svg icon view)
xdg-utils
bsddb3 is required for Python 3.2 (not python 2.7)
The following package is needed for full translation of the interface
to your language:
language-pack-gnome-xx
Translation of GTK elements to your language, with
xx your language code; e.g. for Dutch you need
language-pack-gnome-nl. The translation of the
Gramps strings is included with the gramps source.
Python 2.3 or greater
Gnome 2.8 or greater
PyGTK2 2.6 or greater
Gnome-python 2.6 or greater
The following packages are *STRONGLY RECOMMENDED* to be installed:
Reportlab Enable creation of PDF documents
http://www.reportlab.com
osmgpsmap Used to show maps in the geography view.
It may be osmgpsmap, osm-gps-map, or python-osmgpsmap,
but the Python bindings for this must also be present.
Without this the GeoView will not be active, see
http://gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_Main_Window#Geography_Category
!! PACKAGERS: unfortunately, at the moment (March 2013),
the patches which gramps 4.0 needs osm-gps-map to have
are not yet released (as a new osm-gps-map version). The
osm-gps-map sources must be dated 6 February 2013 (or
later) to have the necessary patches. You may obtain
it from: http://nzjrs.github.com/osm-gps-map/ or else
http://sourceforge.net/projects/gramps/files/Dependencies
(The necessary version seems to be 0.8 -- or later.)
GraphViz Enable creation of graphs using GraphViz engine.
Without this, three reports cannot be run.
Obtain it from: http://www.graphviz.org
PyICU Improves localised sorting in Gramps. In particular, this
applies to sorting in the various views and in the
Narrative Web output. It is particularly helpful for
non-Latin characters, for non-English locales and on MS
Windows and Mac OS X platforms. If it is not available,
sorting is done through built-in libraries. PyICU is
fairly widely available through the package managers of
distributions. See http://pyicu.osafoundation.org/
(These are Python bindings for the ICU package.)
The following packages are optional
gtkspell Enable spell checking in the notes. Gtkspell depends on
enchant. A version of gtkspell with gobject introspection
is needed, so minimally version 3.0.0
rcs The GNU Revision Control System (RCS) can be used to manage
multiple revisions of your family trees. See info at
http://www.gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_Manage_Family_Trees#Archiving_a_Family_Tree
Only rcs is needed, NO python bindings are required
PIL Python Image Library is needed to crop
images and also to convert non-JPG images to
JPG so as to include them in LaTeX output.
(For Python3 a different source may be needed.)
GExiv2 Enables Gramps to manage Exif metadata embedded in your
media. Gramps needs version 0.5 or greater.
See http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion#GExiv2_for_Image_metadata
ttf-freefont More font support in the reports
gir-webkit GObject introspection data of WebKit is required for the
hidden view 'Htmlview', which allows websites to be
opened in Gramps. Users can unhide the view in the
plugin manager. A html renderer must be installed to
use the view.
!! PACKAGERS, Test if on your distribution
webkit and Gramps is stable. If you obtain crashes, patch
src/plugins/view/htmlrenderer.py and
src/plugins/view/geoview.gpr.py, so as to remove:
from gi.repository import WebKit as webkit
goocanvas2:
Required for the (user-downloadable) Graphview plugin
No longer needed in 4.0:
pygoocanvas, pygtk, pyexiv2
No longer needed in 3.3:
python-enchant Enchant
No longer needed in 3.2:
python glade bindings
No longer needed in 3.1:
yelp Gnome help browser. At the moment no help is shipped
GraphViz Enable creation of graphs using GraphViz engine
http://www.graphviz.org
Documentation
---------------------------------
The User Manual is now maintained on the gramps website,
The User Manual is now maintained, built and installed using gnome-doc-utils.
Please see the documentation for the gnome-doc-utils package to learn
how this works.
Current HTML documentation can also be found on the gramps website,
http://www.gramps-project.org/wiki/index.php?title=User_manual
Building on non-Linux systems: i18n support and GNU make
--------------------------------------------------------
If make fails, use gmake (the name FreeBSD gives to GNU make) instead.
You might need a patch also. FreeBSD has in ports a patch ( /usr/ports/science/gramps/files)
you need to apply to po/Makefile.in.in
--------------------------------
The Gramps Project
http://gramps-project.org
Donald Allingham
dallingham@users.sourceforge.net
-36
View File
@@ -1,36 +0,0 @@
$Id$
UNSTABLE Gramps 4.0.0 Beta2 release.
This is a technology preview to allow distribution packagers (and plugin
writers) to update their scripts (and plugins). This release is not
production ready, so only use it for testing!
It is recommended that Gramps 4.0.0 be used with python 2.7 since many
dependent packages do not yet have python 3 versions. A determined person
can probably download their sources and build them, however.
The dependencies for Gramps 4.0.0 are _completely_ different than 3.4 due
to the switch to GObject introspection, and the removal of autotools. So
only install 4.0.0 if you are certain you can obtain the dependencies,
see README and INSTALL.
For linux, in Ubuntu 12.10 you can install 4.0.0, but you will need to
compile and install osmgpsmap manually to have the maps working (see
http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion#OsmGpsMap_for_Geography )
Major enhancements in Gramps 4.0.0:
* GEP 8: code reorganization: http://www.gramps-project.org/wiki/index.php?title=GEPS_008:_File_Organization
* GEP 26: Replace make: http://www.gramps-project.org/wiki/index.php?title=GEPS_026:_Replace_%27make%27_for_Gramps_build
* GEP 29: Gtk 3 :http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion
* GEP 31: Python 3 support: http://www.gramps-project.org/wiki/index.php?title=GEPS_031:_Python_3_support
More info in the manual
http://www.gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual_-_What%27s_new%3F
Everybody is invited to update the manual to make it current!
+37 -1
View File
@@ -1 +1,37 @@
http://gramps-project.org/wiki/index.php?title=Category:GEPS
* Replace the LPRDoc interface (based on gnome-print) with a GTK based
print routine. This would remove one of the last gnome-specific
libraries, and make portability better. Even more important, the
gnome-print interface has been deprecated by the GNOME project, so it
will not be around forever. We need to adapt to the new GTK method.
* Add support for formatted notes. We have a start by ripping off code
from GPL code from grecipe-manager.
* Allow for multiple notes. A tabbed interface would be really useful,
since there are no titles for notes. Not all objects would
necessarily need multiple notes. Determine which ones should and
shouldn't.
* Date calculator. See
http://sourceforge.net/mailarchive/forum.php?thread_id=3252078&forum_id=1993
* Add string substitutions for web page generation (name, report name,
date, etc).
* Add support for sources of the parent/child relation
* Add support for storing reliability (confidence) of the marriage
information; see
http://sourceforge.net/mailarchive/forum.php?thread_id=3066997&forum_id=1993
and
http://sourceforge.net/mailarchive/forum.php?thread_id=3134931&forum_id=1993
for the details.
* Move LDS temple info out of const.py and into an XML file
* Make the descendant graph adapt to the page size, not stuck with the
current 3 entries per page.
* Add slideshow generation ability to web page generator
* And a whole lot more....
+97
View File
@@ -0,0 +1,97 @@
dnl AM_GCONF2_REPLACEMENT
dnl Defines GCONF_SCHEMA_CONFIG_SOURCE which is where you should install schemas
dnl (i.e. pass to $GCONFTOOL
dnl Defines GCONF_SCHEMA_FILE_DIR which is a filesystem directory where
dnl you should install foo.schemas files
dnl
dnl This macro was copied from AM_GCONF_SOURCE_2 from the gconf2-dev package.
dnl By copying it here we remove the requirement for having it on the system.
AC_DEFUN([AM_GCONF2_REPLACEMENT],
[
if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then
GCONF_SCHEMA_CONFIG_SOURCE=`$GCONFTOOL --get-default-source`
else
GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE
fi
AC_ARG_WITH(gconf-source,
[ --with-gconf-source=sourceaddress Config database for installing schema files.],GCONF_SCHEMA_CONFIG_SOURCE="$withval",)
AC_SUBST(GCONF_SCHEMA_CONFIG_SOURCE)
AC_MSG_RESULT([Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation])
if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then
GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas'
fi
AC_ARG_WITH(gconf-schema-file-dir,
[ --with-gconf-schema-file-dir=dir Directory for installing schema files.],GCONF_SCHEMA_FILE_DIR="$withval",)
AC_SUBST(GCONF_SCHEMA_FILE_DIR)
AC_MSG_RESULT([Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files])
AC_ARG_ENABLE(schemas-install,
[ --disable-schemas-install Disable the schemas installation],
[case "${enableval}" in
yes) schemas_install=true ;;
no) schemas_install=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-schemas-install) ;;
esac],[schemas_install=true])
AM_CONDITIONAL(GCONF_SCHEMAS_INSTALL, test x$schemas_install = xtrue)
])
dnl AM_SHARED_MIME
dnl Defines SHARED_MIME_DIR which is where mime type definitions should go.
dnl
AC_DEFUN([AM_SHARED_MIME],
[
if test "x$SHARED_MIME_DIR" = "x"; then
SHARED_MIME_DIR='$(prefix)/share/mime'
fi
AC_ARG_WITH(mime-dir,
[ --with-mime-dir=dir Shared mime directory.],SHARED_MIME_DIR="$withval",)
AC_SUBST(SHARED_MIME_DIR)
AC_MSG_RESULT([Using directory $SHARED_MIME_DIR for installation of mime type definitions])
AC_ARG_ENABLE(mime-install,
[ --disable-mime-install Disable the mime types installation],
[case "${enableval}" in
yes) mime_install=true ;;
no) mime_install=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --disable-mime-install) ;;
esac],[mime_install=true])
AM_CONDITIONAL(SHARED_MIME_INSTALL, test x$mime_install = xtrue)
])
dnl AM_PACKAGER
dnl Defines conditional PACKAGER_MODE to define packager mode
dnl
AC_DEFUN([AM_PACKAGER],
[
AC_ARG_ENABLE(packager_mode,
[ --enable-packager-mode Enable packager mode],
[case "${enableval}" in
yes) packager_mode=true ;;
no) packager_mode=false ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-packager-mode) ;;
esac],[packager_mode=false])
AM_CONDITIONAL(PACKAGER_MODE, test x$packager_mode = xtrue)
if test "x$packager_mode" = "xtrue"; then
AC_MSG_RESULT([WARNING:
Packager mode enabled.
GConf schemas and shared mime types WILL NOT BE INSTALLED.
You will need to place the contents of the
GCONF_SCHEMAS_INSTALLATION and SHARED_MIME_INSTALLATION
commands MANUALLY into the postinstall script of your package,
see src/data/Makefile.am file for details.
Otherwise you will end up with the unusable package.
YOU HAVE BEEN WARNED!])
fi
])
Executable
+21
View File
@@ -0,0 +1,21 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
# shamelessly borrowed from the Galeon source distribution
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
PKG_NAME="gramps"
(test -f $srcdir/configure.in \
&& test -f $srcdir/src/gramps_main.py) || {
echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
echo " top-level $PKG_NAME directory"
exit 1
}
which gnome-autogen.sh || {
echo "You need to install gnome-common package."
exit 1
}
REQUIRED_AUTOMAKE_VERSION=1.9 USE_GNOME2_MACROS=1 . gnome-autogen.sh
Executable
+571
View File
@@ -0,0 +1,571 @@
#! /bin/sh
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
# Copyright 1996-2005 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
# This file is free software; the Free Software Foundation gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# The first argument passed to this file is the canonical host specification,
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
# should be set by the caller.
#
# The set of defined variables is at the end of this script.
# Known limitations:
# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
# than 256 bytes, otherwise the compiler driver will dump core. The only
# known workaround is to choose shorter directory names for the build
# directory and/or the installation directory.
# All known linkers require a `.a' archive for static linking (except M$VC,
# which needs '.lib').
libext=a
shrext=.so
host="$1"
host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
cc_basename=`echo "$CC" | sed -e 's%^.*/%%'`
# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
wl=
if test "$GCC" = yes; then
wl='-Wl,'
else
case "$host_os" in
aix*)
wl='-Wl,'
;;
darwin*)
case "$cc_basename" in
xlc*)
wl='-Wl,'
;;
esac
;;
mingw* | pw32* | os2*)
;;
hpux9* | hpux10* | hpux11*)
wl='-Wl,'
;;
irix5* | irix6* | nonstopux*)
wl='-Wl,'
;;
newsos6)
;;
linux*)
case $cc_basename in
icc* | ecc*)
wl='-Wl,'
;;
pgcc | pgf77 | pgf90)
wl='-Wl,'
;;
ccc*)
wl='-Wl,'
;;
como)
wl='-lopt='
;;
esac
;;
osf3* | osf4* | osf5*)
wl='-Wl,'
;;
sco3.2v5*)
;;
solaris*)
wl='-Wl,'
;;
sunos4*)
wl='-Qoption ld '
;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
wl='-Wl,'
;;
sysv4*MP*)
;;
unicos*)
wl='-Wl,'
;;
uts4*)
;;
esac
fi
# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS.
hardcode_libdir_flag_spec=
hardcode_libdir_separator=
hardcode_direct=no
hardcode_minus_L=no
case "$host_os" in
cygwin* | mingw* | pw32*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
if test "$GCC" != yes; then
with_gnu_ld=no
fi
;;
openbsd*)
with_gnu_ld=no
;;
esac
ld_shlibs=yes
if test "$with_gnu_ld" = yes; then
case "$host_os" in
aix3* | aix4* | aix5*)
# On AIX/PPC, the GNU linker is very broken
if test "$host_cpu" != ia64; then
ld_shlibs=no
fi
;;
amigaos*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
# Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
# that the semantics of dynamic libraries on AmigaOS, at least up
# to version 4, is to share data among multiple programs linked
# with the same dynamic library. Since this doesn't match the
# behavior of shared libraries on other platforms, we cannot use
# them.
ld_shlibs=no
;;
beos*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
cygwin* | mingw* | pw32*)
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec='-L$libdir'
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
netbsd*)
;;
solaris* | sysv5*)
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
ld_shlibs=no
elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
sunos4*)
hardcode_direct=yes
;;
linux*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
ld_shlibs=no
fi
;;
esac
if test "$ld_shlibs" = yes; then
# Unlike libtool, we use -rpath here, not --rpath, since the documented
# option of GNU ld is called -rpath, not --rpath.
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
fi
else
case "$host_os" in
aix3*)
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
hardcode_minus_L=yes
if test "$GCC" = yes; then
# Neither direct hardcoding nor static linking is supported with a
# broken collect2.
hardcode_direct=unsupported
fi
;;
aix4* | aix5*)
if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
else
aix_use_runtimelinking=no
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
# need to do runtime linking.
case $host_os in aix4.[23]|aix4.[23].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
aix_use_runtimelinking=yes
break
fi
done
esac
fi
hardcode_direct=yes
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
case $host_os in aix4.[012]|aix4.[012].*)
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
hardcode_direct=yes
else
# We have old collect2
hardcode_direct=unsupported
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
esac
fi
# Begin _LT_AC_SYS_LIBPATH_AIX.
echo 'int main () { return 0; }' > conftest.c
${CC} ${LDFLAGS} conftest.c -o conftest
aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
if test -z "$aix_libpath"; then
aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
}'`
fi
if test -z "$aix_libpath"; then
aix_libpath="/usr/lib:/lib"
fi
rm -f conftest.c conftest
# End _LT_AC_SYS_LIBPATH_AIX.
if test "$aix_use_runtimelinking" = yes; then
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
else
if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
else
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
fi
fi
;;
amigaos*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
# see comment about different semantics on the GNU ld section
ld_shlibs=no
;;
bsdi[45]*)
;;
cygwin* | mingw* | pw32*)
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
hardcode_libdir_flag_spec=' '
libext=lib
;;
darwin* | rhapsody*)
hardcode_direct=no
if test "$GCC" = yes ; then
:
else
case "$cc_basename" in
xlc*)
;;
*)
ld_shlibs=no
;;
esac
fi
;;
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;;
freebsd1*)
ld_shlibs=no
;;
freebsd2.2*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
freebsd2*)
hardcode_direct=yes
hardcode_minus_L=yes
;;
freebsd* | kfreebsd*-gnu | dragonfly*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
hpux9*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
hpux10* | hpux11*)
if test "$with_gnu_ld" = no; then
case "$host_cpu" in
hppa*64*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=no
;;
ia64*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=no
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
*)
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_libdir_separator=:
hardcode_direct=yes
# hardcode_minus_L: Not really in the search PATH,
# but as the default location of the library.
hardcode_minus_L=yes
;;
esac
fi
;;
irix5* | irix6* | nonstopux*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
netbsd*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
;;
newsos6)
hardcode_direct=yes
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
openbsd*)
hardcode_direct=yes
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
else
case "$host_os" in
openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
fi
;;
os2*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
;;
osf3*)
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
osf4* | osf5*)
if test "$GCC" = yes; then
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
# Both cc and cxx compiler support -rpath directly
hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_separator=:
;;
sco3.2v5*)
;;
solaris*)
hardcode_libdir_flag_spec='-R$libdir'
;;
sunos4*)
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
sysv4)
case $host_vendor in
sni)
hardcode_direct=yes # is this really true???
;;
siemens)
hardcode_direct=no
;;
motorola)
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
;;
sysv4.3*)
;;
sysv4*MP*)
if test -d /usr/nec; then
ld_shlibs=yes
fi
;;
sysv4.2uw2*)
hardcode_direct=yes
hardcode_minus_L=no
;;
sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*)
;;
sysv5*)
hardcode_libdir_flag_spec=
;;
uts4*)
hardcode_libdir_flag_spec='-L$libdir'
;;
*)
ld_shlibs=no
;;
esac
fi
# Check dynamic linker characteristics
# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
libname_spec='lib$name'
case "$host_os" in
aix3*)
;;
aix4* | aix5*)
;;
amigaos*)
;;
beos*)
;;
bsdi[45]*)
;;
cygwin* | mingw* | pw32*)
shrext=.dll
;;
darwin* | rhapsody*)
shrext=.dylib
;;
dgux*)
;;
freebsd1*)
;;
kfreebsd*-gnu)
;;
freebsd*)
;;
gnu*)
;;
hpux9* | hpux10* | hpux11*)
case "$host_cpu" in
ia64*)
shrext=.so
;;
hppa*64*)
shrext=.sl
;;
*)
shrext=.sl
;;
esac
;;
irix5* | irix6* | nonstopux*)
case "$host_os" in
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
case $LD in
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
*) libsuff= shlibsuff= ;;
esac
;;
esac
;;
linux*oldld* | linux*aout* | linux*coff*)
;;
linux*)
;;
knetbsd*-gnu)
;;
netbsd*)
;;
newsos6)
;;
nto-qnx*)
;;
openbsd*)
;;
os2*)
libname_spec='$name'
shrext=.dll
;;
osf3* | osf4* | osf5*)
;;
sco3.2v5*)
;;
solaris*)
;;
sunos4*)
;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
;;
sysv4*MP*)
;;
uts4*)
;;
esac
sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
# How to pass a linker flag through the compiler.
wl="$escaped_wl"
# Static library suffix (normally "a").
libext="$libext"
# Shared library suffix (normally "so").
shlibext="$shlibext"
# Flag to hardcode \$libdir into a binary during linking.
# This must work even if \$libdir does not exist.
hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
# Whether we need a single -rpath flag with a separated argument.
hardcode_libdir_separator="$hardcode_libdir_separator"
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
# resulting binary.
hardcode_direct="$hardcode_direct"
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
# resulting binary.
hardcode_minus_L="$hardcode_minus_L"
EOF
+248
View File
@@ -0,0 +1,248 @@
dnl $Id$
dnl Process this file with autoconf to produce a configure script.
dnl May need to run automake && aclocal first
AC_PREREQ(2.57)
AC_INIT(gramps, 2.2.11, [gramps-bugs@lists.sourceforge.net])
AC_CONFIG_SRCDIR(configure.in)
AM_INIT_AUTOMAKE(1.6.3)
AC_CONFIG_MACRO_DIR([m4])
GNOME_DOC_INIT
RELEASE=0.SVN$(svnversion -n .)
dnl RELEASE=0rc1
dnl RELEASE=1
VERSIONSTRING=$VERSION
if test x"$RELEASE" != "x"
then
VERSIONSTRING="$VERSION-$RELEASE"
fi
dnl put the ACLOCAL flags in the Makefile
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
AC_PROG_INTLTOOL
dnl Checking for gconftool-2
AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
if test "x$GCONFTOOL" = xno; then
AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
fi
AM_GCONF2_REPLACEMENT
AM_SHARED_MIME
AM_PACKAGER
dnl This is a hack to disable scrollkeeper update when in the packager mode.
dnl It may not seem good to purists, since we're defining
dnl ENABLE_SK_{TRUE,FALSE} twice, but I cannot see any other way
dnl without tweaking the gnome-doc-utils macros manually.
dnl So, scrollkeeper update is enabled when it would normally be,
dnl *provided* this is not the packager mode. Packager mode cancels it.
AM_CONDITIONAL(ENABLE_SK, test "x$packager_mode" = "xfalse" -a "x$enable_scrollkeeper" = "xyes")
AC_SUBST(RELEASE)
AC_SUBST(VERSIONSTRING)
dnl These are needed for the full paths for the manual output
HELPPATH=$(pwd)/help/output
FONTPATH=/usr/share/fonts/truetype/freefont
AC_SUBST(HELPPATH)
AC_SUBST(FONTPATH)
dnl Add the languages which your application supports here.
ALL_LINGUAS="hu zh_CN cs da de es fr it nb nl no pl pt_BR ro ru sv eo fi lt sk tr sl bg"
GETTEXT_PACKAGE=gramps
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define to the Gettext package name.])
AM_GLIB_GNU_GETTEXT
dnl Checks for programs.
dnl We first only check for python >= 2.3
AM_PATH_PYTHON(2.3)
AC_PATH_PROG(BINSH, sh)
pygtk_require="
try:
import pygtk
pygtk.require('2.0')
except ImportError:
pass
def out(line):
f = open('conftest.out', 'w')
f.write(line)
f.close()
"
AC_MSG_CHECKING(Python bindings for gtk2.8 (pygtk2>=2.8.0))
cat > conftest.py <<EOF
$pygtk_require
try:
import gobject
version = gobject.pygtk_version
if version >= (2,8,0):
print_version = '.'.join([[str(i) for i in version]])
out(print_version)
else:
out("NO")
except ImportError:
out("NO")
except AttributeError:
out("NO")
EOF
$PYTHON conftest.py
has_pygtk=`cat conftest.out`
rm -f conftest.out conftest.py
if test NO = "$has_pygtk"
then
AC_MSG_ERROR([
**** The python bindings for gtk 2.8 (pygtk2>=2.8.0) could not be found.])
fi
AC_MSG_RESULT($has_pygtk)
AC_MSG_CHECKING(Python bindings for gnome)
cat > conftest.py <<EOF
$pygtk_require
try:
import gnome
# Do not import gnome.ui, this can kill python if the
# display cannot be opened. Just search it.
import imp
imp.find_module('gnome/ui')
out("gnome.ui")
except ImportError:
out("NO")
EOF
$PYTHON conftest.py
has_pygnome=`cat conftest.out`
rm -f conftest.out conftest.py
if test NO = "$has_pygnome"
then
AC_MSG_ERROR([
**** The python bindings for gnome2 (gnome2-python) could not be found.])
fi
AC_MSG_RESULT($has_pygnome)
AC_MSG_CHECKING(Python bindings for gconf)
cat > conftest.py <<EOF
$pygtk_require
try:
import gconf
out("gconf")
except ImportError:
import gnome.gconf
out("gnome.gconf")
except ImportError:
out("NO")
EOF
$PYTHON conftest.py
has_gconf=`cat conftest.out`
rm -f conftest.out conftest.py
if test NO = "$has_gconf"
then
AC_MSG_ERROR([
**** The python bindings for gconf (gnome2-python-gconf) could not be found.])
fi
AC_MSG_RESULT($has_gconf)
AC_MSG_CHECKING(Python bindings for gnome vfs)
cat > conftest.py <<EOF
$pygtk_require
try:
# Do not import gnome.vfs, this can raise a RuntimeError if the
# display cannot be opened. Just search it.
import imp
imp.find_module('gnome/vfs')
out("gnome.vfs")
except ImportError:
imp.find_module('gnomevfs')
out("gnomevfs")
except:
out("NO")
EOF
$PYTHON conftest.py
has_vfs=`cat conftest.out`
rm -f conftest.out conftest.py
if test NO = "$has_vfs"
then
AC_MSG_ERROR([
**** The python bindings for GNOME VFS (gnome2-python-vfs) could not be found.])
fi
AC_MSG_RESULT($has_vfs)
AC_MSG_CHECKING(Python bindings for glade)
cat > conftest.py <<EOF
$pygtk_require
try:
# Do not import gtk.glade, this can raise a RuntimeError if the
# display cannot be opened. Just search it.
import imp
imp.find_module('gtk/glade')
out("gtk.glade")
except ImportError:
out("NO")
EOF
$PYTHON conftest.py
has_pyglade=`cat conftest.out`
rm -f conftest.out conftest.py
if test NO = "$has_pyglade"
then
AC_MSG_ERROR([
**** The python bindings for glade (pygtk2-libglade) could not be found.])
fi
AC_MSG_RESULT($has_pyglade)
AC_CONFIG_FILES([
po/Makefile.in
m4/Makefile
help/Makefile
help/output/Makefile
help/output/grampsfop.xconf
Makefile
gramps.spec
gramps.sh
src/const.py
src/Makefile
src/RelLib/Makefile
src/Config/Makefile
src/FilterEditor/Makefile
src/Mime/Makefile
src/DisplayTabs/Makefile
src/DisplayModels/Makefile
src/Selectors/Makefile
src/GrampsLogger/Makefile
src/GrampsDb/Makefile
src/Merge/Makefile
src/docgen/Makefile
src/Editors/Makefile
src/Filters/Makefile
src/Filters/Rules/Makefile
src/Filters/Rules/Person/Makefile
src/Filters/Rules/Family/Makefile
src/Filters/Rules/Event/Makefile
src/Filters/Rules/Source/Makefile
src/Filters/Rules/Place/Makefile
src/Filters/Rules/MediaObject/Makefile
src/Filters/Rules/Repository/Makefile
src/Filters/SideBar/Makefile
src/DataViews/Makefile
src/PluginUtils/Makefile
src/ReportBase/Makefile
src/plugins/Makefile
src/DateHandler/Makefile
src/data/Makefile
src/glade/Makefile
src/images/Makefile
data/Makefile
data/man/Makefile
data/man/fr/Makefile
example/Makefile
example/gramps/Makefile
])
AC_OUTPUT
+107
View File
@@ -0,0 +1,107 @@
# This is the data level Makefile for gramps
# $Id$
SUBDIRS = man
# Rules for files with translatable strings
# These are taken care of by the intltool
desktopdir = $(datadir)/applications
desktop_in_files = gramps.desktop.in
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
@INTLTOOL_DESKTOP_RULE@
keys_in_files = gramps.keys.in
keys_files = $(keys_in_files:.keys.in=.keys)
@INTLTOOL_KEYS_RULE@
# Rules for files with translatable strings
# These are taken care of by the intltool
xml_in_files = gramps.xml.in
xml_files = $(xml_in_files:.xml.in=.xml)
@INTLTOOL_XML_RULE@
schemasdir = $(GCONF_SCHEMA_FILE_DIR)
schemas_in_files = gramps.schemas.in
schemas_DATA = $(schemas_in_files:.schemas.in=.schemas)
@INTLTOOL_SCHEMAS_RULE@
applicationsdir = $(datadir)/application-registry
applications_DATA = gramps.applications
mimedir = $(datadir)/mime-info
mime_DATA = $(keys_files) gramps.mime
xmldir = $(SHARED_MIME_DIR)/packages
xml_DATA = $(xml_files)
pngdir = $(datadir)/icons/gnome/48x48/mimetypes
png_DATA = \
gnome-mime-application-x-gramps.png \
gnome-mime-application-x-gedcom.png \
gnome-mime-application-x-gramps-package.png \
gnome-mime-application-x-gramps-xml.png \
gnome-mime-application-x-geneweb.png
svgdir = $(datadir)/icons/gnome/scalable/mimetypes
svg_DATA = \
gnome-mime-application-x-gramps.svg \
gnome-mime-application-x-gedcom.svg \
gnome-mime-application-x-gramps-package.svg \
gnome-mime-application-x-gramps-xml.svg \
gnome-mime-application-x-geneweb.svg
EXTRA_DIST = \
$(png_DATA) \
$(svg_DATA) \
$(applications_DATA) \
$(keys_in_files) \
$(desktop_in_files) \
$(schemas_in_files) \
$(mime_DATA) \
$(xml_DATA) \
$(desktop_DATA) \
$(schemas_DATA) \
$(xml_in_files)
CLEANFILES = \
$(desktop_DATA) \
$(keys_files) \
$(xml_files) \
$(schemas_DATA)
# Conditionally enable/disable gconf schemas or mime types,
# or disable both in a packager mode
GCONF_SCHEMAS_INSTALLATION =
GCONF_SCHEMAS_UNINSTALLATION =
SHARED_MIME_INSTALLATION =
SHARED_MIME_UNINSTALLATION =
if !PACKAGER_MODE
if GCONF_SCHEMAS_INSTALL
GCONF_SCHEMAS_INSTALLATION += \
GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \
$(GCONFTOOL) --makefile-install-rule $(DESTDIR)$(GCONF_SCHEMA_FILE_DIR)/gramps.schemas ;\
pkill gconfd ; echo Restarting gconfd
GCONF_SCHEMAS_UNINSTALLATION += \
GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \
$(GCONFTOOL) --makefile-uninstall-rule $(DESTDIR)$(GCONF_SCHEMA_FILE_DIR)/gramps.schemas
endif
if SHARED_MIME_INSTALL
SHARED_MIME_INSTALLATION += \
update-mime-database $(DESTDIR)$(SHARED_MIME_DIR)
SHARED_MIME_UNINSTALLATION += \
update-mime-database $(DESTDIR)$(SHARED_MIME_DIR)
endif
endif
install-data-hook:
$(SHARED_MIME_INSTALLATION)
$(GCONF_SCHEMAS_INSTALLATION)
uninstall-local:
$(GCONF_SCHEMAS_UNINSTALLATION)
uninstall-hook:
$(SHARED_MIME_UNINSTALLATION)
-142
View File
@@ -1,142 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Id$ -->
<authors xmlns:html="http://www.w3.org/1999/xhtml">
<author uid="rshura" title="author">
Alex Roitman &lt;<html:a href="mailto:shura@gramps-project.org">shura@gramps-project.org</html:a>&gt;
</author>
<author uid="asleinius" title="contributor">
Arturas Sleinius &lt;<html:a href="mailto:asleinius@users.sourceforge.net">asleinius@users.sourceforge.net</html:a>&gt;
</author>
<author uid="bmcage" title="author">
Benny Malengier &lt;<html:a href="mailto:benny.malengier@gramps-project.org">benny.malengier@gramps-project.org</html:a>&gt;
</author>
<author uid="borilg" title="contributor">
Boril Gourinov &lt;<html:a href="mailto:boril.gourinov@gmail.com">boril.gourinov@gmail.com</html:a>&gt;
</author>
<author uid="pez4brian" title="author">
Brian Matherly &lt;<html:a href="mailto:brian@gramps-project.org">brian@gramps-project.org</html:a>&gt;
</author>
<author uid="dallingham" title="author">
Don Allingham &lt;<html:a href="mailto:don@gramps-project.org">don@gramps-project.org</html:a>&gt;
</author>
<author uid="dpeterso" title="author">
Donald A. Peterson &lt;<html:a href="mailto:"></html:a>&gt;
</author>
<author uid="dsblank" title="author">
Doug Blank &lt;<html:a href="mailto:doug.blank@gmail.com">doug.blank@gmail.com</html:a>&gt;
</author>
<author uid="eerot" title="contributor">
Eero Tamminen &lt;<html:a href="mailto:eerot@users.sourceforge.net">eerot@users.sourceforge.net</html:a>&gt;
</author>
<author uid="erikdrgm" title="contributor">
Erik De Richter &lt;<html:a href="mailto:erikdrgm@users.sourceforge.net">erikdrgm@users.sourceforge.net</html:a>&gt;
</author>
<author uid="espenbe" title="contributor">
Espen Berg &lt;<html:a href="mailto:espenbe@gmail.com">espenbe@gmail.com</html:a>&gt;
</author>
<author uid="gburto01" title="contributor">
Gary Burton &lt;<html:a href="mailto:gary.burton@zen.co.uk">gary.burton@zen.co.uk</html:a>&gt;
</author>
<author uid="gbritton" title="contributor">
Gerald Britton &lt;<html:a href="mailto:gerald.britton@gmail.com">gerald.britton@gmail.com</html:a>&gt;
</author>
<author uid="jgsack" title="contributor">
James G Sack &lt;<html:a href="mailto:jgsack@san.rr.com">jgsack@san.rr.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Janne Kovesjärvi &lt;<html:a href="mailto:janne.kovesjarvi@gmail.com">janne.kovesjarvi@gmail.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Jason Simanek &lt;<html:a href="mailto:jsimanek@gmail.com">jsimanek@gmail.com</html:a>&gt;
</author>
<author uid="romjerome" title="contributor">
Jérôme Rapinat &lt;<html:a href="mailto:romjerome@yahoo.fr">romjerome@yahoo.fr</html:a>&gt;
</author>
<author uid="jcreus" title="contributor">
Joan Creus &lt;<html:a href="mailto:joan.creus@gmail.com">joan.creus@gmail.com</html:a>&gt;
</author>
<author uid="josip" title="contributor">
Josip Pisoj &lt;<html:a href="mailto:josip@pisoj.com">josip@pisoj.com</html:a>&gt;
</author>
<author uid="jsanchez" title="contributor">
Julio Sánchez &lt;<html:a href="mailto:julio.sanchez@gmail.com">julio.sanchez@gmail.com</html:a>&gt;
</author>
<author uid="keesb" title="contributor">
Kees Bakker &lt;<html:a href="mailto:kees.bakker@xs4all.nl">kees.bakker@xs4all.nl</html:a>&gt;
</author>
<author uid="kdorichev" title="contributor">
Konstantin Dorichev &lt;<html:a href="mailto:kdorichev@gmail.com">kdorichev@gmail.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Lubo Vasko &lt;<html:a href="mailto:pgval@inMail.sk">pgval@inMail.sk</html:a>&gt;
</author>
<author uid="ltosky" title="contributor">
Luigi Toscano &lt;<html:a href="mailto:luigi.toscano@tiscali.it">luigi.toscano@tiscali.it</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Luiz Gonzaga dos Santos Filho &lt;<html:a href="mailto:lfilho@gmail.com">lfilho@gmail.com</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Łukasz Rymarczyk &lt;<html:a href="mailto:yenidai@poczta.onet.pl">yenidai@poczta.onet.pl</html:a>&gt;
</author>
<author uid="m_d_n" title="contributor">
Michiel Nauta &lt;<html:a href="mailto:m.d.nauta@hetnet.nl">m.d.nauta@hetnet.nl</html:a>&gt;
</author>
<author uid="leonhaeuser" title="contributor">
Mirko Leonhäuser &lt;<html:a href="mailto:mirko@leonhaeuser.de">mirko@leonhaeuser.de</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Morten Bo Johansen &lt;<html:a href="mailto:mbj@spamcop.net">mbj@spamcop.net</html:a>&gt;
</author>
<author uid="loshawlos" title="author">
Martin Hawlisch &lt;<html:a href="mailto:martin.hawlisch@gmx.de">martin.hawlisch@gmx.de</html:a>&gt;
</author>
<author uid="nick-h" title="contributor">
Nick Hall &lt;<html:a href="mailto:nick__hall@hotmail.com">nick__hall@hotmail.com</html:a>&gt;
</author>
<author uid="ldnp" title="contributor">
Peter Landgren &lt;<html:a href="mailto:peter.talken@telia.com">peter.talken@telia.com</html:a>&gt;
</author>
<author uid="acraphae" title="contributor">
Raphael Ackermann &lt;<html:a href="mailto:raphael.ackermann@gmail.com">raphael.ackermann@gmail.com</html:a>&gt;
</author>
<author uid="hippy" title="author">
Richard Taylor &lt;<html:a href="mailto:rjt-gramps@thegrindstone.me.uk">rjt-gramps@thegrindstone.me.uk</html:a>&gt;
</author>
<author uid="noirauds" title="contributor">
Serge Noiraud &lt;<html:a href="mailto:Serge.Noiraud@free.fr">Serge.Noiraud@free.fr</html:a>&gt;
</author>
<author uid="has_no_svn_access" title="contributor">
Sigmund Lorentsen &lt;<html:a href="mailto:sigmund.lorentsen@tele2.no">sigmund.lorentsen@tele2.no</html:a>&gt;
</author>
<author uid="betula" title="contributor">
Stefan Bjork &lt;<html:a href="mailto:betula@users.sourceforge.net">betula@users.sourceforge.net</html:a>&gt;
</author>
<author uid="s_charette" title="contributor">
Stéphane Charette &lt;<html:a href="mailto:stephanecharette@gmail.com">stephanecharette@gmail.com</html:a>&gt;
</author>
<author uid="twaugh" title="author">
Tim Waugh &lt;<html:a href="mailto:twaugh@redhat.com">twaugh@redhat.com</html:a>&gt;
</author>
<author uid="vassilii" title="contributor">
Vassilii Khachaturov &lt;<html:a href="mailto:vassilii@tarunz.org">vassilii@tarunz.org</html:a>&gt;
</author>
<author uid="matlas" title="contributor">
Zdeněk Hataš &lt;<html:a href="mailto:zdenek.hatas@gmail.com">zdenek.hatas@gmail.com</html:a>&gt;
</author>
<author uid="robhealey1" title="author">
Rob G. Healey &lt;<html:a href="mailto:robhealey1@gmail.com">robhealey1@gmail.com</html:a>&gt;
</author>
<author uid="zfoldvar" title="contributor">
Zsolt Foldvari &lt;<html:a href="mailto:zfoldvar@users.sourceforge.net">zfoldvar@users.sourceforge.net</html:a>&gt;
</author>
<author uid="ander882" title="contributor">
Craig J. Anderson &lt;<html:a href="mailto:ander882@hotmail.com">ander882@hotmail.com</html:a>&gt;
</author>
<author uid="kulath" title="author">
Tim G L Lyons &lt;<html:a href="mailto:tim.g.lyons@gmail.com">tim.g.lyons@gmail.com</html:a>&gt;
</author>
<author uid="jralls" title="author">
John Ralls &lt;<html:a href="mailto:jralls@ceridwen.us">jralls@ceridwen.us</html:a>&gt;
</author>
</authors>
-55
View File
@@ -1,55 +0,0 @@
/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright 2009 Serge Noiraud
#
# 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 02111-1307 USA
#
----------------------------------------------------------------------------
GeoView Style Sheet
Style Name: GeoView
Style Author: Serge Noiraud (2009)
----------------------------------------------------------------------------
This file was created for GeoView usage.
# $Id$
GeoView Styles
----------------------------------------------------- */
#geo-map
{
margin-left:0px;
margin-top:0px;
margin-right:auto;
margin-bottom:auto;
}
/* InfoWindow */
#geo-info {
font-size:10pt;
max-height:200px;
max-width: 600px;
min-width: 300px;
text-align: left;
padding-right: 6px;
overflow-x: auto;
overflow-y: auto;
}
-659
View File
@@ -1,659 +0,0 @@
/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic-Ash Stylesheet
Style Author: Jason M. Simanek (2008)
Note: Adapted from GRAMPS original Modern Style stylesheet
**************************************************************************************************
This website was created with GRAMPS <http://www.gramps-project.org/>
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to <http://gramps-project.org/> to learn more!
--------------------------------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
Copyright 2011 Michiel D. Nauta
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
black #000
gray dark #555
gray #999
gray light #CCC
gray very light #EEE
white #FFF
--------------------------------------------------------------------------------------------------
Characteristic of this style is that it uses the full width of the browser
window and that horizontal highlighting bars extend over the full width of
the page.
--------------------------------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
------------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
font-family: sans-serif;
font-size: 90%;
color: black;
margin: 0px;
background-color: #EEE;
}
body > div {
clear: both;
}
.content {
background-color: white;
border-top: solid 1px #999;
}
.content div.snapshot {
float: right;
margin: 2em;
}
.fullclear {
clear: both;
}
/* General Text
----------------------------------------------------- */
h1 {
font-size: x-large;
font-weight: bold;
padding-left: 15px;
}
h3 {
font-size: large;
padding-left: 15px;
}
h4 {
font-size: medium;
background-color: #CCC;
padding-left: 15px;
margin-bottom: 0px;
border-bottom: solid 1px #999;
}
p#description {
padding-left: 15px;
}
a {
color: black;
text-decoration: none;
}
a[href]:hover, a[href]:active {
text-decoration: underline;
}
.grampsid {
font-family: monospace;
font-size: smaller;
color: #999;
}
/* Header
----------------------------------------------------- */
#SiteTitle {
color: #555;
}
#user_header, #user_footer {
padding-left: 15px;
}
/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
border: solid 1px #EEE; /* needed by IE7 */
}
#subnavigation ul {
overflow: hidden;
}
div#nav ul, #subnavigation ul {
list-style: none;
margin: 0px;
padding-left: 15px;
}
#subnavigation ul {
border-bottom: solid 1px #999;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
font-size: smaller;
font-weight: bold;
padding: 5px;
border-bottom: solid 1px #EEE;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #CCC;
border-bottom: solid 1px black;
}
div#nav ul li.CurrentSection a {
position: relative;
top: 1px;
border: solid 1px #999;
border-bottom-style: none;
background-color: white;
}
#subnavigation ul li.CurrentSection a {
background-color: white;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
background-color: #EEE;
}
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: black;
margin: 0px;
padding-left: 15px;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: black;
color: white;
}
/* Main Table
----------------------------------------------------- */
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table tr th {
text-align: left;
background-color: #EEE;
border-top: solid 1px #999;
border-bottom: solid 1px #999;
}
table tr th:first-child {
border-left: solid 1px #999;
}
table tr th:last-child {
border-right: solid 1px #999;
}
table.primobjlist tr th {
background-color: #CCC;
}
table td, table th {
vertical-align: top;
padding-left: 1ex;
}
table.primobjlist td {
vertical-align: middle;
}
table td:first-child, table th:first-child {
padding-left: 15px;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: solid 1px #CCC;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #555;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #555;
}
table.primobjlist td.ColumnParents span.mother:before {
content: "+ ";
}
/* Surnames
----------------------------------------------------- */
table#SortByName td.ColumnSurname, table#SortByName th.ColumnSurname,
table#SortByCount td.ColumnQuantity, table#SortByCount th.ColumnQuantity {
background-color: #EEE;
}
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
table.surname td.ColumnName {
background-color: #EEE;
}
/* Individuals
----------------------------------------------------- */
table.IndividualList td.ColumnSurname {
background-color: #EEE;
}
/* Places
----------------------------------------------------- */
#Places table.infolist td.ColumnName {
background-color: #EEE;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr.BeginType td {
border-top:dashed 1px #CCC;
}
#EventList table.infolist tr.BeginLetter td {
border-top:solid 1px #CCC;
}
#EventList table.infolist td.ColumnType {
background-color: #EEE;
}
#EventList td.ColumnPerson a {
display: inline;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.fatherNmother:after,
#EventDetail td.ColumnPerson span.fatherNmother:after {
content: " + ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
/* Gallery
----------------------------------------------------- */
#GalleryNav {
text-align: center;
margin: 2em 0px;
}
#GalleryNav a {
font-weight: bold;
background-color: #EEE;
border: solid 1px #999;
margin: 1em;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryCurrent {
font-size: larger;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display: block;
border: solid 1px #999;
}
#GalleryDetail h3 {
text-align: center;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
----------------------------------------------------- */
#Contact {
overflow: hidden;
}
#Contact #summaryarea {
width: 50em;
margin: 2em auto;
padding: 3em;
background-color: #EEE;
border: solid 1px #999;
}
#Contact img {
float: right;
border: solid 1px #999;
}
#Contact #researcher, #Contact #researcher h3 {
font-size: larger;
padding-left: 0px;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #city:after {
content: ",";
}
/* Download
----------------------------------------------------- */
#Download table.download a {
display: block;
}
/* Subsection
----------------------------------------------------- */
#Home, #Introduction {
overflow: hidden;
}
#Home img, #Introduction img {
float: right;
margin: 1em;
max-width: 950px;
}
#Home p, #Introduction p {
padding-left: 15px;
}
.subsection {
clear: both;
overflow: hidden;
}
.subsection p {
margin: 0px;
}
/* Subsection : Families
----------------------------------------------------- */
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
div#families table.attrlist td.ColumnType {
color: black;
}
/* Subsection : Gallery
----------------------------------------------------- */
#indivgallery .thumbnail {
float: left;
max-width: 130px;
max-height: 150px;
font-size: smaller;
text-align: center;
margin: 0.8em 0.5em;
}
#indivgallery h4 + .thumbnail {
margin-left: 15px;
/* Problem: if there are more thumnails then fit on a single row, the
* first thumnail on each next row should also have a margin-left
* of 15 px. */
}
#indivgallery img {
border: solid 1px #999;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide description in Indivifual Gallery
display: none; */
}
/* Subsection : Narrative
----------------------------------------------------- */
h4 + div.grampsstylednote, a.familymap {
margin: 1em 15px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* Subsection : Family Map
----------------------------------------------------- */
a.familymap {
display: block;
}
/* Subsection : Source References
----------------------------------------------------- */
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* Subsection : Pedigree
----------------------------------------------------- */
.pedigreegen {
list-style-type: none;
padding-left: 15px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
----------------------------------------------------- */
#footer {
clear: both;
padding-top: 1em;
background-color: #CCC;
border-top: solid 1px #555;
}
#footer > * {
background-color: #EEE;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
padding-left: 15px;
margin-top: 1em;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
padding-right: 15px;
}
/* Overwritten
----------------------------------------------------- */
body#FamilyMap {
background-color: #EEE ! important;
}
/* Calendar Styles
===================================================== */
table.calendar {
table-layout: fixed;
empty-cells: show;
}
.calendar thead th {
text-align: center;
border-top-style: none;
}
.calendar thead th.monthName {
font-size: xx-large;
font-weight: normal;
background-color: white;
border-bottom-style: none;
padding-top: 1em;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 15px 0px 0px;
font-weight: bold;
color: #999;
}
.calendar tfoot tr td {
border-top: solid 4px #999;
vertical-align: middle;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #CCC;
color: #555;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px 0px 0px 1ex;
border-width: 1px 0px 0px 1px;
border-style: solid;
border-color: #CCC;
background-color: #EEE;
}
.calendar td:first-child {
border-left-style: none;
padding: 0px 0px 0px 1ex;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
border-top: dashed 1px #CCC;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.calendar td ul li:first-child {
border-style: none;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td.highlight {
background-color: white;
}
.calendar td.highlight div.date {
color: black;
background-color: #CCC;
}
/* Calendar : Previous-Next Month */
.calendar td.previous,
.calendar td.next,
.calendar td.previous div.date,
.calendar td.next div.date {
color: #CCC;
background-color: #EEE;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
overflow: hidden;
}
body#fullyearlinked table.calendar {
float: left;
width: 33.3%;
height: 18em;
border: solid 1px black;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
padding: 2px 0px;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
body#OneDay div.content {
overflow: hidden;
}
File diff suppressed because it is too large Load Diff
-709
View File
@@ -1,709 +0,0 @@
/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic - Cypress
Style Author: Jason Simanek (2008)
Note: Adapted from GRAMPS original Modern Style stylesheet with colors from the original 'Tranquil' stylesheet
**************************************************************************************************
This website was created with GRAMPS <http://www.gramps-project.org/>
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to <http://gramps-project.org/> to learn more!
--------------------------------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
Copyright 2011 Michiel D. Nauta
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
black #000
slate dark #454
slate #7C8F7C
slate light #9DBF9D
slate very light #E0E6E0
white #FFF
--------------------------------------------------------------------------------------------------
Characteristic of this style is that it uses the full width of the browser
window and that horizontal highlighting bars extend over the full width of
the page.
--------------------------------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
------------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
font-family: sans-serif;
font-size: 90%;
color: black;
margin: 0px;
background-color: #454;
}
body > div {
clear: both;
}
.content {
background-color: white;
border-top: solid 1px #7C8F7C;
}
.content div.snapshot {
float: right;
margin: 2em;
}
.fullclear {
clear: both;
}
/* General Text
----------------------------------------------------- */
h1 {
font-size: x-large;
font-weight: bold;
padding-left: 15px;
}
h3 {
font-size: large;
padding-left: 15px;
}
h4 {
font-size: medium;
background-color: #9DBF9D;
padding-left: 15px;
margin-bottom: 0px;
border-bottom: solid 1px #7C8F7C;
}
p#description {
padding-left: 15px;
}
a {
color: black;
text-decoration: none;
}
a[href]:hover, a[href]:active {
background-color: #9DBF9D;
}
.grampsid {
font-family: monospace;
font-size: smaller;
color: #7C8F7C;
}
/* Header
----------------------------------------------------- */
#header {
color: #E0E6E0;
}
#user_header, #user_footer {
padding-left: 15px;
}
/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
border: solid 1px #454; /* needed by IE7 */
}
#subnavigation ul {
overflow: hidden;
}
div#nav ul, #subnavigation ul {
list-style: none;
margin: 0px;
padding-left: 15px;
}
#subnavigation ul {
border-bottom: solid 1px #7C8F7C;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
font-size: smaller;
font-weight: bold;
color: #E0E6E0;
padding: 5px;
border-bottom: solid 1px #454;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #9DBF9D;
border-bottom: solid 1px black;
}
div#nav ul li.CurrentSection a {
position: relative;
top: 1px;
color: #454;
border: solid 1px #7C8F7C;
border-bottom-style: none;
background-color: white;
}
#subnavigation ul li.CurrentSection a {
color: #454;
background-color: white;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
background-color: #454
}
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: black;
margin: 0px;
padding-left: 15px;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
color: white;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: black;
color: white;
}
/* Main Table
----------------------------------------------------- */
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table tr th {
text-align: left;
background-color: #E0E6E0;
border-top: solid 1px #7C8F7C;
border-bottom: solid 1px #7C8F7C;
}
table tr th:first-child {
border-left: solid 1px #7C8F7C;
}
table tr th:last-child {
border-right: solid 1px #7C8F7C;
}
table.primobjlist tr th {
background-color: #9DBF9D;
}
table td, table th {
vertical-align: top;
padding-left: 1ex;
}
table.primobjlist td {
vertical-align: middle;
}
table td:first-child, table th:first-child {
padding-left: 15px;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: solid 1px #9DBF9D;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #454;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #454;
}
table.primobjlist td.ColumnParents span.mother:before {
content: "+ ";
}
/* Surnames
----------------------------------------------------- */
table#SortByName td.ColumnSurname, table#SortByName th.ColumnSurname,
table#SortByCount td.ColumnQuantity, table#SortByCount th.ColumnQuantity {
background-color: #E0E6E0;
}
/* make the whole cell light up on hover not just the a. */
table#SortByName td.ColumnSurname,
table#SortByName th.ColumnSurname,
table#SortByName th.ColumnQuantity {
padding-left: 0px;
}
table#SortByName td.ColumnSurname > a,
table#SortByName th.ColumnSurname > a,
table#SortByName th.ColumnQuantity > a {
padding-left: 1ex;
}
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
table#SortByName th.ColumnSurname a:hover,
table#SortByName th.ColumnQuantity a:hover,
table#SortByCount th.ColumnSurname a:hover,
table#SortByCount th.ColumnQuantity a:hover {
background-color: #E0E6E0;
}
table.surname td.ColumnName {
background-color: #E0E6E0;
}
/* make the whole cell light up on hover not just the a. */
table.surname td.ColumnName {
padding-left: 0px;
}
table.surname td.ColumnName > a {
padding-left: 15px;
}
/* Individuals
----------------------------------------------------- */
table.IndividualList td.ColumnSurname {
background-color: #E0E6E0;
}
/* Places
----------------------------------------------------- */
#Places table.infolist td.ColumnName {
background-color: #E0E6E0;
}
/* make the whole cell light up on hover not just the a. */
#Places table.infolist td.ColumnName {
padding-left: 0px;
}
#Places table.infolist td.ColumnName > a {
padding-left: 1ex;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr.BeginType td {
border-top:dashed 1px #9DBF9D;
}
#EventList table.infolist tr.BeginLetter td {
border-top:solid 1px #9DBF9D;
}
#EventList table.infolist td.ColumnType {
background-color: #E0E6E0;
}
#EventList td.ColumnPerson a {
display: inline;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.fatherNmother:after,
#EventDetail td.ColumnPerson span.fatherNmother:after {
content: " + ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
/* Gallery
----------------------------------------------------- */
#GalleryNav {
text-align: center;
margin: 2em 0px;
}
#GalleryNav a {
font-weight: bold;
background-color: #E0E6E0;
border: solid 1px #7C8F7C;
margin: 1em;
}
#GalleryNav a:hover {
background-color: #9DBF9D;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryCurrent {
font-size: larger;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display: block;
border: solid 1px #7C8F7C;
}
#GalleryDetail h3 {
text-align: center;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
----------------------------------------------------- */
#Contact {
overflow: hidden;
}
#Contact #summaryarea {
width: 40em;
margin: 2em auto;
padding: 3em;
background-color: #E0E6E0;
border: solid 1px #7C8F7C;
}
#Contact img {
float: right;
border: solid 1px #7C8F7C;
}
#Contact #researcher, #Contact #researcher h3 {
font-size: larger;
padding-left: 0px;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #locality, #Contact #city, #Contact #state, #Contact #postalcode,
#Contact #country {
white-space: nowrap;
}
#Contact #city:after {
content: ",";
}
/* Download
----------------------------------------------------- */
#Download table.download a {
display: block;
}
/* Subsection
----------------------------------------------------- */
#Home, #Introduction {
overflow: hidden;
}
#Home img, #Introduction img {
float: right;
margin: 1em;
max-width: 950px;
}
#Home p, #Introduction p {
padding-left: 15px;
}
.subsection {
clear: both;
overflow: hidden;
}
.subsection p {
margin: 0px;
}
/* Subsection : Families
----------------------------------------------------- */
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
div#families table.attrlist td.ColumnType {
color: black;
}
/* Subsection : Gallery
----------------------------------------------------- */
#indivgallery .thumbnail {
float: left;
max-width: 130px;
max-height: 150px;
font-size: smaller;
text-align: center;
margin: 0.8em 0.5em;
}
#indivgallery h4 + .thumbnail {
margin-left: 15px;
/* Problem: if there are more thumnails then fit on a single row, the
* first thumnail on each next row should also have a margin-left
* of 15 px. */
}
#indivgallery img {
border: solid 1px #7C8F7C;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide description in Indivifual Gallery
display: none; */
}
/* Subsection : Narrative
----------------------------------------------------- */
h4 + div.grampsstylednote, a.familymap {
margin: 1em 15px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* Subsection : Family Map
----------------------------------------------------- */
a.familymap {
display: block;
}
/* Subsection : Source References
----------------------------------------------------- */
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* Subsection : Pedigree
----------------------------------------------------- */
.pedigreegen {
list-style-type: none;
padding-left: 15px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
----------------------------------------------------- */
#footer {
clear: both;
color: #E0E6E0;
padding-top: 1em;
background-color: #9DBF9D;
border-top: solid 1px #454;
}
#footer a {
color: #E0E6E0;
}
#footer > * {
background-color: #454;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
padding-left: 15px;
margin-top: 1em;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
padding-right: 15px;
}
/* Overwritten
----------------------------------------------------- */
body#FamilyMap {
background-color: #E0E6E0 ! important;
}
/* Calendar Styles
===================================================== */
table.calendar {
table-layout: fixed;
empty-cells: show;
}
.calendar thead th {
text-align: center;
border-top-style: none;
}
.calendar thead th.monthName {
font-size: xx-large;
font-weight: normal;
background-color: white;
border-bottom-style: none;
padding-top: 1em;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 15px 0px 0px;
font-weight: bold;
color: #7C8F7C;
}
.calendar tfoot tr td {
border-top: solid 4px #7C8F7C;
vertical-align: middle;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #9DBF9D;
color: #454;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px 0px 0px 1ex;
border-width: 1px 0px 0px 1px;
border-style: solid;
border-color: #9DBF9D;
background-color: white;
}
.calendar td:first-child {
border-left-style: none;
padding: 0px 0px 0px 1ex;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
border-top: dashed 1px #9DBF9D;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.calendar td ul li:first-child {
border-style: none;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td ul li em {
font-style: normal;
color: #7C8F7C;
}
.calendar td.highlight {
background-color: #E0E6E0;
}
.calendar td.highlight div.date {
color: black;
background-color: #9DBF9D;
}
/* Calendar : Previous-Next Month */
.calendar td.previous,
.calendar td.next,
.calendar td.previous div.date,
.calendar td.next div.date {
color: #9DBF9D;
background-color: white;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
overflow: hidden;
}
body#fullyearlinked table.calendar {
float: left;
width: 33.3%;
height: 18em;
border: solid 1px black;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
padding: 2px 0px;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
body#OneDay div.content {
overflow: hidden;
}
-715
View File
@@ -1,715 +0,0 @@
/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic - Lilac
Style Author: Jason M. Simanek (2008)
Note: Adapted from GRAMPS original Modern Style stylesheet with colors from the original 'Business' stylesheet
**************************************************************************************************
This website was created with GRAMPS <http://www.gramps-project.org/>
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to <http://gramps-project.org/> to learn more!
--------------------------------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
Copyright 2011 Michiel D. Nauta
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
black #000
lilac dark #2E2E61
lilac #669
lilac light #B4B4CB
lilac very light #E0E0E9
white #FAFAFF
--------------------------------------------------------------------------------------------------
Characteristic of this style is that it uses the full width of the browser
window and that horizontal highlighting bars extend over the full width of
the page.
--------------------------------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
------------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
font-family: sans-serif;
font-size: 90%;
color: black;
margin: 0px;
background-color: #E0E0E9;
}
body > div {
clear: both;
}
.content {
background-color: #FAFAFF;
border-top: solid 1px #669;
}
.content div.snapshot {
float: right;
margin: 2em;
}
.fullclear {
clear: both;
}
/* General Text
----------------------------------------------------- */
h1 {
font-size: x-large;
font-weight: bold;
padding-left: 15px;
}
h3 {
font-size: large;
padding-left: 15px;
}
h4 {
font-size: medium;
color: #2E2E61;
background-color: #B4B4CB;
padding-left: 15px;
margin-bottom: 0px;
border-bottom: solid 1px #669;
}
p#description {
padding-left: 15px;
}
a {
color: black;
text-decoration: none;
}
a[href]:hover, a[href]:active {
background-color: #E0E0E9
}
.grampsid {
font-family: monospace;
font-size: smaller;
color: #669;
}
/* Header
----------------------------------------------------- */
#SiteTitle {
color: #2E2E61;
}
#user_header, #user_footer {
padding-left: 15px;
}
/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
border: solid 1px #E0E0E9; /* needed by IE7 */
}
#subnavigation ul {
overflow: hidden;
}
div#nav ul, #subnavigation ul {
list-style: none;
margin: 0px;
padding-left: 15px;
}
#subnavigation ul {
border-bottom: solid 1px #669;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
font-size: smaller;
font-weight: bold;
padding: 5px;
border-bottom: solid 1px #E0E0E9;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #B4B4CB;
border-bottom: solid 1px black;
}
div#nav ul li.CurrentSection a {
position: relative;
top: 1px;
border: solid 1px #669;
border-bottom-style: none;
background-color: #FAFAFF;
}
#subnavigation ul li.CurrentSection a {
background-color: #FAFAFF;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
background-color: #E0E0E9;
}
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: black;
margin: 0px;
padding-left: 15px;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: black;
color: #FAFAFF;
}
/* Main Table
----------------------------------------------------- */
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table tr th {
text-align: left;
background-color: #E0E0E9;
border-top: solid 1px #669;
border-bottom: solid 1px #669;
}
table tr th:first-child {
border-left: solid 1px #669;
}
table tr th:last-child {
border-right: solid 1px #669;
}
table.primobjlist tr th {
background-color: #B4B4CB;
}
table td, table th {
vertical-align: top;
padding-left: 1ex;
}
table.primobjlist td {
vertical-align: middle;
}
table td:first-child, table th:first-child {
padding-left: 15px;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: solid 1px #B4B4CB;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #2E2E61;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #2E2E61;
}
table.primobjlist td.ColumnParents span.mother:before {
content: "+ ";
}
/* Surnames
----------------------------------------------------- */
table#SortByName td.ColumnSurname, table#SortByName th.ColumnSurname,
table#SortByCount td.ColumnQuantity, table#SortByCount th.ColumnQuantity {
background-color: #E0E0E9;
}
table#SortByName td.ColumnSurname a[href]:hover {
background-color: #B4B4CB;
}
/* make the whole cell light up on hover not just the a. */
table#SortByName td.ColumnSurname,
table#SortByName th.ColumnSurname,
table#SortByName th.ColumnQuantity {
padding-left: 0px;
}
table#SortByName td.ColumnSurname > a,
table#SortByName th.ColumnSurname > a,
table#SortByName th.ColumnQuantity > a {
padding-left: 1ex;
}
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
table.surname td.ColumnName {
background-color: #E0E0E9;
}
table.surname td.ColumnName a[href]:hover {
background-color: #B4B4CB;
}
/* make the whole cell light up on hover not just the a. */
table.surname td.ColumnName {
padding-left: 0px;
}
table.surname td.ColumnName > a {
padding-left: 15px;
}
/* Individuals
----------------------------------------------------- */
table.IndividualList td.ColumnSurname {
background-color: #E0E0E9;
}
/* Places
----------------------------------------------------- */
#Places table.infolist td.ColumnName {
background-color: #E0E0E9;
}
#Places table.infolist td.ColumnName a[href]:hover {
background-color: #B4B4CB;
}
/* make the whole cell light up on hover not just the a. */
#Places table.infolist td.ColumnName {
padding-left: 0px;
}
#Places table.infolist td.ColumnName > a {
padding-left: 1ex;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr.BeginType td {
border-top:dashed 1px #B4B4CB;
}
#EventList table.infolist tr.BeginLetter td {
border-top:solid 1px #B4B4CB;
}
#EventList table.infolist td.ColumnType {
background-color: #E0E0E9;
}
#EventList td.ColumnPerson a {
display: inline;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.fatherNmother:after,
#EventDetail td.ColumnPerson span.fatherNmother:after {
content: " + ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
/* Gallery
----------------------------------------------------- */
#GalleryNav {
text-align: center;
margin: 2em 0px;
}
#GalleryNav a {
font-weight: bold;
background-color: #E0E0E9;
border: solid 1px #669;
margin: 1em;
}
#GalleryNav a:hover {
background-color: #B4B4CB;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryCurrent {
font-size: larger;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display: block;
border: solid 1px #669;
}
#GalleryDetail h3 {
text-align: center;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
----------------------------------------------------- */
#Contact {
overflow: hidden;
}
#Contact #summaryarea {
width: 40em;
margin: 2em auto;
padding: 3em;
background-color: #E0E0E9;
border: solid 1px #669;
}
#Contact img {
float: right;
border: solid 1px #669;
}
#Contact #researcher, #Contact #researcher h3 {
font-size: larger;
padding-left: 0px;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #locality, #Contact #city, #Contact #state, #Contact #postalcode,
#Contact #country {
white-space: nowrap;
}
#Contact #city:after {
content: ",";
}
/* Download
----------------------------------------------------- */
#Download table.download a {
display: block;
}
/* Subsection
----------------------------------------------------- */
#Home, #Introduction {
overflow: hidden;
}
#Home img, #Introduction img {
float: right;
margin: 1em;
max-width: 950px;
}
#Home p, #Introduction p {
padding-left: 15px;
}
.subsection {
clear: both;
overflow: hidden;
}
.subsection p {
margin: 0px;
}
/* Subsection : Families
----------------------------------------------------- */
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
div#families table.attrlist td.ColumnType {
color: black;
}
/* Subsection : Gallery
----------------------------------------------------- */
#indivgallery .thumbnail {
float: left;
max-width: 130px;
max-height: 150px;
font-size: smaller;
text-align: center;
margin: 0.8em 0.5em;
}
#indivgallery h4 + .thumbnail {
margin-left: 15px;
/* Problem: if there are more thumnails then fit on a single row, the
* first thumnail on each next row should also have a margin-left
* of 15 px. */
}
#indivgallery img {
border: solid 1px #669;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide description in Indivifual Gallery
display: none; */
}
/* Subsection : Narrative
----------------------------------------------------- */
h4 + div.grampsstylednote, a.familymap {
margin: 1em 15px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* Subsection : Family Map
----------------------------------------------------- */
a.familymap {
display: block;
}
/* Subsection : Source References
----------------------------------------------------- */
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* Subsection : Pedigree
----------------------------------------------------- */
.pedigreegen {
list-style-type: none;
padding-left: 15px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
----------------------------------------------------- */
#footer {
clear: both;
padding-top: 1em;
background-color: #B4B4CB;
border-top: solid 1px #2E2E61;
}
#footer > * {
background-color: #E0E0E9;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
padding-left: 15px;
margin-top: 1em;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
padding-right: 15px;
}
#footer a[href]:hover {
background-color: #B4B4CB;
}
/* Overwritten
----------------------------------------------------- */
body#FamilyMap {
background-color: #E0E0E9 ! important;
}
/* Calendar Styles
===================================================== */
table.calendar {
table-layout: fixed;
empty-cells: show;
}
.calendar thead th {
text-align: center;
border-top-style: none;
}
.calendar thead th.monthName {
font-size: xx-large;
font-weight: normal;
background-color: #FAFAFF;
border-bottom-style: none;
padding-top: 1em;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 15px 0px 0px;
font-weight: bold;
color: #669;
}
#CreatorInfo a[href]:hover {
background-color: #B4B4CB;
}
.calendar tfoot tr td {
border-top: solid 4px #669;
vertical-align: middle;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #B4B4CB;
color: #2E2E61;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px 0px 0px 1ex;
border-width: 1px 0px 0px 1px;
border-style: solid;
border-color: #B4B4CB;
background-color: #FAFAFF;
}
.calendar td:first-child {
border-left-style: none;
padding: 0px 0px 0px 1ex;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
border-top: dashed 1px #B4B4CB;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.calendar td ul li:first-child {
border-style: none;
}
.calendar td ul a[href]:hover {
background-color: #B4B4CB;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td ul li em {
font-style: normal;
color: #669;
}
.calendar td.highlight {
background-color: #E0E0E9;
}
.calendar td.highlight div.date {
color: black;
background-color: #B4B4CB;
}
/* Calendar : Previous-Next Month */
.calendar td.previous,
.calendar td.next,
.calendar td.previous div.date,
.calendar td.next div.date {
color: #B4B4CB;
background-color: #FAFAFF;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
overflow: hidden;
}
body#fullyearlinked table.calendar {
float: left;
width: 33.3%;
height: 18em;
border: solid 1px black;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
padding: 2px 0px;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
body#OneDay div.content {
overflow: hidden;
}
-725
View File
@@ -1,725 +0,0 @@
/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic-Peach Stylesheet
Style Author: Jason M. Simanek (2008)
Note: Adapted from GRAMPS original Modern Style stylesheet with a new orange color scheme.
**************************************************************************************************
This website was created with GRAMPS <http://www.gramps-project.org/>
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to <http://gramps-project.org/> to learn more!
--------------------------------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
Copyright 2011 Michiel D. Nauta
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
black #36220B
brown #8C581C
orange dark #EA8414
orange #FFC35E
orange light #FFE09F
yellow light #FFFBE7
--------------------------------------------------------------------------------------------------
Characteristic of this style is that it uses the full width of the browser
window and that horizontal highlighting bars extend over the full width of
the page.
--------------------------------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
------------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
font-family: sans-serif;
font-size: 90%;
color: #36220B;
margin: 0px;
background-color: #FFE09F;
}
body > div {
clear: both;
}
.content {
background-color: #FFFBE7;
border-top: solid 1px #8C581C;
}
.content div.snapshot {
float: right;
margin: 2em;
}
.fullclear {
clear: both;
}
/* General Text
----------------------------------------------------- */
h1 {
font-size: x-large;
font-weight: bold;
padding-left: 15px;
}
h3 {
font-size: large;
padding-left: 15px;
}
h4 {
font-size: medium;
color: #EA8414;
background-color: #FFC35E;
padding-left: 15px;
margin-bottom: 0px;
border-bottom: solid 1px #8C581C;
}
p#description {
padding-left: 15px;
}
a {
color: #36220B;
text-decoration: none;
}
a[href]:hover, a[href]:active {
background-color: #FFE09F
}
.grampsid {
font-family: monospace;
font-size: smaller;
color: #8C581C;
}
/* Header
----------------------------------------------------- */
#SiteTitle {
color: #EA8414;
}
#user_header, #user_footer {
padding-left: 15px;
}
/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
border: solid 1px #FFE09F; /* needed by IE7 */
}
#subnavigation ul {
overflow: hidden;
}
div#nav ul, #subnavigation ul {
list-style: none;
margin: 0px;
padding-left: 15px;
}
#subnavigation ul {
border-bottom: solid 1px #8C581C;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
font-size: smaller;
font-weight: bold;
padding: 5px;
border-bottom: solid 1px #FFE09F;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #FFC35E;
border-bottom: solid 1px #36220B;
}
div#nav ul li.CurrentSection a {
position: relative;
top: 1px;
border: solid 1px #8C581C;
border-bottom-style: none;
background-color: #FFFBE7;
}
#subnavigation ul li.CurrentSection a {
background-color: #FFFBE7;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
background-color: #FFE09F;
}
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: #36220B;
margin: 0px;
padding-left: 15px;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: #36220B;
color: #FFFBE7;
}
/* Main Table
----------------------------------------------------- */
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table tr th {
text-align: left;
background-color: #FFE09F;
border-top: solid 1px #8C581C;
border-bottom: solid 1px #8C581C;
}
table tr th:first-child {
border-left: solid 1px #EA8414;
}
table tr th:last-child {
border-right: solid 1px #EA8414;
}
table.primobjlist tr th {
background-color: #FFC35E;
}
table td, table th {
vertical-align: top;
padding-left: 1ex;
}
table.primobjlist td {
vertical-align: middle;
}
table td:first-child, table th:first-child {
padding-left: 15px;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: solid 1px #FFC35E;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #8C581C;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #8C581C;
}
table.primobjlist td.ColumnParents span.mother:before {
content: "+ ";
}
/* Surnames
----------------------------------------------------- */
table#SortByName td.ColumnSurname, table#SortByName th.ColumnSurname,
table#SortByCount td.ColumnQuantity, table#SortByCount th.ColumnQuantity {
background-color: #FFE09F;
}
table#SortByName td.ColumnSurname a[href]:hover {
background-color: #FFC35E;
}
/* make the whole cell light up on hover not just the a. */
table#SortByName td.ColumnSurname,
table#SortByName th.ColumnSurname,
table#SortByName th.ColumnQuantity {
padding-left: 0px;
}
table#SortByName td.ColumnSurname > a,
table#SortByName th.ColumnSurname > a,
table#SortByName th.ColumnQuantity > a {
padding-left: 1ex;
}
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
table.surname td.ColumnName {
background-color: #FFE09F;
}
table.surname td.ColumnName a[href]:hover {
background-color: #FFC35E;
}
/* make the whole cell light up on hover not just the a. */
table.surname td.ColumnName {
padding-left: 0px;
}
table.surname td.ColumnName > a {
padding-left: 15px;
}
/* Individuals
----------------------------------------------------- */
table.IndividualList td.ColumnSurname {
background-color: #FFE09F;
}
/* Places
----------------------------------------------------- */
#Places table.infolist td.ColumnName {
background-color: #FFE09F;
}
#Places table.infolist td.ColumnName a[href]:hover {
background-color: #FFC35E;
}
/* make the whole cell light up on hover not just the a. */
#Places table.infolist td.ColumnName {
padding-left: 0px;
}
#Places table.infolist td.ColumnName > a {
padding-left: 1ex;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr.BeginType td {
border-top:dashed 1px #FFC35E;
}
#EventList table.infolist tr.BeginLetter td {
border-top:solid 1px #FFC35E;
}
#EventList table.infolist td.ColumnType {
background-color: #FFE09F;
}
#EventList td.ColumnPerson a {
display: inline;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.fatherNmother:after,
#EventDetail td.ColumnPerson span.fatherNmother:after {
content: " + ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
/* Gallery
----------------------------------------------------- */
#GalleryNav {
text-align: center;
margin: 2em 0px;
}
#GalleryNav a {
font-weight: bold;
background-color: #FFE09F;
border: solid 1px #EA8414;
margin: 1em;
}
#GalleryNav a:hover {
background-color: #FFC35E;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryCurrent {
font-size: larger;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display: block;
border: solid 1px #EA8414;
}
#GalleryDetail h3 {
text-align: center;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
----------------------------------------------------- */
#Contact {
overflow: hidden;
}
#Contact #summaryarea {
width: 40em;
margin: 2em auto;
padding: 3em;
background-color: #FFE09F;
border: solid 1px #EA8414;
}
#Contact img {
float: right;
border: solid 1px #EA8414;
}
#Contact #researcher, #Contact #researcher h3 {
font-size: larger;
padding-left: 0px;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #locality, #Contact #city, #Contact #state, #Contact #postalcode,
#Contact #country {
white-space: nowrap;
}
#Contact #city:after {
content: ",";
}
/* Download
----------------------------------------------------- */
#Download table.download a {
display: block;
}
/* Subsection
----------------------------------------------------- */
#Home, #Introduction {
overflow: hidden;
}
#Home img, #Introduction img {
float: right;
margin: 1em;
max-width: 950px;
}
#Home p, #Introduction p {
padding-left: 15px;
}
.subsection {
clear: both;
overflow: hidden;
}
.subsection p {
margin: 0px;
}
/* Subsection : Families
----------------------------------------------------- */
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
div#families table.attrlist td.ColumnType {
color: #36220B;
}
/* Subsection : Gallery
----------------------------------------------------- */
#indivgallery .thumbnail {
float: left;
max-width: 130px;
max-height: 150px;
font-size: smaller;
text-align: center;
margin: 0.8em 0.5em;
}
#indivgallery h4 + .thumbnail {
margin-left: 15px;
/* Problem: if there are more thumnails then fit on a single row, the
* first thumnail on each next row should also have a margin-left
* of 15 px. */
}
#indivgallery img {
border: solid 1px #8C581C;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide description in Indivifual Gallery
display: none; */
}
/* Subsection : Narrative
----------------------------------------------------- */
h4 + div.grampsstylednote, a.familymap {
margin: 1em 15px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* Subsection : Family Map
----------------------------------------------------- */
a.familymap {
display: block;
}
/* Subsection : Source References
----------------------------------------------------- */
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* Subsection : Pedigree
----------------------------------------------------- */
.pedigreegen {
list-style-type: none;
padding-left: 15px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
----------------------------------------------------- */
#footer {
clear: both;
padding-top: 1em;
background-color: #FFC35E;
border-top: solid 1px #EA8414;
}
#footer > * {
background-color: #FFE09F;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
padding-left: 15px;
margin-top: 1em;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
padding-right: 15px;
}
#footer a[href]:hover {
background-color: #FFC35E;
}
/* Overwritten
----------------------------------------------------- */
button#drop {
background-color: #FFE09F;
border: solid 1px #EA8414 ! important;
}
button#drop:hover {
background-color: #FFC35E;
}
div#map_canvas {
border-color: #EA8414 ! important;
}
body#FamilyMap {
background-color: #FFE09F ! important;
}
/* Calendar Styles
===================================================== */
table.calendar {
table-layout: fixed;
empty-cells: show;
}
.calendar thead th {
text-align: center;
border-top-style: none;
}
.calendar thead th.monthName {
font-size: xx-large;
font-weight: normal;
background-color: #FFFBE7;
border-bottom-style: none;
padding-top: 1em;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 15px 0px 0px;
font-weight: bold;
color: #8C581C;
}
#CreatorInfo a[href]:hover {
background-color: #FFC35E;
}
.calendar tfoot tr td {
border-top: solid 4px #8C581C;
vertical-align: middle;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #FFC35E;
color: #8C581C;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px 0px 0px 1ex;
border-width: 1px 0px 0px 1px;
border-style: solid;
border-color: #FFC35E;
background-color: #FFFBE7;
}
.calendar td:first-child {
border-left-style: none;
padding: 0px 0px 0px 1ex;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
border-top: dashed 1px #8C581C;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.calendar td ul li:first-child {
border-style: none;
}
.calendar td ul a[href]:hover {
background-color: #FFC35E;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td ul li em {
font-style: normal;
color: #EA8414;
}
.calendar td.highlight {
background-color: #FFE09F;
}
.calendar td.highlight div.date {
color: #36220B;
background-color: #FFC35E;
}
/* Calendar : Previous-Next Month */
.calendar td.previous,
.calendar td.next,
.calendar td.previous div.date,
.calendar td.next div.date {
color: #FFC35E;
background-color: #FFFBE7;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
overflow: hidden;
}
body#fullyearlinked table.calendar {
float: left;
width: 33.3%;
height: 18em;
border: solid 1px #36220B;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
padding: 2px 0px;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
body#OneDay div.content {
overflow: hidden;
}
-715
View File
@@ -1,715 +0,0 @@
/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic-Spruce Stylesheet
Style Author: Jason M. Simanek (2008)
Note: Adapted from GRAMPS original Modern Style stylesheet with a new blue color scheme.
**************************************************************************************************
This website was created with GRAMPS <http://www.gramps-project.org/>
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to <http://gramps-project.org/> to learn more!
--------------------------------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
Copyright 2011 Michiel D. Nauta
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
black #000
blue dark #204D91
blue #7CA3DD
blue light #BFD0EA
blue very light #EAEEF4
white #FFF
--------------------------------------------------------------------------------------------------
Characteristic of this style is that it uses the full width of the browser
window and that horizontal highlighting bars extend over the full width of
the page.
--------------------------------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
------------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
font-family: sans-serif;
font-size: 90%;
color: black;
margin: 0px;
background-color: #EAEEF4;
}
body > div {
clear: both;
}
.content {
background-color: #FFF;
border-top: solid 1px #7CA3DD;
}
.content div.snapshot {
float: right;
margin: 2em;
}
.fullclear {
clear: both;
}
/* General Text
----------------------------------------------------- */
h1 {
font-size: x-large;
font-weight: bold;
padding-left: 15px;
}
h3 {
font-size: large;
padding-left: 15px;
}
h4 {
font-size: medium;
color: #204D91;
background-color: #BFD0EA;
padding-left: 15px;
margin-bottom: 0px;
border-bottom: solid 1px #7CA3DD;
}
p#description {
padding-left: 15px;
}
a {
color: black;
text-decoration: none;
}
a[href]:hover, a[href]:active {
background-color: #EAEEF4
}
.grampsid {
font-family: monospace;
font-size: smaller;
color: #7CA3DD;
}
/* Header
----------------------------------------------------- */
#SiteTitle {
color: #204D91;
}
#user_header, #user_footer {
padding-left: 15px;
}
/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
border: solid 1px #EAEEF4; /* needed by IE7 */
}
#subnavigation ul {
overflow: hidden;
}
div#nav ul, #subnavigation ul {
list-style: none;
margin: 0px;
padding-left: 15px;
}
#subnavigation ul {
border-bottom: solid 1px #7CA3DD;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
font-size: smaller;
font-weight: bold;
padding: 5px;
border-bottom: solid 1px #EAEEF4;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #BFD0EA;
border-bottom: solid 1px black;
}
div#nav ul li.CurrentSection a {
position: relative;
top: 1px;
border: solid 1px #7CA3DD;
border-bottom-style: none;
background-color: #FFF;
}
#subnavigation ul li.CurrentSection a {
background-color: #FFF;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
background-color: #EAEEF4;
}
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: black;
margin: 0px;
padding-left: 15px;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: black;
color: #FFF;
}
/* Main Table
----------------------------------------------------- */
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table tr th {
text-align: left;
background-color: #EAEEF4;
border-top: solid 1px #7CA3DD;
border-bottom: solid 1px #7CA3DD;
}
table tr th:first-child {
border-left: solid 1px #7CA3DD;
}
table tr th:last-child {
border-right: solid 1px #7CA3DD;
}
table.primobjlist tr th {
background-color: #BFD0EA;
}
table td, table th {
vertical-align: top;
padding-left: 1ex;
}
table.primobjlist td {
vertical-align: middle;
}
table td:first-child, table th:first-child {
padding-left: 15px;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: solid 1px #BFD0EA;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #204D91;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #204D91;
}
table.primobjlist td.ColumnParents span.mother:before {
content: "+ ";
}
/* Surnames
----------------------------------------------------- */
table#SortByName td.ColumnSurname, table#SortByName th.ColumnSurname,
table#SortByCount td.ColumnQuantity, table#SortByCount th.ColumnQuantity {
background-color: #EAEEF4;
}
table#SortByName td.ColumnSurname a[href]:hover {
background-color: #BFD0EA;
}
/* make the whole cell light up on hover not just the a. */
table#SortByName td.ColumnSurname,
table#SortByName th.ColumnSurname,
table#SortByName th.ColumnQuantity {
padding-left: 0px;
}
table#SortByName td.ColumnSurname > a,
table#SortByName th.ColumnSurname > a,
table#SortByName th.ColumnQuantity > a {
padding-left: 1ex;
}
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
table.surname td.ColumnName {
background-color: #EAEEF4;
}
table.surname td.ColumnName a[href]:hover {
background-color: #BFD0EA;
}
/* make the whole cell light up on hover not just the a. */
table.surname td.ColumnName {
padding-left: 0px;
}
table.surname td.ColumnName > a {
padding-left: 15px;
}
/* Individuals
----------------------------------------------------- */
table.IndividualList td.ColumnSurname {
background-color: #EAEEF4;
}
/* Places
----------------------------------------------------- */
#Places table.infolist td.ColumnName {
background-color: #EAEEF4;
}
#Places table.infolist td.ColumnName a[href]:hover {
background-color: #BFD0EA;
}
/* make the whole cell light up on hover not just the a. */
#Places table.infolist td.ColumnName {
padding-left: 0px;
}
#Places table.infolist td.ColumnName > a {
padding-left: 1ex;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr.BeginType td {
border-top:dashed 1px #BFD0EA;
}
#EventList table.infolist tr.BeginLetter td {
border-top:solid 1px #BFD0EA;
}
#EventList table.infolist td.ColumnType {
background-color: #EAEEF4;
}
#EventList td.ColumnPerson a {
display: inline;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.fatherNmother:after,
#EventDetail td.ColumnPerson span.fatherNmother:after {
content: " + ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
/* Gallery
----------------------------------------------------- */
#GalleryNav {
text-align: center;
margin: 2em 0px;
}
#GalleryNav a {
font-weight: bold;
background-color: #EAEEF4;
border: solid 1px #7CA3DD;
margin: 1em;
}
#GalleryNav a:hover {
background-color: #BFD0EA;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryCurrent {
font-size: larger;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display: block;
border: solid 1px #7CA3DD;
}
#GalleryDetail h3 {
text-align: center;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
----------------------------------------------------- */
#Contact {
overflow: hidden;
}
#Contact #summaryarea {
width: 40em;
margin: 2em auto;
padding: 3em;
background-color: #EAEEF4;
border: solid 1px #7CA3DD;
}
#Contact img {
float: right;
border: solid 1px #7CA3DD;
}
#Contact #researcher, #Contact #researcher h3 {
font-size: larger;
padding-left: 0px;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #locality, #Contact #city, #Contact #state, #Contact #postalcode,
#Contact #country {
white-space: nowrap;
}
#Contact #city:after {
content: ",";
}
/* Download
----------------------------------------------------- */
#Download table.download a {
display: block;
}
/* Subsection
----------------------------------------------------- */
#Home, #Introduction {
overflow: hidden;
}
#Home img, #Introduction img {
float: right;
margin: 1em;
max-width: 950px;
}
#Home p, #Introduction p {
padding-left: 15px;
}
.subsection {
clear: both;
overflow: hidden;
}
.subsection p {
margin: 0px;
}
/* Subsection : Families
----------------------------------------------------- */
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
div#families table.attrlist td.ColumnType {
color: black;
}
/* Subsection : Gallery
----------------------------------------------------- */
#indivgallery .thumbnail {
float: left;
max-width: 130px;
max-height: 150px;
font-size: smaller;
text-align: center;
margin: 0.8em 0.5em;
}
#indivgallery h4 + .thumbnail {
margin-left: 15px;
/* Problem: if there are more thumnails then fit on a single row, the
* first thumnail on each next row should also have a margin-left
* of 15 px. */
}
#indivgallery img {
border: solid 1px #7CA3DD;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide description in Indivifual Gallery
display: none; */
}
/* Subsection : Narrative
----------------------------------------------------- */
h4 + div.grampsstylednote, a.familymap {
margin: 1em 15px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* Subsection : Family Map
----------------------------------------------------- */
a.familymap {
display: block;
}
/* Subsection : Source References
----------------------------------------------------- */
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* Subsection : Pedigree
----------------------------------------------------- */
.pedigreegen {
list-style-type: none;
padding-left: 15px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
----------------------------------------------------- */
#footer {
clear: both;
padding-top: 1em;
background-color: #BFD0EA;
border-top: solid 1px #204D91;
}
#footer > * {
background-color: #EAEEF4;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
padding-left: 15px;
margin-top: 1em;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
padding-right: 15px;
}
#footer a[href]:hover {
background-color: #BFD0EA;
}
/* Overwritten
----------------------------------------------------- */
body#FamilyMap {
background-color: #EAEEF4 ! important;
}
/* Calendar Styles
===================================================== */
table.calendar {
table-layout: fixed;
empty-cells: show;
}
.calendar thead th {
text-align: center;
border-top-style: none;
}
.calendar thead th.monthName {
font-size: xx-large;
font-weight: normal;
background-color: #FFF;
border-bottom-style: none;
padding-top: 1em;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 15px 0px 0px;
font-weight: bold;
color: #7CA3DD;
}
#CreatorInfo a[href]:hover {
background-color: #BFD0EA;
}
.calendar tfoot tr td {
border-top: solid 4px #7CA3DD;
vertical-align: middle;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #BFD0EA;
color: #204D91;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px 0px 0px 1ex;
border-width: 1px 0px 0px 1px;
border-style: solid;
border-color: #BFD0EA;
background-color: #FFF;
}
.calendar td:first-child {
border-left-style: none;
padding: 0px 0px 0px 1ex;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
border-top: dashed 1px #BFD0EA;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.calendar td ul li:first-child {
border-style: none;
}
.calendar td ul a[href]:hover {
background-color: #BFD0EA;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td ul li em {
font-style: normal;
color: #7CA3DD;
}
.calendar td.highlight {
background-color: #EAEEF4;
}
.calendar td.highlight div.date {
color: black;
background-color: #BFD0EA;
}
/* Calendar : Previous-Next Month */
.calendar td.previous,
.calendar td.next,
.calendar td.previous div.date,
.calendar td.next div.date {
color: #BFD0EA;
background-color: #FFF;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
overflow: hidden;
}
body#fullyearlinked table.calendar {
float: left;
width: 33.3%;
height: 18em;
border: solid 1px black;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
padding: 2px 0px;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
body#OneDay div.content {
overflow: hidden;
}
-183
View File
@@ -1,183 +0,0 @@
/* Main Element
------------------------------------------------------ */
#menu, #menu ul {
margin: 0;
padding: 0;
list-style-type: none;
}
/* Main Level
------------------------------------------------------ */
#menu {
width: 100%;
margin: 6px auto;
border: 1px solid #222;
background-color: #111;
background-image: -moz-linear-gradient(#444, #111);
background-image: -webkit-gradient(linear, left top, left bottom, from(#444), to(#111));
background-image: -webkit-linear-gradient(#444, #111);
background-image: -o-linear-gradient(#444, #111);
background-image: -ms-linear-gradient(#444, #111);
background-image: linear-gradient(#444, #111);
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
border-radius: 6px;
-moz-box-shadow: 0 1px 1px #777;
-webkit-box-shadow: 0 1px 1px #777;
box-shadow: 0 1px 1px #777;
}
/* Clear Floats
------------------------------------------------------ */
#menu:before,
#menu:after {
content: "";
display: table;
}
#menu:after {
clear: both
}
#menu {
zoom: 1
}
/* List Elements
------------------------------------------------------ */
#menu li {
float: left;
border-right: 1px solid #222;
-moz-box-shadow: 1px 0 0 #444;
-webkit-box-shadow: 1px 0 0 #444;
box-shadow: 1px 0 0 #444;
position: relative;
}
#menu a {
float: left;
padding: 12px 30px;
color: #999;
text-transform: uppercase;
font: bold 12px Arial, Helvetica;
text-decoration: none;
text-shadow: 0 1px 0 #000;
}
#menu li:hover > a {
color: #fafafa
}
*html #menu li a:hover { /* IE6 only */
color: #fafafa
}
/* sub-menu
------------------------------------------------------ */
#menu ul {
margin: 20px 0 0 0;
_margin: 0; /*IE6 only*/
opacity: 0;
visibility: hidden;
position: absolute;
top: 38px;
left: 0;
z-index: 9999;
background: #444;
background: -moz-linear-gradient(#444, #111);
background: -webkit-gradient(linear,left bottom,left top,color-stop(0, #111),color-stop(1, #444));
background: -webkit-linear-gradient(#444, #111);
background: -o-linear-gradient(#444, #111);
background: -ms-linear-gradient(#444, #111);
background: linear-gradient(#444, #111);
-moz-box-shadow: 0 -1px rgba(255,255,255,.3);
-webkit-box-shadow: 0 -1px 0 rgba(255,255,255,.3);
box-shadow: 0 -1px 0 rgba(255,255,255,.3);
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
-webkit-transition: all .2s ease-in-out;
-moz-transition: all .2s ease-in-out;
-ms-transition: all .2s ease-in-out;
-o-transition: all .2s ease-in-out;
transition: all .2s ease-in-out;
}
#menu li:hover > ul {
opacity: 1;
visibility: visible;
margin: 0;
}
#menu ul ul {
top: 0;
left: 150px;
margin: 0 0 0 20px;
_margin: 0; /*IE6 only*/
-moz-box-shadow: -1px 0 0 rgba(255,255,255,.3);
-webkit-box-shadow: -1px 0 0 rgba(255,255,255,.3);
box-shadow: -1px 0 0 rgba(255,255,255,.3);
}
#menu ul li {
float: none;
display: block;
border: 0;
_line-height: 0; /*IE6 only*/
-moz-box-shadow: 0 1px 0 #111, 0 2px 0 #666;
-webkit-box-shadow: 0 1px 0 #111, 0 2px 0 #666;
box-shadow: 0 1px 0 #111, 0 2px 0 #666;
}
#menu ul li:last-child {
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
#menu ul a {
padding: 10px;
width: 130px;
_height: 10px; /*IE6 only*/
display: block;
white-space: nowrap;
float: none;
text-transform: none;
}
#menu ul a:hover {
background-color: #0186ba;
background-image: -moz-linear-gradient(#04acec, #0186ba);
background-image: -webkit-gradient(linear, left top, left bottom, from(#04acec), to(#0186ba));
background-image: -webkit-linear-gradient(#04acec, #0186ba);
background-image: -o-linear-gradient(#04acec, #0186ba);
background-image: -ms-linear-gradient(#04acec, #0186ba);
background-image: linear-gradient(#04acec, #0186ba);
}
/* first and Last child elements
------------------------------------------------------ */
#menu ul li:first-child > a {
-moz-border-radius: 3px 3px 0 0;
-webkit-border-radius: 3px 3px 0 0;
border-radius: 3px 3px 0 0;
}
#menu ul li:first-child > a:after {
content: '';
position: absolute;
left: 40px;
top: -6px;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid #444;
}
#menu ul ul li:first-child a:after {
left: -6px;
top: 50%;
margin-top: -6px;
border-left: 0;
border-bottom: 6px solid transparent;
border-top: 6px solid transparent;
border-right: 6px solid #3b3b3b;
}
#menu ul li:first-child a:hover:after {
border-bottom-color: #04acec
}
#menu ul ul li:first-child a:hover:after {
border-right-color: #0299d3;
border-bottom-color: transparent;
}
#menu ul li:last-child > a {
-moz-border-radius: 0 0 3px 3px;
-webkit-border-radius: 0 0 3px 3px;
border-radius: 0 0 3px 3px;
}
-46
View File
@@ -1,46 +0,0 @@
/*
# encoding: utf-8
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright 2012 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
******************************************************
GRAMPS Cascading Style Sheet
Style Name: Web_Citations-Outline.css
******************************************************
# $Id$
Source Citations Outline styles
------------------------------------------------------ */
div#SourceCitationReferents ul.Col1 {
list-style-type: decimal
}
div#SourceCitationReferents ul.Col2 {
list-style-type: upper-alpha
}
div#SourceCitationReferents ul.Col3 {
list-style-type: lower-alpha
}
div#SourceCitationReferents ul.Col4 {
list-style-type: upper-roman
}
div#SourceCitationReferents ul.Col5 {
list-style-type: disc
}
-230
View File
@@ -1,230 +0,0 @@
/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2012 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id$
#
*************************************************
GRAMPS Cascading Style Sheet
Style Name: Fade-Menus Style Sheet
*************************************************
Body Element
------------------------------------------------------ */
body {
background-color: #FFF;
color: #00029D;
width: 100%;
}
/* Header
------------------------------------------------------ */
div#header {
border-bottom: solid 8px #13A926;
}
/* Drop Down Navigation Menu
------------------------------------------------------ */
ul#dropmenu {
width: 100%;
margin: 0 auto;
padding: 10px 0 0 0;
list-style-type: none;
background: #00029D;
background: -moz-linear-gradient(#444, #00029D);
background: -webkit-gradient(linear,left bottom,left top,color-stop(0, #111),color-stop(1, #444));
background: -webkit-linear-gradient(#444, #111);
background: -o-linear-gradient(#444, #111);
background: -ms-linear-gradient(#444, #111);
background: linear-gradient(#444, #111);
-moz-border-radius: 50px;
border-radius: 50px;
-moz-box-shadow: 0 2px 1px #9c9c9c;
-webkit-box-shadow: 0 2px 1px #9c9c9c;
box-shadow: 0 2px 1px #9c9c9c;
}
ul#dropmenu li {
float: left;
padding: 0 0 10px 0;
position: relative;
}
ul#dropmenu a {
float: left;
height: 25px;
padding: 0 25px;
color: #999;
text-transform: uppercase;
font: bold 12px/25px Arial, Helvetica;
text-decoration: none;
text-shadow: 0 1px 0 #000;
}
ul#dropmenu li:hover > a {
color: #fafafa
}
*html ul#dropmenu li a:hover /* IE6 */
{
color: #fafafa
}
ul#dropmenu li:hover > ul {
display: block
}
/* Sub-menu
------------------------------------------------------ */
ul#dropmenu ul {
list-style: none;
margin: 0;
padding: 0;
display: none;
position: absolute;
top: 35px;
left: 0;
z-index: 99999;
background: #444;
background: -moz-linear-gradient(#444, #111);
background: -webkit-gradient(linear,left bottom,left top,color-stop(0, #111),color-stop(1, #444));
background: -webkit-linear-gradient(#444, #111);
background: -o-linear-gradient(#444, #111);
background: -ms-linear-gradient(#444, #111);
background: linear-gradient(#444, #111);
-moz-border-radius: 5px;
border-radius: 5px;
}
ul#dropmenu ul li {
float: none;
margin: 0;
padding: 0;
display: block;
-moz-box-shadow: 0 1px 0 #111111, 0 2px 0 #777777;
-webkit-box-shadow: 0 1px 0 #111111, 0 2px 0 #777777;
box-shadow: 0 1px 0 #111111, 0 2px 0 #777777;
}
ul#dropmenu ul li:last-child {
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
ul#dropmenu ul a {
padding: 10px;
height: auto;
line-height: 1;
display: block;
white-space: nowrap;
float: none;
text-transform: none;
}
*html ul#dropmenu ul a /* IE6 */
{
height: 10px;
width: 150px;
}
*:first-child+html ul#dropmenu ul a /* IE7 */
{
height: 10px;
width: 150px;
}
ul#dropmenu ul a:hover {
background: #0186ba;
background: -moz-linear-gradient(#04acec, #0186ba);
background: -webkit-gradient(linear, left top, left bottom, from(#04acec), to(#0186ba));
background: -webkit-linear-gradient(#04acec, #0186ba);
background: -o-linear-gradient(#04acec, #0186ba);
background: -ms-linear-gradient(#04acec, #0186ba);
background: linear-gradient(#04acec, #0186ba);
}
ul#dropmenu ul li:first-child a {
-moz-border-radius: 5px 5px 0 0;
border-radius: 5px 5px 0 0;
}
ul#dropmenu ul li:first-child a:after {
content: '';
position: absolute;
left: 30px;
top: -8px;
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-bottom: 8px solid #444;
}
ul#dropmenu ul li:first-child a:hover:after {
border-bottom-color: #04acec
}
ul#dropmenu ul li:last-child a {
-moz-border-radius: 0 0 5px 5px;
border-radius: 0 0 5px 5px;
}
/* Clear floated elements
------------------------------------------------------ */
ul#dropmenu:after {
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}
* html ul#dropmenu { zoom: 1; } /* IE6 */
*:first-child+html ul#dropmenu { zoom: 1; } /* IE7 */
/* Alphabet Navigation and Year Menu
------------------------------------------------------ */
div#alphanav, div#subnavigation {
clear: both;
padding-top: 1px;
font: bold 1.2em/1.4 "sans, sans-serif";
}
div#alphanav ul, div#subnavigation ul {
float: left;
width: 100%;
margin: 0;
padding: 0;
list-style-type: none;
background: #00029D;
border-top: 2px solid #13A926;
border-bottom: 2px solid #13A926;
}
div#alphanav ul li, div#subnavigation ul li {
display: inline;
margin: 0;
padding: 0;
}
div#alphanav ul li a, div#subnavigation ul li a {
display: block;
float: left;
padding: 6px 12px;
border-right: 1px solid #13A926;
border-left: 1px solid #13A926;
color: #FFF;
text-decoration: none;
}
div#alphanav ul li a:hover, div#alphanav ul li a:focus,
div#subnavigation ul li a:hover, div#subnavigation ul li a:focus {
background: #FFF;
color: #000;
}
div#subnavigation ul li.CurrentSection a {
border-left: solid 1px #13A926;
border-right: solid 1px #13A926;
background-color: #FFF;
color: #00029D;
}
-131
View File
@@ -1,131 +0,0 @@
/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2012 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id$
#
*************************************************
GRAMPS Cascading Style Sheet
Style Name: Fade-Menus Style Sheet
*************************************************
Body Element
------------------------------------------------------ */
body {
background-color: #00029D;
color: #00029D;
width: 100%;
}
/* Header
------------------------------------------------------ */
div#header {
border-bottom: solid 8px #13A926;
}
/* Fade Horizontal Navigation Menu
------------------------------------------------------ */
div.wrapper {
width: 100%;
height: 50px;
background : #464646;
background : -webkit-gradient(linear, left top, left bottombottom, from(rgb(168,168,168)), to(rgb(69,69,69)));
background : -moz-linear-gradient(top, rgb(168,168,168), rgb(69,69,69));
border-top: 2px solid #939393;
position: relative;
}
ul {
margin: 0;
padding: 0;
}
ul.menu {
height: 80px;
border-left: 1px solid rgba(0,0,0,0.3);
border-right: 1px solid rgba(255,255,255,0.3);
float: left;
}
ul.menu li {
list-style-type: none;
float: left;
height: 45px;
text-align: center;
background: -webkit-gradient(radial, 50% 100%, 10, 50% 50%, 90, from(rgba(31,169,244,1)), to(rgba(0,28,78, 1)) );
background: -moz-radial-gradient(center 80px 45deg, circle cover, rgba(31,169,244,1) 0%, rgba(0,28,78, 1) 100%);
}
ul li a {
font: bold .9em "Helvetica, Courier, Arial, sans-serif, sans";
display: block;
padding: 0 6px;
border-left: 1px solid rgba(255,255,255,0.1);
border-right: 1px solid rgba(0,0,0,0.1);
text-align: center;
line-height: 45px;
background : -webkit-gradient(linear, left top, left bottombottom, from(rgb(168,168,168)), to(rgb(69,69,69)));
background : -moz-linear-gradient(top, rgb(168,168,168), rgb(69,69,69));
-webkit-transition-property: background;
-webkit-transition-duration: 700ms;
-moz-transition-property: background;
-moz-transition-duration: 700ms;
text-decoration: none;
}
ul li a:hover {
background: transparent none;
color: #FFF;
}
ul li.CurrentSection a {
background: -webkit-gradient(radial, 50% 100%, 10, 50% 50%, 90, from(rgba(31,169,244,1)), to(rgba(0,28,78, 1)) );
background: -moz-radial-gradient(center 80px 45deg, circle cover, rgba(31,169,244,1) 0%, rgba(0,28,78, 1) 100%);
Color: #FFF;
}
/* Alphabet Navigation Menu
------------------------------------------------------ */
div#alphanav {
clear: both;
padding-top: 1px;
font: bold 1.2em/1.4 "sans, sans-serif";
}
div#alphanav ul {
float: left;
width: 100%;
margin: 0;
padding: 0;
list-style-type: none;
background: #00029D;
border-top: 2px solid #13A926;
border-bottom: 2px solid #13A926;
}
div#alphanav li {
display: inline;
margin: 0;
padding: 0;
}
div#alphanav a {
display: block;
float: left;
padding: 6px 12px;
border-right: 1px solid #13A926;
border-left: 1px solid #13A926;
color: #FFF;
text-decoration: none;
}
div#alphanav a:hover, div#alphanav a:focus {
background: #FFF;
color: #000;
}
-125
View File
@@ -1,125 +0,0 @@
/*
# encoding: utf-8
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright 2008-2010 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
******************************************************
GRAMPS Cascading Style Sheet
Style Name: Web_Navigation-Horizontal.css
******************************************************
# $Id$
Body Element
------------------------------------------------------ */
body {
background-color: #00029D;
color: #00029D;
width: 100%;
padding: 0px 14px;
}
/* Navigation Menus
----------------------------------------------------- */
div#nav {
clear: both;
padding-top: 1px;
font: 1.2em/1.4 "sans-serif, Helvetica, Arial";
}
div#nav ul {
float: left;
width: 100%;
margin: 0;
padding: 0;
list-style-type: none;
background: #00029D;
border-bottom: 2px solid #13A926;
}
div#nav li {
display: inline;
margin: 0;
padding: 0;
}
div#nav a {
display: block;
float: left;
padding: 6px 12px;
border-right: 1px solid #13A926;
border-left: 1px solid #13A926;
color: #FFF;
text-decoration: none;
}
div#nav a:hover, div#nav a:focus {
background: #FFF;
color: #000;
}
div#nav .CurrentSection a {
font-weight: bold;
background: #BCEAF6;
color: #000;
border-bottom: none;
}
div#nav .CurrentSection a:hover, div#nav .CurrentSection a:focus {
background: #903;
color: #FFF;
}
/* Alphabet Navigation and Year Menu
------------------------------------------------------ */
div#alphanav, div#subnavigation {
clear: both;
padding-top: 1px;
font: bold 1.2em/1.4 "sans, sans-serif";
}
div#alphanav ul, div#subnavigation ul {
float: left;
width: 100%;
margin: 0;
padding: 0;
list-style-type: none;
background: #00029D;
border-top: 2px solid #13A926;
border-bottom: 2px solid #13A926;
}
div#alphanav ul li, div#subnavigation ul li {
display: inline;
margin: 0;
padding: 0;
}
div#alphanav ul li a, div#subnavigation ul li a {
display: block;
float: left;
padding: 6px 12px;
border-right: 1px solid #13A926;
border-left: 1px solid #13A926;
color: #FFF;
text-decoration: none;
}
div#alphanav ul li a:hover, div#alphanav ul li a:focus,
div#subnavigation ul li a:hover, div#subnavigation ul li a:focus {
background: #FFF;
color: #000;
}
div#subnavigation ul li.CurrentSection a {
border-left: solid 1px #13A926;
border-right: solid 1px #13A926;
background-color: #FFF;
color: #00029D;
}
-634
View File
@@ -1,634 +0,0 @@
/*
----------------------------------------------------------------------------
GRAMPS Cascading Style Sheet
Style Name: Mainz
Style Author: Jason Simanek (2008)
----------------------------------------------------------------------------
This website was created with GRAMPS
----------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to <http://gramps-project.org/> to learn more!
License
----------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
Copyright 2011 Michiel D. Nauta
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
----------------------------------------------------------------------------
Color Palette
----------------------------------------------------------------------------
black #000
brown #7D5925
brown light #D8C19F
green #767D25
yellow #FFF2C6
yellow light #FFFFE7
----------------------------------------------------------------------------
Style Images
----------------------------------------------------------------------------
Body images/Web_Mainz_Bkgd.png
Header images/Web_Mainz_Header.png
Middle images/Web_Mainz_Mid.png
Middle Light images/Web_Mainz_MidLight.png
----------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
--------------------------------------------------------------------------------------------
General Elements
-----------------------------------------------------------------*/
body {
font-family: Georgia, serif;
font-size: 90%;
color: #7D5925;
background: url(../images/Web_Mainz_Bkgd.png) black repeat;
}
body > div {
width: 950px;
margin: 0px auto;
background: url(../images/Web_Mainz_Mid.png) #FFF2C6 repeat;
overflow: hidden;
padding: 0px 1.5em;
}
.content {
padding: 1.5em 1.5em;
}
div.snapshot div.thumbnail {
text-align: center;
}
div.snapshot a {
display: inline;
}
/* General Text
-----------------------------------------------------------------*/
h1 {
font-weight: normal;
font-style: italic;
margin-left: 2em;
}
h3 {
font-size: xx-large;
font-weight: normal;
font-style: italic;
color: #767D25;
text-align: center;
border-bottom: double 4px #7D5925;
padding-bottom: 1ex;
margin: 0.5em 0px 0.5em 0px;
}
h4 {
font-size: x-large;
font-weight: normal;
font-style: italic;
color: black;
text-align: center;
border-bottom: dashed 1px #7D5925;
padding-bottom: 0.5ex;
margin: 0.5em 0px 0.5em 0px;
}
a {
color: #7D5925;
text-decoration: none;
}
a[href]:hover, a[href]:active {
background-color: #FFFFE7;
}
.grampsid {
font-family: monospace;
font-size: smaller;
}
/* Header
-----------------------------------------------------------------*/
#header {
padding-top: 5em;
background: url(../images/Web_Mainz_Header.png) repeat-x top left;
}
/* Navigation
-----------------------------------------------------------------*/
div#nav, #subnavigation {
background: url(../images/Web_Mainz_MidLight.png) #FFF2C6 repeat;
}
div#nav ul, #subnavigation ul {
list-style-type: none;
margin: 0px;
padding-left: 0px;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
padding: 0.4em 0.8em 0.3em 0.8em;
font-size: smaller;
font-family: sans-serif;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #FFFFE7;
}
div#nav ul li.CurrentSection a, #subnavigation ul li.CurrentSection a {
font-weight: bold;
font-style: italic;
background-image: url(../images/Web_Mainz_Mid.png);
border-style: dashed;
border-width: 1px 1px 0px 1px;
border-color: #7D5925;
}
#subnavigation ul li.CurrentSection a {
border-width: 0px 1px 1px 1px;
}
/* Alphabet Navigation
-----------------------------------------------------------------*/
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: black;
padding-left: 2em;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-family: sans-serif;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
color: black;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: black;
color: white;
}
/* Main Table
-----------------------------------------------------------------*/
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table th {
text-align: left;
margin: 0px;
border-bottom: double 4px #7D5925;
padding: .1em 10px;
}
table td {
vertical-align: top;
padding: .1em 10px;
}
table.primobjlist td {
vertical-align: middle;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: dashed 1px #D8C19F;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.relationships td.ColumnPartner {
font-size: 100%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #767D25;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #767D25;
}
table.primobjlist td.ColumnParents span.father, table.primobjlist td.ColumnParents span.mother {
display: block;
}
table.primobjlist td.ColumnParents span.mother:before, table.primobjlist td.ColumnPerson span.mother:before {
content: "+ ";
}
/* Surnames
-----------------------------------------------------------------*/
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
#SurnameDetail h3 {
border-bottom-width: 0px;
padding-bottom: 0px;
margin: 0px;
}
/* Events
-----------------------------------------------------------------*/
#EventList tr.BeginType td {
border-top: dashed 1px #D8C19F;
}
#EventList tr.BeginLetter td {
border-top: solid 1px #D8C19F;
}
/* Events with multiple participants should have a comma seperated list of
names*/
#EventList td.ColumnPerson a {
display: inline;
}
/* Family events, put mother on next line */
#EventList td.ColumnPerson span.father,
#EventList td.ColumnPerson span.mother,
#EventDetail td.ColumnPerson span.father,
#EventDetail td.ColumnPerson span.mother {
display: block;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
/* Gallery
-----------------------------------------------------------------*/
#GalleryNav {
text-align: center;
margin: 1.4em 0px;
}
#GalleryNav a {
font-weight: bold;
font-style: italic;
color: #FFF2C6;
background: url(../images/Web_Mainz_Bkgd.png) #7D5925 repeat;
border: outset 3px black;
}
#GalleryNav a:hover {
border-color: #7D5925;
}
#GalleryNav a:active {
border-style: solid;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryPages {
margin: 0 1em;
}
#GalleryCurrent {
font-size: x-large;
font-weight: normal;
font-style: italic;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display:block;
border: solid 1px #7D5925;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
-----------------------------------------------------------------*/
#Contact h3 {
border-bottom-width: 0px;
padding-bottom: 0px;
margin: 0px;
}
#Contact img {
display: block;
margin: 0px auto 1em auto;
border: solid 1px #7D5925;
}
#Contact #researcher {
text-align: center;
}
#Contact #researcher span {
font-size: larger;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #city:after {
content: ",";
}
/* Download
-----------------------------------------------------------------*/
#Download table.download a {
display: block;
}
/* SubSection
-----------------------------------------------------------------*/
#Home img, #Introduction img {
display: block;
margin: 1em auto;
max-width: 950px;
}
#Home a, #Introduction a, #Contact a {
color: black;
}
.subsection {
clear: both;
}
.subsection p {
margin: 0px;
}
/* SubSection : Families
-----------------------------------------------------------------*/
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
/* SubSection : Gallery
-----------------------------------------------------------------*/
#indivgallery {
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
#indivgallery .thumbnail {
float: left;
max-width: 130px;
max-height: 150px;
font-size: smaller;
text-align: center;
margin: 0.5em;
}
#indivgallery img {
border: solid 1px #7D5925;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide the description in Individual Gallery
display: none; */
}
/* SubSection : Narrative
-----------------------------------------------------------------*/
h4 + div.grampsstylednote, a.familymap {
margin-left: 10px;
margin-right: 10px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* SubSection : Source References
-----------------------------------------------------------------*/
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* SubSection : Pedigree
-----------------------------------------------------------------*/
.pedigreegen {
list-style-type: none;
padding-left: 10px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
-----------------------------------------------------------------*/
#footer {
clear: both;
background: url(../images/Web_Mainz_MidLight.png) #FFF2C6;
border-top: dashed 1px #7D5925;
font-family: sans-serif;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
}
/* Overwritten
-----------------------------------------------------------------*/
button#drop {
font-style: italic;
color: #FFF2C6;
background: url(../images/Web_Mainz_Bkgd.png) #7D5925 repeat;
border: outset 3px black ! important;
}
div#map_canvas {
border-color: #7D5925 ! important;
}
/* Calendar Styles
=================================================================*/
table.calendar {
table-layout: fixed;
empty-cells: show;
width: 950px;
margin: 0px auto;
background: url(../images/Web_Mainz_Mid.png) #FFF2C6 repeat;
}
.calendar thead th {
font-size: large;
font-weight: normal;
font-style: italic;
text-align: center;
}
.calendar thead th.monthName {
font-size: xx-large;
color: #767D25;
border-bottom-color: #7D5925;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 0px 0px 0px;
font-weight: bold;
font-style: italic;
}
.calendar tfoot td {
border-top: double 4px #7D5925;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
font-style: italic;
text-align: center;
background: url(../images/Web_Mainz_MidLight.png) #FFF2C6 repeat;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px;
border-width: 1px 0px 0px 1px;
border-style: dashed;
border-color: #7D5925;
}
.calendar td.weekday {
background: url(../images/Web_Mainz_Mid.png) #FFF2C6 repeat;
}
.calendar td.weekend {
background: url(../images/Web_Mainz_MidLight.png) #FFF2C6 repeat;
}
.calendar td:first-child {
border-left-style: none;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
margin: 0 4%;
border-top: dashed 1px #D8C19F;
}
.calendar td ul li:first-child {
border-style: none;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td ul li em {
font-style: normal;
color: #767D25;
}
.calendar td ul li span.yearsmarried em {
color: black;
}
.calendar td.highlight div.date {
color: #767D25;
background-image: none;
background-color: #FFFFE7;
}
/* Calendar : Previous-Next Month */
.calendar td.previous, .calendar td.next {
color: #D8C19F;
background: url(../images/Web_Mainz_MidLight.png) #FFF2C6 repeat;
}
/* Calendar : Full Year */
body#fullyearlinked table.calendar {
float: left;
width: 315px;
height: 18em;
border: solid 1px #7D5925;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
File diff suppressed because it is too large Load Diff
-828
View File
@@ -1,828 +0,0 @@
/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Print Style Sheet
Style Author: Jason M. Simanek (2008)
Modified by Rob G. Healey, July 2008
**************************************************************************************************
This website was created with GRAMPS <http://www.gramps-project.org/>
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
'Go to <http://gramps-project.org/> to learn more!
--------------------------------------------------------------------------------------------------
Copyright (C) 2008-2011 Rob G. Healey <robhealey1@gmail.com>
This file is part of the GRAMPS program.
GRAMPS 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, version 2 of the License.
GRAMPS 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
GRAMPS. If not, see <http://www.gnu.org/licenses/>.
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
gray #A7A7A7
red #520
black #000
white #FFF
---------------------------------------------------------------------------------------------------
# $Id$
NarrativeWeb Styles
--------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
color:#000;
margin:0;
padding:0;
background-color:#FFF;
}
div {
margin:0;
padding:0;
}
img {
border:none;
margin:0;
}
.content { }
.content div.snapshot {
float:right;
margin:1.6em;
padding-top: .5cm;
background:none;
}
.content div.snapshot div.thumbnail {
margin:0;
padding:0;
background:none;
}
.content .thumbnail a:link:after, .content .thumbnail a:visited:after {
content:"";
}
.fullclear {
width:100%;
height:1pt;
margin:0;
padding:0;
clear:both;
}
/* General Text
----------------------------------------------------- */
h1 {
font:normal 16pt/18pt serif;
margin:0;
padding:0;
}
h2 {
font:normal 18pt/23pt serif;
display:inline;
margin:0;
padding:0;
}
h3 {
font:normal 18pt/23pt serif;
text-align:left;
display:inline;
margin:0 0 0 8pt;
padding:0;
}
h4 {
display:block;
clear:both;
font:normal 14pt/16pt serif;
margin:8pt 0 0 0;
padding:8pt 0 1pt 0;
border-top:solid .5pt #A7A7A7
}
h5, h6 {
font:normal 14pt/16pt serif;
font-style:italic;
margin:0;
padding:0;
}
p {
font:normal 11pt/14pt serif;
}
p#description {
margin:0 0 14pt 0;
}
a:link, a:visited {
color:#520;
text-decoration:underline;
}
.content a:link:after, content a:visited:after {
font-size:70%;
font-family:sans-serif;
content:" (" attr(href) ") ";
}
.content ol li a:link {
text-decoration:none;
}
.content ol li a:link:after, .content ol li a:visited:after {
content:"";
}
sup {
line-height:0;
}
ol {
font:normal .9em/1.6em sans-serif;
margin-top:0;
margin-bottom:0;
padding-top:.5em;
padding-bottom:0;
}
/* Header
----------------------------------------------------- */
#Header {
padding:0 0 8pt 0;
margin:0 0 8pt 0;
border-bottom:solid .5pt #000;
}
#SiteTitle {
text-align: left;
margin: 0;
padding: 0;
}
#user_header {
font-style:italic;
text-align:center;
margin:0;
padding:0
}
.grampsid {
font-size:60%;
font-family:monospace;
color:#A7A7A7
}
/* Navigation
----------------------------------------------------- */
#alphabet, #navigation, #subnavigation { display:none; }
/* Main Table
----------------------------------------------------- */
table {
width:100%;
margin:0;
padding:0;
border:none;
border-collapse:collapse;
border-bottom:solid .5pt #FFF;
}
table thead tr th {
text-align:left;
font:normal 11pt/13pt serif;
color:#000;
margin:0;
padding:0;
padding-bottom:1pt;
border-bottom:solid .5pt #000;
}
.content table thead tr th a {
text-decoration:none;
}
.content table thead tr th a:link:after, .content table thead tr th a:visited:after {
content:"";
}
table tbody tr td {
font:normal 9pt/11pt sans-serif;
vertical-align:middle;
padding:2pt 6pt 1pt 0;
border-bottom:dashed .5pt #A7A7A7;
}
.content table tbody tr td a {
text-decoration:none;
}
.content table tbody tr td a:link:after, .content table tbody tr td a:visited:after {
content:"";
}
table tr.BeginLetter td, table.infolist tr.BeginSurname td {
border-top:solid .5pt #A7A7A7;
}
table tbody tr td.ColumnRowLabel {
width:2%;
color:#A7A7A7;
text-align:center;
}
table tr td.ColumnLetter {
width:3%;
text-align:center;
}
table tr td.ColumnAttribute {
width:10%;
}
.content table tbody tr td.ColumnName a {
text-decoration:none;
}
table tbody tr td.ColumnBirth {
width:10%;
}
table tbody tr td.ColumnDeath {
width:10%;
text-decoration:underline;
}
table tbody tr td.ColumnParents {
font-size:70%;
}
table tbody tr td.ColumnParents span.mother:before {
content:"+ ";
}
/* Home/ Welcome
----------------------------------------------------- */
#Home p {
margin:0 0 9pt 0;
}
#Home img {
float:right;
margin:0;
padding:0 0 9pt 9pt;
}
#Home a {
color: #000;
text-decoration: underline;
}
/* Introduction
----------------------------------------------------- */
#Introduction p {
margin:0 0 9pt 0;
}
#Introduction img {
float:right;
margin:0;
padding:0 0 9pt 9pt;
}
#Introcution a {
color: #000;
text-decoration: underline;
}
/* Surnames
----------------------------------------------------- */
#Surnames { }
table.surnamelist tr thead th.ColumnSurname, #Surnames table.surnamelist tbody tr td.ColumnSurname {
width:50%;
}
table#SortByName thead tr th.ColumnSurname a:after, table#SortByCount thead tr th.ColumnQuantity a:after {
content:" ↓";
}
table.surname thead tr th.ColumnParents, table.surname tbody tr td.ColumnParents {
width:35%;
}
div#SourceDetail {
margin: 0 auto;
}
div#SourceCitationReferents ul.Col1 {
list-style-type: decimal
}
div#SourceCitationReferents ul.Col2 {
list-style-type: upper-alpha
}
div#SourceCitationReferents ul.Col3 {
list-style-type: lower-alpha
}
div#SourceCitationReferents ul.Col4 {
list-style-type: upper-roman
}
div#SourceCitationReferents ul.Col5 {
list-style-type: disc
}
/* Individuals
----------------------------------------------------- */
/* Relationships
================================================= */
div#Relationships {
font: normal 1em sans-serif;
margin: 0 auto;
padding: 0;
}
table.relationships {
width: 100%;
margin: 0;
padding: 0;
}
table.relationships thead tr th.ColumnMarriage,
table.relationships thead tr th.ColumnDivorce {
width: 10%;
}
table.relationships thead tr th.ColumnHyper {
width: 15%;
}
table.relationships thead tr th.ColumnMedia {
width: 15%;
}
table.relationships tbody tr#FirstLetter {
border-bottom: solid 1px #000;
}
table.relationships tbody tr td {
border-bottom: dashed 1px #000;
}
table.relationships tbody tr td.ColumnRowLabel a {
background: none;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr td span.person:after,
#EventList table.infolist tr td span.father:after,
#EventList table.infolist tr td span.mother:after,
#EventDetail table.infolist tr td span.person:after,
#EventDetail table.infolist tr td span.father:after,
#EventDetail table.infolist tr td span.mother:after {
content: ", ";
}
#EventList table.infolist tr td span.person:last-child:after,
#EventList table.infolist tr td span.father:last-child:after,
#EventList table.infolist tr td span.mother:last-child:after,
#EventDetail table.infolist tr td span.person:last-child:after,
#EventDetail table.infolist tr td span.father:last-child:after,
#EventDetail table.infolist tr td span.mother:last-child:after {
content: "";
}
/* Gallery
----------------------------------------------------- */
#GalleryDetail h2 {
display:none;
}
#GalleryNav {
display:none;
}
#GalleryDisplay {
margin:0 auto;
padding:0;
position:relative;
overflow:hidden;
text-align:center;
}
#GalleryDisplay img {
margin:0 auto;
border:solid 1pt #542;
}
#GalleryDetail h3 {
display:block;
text-align:center;
margin:2pt 0 8pt 0;
}
/* Download
----------------------------------------------------- */
#Download p {
margin:0 0 9pt 0;
}
#Download img {
float:right;
margin:0;
padding:0 0 9pt 9pt;
}
/* Thumbnail Preview Reference Section
------------------------------------------------- */
body#ThumbnailPreview div#references {
background-color: #FFF;
color: #00029D;
margin: 0 auto;
padding: 0;
width: 100%;
}
body#ThumbnailPreview div#references table.infolist tbody tr {
border-bottom: dashed 1px #000;
}
body#ThumbnailPreview div#references table.infolist tbody tr td.ColumnRowLabel a {
background: none;
width: 2%;
}
body#ThumbnailPreview div#references table.infolist tbody tr td.ColumnName {
width: 90%;
}
/* Contact
----------------------------------------------------- */
#researcher {
margin:16pt 0 0 0;
}
#Contact img {
float:right;
margin:0;
padding:0 0 9pt 9pt;
}
#Contact a {
color: #000;
text-decoration: none;
}
#researcher h3 {
margin:0;
}
#researcher span {
font:normal .9em/1.4em serif;
display:block;
float:left;
margin-right:.4em;
}
#city {
clear:left;
}
#locality, .locality {
display: block;
width: 100%;
}
#city:after {
content:",";
}
#email {
clear:left;
}
/* Subsections
----------------------------------------------------- */
#Home, #Introduction, #Download, #Contact {
padding:3em 20px;
}
/* Subsections : Events
----------------------------------------------------- */
#IndividualDetail .ColumnValue {
padding:4pt 0;
}
.ColumnValue p {
font:normal 9pt/11pt sans-serif;
margin:1pt 0 0 18pt;
}
/* Subsections : Gallery
----------------------------------------------------- */
#indivgallery h4 {
margin-bottom:1em;
}
#indivgallery .thumbnail {
margin:0;
float:left;
width:130px;
height:150px;
text-align:center;
}
#indivgallery .thumbnail a {
display:block;
margin:0;
padding:0;
background:none;
}
#indivgallery .thumbnail a img {
margin:0;
padding:0;
border:solid .5pt #000;
}
#indivgallery div.thumbnail span {
font:normal 7pt/9pt sans-serif;
text-align:center;
width:80%;
margin:0 auto;
padding:0;
}
/* Subsections : Attributes
----------------------------------------------------- */
div#attributes {
margin: 0;
padding: 0;
}
table.attrlist {
width: 100%;
}
table.attrlist thead tr th {
background-color: #70B1ED;
color: #000;
}
table.attrlist tbody tr td {
border-bottom: dashed 1px #000;
}
table.attrlist tbody tr td.ColumnType {
width: 15%;
}
table.attrlist tbody tr td.ColumnValue {
width: 15%;
}
table.attrlist tbody tr td.ColumnNotes {
width: 40%;
}
table.attrlist tbody tr td.ColumnSources {
width: 10%;
}
/* Subsections : Pedigree
----------------------------------------------------- */
#pedigree a {
text-decoration:none;
}
.content #pedigree a:link:after, .content #pedigree a:visited:after {
content:"";
}
.pedigreegen {
font:normal 10pt/12pt sans-serif;
list-style:none;
margin:8pt 0 0 0;
padding:0 0 0 20px;
}
.pedigreegen li ol {
list-style:none;
margin-left:16pt;
}
.pedigreegen li ol li ol {
font:normal 9pt/11pt sans-serif;
list-style:decimal;
margin-left:16pt;
}
.pedigreegen li ol li ol li ol.spouselist {
list-style:none;
margin-left:0;
}
.spouselist li.spouse ol {
list-style:decimal;
margin-left:16pt;
}
.spouse a {
font-weight:normal;
font-style:normal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight:bold;
}
/* Subsections : Ancestors Tree
----------------------------------------------------- */
#tree {
page-break-before:always;
margin:0;
padding:0;
}
#treeContainer {
position:relative;
z-index:1;
}
#treeContainer div.boxbg a:link:after, #treeContainer div.boxbg a:visited:after {
font-size:70%;
font-family:sans-serif;
content:"";
}
.boxbg {
position:absolute;
margin:0;
padding:0;
background:none;
}
#treeContainer div.boxbg span.thumbnail {
display:block;
margin:0 auto;
}
.boxbg a {
position:relative;
z-index:10;
display:block;
font:normal .7em/1.4em sans-serif;
text-align:center;
text-decoration:none;
width:50pt;
padding:5pt 8pt;
margin:5pt 0 0 0;
background-color:#FFF;
border:solid 1pt #000;
}
#treeContainer div.AncCol3 span.thumbnail, #treeContainer div.AncCol4 span.thumbnail {
display:none;
}
.shadow {
display:none;
}
#tree div div.bvline {
position:absolute;
z-index:2;
height:1pt;
margin:0;
padding:0;
background-color:#FFF;
border-bottom:solid .5pt #A7A7A7
}
#tree div div.bhline {
position:absolute;
z-index:2;
width:1pt;
margin:0;
padding:0;
background-color:#FFF;
border-right:solid .5pt #A7A7A7
}
.ghline, .gvline {
display:none;
}
/* Footer
----------------------------------------------------- */
#footer {
width: 100%;
margin: 0;
padding: .1in 0 0 0;
clear: both;
border-top: solid .5pt #000;
}
#user_footer {
float: left;
width: 70%;
}
#user_footer p {
font-style: italic;
}
p#createdate {
float: left;
width: 45%;
font: normal 9pt/10pt sans-serif;
margin: 0;
}
#copyright {
float: right;
width: 4in;
margin: 0;
font: normal 9pt/10pt sans-serif;
text-align: right;
}
#copyright img {
display: none;
}
/* Calendar Styles
-------------------------------------------------------------------------------------------- */
/* Calendar : General */
body#WebCal h1#SiteTitle {
float:left;
font-size:14pt;
line-height:16pt;
padding-bottom:.1in;
}
.calendar {
clear:both;
empty-cells:show;
width:100%;
font-size:14pt;
font-weight:normal;
margin:0;
padding:0;
border:none;
border-collapse:collapse;
}
.calendar thead, .calendar tbody {
border-style:solid;
border-width:2pt 2pt 2pt 2pt;
border-color:#000;
}
.calendar tbody {
border-top:none;
}
.calendar thead tr th {
width:12%;
font-family:sans-serif;
font-size:10pt;
font-weight:bold;
text-align:center;
text-transform:uppercase;
padding:.2em 0 .1em 0;
}
.calendar thead tr th.monthName {
width:100%;
font-size:20pt;
line-height:100%;
text-transform:none;
padding:5pt;
border-width:0;
}
#CreatorInfo {
float:right;
margin:0 10px 0 0;
}
body#WebCal a {
text-decoration:none;
color:#000;
}
.calendar tfoot {
border:none;
}
.calendar tfoot tr td {
font-size:12pt;
font-style:italic;
padding:.7em 5% 1em 5%;
}
/* Calendar : Date Numeral */
.calendar td div.date {
float:right;
display:block;
font-size:16pt;
line-height:100%;
font-weight:bold;
text-align:center;
color:#000;
margin:0 0 0 .5em;
padding:7pt;
}
.calendar td.highlight div.date {
color:#F00;
}
/* Calendar : Date Container */
.calendar tbody tr td {
vertical-align:top;
height:4em;
padding:0;
border-width:1px 0 0 1px;
border-style:solid;
border-color:#999;
}
.calendar tbody tr td:first-child {
border-left:none;
}
.calendar tbody tr:first-child td {
border-top:none;
}
/* Calendar : Date Detail */
.calendar tbody tr td ul {
list-style:none;
font-family:sans-serif;
font-size:8pt;
margin:30pt 0 5pt 0;
padding:0;
}
.calendar tbody tr td ul li {
display:block;
width:92%;
margin:0 4%;
padding:.2em 0 .3em 0;
border-top:dashed .5pt #999;
}
.calendar tbody tr td ul li:first-child {
border:none;
}
.calendar tbody tr td ul li em {
font-style:normal;
color:#000;
}
.calendar tbody tr td ul li span.yearsmarried em {
color:#000;
}
/* Calendar : Previous-Next Month */
.calendar tbody tr td.previous,
.calendar tbody tr td.next,
.calendar tbody tr td.previous div.date,
.calendar tbody tr td.next div.date {
font-weight:normal;
font-size:12pt;
color:#999;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
width:963px;
margin:0 auto;
padding:15px 0 2px 2px;
}
body#fullyearlinked table.calendar {
float:left;
width:320px;
height:18em;
border:solid 1px #000;
}
body#fullyearlinked table.calendar thead tr th {
height:2em;
}
body#fullyearlinked table.calendar thead tr th.monthName {
font-size:1.2em;
padding:2px 0;
}
body#fullyearlinked table.calendar tbody tr td {
height:3em;
}
-157
View File
@@ -1,157 +0,0 @@
/*
# encoding: utf-8
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright 2008-2010 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Web_Navigation-Vertical.css Stylesheet
***************************************************************************************************
# $Id: Web_Navigation-Vertical.css 15241 2010-04-19 11:07:00Z robhealey1 $
Body Element
----------------------------------------------------- */
body { background: -webkit-gradient
(linear, left top, left bottom, from(#ccc), to(#fff));
color: #000;
padding: 60px 0px 0px 146px;
}
/* Header
----------------------------------------------------- */
#header {
position: fixed;
top: 0px;
left: 0px;
overflow: auto;
width: 100%;
height: 65px;
}
/* Navigation
----------------------------------------------------- */
div#nav {
padding: 0px;
margin: 0 auto;
overflow: auto;
}
div#nav ul {
list-style-type: none;
display: block;
width: 330px;
position: fixed;
top: 53px;
left: 0px;
padding: 0px;
background: url(shad2.png) no-repeat;
-webkit-background-size: 50% 100%;
}
div#nav ul li a {
-webkit-transition: all 0.3s ease-out;
background: #cbcbcb url(border.png) no-repeat;
color: #174867;
padding: 7px 15px 7px 15px;
-webkit-border-top-right-radius: 10px;
-webkit-border-bottom-right-radius: 10px;
width: 120px;
display: block;
text-decoration: none;
-webkit-box-shadow: 2px 2px 4px #888;
}
div#nav ul li a:hover {
background: #ebebeb url(border.png) no-repeat;
color: #67a5cd;
padding: 7px 0px 7px 30px;
}
div#nav ul li.CurrentSection a {
background-color: #000;
color: #FFF;
}
/* SubNavigation
----------------------------------------------------- */
div#subnavigation {
width: 100%;
margin: 0;
padding: 0;
border: solid 2px #000;
}
div#subnavigation ul {
list-style:none;
min-width: 900px;
height: 40px;
margin:0;
padding: 0px 0px 0px 16px;
border-bottom: solid 2px #5D835F;
}
div#subnavigation ul li {
float:left;
}
div#subnavigation ul li:after {
content: "| ";
}
div#subnavigation ul li a {
display: block;
padding: 12px 16px 14px 1px;
float:left;
font: .8em bold italic small-caps verdana, serif;
color: #000;
text-decoration:none;
margin:0;
}
div#subnavigation ul li a:hover {
background-color: #C1B398;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
width: 100%;
margin: 0;
padding: 0;
border: solid 2px #000;
}
div#alphanav ul {
list-style:none;
min-width: 900px;
height: 24px;
margin:0;
padding: 0px 0px 0px 9px;
border-bottom: solid 2px #000;
}
div#alphanav ul li {
float: left;
}
div#alphanav ul li:first-child {
margin-left: 10px;
}
div#alphanav ul li:after {
content: "| ";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px 4px 8px;
float: left;
font: .8em bold italic small-caps verdana, serif;
color: #000;
text-decoration:none;
margin:0;
}
File diff suppressed because it is too large Load Diff
-176
View File
@@ -1,176 +0,0 @@
/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2010 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id: $
#
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Combined Ancestor Tree Style Sheet
***************************************************************************************************
#
===== Ancestor Graph Color Scheme =====
Males #BCEAF6
Females #FFC0CB
Unknown #000
#
===== Web Graphics =====
Males Web_Gender_Male.png
Females Web_Gender_Female.png
# ------------------------------------------------------------------------------------------------- */
/* Subsections : Ancestors Tree
----------------------------------------------------- */
#tree {
page-break-before:always;
margin:0;
padding:0;
background:none;
}
#treeContainer {
position:relative;
z-index:1;
}
#treeContainer div.boxbg {
position:absolute;
margin:0;
padding:0;
background:none;
}
#treeContainer div.boxbg a,
#treeContainer div.boxbg span.unlinked {
position:relative;
z-index:10;
display:block;
font:normal .7em/1.4em sans-serif;
text-align:center;
text-decoration:none;
color: #00029D;
width:118px;
padding:5px 20px 7px 20px;
margin-left:16px;
background-color: #FFF;
border: solid 1px #000;
}
#treeContainer div.boxbg a.noThumb,
#treeContainer div.AncCol3 a,
#treeContainer div.AncCol4 a,
#treeContainer div.AncCol3 span.unlinked,
#treeContainer div.AncCol4 span.unlinked {
margin-top:10px;
}
#treeContainer div.boxbg a:hover {
position:relative;
z-index:999;
font-size:1em;
text-decoration:none;
color: #00029D;
width:190px;
margin-left:-20px;
padding:10px 25px 12px 25px;
border: solid 2px #000;
}
#treeContainer div.boxbg a:hover,
#treeContainer div.AncCol3 a:hover,
#treeContainer div.AncCol4 a:hover {
margin-top:-44px;
}
#treeContainer div.boxbg a.noThumb:hover {
margin-top:0;
}
#treeContainer div.AncCol0 a:hover {
margin-left:12px;
}
#treeContainer div.AncCol4 a:hover {
margin-left:-60px;
}
#treeContainer div.boxbg span.thumbnail {
display:block;
max-width:80px;
max-height:65px;
margin:0 auto;
padding:4px 0;
}
#treeContainer div.boxbg span.thumbnail img {
max-width:80px;
max-height:65px;
margin:0 auto;
}
#treeContainer div.boxbg a:hover span.thumbnail, #treeContainer div.boxbg a:hover span.thumbnail img {
height:80px;
}
#treeContainer div.AncCol3 span.thumbnail, #treeContainer div.AncCol4 span.thumbnail {
display:none;
}
#treeContainer div.boxbg a:hover span.thumbnail {
display:block;
}
#treeContainer div.boxbg span.fullname {
display: none;
}
#treeContainer div.boxbg span.shortname {
display: inline;
}
#treeContainer div.boxbg a:hover span.fullname {
display: inline;
}
#treeContainer div.boxbg a:hover span.shortname {
display: none;
}
#treeContainer div.male a,
#treeContainer div.male span.unlinked {
background:url(../images/Web_Gender_Male.png) #BCEAF6 no-repeat top right;
}
#treeContainer div.female a,
#treeContainer div.female span.unlinked {
background:url(../images/Web_Gender_Female.png) #FFC0CB no-repeat top right;
}
#treeContainer div.unknown a,
#treeContainer div.unknown span.unlinked {
background-color: #000;
color: #FFF;
}
.shadow {
display:none;
}
#tree div div.bvline {
position:absolute;
z-index:2;
height:1px;
margin:0 0 0 16px;
padding:0;
background-color: #00029D;
}
#tree div div.bhline {
position:absolute;
z-index:2;
width:1px;
margin:0 0 0 16px;
padding:0;
background-color: #00029D;
}
.ghline, .gvline {
display:none;
}
-86
View File
@@ -1,86 +0,0 @@
/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright 2009 Stephane Charette and Jason Simanek
#
# 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 02111-1307 USA
#
**************************************************************************************************
GRAMPS cascading style sheet for common behaviour independant of styles
Style Name: n/a (used by many different styles)
Style Author: Stephane Charette and Jason Simanek
**************************************************************************************************
-------------
Image Gallery
-------------
# $Id$
ensure RegionBox <ol> is hidden and has no margins/padding that would shift the image */
ol.RegionBox {
display:none;
list-style:none;
margin:0;
padding:0;
}
/* show the RegionBox <ol> When the mouse hovers over the gallery */
div#GalleryDisplay:hover ol.RegionBox {
display:block;
}
/* define how <li> tags should normally look within RegionBox */
ol.RegionBox li {
margin:0;
padding:0;
display:block;
position:absolute;
text-align:center;
text-decoration:none;
border:dashed 1px #999;
background:url(../images/blank.gif) repeat;
/* IE doesn't work correctly with "hover" if the <li> tag is empty,
* so fill the <li> with a blank image; this way the mouse will be
* considered in the <li> tag anywhere over the background image
*/
}
/* use a solid border when the mouse hovers over the <li> tags */
ol.RegionBox li:hover {
z-index:100;
border:solid 1px #FFF;
}
/* links are kept hidden... */
ol.RegionBox li a {
display:none;
}
/* ...until we hover over them */
ol.RegionBox li:hover a {
display:block;
text-decoration:none;
border-bottom:solid 1px #FFF;
background-color:#888;
color:#FFF;
}
/* underline is hidden until we hover over the links */
ol.RegionBox li:hover a:hover {
text-decoration:underline;
}
-83
View File
@@ -1,83 +0,0 @@
/* Input textbox - do not specify a width here, it will be overwritten */
.ffb-input
{
float:left;
color:#000; /* must specify along with watermark color */
height:16px; /* required for webkit browsers (Safari, Chrome) */
}
/* Color of watermark, if present */
.ffb-input.watermark { /* added and removed dynamically */
color:#888; /* must specify along with input color */
}
/* Drop-down arrow, with sprited image */
.ffb-arrow
{
float:left;
width:17px;
height:22px;
background-image:url(../img/sel_win7.gif);
}
.ffb-arrow.out { /* css sprite technique */
background-position:0;
}
.ffb-arrow.over { /* css sprite technique */
background-position:-17px 0;
}
.ffb-arrow.active { /* css sprite technique */
background-position:-34px 0;
}
.ffb-no-results
{
padding:2px;
color:#888;
font-style:italic;
border-bottom:1px solid #828790;
}
/* Container for dropdown contents */
.ffb {
position:absolute; /* this guy's parent div is hard-coded to position:relative */
overflow:hidden;
border-left:1px solid #828790; /* #7B9EBD for Vista */
border-right:1px solid #828790;
background-color:#fff; /* Give it a background-color, so it's not transparent */
}
/* Inner div for dropdown */
.ffb .content {
overflow:auto;
}
.ffb .content .row {
border-bottom:1px solid #828790;
color:#000;
height:20px;
clear:both;
}
.ffb-sel {
cursor:pointer;
cursor:hand;
color:#fff !important;
background-color:#39f;
}
.ffb-match {
font-weight:bold;
color:#000;
}
/* Paging */
.ffb .paging {
vertical-align:middle;
border-bottom:1px solid #828790;
}
.ffb .page, .ffb a.page {
font-size:85%;
padding:2px;
border:solid 1px #339;
background-color:#eef;
margin:2px;
}
.ffb .box {
width:22px;
margin:2px;
}
.ffb .summary {
font-size:85%;
}
-65
View File
@@ -1,65 +0,0 @@
/*
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2011 Rob G. Healey <robhealey1@gmail.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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id$
#
###################################################### */
body#FamilyMap {
background-color: #000;
padding: 0 14px;
width: 965px;
}
/* Family Maps
------------------------------------------------------ */
#map_canvas {
margin-left: 10px;
margin-right: 10px;
border: solid 4px #000;
width: 931px;
height: 1000px;
}
/* Place Maps
------------------------------------------------------ */
div#place_canvas {
margin-left: 210px;
border: solid 4px #000;
width: 500px;
height: 400px;
}
button#drop {
background-color: purple;
color: #FFF;
font: bold .8em sans-serif;
padding: 10px;
margin-top: 10px;
margin-left: 10px;
border: solid 4px #00029D;
}
/* Subsection: References
------------------------------------------------------ */
div#FamilyMapDetail div#references table.infolist {
width: 100%;
}
div#FamilyMapDetail div#references table.infolist tbody tr td.ColumnPlace {
width: 40%;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 183 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

-406
View File
@@ -1,406 +0,0 @@
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
*/
/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Georgia,%20Verdana,Arial,sans-serif&fwDefault=bold&fsDefault=1.2em&cornerRadius=5px&bgColorHeader=261803&bgTextureHeader=13_diamond.png&bgImgOpacityHeader=8&borderColorHeader=baaa5a&fcHeader=eacd86&iconColorHeader=e9cd86&bgColorContent=443113&bgTextureContent=13_diamond.png&bgImgOpacityContent=8&borderColorContent=efec9f&fcContent=efec9f&iconColorContent=efec9f&bgColorDefault=4f4221&bgTextureDefault=13_diamond.png&bgImgOpacityDefault=10&borderColorDefault=362917&fcDefault=f8eec9&iconColorDefault=e8e2b5&bgColorHover=675423&bgTextureHover=13_diamond.png&bgImgOpacityHover=25&borderColorHover=362917&fcHover=f8eec9&iconColorHover=f2ec64&bgColorActive=443113&bgTextureActive=13_diamond.png&bgImgOpacityActive=8&borderColorActive=efec9f&fcActive=f9f2bd&iconColorActive=f9f2bd&bgColorHighlight=d5ac5d&bgTextureHighlight=13_diamond.png&bgImgOpacityHighlight=25&borderColorHighlight=362917&fcHighlight=060200&iconColorHighlight=070603&bgColorError=fee4bd&bgTextureError=04_highlight_hard.png&bgImgOpacityError=65&borderColorError=c26629&fcError=803f1e&iconColorError=ff7519&bgColorOverlay=372806&bgTextureOverlay=13_diamond.png&bgImgOpacityOverlay=20&opacityOverlay=80&bgColorShadow=ddd4b0&bgTextureShadow=01_flat.png&bgImgOpacityShadow=75&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=12px
*/
/* Component containers
----------------------------------*/
.ui-widget { font-family:Georgia, serif; color:#7D5925; font-size: 0.7em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { }
.ui-widget-content { border: 1px solid #efec9f; background: #443113 url(images/ui-bg_diamond_8_443113_10x8.png) 50% 50% repeat; color: #efec9f; }
.ui-widget-content a { color: #efec9f; background: none;}
.ui-widget-header { border: 1px solid #baaa5a; background: #261803 url(images/ui-bg_diamond_8_261803_10x8.png) 50% 50% repeat; color: #eacd86; font-weight: bold; }
.ui-widget-header a { color: #eacd86; }
/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #362917; background: #4f4221 url(images/ui-bg_diamond_10_4f4221_10x8.png) 50% 50% repeat; font-weight: bold; color: #f8eec9; outline: none; }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #f8eec9; text-decoration: none; outline: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #362917; background: #675423 url(images/ui-bg_diamond_25_675423_10x8.png) 50% 50% repeat; font-weight: bold; color: #f8eec9; outline: none; }
.ui-state-hover a, .ui-state-hover a:hover { color: #f8eec9; text-decoration: none; outline: none; }
.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #efec9f; background: #443113 url(images/ui-bg_diamond_8_443113_10x8.png) 50% 50% repeat; font-weight: bold; color: #f9f2bd; outline: none; }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #f9f2bd; outline: none; text-decoration: none; }
/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #362917; background: #d5ac5d url(images/ui-bg_diamond_25_d5ac5d_10x8.png) 50% 50% repeat; color: #060200; }
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #060200; }
.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #c26629; background: #fee4bd url(images/ui-bg_highlight-hard_65_fee4bd_1x100.png) 50% top repeat-x; color: #803f1e; }
.ui-state-error a, .ui-widget-content .ui-state-error a { color: #803f1e; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #803f1e; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_efec9f_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_efec9f_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_e9cd86_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_e8e2b5_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_f2ec64_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_f9f2bd_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_070603_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_ff7519_256x240.png); }
/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-off { background-position: -96px -144px; }
.ui-icon-radio-on { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-tl { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; }
.ui-corner-tr { -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; }
.ui-corner-bl { -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; }
.ui-corner-br { -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; }
.ui-corner-top { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; }
.ui-corner-bottom { -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; }
.ui-corner-right { -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; }
.ui-corner-left { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; }
.ui-corner-all { -moz-border-radius: 5px; -webkit-border-radius: 5px; }
/* Overlays */
.ui-widget-overlay { background: #372806 url(images/ui-bg_diamond_20_372806_10x8.png) 50% 50% repeat; opacity: .80;filter:Alpha(Opacity=80); }
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #ddd4b0 url(images/ui-bg_flat_75_ddd4b0_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 12px; -webkit-border-radius: 12px; }/* Accordion
----------------------------------*/
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
.ui-accordion .ui-accordion-li-fix { display: inline; }
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; }
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; }
.ui-accordion .ui-accordion-content-active { display: block; }/* Datepicker
----------------------------------*/
.ui-datepicker { width: 17em; padding: .2em .2em 0; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi { width:auto; }
.ui-datepicker-multi .ui-datepicker-group { float:left; }
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:both; width:100%; }
/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
display: none; /*sorry for IE5*/
display/**/: block; /*sorry for IE5*/
position: absolute; /*must have*/
z-index: -1; /*must have*/
filter: mask(); /*must have*/
top: -4px; /*must have*/
left: -4px; /*must have*/
width: 200px; /*must have*/
height: 200px; /*must have*/
}/* Dialog
----------------------------------*/
.ui-dialog { position: relative; padding: .2em; width: 300px; }
.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; }
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }
/* Progressbar
----------------------------------*/
.ui-progressbar { height:2em; text-align: left; }
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/* Resizable
----------------------------------*/
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* Slider
----------------------------------*/
.ui-slider { position: relative; text-align: left; }
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; }
.ui-slider-horizontal { height: .8em; }
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
.ui-slider-vertical { width: .8em; height: 100px; }
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
.ui-slider-vertical .ui-slider-range-max { top: 0; }/* Tabs
----------------------------------*/
.ui-tabs { padding: .2em; zoom: 1; }
.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; }
.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; }
.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }
-406
View File
@@ -1,406 +0,0 @@
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
*/
/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
/* end clearfix */
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/*
* jQuery UI CSS Framework
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Georgia,serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=7D5925&bgTextureHeader=02_glass.png&bgImgOpacityHeader=25&borderColorHeader=7D5925&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=FFF2C6&bgTextureContent=05_inset_soft.png&bgImgOpacityContent=100&borderColorContent=7D5925&fcContent=7D5925&iconColorContent=c47a23&bgColorDefault=FFF2C6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=100&borderColorDefault=7D5925&fcDefault=7D5925&iconColorDefault=f08000&bgColorHover=f5f0e5&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=f5ad66&fcHover=a46313&iconColorHover=f08000&bgColorActive=f4f0ec&bgTextureActive=04_highlight_hard.png&bgImgOpacityActive=100&borderColorActive=7D5925&fcActive=b85700&iconColorActive=f35f07&bgColorHighlight=f5f5b5&bgTextureHighlight=04_highlight_hard.png&bgImgOpacityHighlight=100&borderColorHighlight=d9bb73&fcHighlight=060200&iconColorHighlight=cb672b&bgColorError=fee4bd&bgTextureError=04_highlight_hard.png&bgImgOpacityError=65&borderColorError=f8893f&fcError=dd4e2c&iconColorError=ff7519&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=75&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=100&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
*/
/* Component containers
----------------------------------*/
.ui-widget { font-family: Georgia,serif; font-size: 1.1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Georgia,serif; font-size: 1em; }
.ui-widget-content { border: 1px solid #7D5925; background: #FFF2C6 url(images/Web_Mainz_Mid.png) 50% bottom repeat-x; color: #7D5925; } /* ui-bg_inset-soft_100_FFF2C6_1x100.png */
.ui-widget-content a { color: #7D5925; background: #FFF2C6 url(images/Web_Mainz_Mid.png) 50% bottom repeat-x; }
.ui-widget-header { border: 1px solid #7D5925; background: #7D5925 url(images/Web_Mainz_MidLight.png) 50% 50% repeat-x; color: #ffffff; font-weight: bold; }/* ui-bg_glass_25_7D5925_1x400.png */
.ui-widget-header a { color: #7D5925; background: #7D5925 url(images/Web_Mainz_MidLight.png) 50% bottom repeat-x; }
/* Interaction states
----------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default { border: 1px solid #7D5925; background: #FFF2C6 url(images/Web_Mainz_MidLight.png) 50% 50% repeat-x; font-weight: normal; color: #7D5925; outline: none; }
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #7D5925; text-decoration: none; outline: none; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #f5ad66; background: #f5f0e5 url(images/ui-bg_glass_100_f5f0e5_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #a46313; outline: none; }
.ui-state-hover a, .ui-state-hover a:hover { color: #a46313; text-decoration: none; outline: none; }
.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #7D5925; background: #f4f0ec url(images/Web_Mainz_MidLight.png) 50% 50% repeat-x; font-weight: normal; color: #b85700; outline: none; }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #b85700; outline: none; text-decoration: none; }
/* Interaction Cues
----------------------------------*/
.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #d9bb73; background: #f5f5b5 url(images/ui-bg_highlight-hard_100_f5f5b5_1x100.png) 50% top repeat-x; color: #060200; }
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #060200; }
.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #f8893f; background: #fee4bd url(images/ui-bg_highlight-hard_65_fee4bd_1x100.png) 50% top repeat-x; color: #dd4e2c; }
.ui-state-error a, .ui-widget-content .ui-state-error a { color: #dd4e2c; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #dd4e2c; }
.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
/* Icons
----------------------------------*/
/* states and images */
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_c47a23_256x240.png); }
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_c47a23_256x240.png); }
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); }
.ui-state-default .ui-icon { background-image: url(images/ui-icons_f08000_256x240.png); }
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_f08000_256x240.png); }
.ui-state-active .ui-icon {background-image: url(images/ui-icons_f35f07_256x240.png); }
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_cb672b_256x240.png); }
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_ff7519_256x240.png); }
/* positioning */
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-off { background-position: -96px -144px; }
.ui-icon-radio-on { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-tl { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; }
.ui-corner-tr { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; }
.ui-corner-bl { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; }
.ui-corner-br { -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; }
.ui-corner-top { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; }
.ui-corner-bottom { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; }
.ui-corner-right { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; }
.ui-corner-left { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; }
.ui-corner-all { -moz-border-radius: 6px; -webkit-border-radius: 6px; }
/* Overlays */
.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_75_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_100_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; }/* Accordion
----------------------------------*/
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
.ui-accordion .ui-accordion-li-fix { display: inline; }
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; }
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; }
.ui-accordion .ui-accordion-content-active { display: block; }/* Datepicker
----------------------------------*/
.ui-datepicker { width: 17em; padding: .2em .2em 0; }
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
.ui-datepicker .ui-datepicker-prev { left:2px; }
.ui-datepicker .ui-datepicker-next { right:2px; }
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year { width: 49%;}
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
.ui-datepicker td { border: 0; padding: 1px; }
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi { width:auto; }
.ui-datepicker-multi .ui-datepicker-group { float:left; }
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:both; width:100%; }
/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
.ui-datepicker-cover {
display: none; /*sorry for IE5*/
display/**/: block; /*sorry for IE5*/
position: absolute; /*must have*/
z-index: -1; /*must have*/
filter: mask(); /*must have*/
top: -4px; /*must have*/
left: -4px; /*must have*/
width: 200px; /*must have*/
height: 200px; /*must have*/
}/* Dialog
----------------------------------*/
.ui-dialog { position: relative; padding: .2em; width: 300px; }
.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative; }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; }
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }
/* Progressbar
----------------------------------*/
.ui-progressbar { height:2em; text-align: left; }
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/* Resizable
----------------------------------*/
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* Slider
----------------------------------*/
.ui-slider { position: relative; text-align: left; }
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; }
.ui-slider-horizontal { height: .8em; }
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
.ui-slider-vertical { width: .8em; height: 100px; }
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
.ui-slider-vertical .ui-slider-range-max { top: 0; }/* Tabs
----------------------------------*/
.ui-tabs { padding: .2em; zoom: 1; }
.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; }
.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; }
.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }
-18
View File
@@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<application>
<id type="desktop">gramps.desktop</id>
<licence>CC0</licence>
<description>
<_p>Gramps is a genealogy program that is both intuitive for hobbyists and feature-complete for professional genealogists.</_p>
<_p>It gives you the ability to record the many details of the life of an individual as well as the complex relationships between various people, places and events.</_p>
<_p>All of your research is kept organized, searchable and as precise as you need it to be.</_p>
</description>
<url type="homepage">http://gramps-project.org/</url>
<screenshots>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/5/5f/AppData1.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/6/68/AppData2.png</screenshot>
<screenshot type="default" width="1226" height="740">http://www.gramps-project.org/wiki/images/e/e9/AppData3.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/6/68/AppData4.png</screenshot>
<screenshot width="1226" height="740">http://www.gramps-project.org/wiki/images/5/50/AppData5.png</screenshot>
</screenshots>
</application>
+5 -5
View File
@@ -1,12 +1,12 @@
[Desktop Entry]
_Name=Gramps
_GenericName=Genealogy System
_X-GNOME-FullName=Gramps Genealogy System
Encoding=UTF-8
_Name=GRAMPS Genealogy System
_Comment=Manage genealogical information, perform genealogical research and analysis
Icon=gramps
Icon=gramps.png
Terminal=false
Type=Application
StartupNotify=true
Categories=GTK;Office;
MimeType=application/x-gramps;application/x-gedcom;application/x-gramps-package;application/x-gramps-xml;
X-GNOME-DocPath=gramps/gramps-manual.xml
MimeType=application/x-gramps;application/x-gedcom;application/x-gramps-package;application/x-gramps-xml
Exec=gramps %F
+3 -3
View File
@@ -1,5 +1,5 @@
application/x-gramps:
_description=Gramps database
_description=GRAMPS database
default_action_type=application
short_list_application_ids=gramps
short_list_application_ids_for_novice_user_level=gramps
@@ -10,7 +10,7 @@ application/x-gramps:
open=gramps %f
application/x-gramps-package:
_description=Gramps package
_description=GRAMPS package
default_action_type=application
short_list_application_ids=gramps
short_list_application_ids_for_novice_user_level=gramps
@@ -21,7 +21,7 @@ application/x-gramps-package:
open=gramps %f
application/x-gramps-xml:
_description=Gramps XML database
_description=GRAMPS XML database
default_action_type=application
short_list_application_ids=gramps
short_list_application_ids_for_novice_user_level=gramps
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -4,7 +4,7 @@
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="application/x-gramps">
<_comment>Gramps database</_comment>
<_comment>GRAMPS database</_comment>
<glob pattern="*.grdb"/>
</mime-type>
<mime-type type="application/x-gedcom">
@@ -18,11 +18,11 @@
</magic>
</mime-type>
<mime-type type="application/x-gramps-package">
<_comment>Gramps package</_comment>
<_comment>GRAMPS package</_comment>
<glob pattern="*.gpkg"/>
</mime-type>
<mime-type type="application/x-gramps-xml">
<_comment>Gramps XML database</_comment>
<_comment>GRAMPS XML database</_comment>
<glob pattern="*.gramps"/>
<magic priority="80">
<match type="string" value="&lt;!DOCTYPE database" offset="0:256"/>
-91
View File
@@ -1,91 +0,0 @@
<?xml version="1.0"?>
<!--
Gramps - a GTK+/GNOME based genealogy program
Copyright (C) 2011 Michiel D. Nauta
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 02111-1307 USA
$Id$
-->
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:g="http://gramps-project.org/xml/1.4.0/">
<!--
Transform a Gramps XML file into "canonical form", that is strip the
timestamps in the change attributes, and order all elements for which
the id attribute is used. The idea is that "canonical Gramps XML" files
can be compared with eachother with the help of ordinary diff tools.
-->
<xsl:output method="xml"/>
<xsl:param name="replace_handles"/>
<xsl:key name="primary_obj" match="g:person|g:family|g:event|g:placeobj|g:source|g:repository|g:object|g:note|g:tag" use="@handle"/>
<xsl:template match="*|@*|text()">
<xsl:copy>
<xsl:apply-templates select="*|@*|text()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@change">
</xsl:template>
<xsl:template match="g:researcher">
<xsl:copy/>
</xsl:template>
<xsl:template match="g:people|g:families|g:events|g:places|g:sources|g:repositories|g:objects|g:notes|g:tags">
<xsl:copy>
<xsl:apply-templates select="*">
<xsl:sort select="@id"/>
</xsl:apply-templates>
</xsl:copy>
</xsl:template>
<xsl:template match="@handle">
<xsl:choose>
<xsl:when test="$replace_handles='ID'">
<xsl:attribute name="handle">
<xsl:value-of select="../@id"/>
</xsl:attribute>
</xsl:when>
<xsl:when test="$replace_handles='strip'">
</xsl:when>
<xsl:otherwise>
<xsl:copy/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="@hlink">
<xsl:choose>
<xsl:when test="$replace_handles='ID'">
<xsl:attribute name="hlink">
<xsl:value-of select="key('primary_obj',.)/@id"/>
</xsl:attribute>
</xsl:when>
<xsl:when test="$replace_handles='strip'">
</xsl:when>
<xsl:otherwise>
<xsl:copy/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
+153 -251
View File
@@ -3,9 +3,8 @@
<!--
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2001 Graham J. Williams
# Copyright (C) 2001 Graham J. Williams
# Copyright (C) 2000-2007 Donald N. Allingham
# Copyright (C) 2010-2014 Nick Hall
#
# 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
@@ -25,55 +24,47 @@
-->
<!--
This is the Document Type Definition file for v1.6.0
This is the Document Type Definition file for v1.1.4
of the GRAMPS XML genealogy data format.
Please use the following formal public identifier to identify it:
"-//GRAMPS//DTD GRAMPS XML V1.6.0//EN"
"-//GRAMPS//DTD GRAMPS XML V1.1.4//EN"
For example:
<!DOCTYPE database PUBLIC "-//GRAMPS//DTD GRAMPS XML V1.6.0//EN"
"http://gramps-project.org/xml/1.6.0/grampsxml.dtd"
<!DOCTYPE database PUBLIC "-//GRAMPS//DTD GRAMPS XML V1.1.4//EN"
"http://gramps-project.org/xml/1.1.4/grampsxml.dtd"
[...]>
-->
<!--
DATABASE
Defines an XML document which is a <database> consisting of a
Defines an XML document which is a <database> consisting of a
header Information about the "owner" of the database
name-formats
people
families
events
places
citations
sources
objects
repositories
notes
tags
bookmarks
namemaps
tags
header Information about the "owner" of the database
people
families
sources
places
objects
repositories
bookmarks
-->
<!ELEMENT database (header, name-formats?, tags?, events?, people?, families?,
citations?, sources?, places?, objects?, repositories?,
notes?, bookmarks?, namemaps?)>
<!ATTLIST database xmlns CDATA #FIXED "http://gramps-project.org/xml/1.6.0/">
<!ELEMENT database (header, name-formats?, events?, people?, families?,
sources?, places?, objects?, repositories?,
bookmarks?, namemaps?)>
<!ATTLIST database xmlns CDATA #FIXED "http://gramps-project.org/xml/1.1.4/">
<!-- ************************************************************
<!-- ************************************************************
HEADER
A <header> consists of <created> (information about this
genealogical database) and <researcher> (information about the
person who created this genealogical database)
A <header> consists of <created> (information about this
genealogical database) and <researcher> (information about the
person who created this genealogical database)
-->
<!ELEMENT header (created, researcher?, mediapath?)>
<!ELEMENT header (created, researcher?)>
<!ELEMENT created EMPTY>
<!ATTLIST created
@@ -81,21 +72,18 @@ HEADER
version CDATA #REQUIRED
>
<!ELEMENT researcher (resname?, resaddr?, reslocality?, rescity?, resstate?,
<!ELEMENT researcher (resname, resaddr?, rescity?, resstate?,
rescountry?, respostal?, resphone?, resemail?)>
<!ELEMENT resname (#PCDATA)>
<!ELEMENT resaddr (#PCDATA)>
<!ELEMENT reslocality (#PCDATA)>
<!ELEMENT rescity (#PCDATA)>
<!ELEMENT resstate (#PCDATA)>
<!ELEMENT rescountry (#PCDATA)>
<!ELEMENT respostal (#PCDATA)>
<!ELEMENT resphone (#PCDATA)>
<!ELEMENT resemail (#PCDATA)>
<!ELEMENT resname (#PCDATA)>
<!ELEMENT resaddr (#PCDATA)>
<!ELEMENT rescity (#PCDATA)>
<!ELEMENT resstate (#PCDATA)>
<!ELEMENT rescountry (#PCDATA)>
<!ELEMENT respostal (#PCDATA)>
<!ELEMENT resphone (#PCDATA)>
<!ELEMENT resemail (#PCDATA)>
<!ELEMENT mediapath (#PCDATA)>
<!-- ************************************************************
<!-- ************************************************************
PEOPLE
-->
@@ -105,13 +93,14 @@ PEOPLE
home IDREF #IMPLIED
>
<!ELEMENT person (gender, name*, eventref*, lds_ord*,
objref*, address*, attribute*, url*, childof*,
parentin*, personref*, noteref*, citationref*, tagref*)>
<!ELEMENT person (gender, name*, nick?, eventref*, lds_ord*,
objref*, address*, attribute*, url*,
childof*, parentin*, personref*, note?, sourceref*)>
<!ATTLIST person
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
>
@@ -120,8 +109,8 @@ GENDER has values of M, F, or U.
-->
<!ELEMENT gender (#PCDATA)>
<!ELEMENT name (first?, call?, surname*, suffix?, title?, nick?, familynick?, group?,
(daterange|datespan|dateval|datestr)?, noteref*, citationref*)>
<!ELEMENT name (first?,call?,last?,suffix?,patronymic?,title?,
(daterange|datespan|dateval|datestr)?,note?,sourceref*)>
<!ATTLIST name
alt (0|1) #IMPLIED
type CDATA #IMPLIED
@@ -132,18 +121,16 @@ GENDER has values of M, F, or U.
<!ELEMENT first (#PCDATA)>
<!ELEMENT call (#PCDATA)>
<!ELEMENT suffix (#PCDATA)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT nick (#PCDATA)>
<!ELEMENT familynick (#PCDATA)>
<!ELEMENT group (#PCDATA)>
<!ELEMENT surname (#PCDATA)>
<!ATTLIST surname
prefix CDATA #IMPLIED
prim (1|0) #IMPLIED
derivation CDATA #IMPLIED
connector CDATA #IMPLIED
<!ELEMENT last (#PCDATA)>
<!ATTLIST last
prefix CDATA #IMPLIED
group CDATA #IMPLIED
>
<!ELEMENT suffix (#PCDATA)>
<!ELEMENT patronymic (#PCDATA)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT nick (#PCDATA)>
<!ELEMENT childof EMPTY>
<!ATTLIST childof hlink IDREF #REQUIRED
@@ -152,41 +139,40 @@ GENDER has values of M, F, or U.
<!ELEMENT parentin EMPTY>
<!ATTLIST parentin hlink IDREF #REQUIRED>
<!ELEMENT personref (citationref*, noteref*)>
<!ELEMENT personref (sourceref*,note?)>
<!ATTLIST personref
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
rel CDATA #REQUIRED
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
rel CDATA #REQUIRED
>
<!ELEMENT address ((daterange|datespan|dateval|datestr)?, street?,
locality?, city?, county?, state?, country?, postal?,
phone?, noteref*,citationref*)>
<!ELEMENT address ((daterange|datespan|dateval|datestr)?,street?,city?,
county?,state?,country?,postal?,phone?,note?,sourceref*)>
<!ATTLIST address priv (0|1) #IMPLIED>
<!ELEMENT street (#PCDATA)>
<!ELEMENT locality (#PCDATA)>
<!ELEMENT city (#PCDATA)>
<!ELEMENT county (#PCDATA)>
<!ELEMENT state (#PCDATA)>
<!ELEMENT country (#PCDATA)>
<!ELEMENT postal (#PCDATA)>
<!ELEMENT phone (#PCDATA)>
<!ELEMENT street (#PCDATA)>
<!ELEMENT city (#PCDATA)>
<!ELEMENT county (#PCDATA)>
<!ELEMENT country (#PCDATA)>
<!ELEMENT postal (#PCDATA)>
<!ELEMENT state (#PCDATA)>
<!ELEMENT phone (#PCDATA)>
<!-- ************************************************************
<!-- ************************************************************
FAMILY
An element to record information about a family.
An element to record information about a family.
-->
<!ELEMENT families (family)*>
<!ELEMENT family (rel?, father?, mother?, eventref*, lds_ord*, objref*,
childref*, attribute*, noteref*, citationref*, tagref*)>
<!ELEMENT family (rel?,father?,mother?,eventref*,lds_ord*,
objref*,childref*,attribute*,note?,sourceref*)>
<!ATTLIST family
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
>
@@ -196,12 +182,12 @@ FAMILY
<!ELEMENT mother EMPTY>
<!ATTLIST mother hlink IDREF #REQUIRED>
<!ELEMENT childref (citationref*,noteref*)>
<!ELEMENT childref (sourceref*,note?)>
<!ATTLIST childref
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
mrel (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) #IMPLIED
frel (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) #IMPLIED
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
mrel (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) #IMPLIED
frel (None|Birth|Adopted|Stepchild|Sponsored|Foster|Other|Unknown) #IMPLIED
>
<!ELEMENT type (#PCDATA)>
@@ -209,32 +195,33 @@ FAMILY
<!ELEMENT rel EMPTY>
<!ATTLIST rel type CDATA #REQUIRED>
<!-- ************************************************************
<!-- ************************************************************
EVENT
-->
<!ELEMENT events (event)*>
<!ELEMENT event (type?, (daterange|datespan|dateval|datestr)?, place?, cause?,
description?, attribute*, noteref*, citationref*, objref*,
tagref*)>
<!ELEMENT event (type?,(daterange|datespan|dateval|datestr)?,place?,cause?,
description?,attribute*,note?,sourceref*,objref*)>
<!ATTLIST event
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
>
<!-- ************************************************************
<!-- ************************************************************
SOURCES
-->
<!ELEMENT sources (source)*>
<!ELEMENT source (stitle?, sauthor?, spubinfo?, sabbrev?,
noteref*, objref*, srcattribute*, reporef*, tagref*)>
<!ELEMENT source (stitle?,sauthor?,spubinfo?,sabbrev?,
note?,objref*,data_item*,reporef*)>
<!ATTLIST source
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
>
<!ELEMENT stitle (#PCDATA)>
@@ -242,26 +229,22 @@ SOURCES
<!ELEMENT spubinfo (#PCDATA)>
<!ELEMENT sabbrev (#PCDATA)>
<!-- ************************************************************
<!-- ************************************************************
PLACES
-->
<!ELEMENT places (placeobj)*>
<!ELEMENT placeobj (ptitle?, code?, alt_name*, coord?, placeref*, location*,
objref*, url*, noteref*, citationref*, tagref*)>
<!ELEMENT placeobj (ptitle?,coord?,location*,objref*,url*,note?,sourceref*)>
<!ATTLIST placeobj
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
name CDATA #REQUIRED
type CDATA #REQUIRED
>
<!ELEMENT ptitle (#PCDATA)>
<!ELEMENT code (#PCDATA)>
<!ELEMENT alt_name (#PCDATA)>
<!ELEMENT ptitle (#PCDATA)>
<!ELEMENT coord EMPTY>
<!ATTLIST coord
@@ -271,29 +254,29 @@ PLACES
<!ELEMENT location EMPTY>
<!ATTLIST location
street CDATA #IMPLIED
locality CDATA #IMPLIED
city CDATA #IMPLIED
parish CDATA #IMPLIED
county CDATA #IMPLIED
state CDATA #IMPLIED
country CDATA #IMPLIED
postal CDATA #IMPLIED
phone CDATA #IMPLIED
street CDATA #IMPLIED
city CDATA #IMPLIED
parish CDATA #IMPLIED
county CDATA #IMPLIED
state CDATA #IMPLIED
country CDATA #IMPLIED
postal CDATA #IMPLIED
phone CDATA #IMPLIED
>
<!-- ************************************************************
<!-- ************************************************************
OBJECTS
-->
<!ELEMENT objects (object)*>
<!ELEMENT object (file, attribute*, noteref*,
(daterange|datespan|dateval|datestr)?, citationref*, tagref*)>
<!ELEMENT object (file,attribute*,note?,(daterange|datespan|dateval|datestr)?,
sourceref*)>
<!ATTLIST object
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
>
@@ -301,111 +284,50 @@ OBJECTS
<!ATTLIST file
src CDATA #REQUIRED
mime CDATA #REQUIRED
checksum CDATA #IMPLIED
description CDATA #REQUIRED
>
<!-- ************************************************************
<!-- ************************************************************
REPOSITORIES
-->
<!ELEMENT repositories (repository)*>
<!ELEMENT repository (rname, type, address*, url*, noteref*, tagref*)>
<!ELEMENT repository (rname,type,address*,url*,note?)>
<!ATTLIST repository
id CDATA #IMPLIED
id CDATA #REQUIRED
handle ID #REQUIRED
priv (0|1) #IMPLIED
marker CDATA #IMPLIED
change CDATA #REQUIRED
>
<!ELEMENT rname (#PCDATA)>
<!-- ************************************************************
NOTES
-->
<!ELEMENT notes (note)*>
<!ELEMENT note (text, style*, tagref*)>
<!ATTLIST note
id CDATA #IMPLIED
handle ID #REQUIRED
priv (0|1) #IMPLIED
change CDATA #REQUIRED
format (0|1) #IMPLIED
type CDATA #REQUIRED
>
<!ELEMENT text (#PCDATA)>
<!ELEMENT style (range+)>
<!ATTLIST style
name (bold|italic|underline|fontface|fontsize|
fontcolor|highlight|superscript|link) #REQUIRED
value CDATA #IMPLIED
>
<!ELEMENT range EMPTY>
<!ATTLIST range
start CDATA #REQUIRED
end CDATA #REQUIRED
>
<!-- ************************************************************
TAGS
-->
<!ELEMENT tags (tag)*>
<!ELEMENT tag EMPTY>
<!ATTLIST tag
handle ID #REQUIRED
name CDATA #REQUIRED
color CDATA #REQUIRED
priority CDATA #REQUIRED
change CDATA #REQUIRED
>
<!-- ************************************************************
CITATIONS
-->
<!ELEMENT citations (citation)*>
<!ELEMENT citation ((daterange|datespan|dateval|datestr)?, page?, confidence,
noteref*, objref*, srcattribute*, sourceref, tagref*)>
<!ATTLIST citation
id CDATA #IMPLIED
handle ID #REQUIRED
priv (0|1) #IMPLIED
change CDATA #REQUIRED
>
<!-- ************************************************************
<!-- ************************************************************
BOOKMARKS
-->
<!ELEMENT bookmarks (bookmark)*>
<!ELEMENT bookmark EMPTY>
<!ATTLIST bookmark
target (person|family|event|source|citation|place|media|repository|
note) #REQUIRED
target (person|family|event|source|place|media|repository) #REQUIRED
hlink IDREF #REQUIRED
>
<!-- ************************************************************
<!-- ************************************************************
NAME MAPS
-->
<!ELEMENT namemaps (map)*>
<!ELEMENT map EMPTY>
<!ATTLIST map
type CDATA #REQUIRED
type CDATA #REUIRED
key CDATA #REQUIRED
value CDATA #REQUIRED
>
<!-- ************************************************************
<!-- ************************************************************
NAME FORMATS
-->
@@ -418,93 +340,78 @@ NAME FORMATS
active (0|1) #IMPLIED
>
<!-- ************************************************************
<!-- ************************************************************
SHARED ELEMENTS
-->
<!ELEMENT daterange EMPTY>
<!ELEMENT daterange EMPTY>
<!ATTLIST daterange
start CDATA #REQUIRED
stop CDATA #REQUIRED
quality (estimated|calculated) #IMPLIED
cformat CDATA #IMPLIED
dualdated (0|1) #IMPLIED
newyear CDATA #IMPLIED
start CDATA #REQUIRED
stop CDATA #REQUIRED
quality (estimated|calculated) #IMPLIED
cformat CDATA #IMPLIED
>
<!ELEMENT datespan EMPTY>
<!ELEMENT datespan EMPTY>
<!ATTLIST datespan
start CDATA #REQUIRED
stop CDATA #REQUIRED
quality (estimated|calculated) #IMPLIED
cformat CDATA #IMPLIED
dualdated (0|1) #IMPLIED
newyear CDATA #IMPLIED
start CDATA #REQUIRED
stop CDATA #REQUIRED
quality (estimated|calculated) #IMPLIED
cformat CDATA #IMPLIED
>
<!ELEMENT dateval EMPTY>
<!ELEMENT dateval EMPTY>
<!ATTLIST dateval
val CDATA #REQUIRED
type (before|after|about) #IMPLIED
quality (estimated|calculated) #IMPLIED
cformat CDATA #IMPLIED
dualdated (0|1) #IMPLIED
newyear CDATA #IMPLIED
val CDATA #REQUIRED
type (before|after|about) #IMPLIED
quality (estimated|calculated) #IMPLIED
cformat CDATA #IMPLIED
>
<!ELEMENT datestr EMPTY>
<!ELEMENT datestr EMPTY>
<!ATTLIST datestr val CDATA #REQUIRED>
<!ELEMENT citationref EMPTY>
<!ATTLIST citationref
hlink IDREF #REQUIRED
>
<!ELEMENT note (#PCDATA)>
<!ATTLIST note format (0|1) #IMPLIED>
<!ELEMENT sourceref EMPTY>
<!ELEMENT sourceref (spage?,scomments?,stext?,(daterange|dateval|datestr)?)>
<!ATTLIST sourceref
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
conf CDATA #IMPLIED
>
<!ELEMENT eventref (attribute*, noteref*)>
<!ELEMENT eventref (attribute*,note?)>
<!ATTLIST eventref
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
role CDATA #IMPLIED
>
<!ELEMENT reporef (noteref*)>
<!ELEMENT reporef (note?)>
<!ATTLIST reporef
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
callno CDATA #IMPLIED
medium CDATA #IMPLIED
>
<!ELEMENT noteref EMPTY>
<!ATTLIST noteref
hlink IDREF #REQUIRED
<!ELEMENT marker EMPTY>
<!ATTLIST marker
type CDATA #REQUIRED
>
<!ELEMENT tagref EMPTY>
<!ATTLIST tagref
hlink IDREF #REQUIRED
>
<!ELEMENT spage (#PCDATA)>
<!ELEMENT scomments (#PCDATA)>
<!ELEMENT sdate (#PCDATA)>
<!ELEMENT stext (#PCDATA)>
<!ELEMENT page (#PCDATA)>
<!ELEMENT confidence (#PCDATA)>
<!ELEMENT attribute (citationref*, noteref*)>
<!ELEMENT attribute (sourceref*,note?)>
<!ATTLIST attribute
priv (0|1) #IMPLIED
type CDATA #REQUIRED
value CDATA #REQUIRED
priv (0|1) #IMPLIED
type CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ELEMENT srcattribute EMPTY>
<!ATTLIST srcattribute
priv (0|1) #IMPLIED
type CDATA #REQUIRED
value CDATA #REQUIRED
>
<!ELEMENT comment (#PCDATA)>
<!ELEMENT place EMPTY>
<!ATTLIST place hlink IDREF #REQUIRED>
@@ -514,23 +421,18 @@ SHARED ELEMENTS
<!ELEMENT url EMPTY>
<!ATTLIST url
priv (0|1) #IMPLIED
type CDATA #IMPLIED
href CDATA #REQUIRED
priv (0|1) #IMPLIED
type CDATA #IMPLIED
href CDATA #REQUIRED
description CDATA #IMPLIED
>
<!ELEMENT objref (region?, attribute*, citationref*, noteref*)>
<!ELEMENT objref (region?,attribute*,sourceref*,note?)>
<!ATTLIST objref
hlink IDREF #REQUIRED
priv (0|1) #IMPLIED
>
<!ELEMENT placeref ((daterange|datespan|dateval|datestr)?)>
<!ATTLIST placeref
hlink IDREF #REQUIRED
>
<!ELEMENT region EMPTY>
<!ATTLIST region
corner1_x CDATA #REQUIRED
@@ -545,10 +447,10 @@ SHARED ELEMENTS
value CDATA #REQUIRED
>
<!ELEMENT lds_ord ((daterange|datespan|dateval|datestr)?, temple?, place?,
status?, sealed_to?, noteref*, citationref*)>
<!ELEMENT lds_ord ((daterange|dateval|datestr)?,temple?,place?,status?,
sealed_to?,note?,sourceref*)>
<!ATTLIST lds_ord
priv (0|1) #IMPLIED
priv (0|1) #IMPLIED
type CDATA #REQUIRED
>
+102 -289
View File
@@ -4,7 +4,6 @@
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2005-2007 Donald N. Allingham
# Copyright (C) 2010-2014 Nick Hall
#
# 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
@@ -22,16 +21,17 @@
# Written by Alex Roitman
# $Id$
-->
<!--
This is the RELAX NG schema for the Gramps XML genealogy data format.
This is the RELAX NG schema for the GRAMPS XML genealogy data format.
-->
<grammar
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
ns="http://gramps-project.org/xml/1.6.0/"
ns="http://gramps-project.org/xml/1.1.4/"
xmlns="http://relaxng.org/ns/structure/1.0">
<start><element name="database">
@@ -41,15 +41,9 @@
<attribute name="date"><data type="date"/></attribute>
<attribute name="version"><text/></attribute>
</element>
<element name="researcher">
<optional>
<optional><element name="researcher">
<ref name="researcher-content"/>
</optional>
</element>
<optional>
<element name="mediapath"><text/>
</element>
</optional>
</element></optional>
</element>
<optional><element name="name-formats">
@@ -58,12 +52,6 @@
</element></zeroOrMore>
</element></optional>
<optional><element name="tags">
<zeroOrMore><element name="tag">
<ref name="tag-content"/>
</element></zeroOrMore>
</element></optional>
<optional><element name="events">
<zeroOrMore><element name="event">
<ref name="event-content"/>
@@ -86,12 +74,6 @@
</element></zeroOrMore>
</element></optional>
<optional><element name="citations">
<zeroOrMore><element name="citation">
<ref name="citation-content"/>
</element></zeroOrMore>
</element></optional>
<optional><element name="sources">
<zeroOrMore><element name="source">
<ref name="source-content"/>
@@ -116,12 +98,6 @@
</element></zeroOrMore>
</element></optional>
<optional><element name="notes">
<zeroOrMore><element name="note">
<ref name="note-content"/>
</element></zeroOrMore>
</element></optional>
<optional><element name="bookmarks">
<zeroOrMore><element name="bookmark">
<ref name="bookmark-content"/>
@@ -138,7 +114,6 @@
<define name="researcher-content">
<element name="resname"><text/></element>
<optional><element name="resaddr"><text/></element></optional>
<optional><element name="reslocality"><text/></element></optional>
<optional><element name="rescity"><text/></element></optional>
<optional><element name="resstate"><text/></element></optional>
<optional><element name="rescountry"><text/></element></optional>
@@ -147,18 +122,15 @@
<optional><element name="resemail"><text/></element></optional>
</define>
<define name="table-object">
<attribute name="handle"><data type="ID"/></attribute>
<attribute name="change"><text/></attribute>
</define>
<define name="primary-object">
<ref name="table-object"/>
<optional><attribute name="id"><text/></attribute></optional>
<attribute name="id"><text/></attribute>
<attribute name="handle"><data type="ID"/></attribute>
<optional><attribute name="priv"><choice>
<value>0</value>
<value>1</value>
</choice></attribute></optional>
<optional><attribute name="marker"><text/></attribute></optional>
<attribute name="change"><text/></attribute>
</define>
<define name="person-content">
@@ -171,6 +143,7 @@
<zeroOrMore><element name="name">
<ref name="name-content"/>
</element></zeroOrMore>
<optional><element name="nick"><text/></element></optional>
<zeroOrMore><element name="eventref">
<ref name="eventref-content"/>
</element></zeroOrMore>
@@ -196,16 +169,17 @@
<attribute name="hlink"><data type="IDREF"/></attribute>
</element></zeroOrMore>
<zeroOrMore><element name="personref">
<ref name="personref-content"/>
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><attribute name="priv">
<ref name="priv-content"/>
</attribute></optional>
<attribute name="rel"><text/></attribute>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
</define>
@@ -231,7 +205,6 @@
<ref name="priv-content"/>
</attribute></optional>
<optional><attribute name="type"><choice>
<value>Unknown</value>
<value>Also Known As</value>
<value>Birth Name</value>
<value>Married Name</value>
@@ -241,45 +214,21 @@
<optional><attribute name="display"><text/></attribute></optional>
<optional><element name="first"><text/></element></optional>
<optional><element name="call"><text/></element></optional>
<zeroOrMore><element name="surname">
<ref name="surname-content"/>
</element></zeroOrMore>
<optional><element name="last">
<text/>
<optional><attribute name="prefix"><text/></attribute></optional>
<optional><attribute name="group"><text/></attribute></optional>
</element></optional>
<optional><element name="suffix"><text/></element></optional>
<optional><element name="patronymic"><text/></element></optional>
<optional><element name="title"><text/></element></optional>
<optional><element name="nick"><text/></element></optional>
<optional><element name="familynick"><text/></element></optional>
<optional><element name="group"><text/></element></optional>
<optional><ref name="date-content"/></optional>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
</define>
<define name="surname-content">
<text/>
<optional><attribute name="prefix"><text/></attribute></optional>
<optional><attribute name="prim"><choice>
<value>1</value>
<value>0</value>
</choice></attribute></optional>
<optional><attribute name="derivation"><choice>
<value>Unknown</value>
<value>Inherited</value>
<value>Given</value>
<value>Taken</value>
<value>Patronymic</value>
<value>Matronymic</value>
<value>Feudal</value>
<value>Pseudonym</value>
<value>Patrilineal</value>
<value>Matrilineal</value>
<value>Occupation</value>
<value>Location</value>
</choice></attribute></optional>
<optional><attribute name="connector"><text/></attribute></optional>
</define>
<define name="address-content">
@@ -288,18 +237,17 @@
</attribute></optional>
<optional><ref name="date-content"/></optional>
<optional><element name="street"><text/></element></optional>
<optional><element name="locality"><text/></element></optional>
<optional><element name="city"><text/></element></optional>
<optional><element name="county"><text/></element></optional>
<optional><element name="state"><text/></element></optional>
<optional><element name="country"><text/></element></optional>
<optional><element name="postal"><text/></element></optional>
<optional><element name="phone"><text/></element></optional>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
</define>
@@ -313,10 +261,6 @@
<value>calculated</value>
</choice></attribute></optional>
<optional><attribute name="cformat"><text/></attribute></optional>
<optional><attribute name="dualdated">
<choice><value>0</value><value>1</value></choice>
</attribute></optional>
<optional><attribute name="newyear"><text/></attribute></optional>
</element>
<element name="datespan">
<attribute name="start"><text/></attribute>
@@ -326,10 +270,6 @@
<value>calculated</value>
</choice></attribute></optional>
<optional><attribute name="cformat"><text/></attribute></optional>
<optional><attribute name="dualdated">
<choice><value>0</value><value>1</value></choice>
</attribute></optional>
<optional><attribute name="newyear"><text/></attribute></optional>
</element>
<element name="dateval">
<attribute name="val"><text/></attribute>
@@ -343,10 +283,6 @@
<value>estimated</value>
<value>calculated</value>
</choice></attribute></optional>
<optional><attribute name="dualdated">
<choice><value>0</value><value>1</value></choice>
</attribute></optional>
<optional><attribute name="newyear"><text/></attribute></optional>
</element>
<element name="datestr">
<attribute name="val"><text/></attribute>
@@ -385,25 +321,16 @@
<optional><attribute name="frel">
<ref name="child-rel"/>
</attribute></optional>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
</element></zeroOrMore>
<zeroOrMore><element name="attribute">
<ref name="attribute-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<optional><ref name="date-content"/></optional>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
</define>
@@ -418,39 +345,14 @@
<zeroOrMore><element name="attribute">
<ref name="attribute-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="objref">
<ref name="objref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
</element></zeroOrMore>
</define>
<define name="citation-content">
<ref name="primary-object"/>
<optional><ref name="date-content"/></optional>
<optional><element name="page"><text/></element></optional>
<element name="confidence"><text/></element>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="objref">
<ref name="objref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="srcattribute">
<ref name="srcattribute-content"/>
</element></zeroOrMore>
<element name="sourceref">
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="objref">
<ref name="objref-content"/>
</element></zeroOrMore>
</define>
@@ -460,40 +362,30 @@
<optional><element name="sauthor"><text/></element></optional>
<optional><element name="spubinfo"><text/></element></optional>
<optional><element name="sabbrev"><text/></element></optional>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<zeroOrMore><element name="objref">
<ref name="objref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="srcattribute">
<ref name="srcattribute-content"/>
<zeroOrMore><element name="data_item">
<attribute name="key"><text/></attribute>
<attribute name="value"><text/></attribute>
</element></zeroOrMore>
<zeroOrMore><element name="reporef">
<ref name="reporef-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
</element></zeroOrMore>
</define>
<define name="place-content">
<ref name="primary-object"/>
<attribute name="name"><text/></attribute>
<attribute name="type"><text/></attribute>
<optional><element name="ptitle"><text/></element></optional>
<optional><element name="code"><text/></element></optional>
<zeroOrMore><element name="alt_name"><text/></element></zeroOrMore>
<optional><element name="coord">
<attribute name="long"><text/></attribute>
<attribute name="lat"><text/></attribute>
<attribute name="long"><data type="float"/></attribute>
<attribute name="lat"><data type="float"/></attribute>
</element></optional>
<zeroOrMore><element name="placeref">
<ref name="placeref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="location">
<optional><attribute name="street"><text/></attribute></optional>
<optional><attribute name="locality"><text/></attribute></optional>
<optional><attribute name="city"><text/></attribute></optional>
<optional><attribute name="parish"><text/></attribute></optional>
<optional><attribute name="county"><text/></attribute></optional>
@@ -508,15 +400,13 @@
<zeroOrMore><element name="url">
<ref name="url-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
</define>
<define name="object-content">
@@ -524,21 +414,17 @@
<element name="file">
<attribute name="src"><text/></attribute>
<attribute name="mime"><text/></attribute>
<optional><attribute name="checksum"><text/></attribute></optional>
<optional><attribute name="description"><text/></attribute></optional>
<attribute name="description"><text/></attribute>
</element>
<zeroOrMore><element name="attribute">
<ref name="attribute-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<optional><ref name="date-content"/></optional>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
</define>
@@ -552,12 +438,9 @@
<zeroOrMore><element name="url">
<ref name="url-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
</define>
<define name="bookmark-content">
@@ -566,11 +449,9 @@
<value>family</value>
<value>event</value>
<value>source</value>
<value>citation</value>
<value>place</value>
<value>media</value>
<value>repository</value>
<value>note</value>
</choice></attribute>
<attribute name="hlink"><data type="IDREF"/></attribute>
</define>
@@ -594,62 +475,25 @@
</define>
<define name="note-content">
<ref name="primary-object"/>
<optional><attribute name="format"><choice>
<value>0</value>
<value>1</value>
</choice></attribute></optional>
<attribute name="type"><text/></attribute>
<ref name="styledtext"/>
<zeroOrMore><element name="tagref">
<ref name="tagref-content"/>
</element></zeroOrMore>
<text/>
</define>
<define name="styledtext">
<element name="text"><text/></element>
<zeroOrMore><element name="style">
<attribute name="name"><choice>
<value>bold</value>
<value>italic</value>
<value>underline</value>
<value>fontface</value>
<value>fontsize</value>
<value>fontcolor</value>
<value>highlight</value>
<value>superscript</value>
<value>link</value>
</choice></attribute>
<optional><attribute name="value"><text/></attribute></optional>
<oneOrMore><element name="range">
<attribute name="start"><data type="int"/></attribute>
<attribute name="end"><data type="int"/></attribute>
</element></oneOrMore>
</element></zeroOrMore>
</define>
<define name="citationref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
</define>
<define name="personref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><attribute name="priv">
<ref name="priv-content"/>
</attribute></optional>
<attribute name="rel"><text/></attribute>
<optional><zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore></optional>
<optional><zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore></optional>
</define>
<define name="sourceref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><attribute name="priv">
<ref name="priv-content"/>
</attribute></optional>
<optional><attribute name="conf"><text/></attribute></optional>
<optional><element name="spage"><text/></element></optional>
<optional><element name="scomments"><text/></element></optional>
<optional><element name="stext"><text/></element></optional>
<optional><ref name="date-content"/></optional>
</define>
<define name="eventref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><attribute name="priv">
@@ -659,25 +503,18 @@
<zeroOrMore><element name="attribute">
<ref name="attribute-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
</define>
<define name="reporef-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><attribute name="priv">
<ref name="priv-content"/>
</attribute></optional>
<optional><attribute name="callno"><text/></attribute></optional>
<optional><attribute name="medium"><text/></attribute></optional>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
</define>
<define name="noteref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
</define>
<define name="priv-content">
@@ -693,20 +530,12 @@
</attribute></optional>
<attribute name="type"><text/></attribute>
<attribute name="value"><text/></attribute>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
</define>
<define name="srcattribute-content">
<optional><attribute name="priv">
<ref name="priv-content"/>
</attribute></optional>
<attribute name="type"><text/></attribute>
<attribute name="value"><text/></attribute>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
</define>
<define name="url-content">
@@ -729,12 +558,12 @@
<zeroOrMore><element name="attribute">
<ref name="attribute-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
</element></zeroOrMore>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
</define>
<define name="lds-content">
@@ -755,12 +584,12 @@
<optional><element name="sealed_to">
<attribute name="hlink"><data type="IDREF"/></attribute>
</element></optional>
<zeroOrMore><element name="noteref">
<ref name="noteref-content"/>
</element></zeroOrMore>
<optional><element name="note">
<ref name="note-content"/>
</element></optional>
<optional><ref name="date-content"/></optional>
<zeroOrMore><element name="citationref">
<ref name="citationref-content"/>
<zeroOrMore><element name="sourceref">
<ref name="sourceref-content"/>
</element></zeroOrMore>
</define>
@@ -772,20 +601,4 @@
<text/>
</define>
<define name="placeref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
<optional><ref name="date-content"/></optional>
</define>
<define name="tagref-content">
<attribute name="hlink"><data type="IDREF"/></attribute>
</define>
<define name="tag-content">
<ref name="table-object"/>
<attribute name="name"><text/></attribute>
<attribute name="color"><text/></attribute>
<attribute name="priority"><data type="integer"/></attribute>
</define>
</grammar>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 457 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 654 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 969 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 957 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 678 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 951 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

File diff suppressed because one or more lines are too long
-9266
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
-859
View File
@@ -1,859 +0,0 @@
/*!
* jQuery FlexBox $Version: 0.9.6 $
*
* Copyright (c) 2008-2010 Noah Heldman and Fairway Technologies (http://www.fairwaytech.com/flexbox)
* Licensed under Ms-PL (http://www.codeplex.com/flexbox/license)
*
* $Date: 2010-11-24 01:02:00 PM $
* $Rev: 0.9.6.1 $
*/
(function($) {
$.flexbox = function(div, o) {
// TODO: in straight type-ahead mode (showResults: false), if noMatchingResults, dropdown appears after new match
// TODO: consider having options.mode (select, which replaces html select; combobox; suggest; others?)
// TODO: on resize (at least when wrapping within a table), the arrow is pushed down to the next line
// TODO: check for boundary/value problems (such as minChars of -1) and alert them
// TODO: add options for advanced paging template
// TODO: general cleanup and refactoring, commenting
// TODO: detailed Exception handling, logging
// TODO: FF2, up arrow from bottom has erratic scroll behavior (if multiple flexboxes on page)
// TODO: FF2 (and maybe IE7): if maxVisibleRows == number of returned rows, height is a bit off (maybe set to auto?)
// TODO: escape key only works from input box (this might be okay)
// TODO: make .getJSON parameters (object and callback function) configurable (e.g. when calling yahoo image search)
// TODO: escape key reverts to previous value (FF only?) (is this a good thing?)
// TEST: highlightMatches uses the case of whatever you typed in to replace the match string, which can look funny
// TEST: handle pageDown and pageUp keys when scrolling through results
// TEST: allow client-side paging (return all data initially, set paging:{pageSize:#}, and ensure maxCacheBytes is > 0)
// TEST: accept json object as first parameter to flexbox instead of page source, and have it work like a combobox
// TEST: implement no results template
// TEST: implement noResultsText and class
// TEST: watermark color should be configurable (and so should default input color)
// TEST: exception handling and alerts for common mistakes
// TEST: first example should use defaults ONLY
// TEST: add property initialValue, so you can set it when the flexbox loads
// TEST: handle hidden input value for form submissions
// TEST: how can we allow programmatically setting the field value (and therefore hidden value). add jquery function?
// TEST: use pageSize parameter as threshold to switch from no paging to paging based on results
// TEST: if you type in an input value that matches the html, it might display html code (try typing "class" in the input box)
// TEST: don't require all paging subprops (let default override)
// TEST: when tabbing from one ffb to another, the previous ffb results flash...
// TEST: IE7: when two non-paging ffbs right after each other, with only a clear-both div between them, the bottom ffb jumps down when selecting a value, then jumps back up on mouseover
// TEST: FF2, make sure we scroll to top before showing results (maxVisibleRows only)
// TEST: if maxVisibleRows is hiding the value the user types in to the input, scroll to that value (is this even possible?)
// TEST: make sure caching supports multiple ffbs uniquely
// TEST: when entering a number in the paging input box, the results are displayed twice
var timeout = false, // hold timeout ID for suggestion results to appear
cache = [], // simple array with cacheData key values, MRU is the first element
cacheData = [], // associative array holding actual cached data
cacheSize = 0, // size of cache in bytes (cache up to o.maxCacheBytes bytes)
delim = '\u25CA', // use an obscure unicode character (lozenge) as the cache key delimiter
scrolling = false,
pageSize = o.paging && o.paging.pageSize ? o.paging.pageSize : 0,
retrievingRemoteData = false,
$div = $(div).css('position', 'relative').css('z-index', 0);
// The hiddenField MUST be appended to the div before the input, or IE7 does not shift the dropdown below the input field (it overlaps)
var $hdn = $('<input type="hidden"/>')
.attr('id', $div.attr('id') + '_hidden')
.attr('name', $div.attr('id'))
.val(o.initialId)
.appendTo($div);
var $input = $('<input/>')
.attr('id', $div.attr('id') + '_input')
.attr('autocomplete', 'off')
.addClass(o.inputClass)
.css('width', o.width + 'px')
.appendTo($div)
.click(function(e) {
if (o.watermark !== '' && this.value === o.watermark)
this.value = '';
else
this.select();
})
.focus(function(e) {
$(this).removeClass('watermark');
})
.blur(function(e) {
if (this.value === '') $hdn.val('');
setTimeout(function() { if (!$input.data('active')) hideResults(); }, 200);
})
.keydown(processKeyDown);
if (o.initialValue !== '')
$input.val(o.initialValue).removeClass('watermark');
else
$input.val(o.watermark).addClass('watermark');
var arrowWidth = 0;
if (o.showArrow && o.showResults) {
var arrowClick = function() {
if ($ctr.is(':visible')) {
hideResults();
}
else {
$input.focus();
if (o.watermark !== '' && $input.val() === o.watermark)
$input.val('');
else
$input.select();
if (timeout)
clearTimeout(timeout);
timeout = setTimeout(function() { flexbox(1, true, o.arrowQuery); }, o.queryDelay);
}
};
var $arrow = $('<span></span>')
.attr('id', $div.attr('id') + '_arrow')
.addClass(o.arrowClass)
.addClass('out')
.hover(function() {
$(this).removeClass('out').addClass('over');
}, function() {
$(this).removeClass('over').addClass('out');
})
.mousedown(function() {
$(this).removeClass('over').addClass('active');
})
.mouseup(function() {
$(this).removeClass('active').addClass('over');
})
.click(arrowClick)
.appendTo($div);
arrowWidth = $arrow.width();
$input.css('width', (o.width - arrowWidth) + 'px');
}
if (!o.allowInput) { o.selectFirstMatch = false; $input.click(arrowClick); } // simulate <select> behavior
// Handle presence of CSS Universal Selector (*) that defines padding by verifying what the browser thinks the outerHeight is.
// In FF, the outerHeight() will not pick up the correct input field padding
var inputPad = $input.outerHeight() - $input.height() - 2;
var inputWidth = $input.outerWidth() - 2;
var top = $input.outerHeight();
if (inputPad === 0) {
inputWidth += 4;
top += 4;
}
else if (inputPad !== 4) {
inputWidth += inputPad;
top += inputPad;
}
var $ctr = $('<div></div>')
.attr('id', $div.attr('id') + '_ctr')
.css('width', inputWidth + arrowWidth)
.css('top', top)
.css('left', 0)
.addClass(o.containerClass)
.appendTo($div)
.mousedown(function(e) {
$input.data('active', true);
})
.hide();
var $content = $('<div></div>')
.addClass(o.contentClass)
.appendTo($ctr)
.scroll(function() {
scrolling = true;
});
var $paging = $('<div></div>').appendTo($ctr);
$div.css('height', $input.outerHeight());
function processKeyDown(e) {
// handle modifiers
var mod = 0;
if (typeof (e.ctrlKey) !== 'undefined') {
if (e.ctrlKey) mod |= 1;
if (e.shiftKey) mod |= 2;
} else {
if (e.modifiers & Event.CONTROL_MASK) mod |= 1;
if (e.modifiers & Event.SHIFT_MASK) mod |= 2;
}
// if the keyCode is one of the modifiers, bail out (we'll catch it on the next keypress)
if (/16$|17$/.test(e.keyCode)) return; // 16 = Shift, 17 = Ctrl
var tab = e.keyCode === 9, esc = e.keyCode === 27;
var tabWithModifiers = e.keyCode === 9 && mod > 0;
var backspace = e.keyCode === 8; // we will end up extending the delay time for backspaces...
// tab is a special case, since we want to bubble events...
if (tab) if (getCurr()) selectCurr();
// handling up/down/escape/right arrow/left arrow requires results to be visible
// handling enter requires that AND a result to be selected
if ((/27$|38$|33$|34$/.test(e.keyCode) && $ctr.is(':visible')) ||
(/13$|40$/.test(e.keyCode)) || !o.allowInput) {
if (e.preventDefault) e.preventDefault();
if (e.stopPropagation) e.stopPropagation();
e.cancelBubble = true;
e.returnValue = false;
switch (e.keyCode) {
case 38: // up arrow
prevResult();
break;
case 40: // down arrow
if ($ctr.is(':visible')) nextResult();
else flexboxDelay(true);
break;
case 13: // enter
if (getCurr()) selectCurr();
else flexboxDelay(true);
break;
case 27: // escape
hideResults();
break;
case 34: // page down
if (!retrievingRemoteData) {
if (o.paging) $('#' + $div.attr('id') + 'n').click();
else nextPage();
}
break;
case 33: // page up
if (!retrievingRemoteData) {
if (o.paging) $('#' + $div.attr('id') + 'p').click();
else prevPage();
}
break;
default:
if (!o.allowInput) { return; }
}
} else if (!esc && !tab && !tabWithModifiers) { // skip esc and tab key and any modifiers
flexboxDelay(false, backspace);
}
}
function flexboxDelay(simulateArrowClick, increaseDelay) {
if (timeout) clearTimeout(timeout);
var delay = increaseDelay ? o.queryDelay * 5 : o.queryDelay;
timeout = setTimeout(function() { flexbox(1, simulateArrowClick, ''); }, delay);
}
function flexbox(p, arrowOrPagingClicked, prevQuery) {
if (arrowOrPagingClicked) prevQuery = '';
var q = prevQuery && prevQuery.length > 0 ? prevQuery : $.trim($input.val());
if (q.length >= o.minChars || arrowOrPagingClicked) {
// If we are getting data from the server, set the height of the content box so it doesn't shrink when navigating between pages, due to the $content.html('') below...
if ($content.outerHeight() > 0)
$content.css('height', $content.outerHeight());
$content.html('').attr('scrollTop', 0);
var cached = checkCache(q, p);
if (cached) {
$content.css('height', 'auto');
displayItems(cached.data, q);
showPaging(p, cached.t);
}
else {
var params = { q: q, p: p, s: pageSize, contentType: 'application/json; charset=utf-8' };
var callback = function(data, overrideQuery) {
if (overrideQuery === true) q = overrideQuery; // must compare to boolean because by default, the string value "success" is passed when the jQuery $.getJSON method's callback is called
var totalResults = parseInt(data[o.totalProperty]);
// Handle client-side paging, if any paging configuration options were specified
if (isNaN(totalResults) && o.paging) {
if (o.maxCacheBytes <= 0) alert('The "maxCacheBytes" configuration option must be greater\nthan zero when implementing client-side paging.');
totalResults = data[o.resultsProperty].length;
var pages = totalResults / pageSize;
if (totalResults % pageSize > 0) pages = parseInt(++pages);
for (var i = 1; i <= pages; i++) {
var pageData = {};
pageData[o.totalProperty] = totalResults;
pageData[o.resultsProperty] = data[o.resultsProperty].splice(0, pageSize);
if (i === 1) totalSize = displayItems(pageData, q);
updateCache(q, i, pageSize, totalResults, pageData, totalSize);
}
}
else {
var totalSize = displayItems(data, q);
updateCache(q, p, pageSize, totalResults, data, totalSize);
}
showPaging(p, totalResults);
$content.css('height', 'auto');
retrievingRemoteData = false;
};
if (typeof (o.source) === 'object') {
if (o.allowInput) callback(filter(o.source, params));
else callback(o.source);
}
else {
retrievingRemoteData = true;
if (o.method.toUpperCase() == 'POST') $.post(o.source, params, callback, 'json');
else $.getJSON(o.source, params, callback);
}
}
} else
hideResults();
}
function filter(data, params) {
var filtered = {};
filtered[o.resultsProperty] = [];
filtered[o.totalProperty] = 0;
var index = 0;
for (var i=0; i < data[o.resultsProperty].length; i++) {
var indexOfMatch = data[o.resultsProperty][i][o.displayValue].toLowerCase().indexOf(params.q.toLowerCase());
if ((o.matchAny && indexOfMatch !== -1) || (!o.matchAny && indexOfMatch === 0)) {
filtered[o.resultsProperty][index++] = data[o.resultsProperty][i];
filtered[o.totalProperty] += 1;
}
}
if (o.paging) {
var start = (params.p - 1) * params.s;
var howMany = (start + params.s) > filtered[o.totalProperty] ? filtered[o.totalProperty] - start : params.s;
filtered[o.resultsProperty] = filtered[o.resultsProperty].splice(start, howMany);
}
return filtered;
}
function showPaging(p, totalResults) {
$paging.html('').removeClass(o.paging.cssClass); // clear out for threshold scenarios
if (o.showResults && o.paging && totalResults > pageSize) {
var pages = totalResults / pageSize;
if (totalResults % pageSize > 0) pages = parseInt(++pages);
outputPagingLinks(pages, p, totalResults);
}
}
function handleKeyPress(e, page, totalPages) {
if (/^13$|^39$|^37$/.test(e.keyCode)) {
if (e.preventDefault)
e.preventDefault();
if (e.stopPropagation)
e.stopPropagation();
e.cancelBubble = true;
e.returnValue = false;
switch (e.keyCode) {
case 13: // Enter
if (/^\d+$/.test(page) && page > 0 && page <= totalPages)
flexbox(page, true);
else
alert('Please enter a page number between 1 and ' + totalPages);
// TODO: make this alert a function call, and a customizable parameter
break;
case 39: // right arrow
$('#' + $div.attr('id') + 'n').click();
break;
case 37: // left arrow
$('#' + $div.attr('id') + 'p').click();
break;
}
}
}
function handlePagingClick(e) {
flexbox(parseInt($(this).attr('page')), true, $input.attr('pq')); // pq == previous query
return false;
}
function outputPagingLinks(totalPages, currentPage, totalResults) {
// TODO: make these configurable images
var first = '&lt;&lt;',
prev = '&lt;',
next = '&gt;',
last = '&gt;&gt;',
more = '...';
$paging.addClass(o.paging.cssClass);
// set up our base page link element
var $link = $('<a/>')
.attr('href', '#')
.addClass('page')
.click(handlePagingClick),
$span = $('<span></span>').addClass('page'),
divId = $div.attr('id');
// show first page
if (currentPage > 1) {
$link.clone(true).attr('id', divId + 'f').attr('page', 1).html(first).appendTo($paging);
$link.clone(true).attr('id', divId + 'p').attr('page', currentPage - 1).html(prev).appendTo($paging);
}
else {
$span.clone(true).html(first).appendTo($paging);
$span.clone(true).html(prev).appendTo($paging);
}
if (o.paging.style === 'links') {
var maxPageLinks = o.paging.maxPageLinks;
// show page numbers
if (totalPages <= maxPageLinks) {
for (var i = 1; i <= totalPages; i++) {
if (i === currentPage) {
$span.clone(true).html(currentPage).appendTo($paging);
}
else {
$link.clone(true).attr('page', i).html(i).appendTo($paging);
}
}
}
else {
if ((currentPage + parseInt(maxPageLinks / 2)) > totalPages) {
startPage = totalPages - maxPageLinks + 1;
}
else {
startPage = currentPage - parseInt(maxPageLinks / 2);
}
if (startPage > 1) {
$link.clone(true).attr('page', startPage - 1).html(more).appendTo($paging);
}
else {
startPage = 1;
}
for (var i = startPage; i < startPage + maxPageLinks; i++) {
if (i === currentPage) {
$span.clone(true).html(i).appendTo($paging);
}
else {
$link.clone(true).attr('page', i).html(i).appendTo($paging);
}
}
if (totalPages > (startPage + maxPageLinks)) {
$link.clone(true).attr('page', i).html(more).appendTo($paging);
}
}
}
else if (o.paging.style === 'input') {
var $pagingBox = $('<input/>')
.addClass('box')
.click(function(e) {
this.select();
})
.keypress(function(e) {
return handleKeyPress(e, this.value, totalPages);
})
.val(currentPage)
.appendTo($paging);
}
if (currentPage < totalPages) {
$link.clone(true).attr('id', divId + 'n').attr('page', +currentPage + 1).html(next).appendTo($paging);
$link.clone(true).attr('id', divId + 'l').attr('page', totalPages).html(last).appendTo($paging);
}
else {
$span.clone(true).html(next).appendTo($paging);
$span.clone(true).html(last).appendTo($paging);
}
var startingResult = (currentPage - 1) * pageSize + 1;
var endingResult = (startingResult > (totalResults - pageSize)) ? totalResults : startingResult + pageSize - 1;
if (o.paging.showSummary) {
var summaryData = {
"start": startingResult,
"end": endingResult,
"total": totalResults,
"page": currentPage,
"pages": totalPages
};
var html = o.paging.summaryTemplate.applyTemplate(summaryData);
$('<br/>').appendTo($paging);
$('<span></span>')
.addClass(o.paging.summaryClass)
.html(html)
.appendTo($paging);
}
}
function checkCache(q, p) {
var key = q + delim + p; // use null character as delimiter
if (cacheData[key]) {
for (var i = 0; i < cache.length; i++) { // TODO: is it possible to not loop here?
if (cache[i] === key) {
// pull out the matching element (splice), and add it to the beginning of the array (unshift)
cache.unshift(cache.splice(i, 1)[0]);
return cacheData[key];
}
}
}
return false;
}
function updateCache(q, p, s, t, data, size) {
if (o.maxCacheBytes > 0) {
while (cache.length && (cacheSize + size > o.maxCacheBytes)) {
var cached = cache.pop();
cacheSize -= cached.size;
}
var key = q + delim + p; // use null character as delimiter
cacheData[key] = {
q: q,
p: p,
s: s,
t: t,
size: size,
data: data
}; // add the data to the cache at the hash key location
cache.push(key); // add the key to the MRU list
cacheSize += size;
}
}
function displayItems(d, q) {
var totalSize = 0, itemCount = 0;
if (!d)
return;
$hdn.val($input.val());
if (parseInt(d[o.totalProperty]) === 0 && o.noResultsText && o.noResultsText.length > 0) {
$content.addClass(o.noResultsClass).html(o.noResultsText);
$ctr.show();
return;
} else $content.removeClass(o.noResultsClass);
for (var i = 0; i < d[o.resultsProperty].length; i++) {
var data = d[o.resultsProperty][i],
result = o.resultTemplate.applyTemplate(data),
exactMatch = q === result,
selectedMatch = false,
hasHtmlTags = false,
match = data[o.displayValue];
if (!exactMatch && o.highlightMatches && q !== '') {
var pattern = q,
highlightStart = match.toLowerCase().indexOf(q.toLowerCase()),
replaceString = '<span class="' + o.matchClass + '">' + match.substr(highlightStart,q.length) + '</span>';
if (result.match('<(.|\n)*?>')) { // see if the content contains html tags
hasHtmlTags = true;
pattern = '(>)([^<]*?)(' + q + ')((.|\n)*?)(<)'; // TODO: look for a better way
replaceString = '$1$2<span class="' + o.matchClass + '">$3</span>$4$6';
}
result = result.replace(new RegExp(pattern.replace("[", "\\["), o.highlightMatchesRegExModifier), replaceString);
}
// write the value of the first match to the input box, and select the remainder,
// but only if autoCompleteFirstMatch is set, and there are no html tags in the response
if (o.autoCompleteFirstMatch && !hasHtmlTags && i === 0) {
if (q.length > 0 && match.toLowerCase().indexOf(q.toLowerCase()) === 0) {
$input.attr('pq', q); // pq == previous query
$hdn.val(data[o.hiddenValue]);
$input.val(data[o.displayValue]);
selectedMatch = selectRange(q.length, $input.val().length);
}
}
if (!o.showResults) return;
$row = $('<div></div>')
.attr('id', data[o.hiddenValue])
.attr('val', data[o.displayValue])
.addClass('row')
.html(result)
.appendTo($content);
if (exactMatch || (++itemCount == 1 && o.selectFirstMatch) || selectedMatch) {
$row.addClass(o.selectClass);
}
totalSize += result.length;
}
if (totalSize === 0) {
hideResults();
return;
}
$ctr.parent().css('z-index', 11000);
$ctr.show();
$content
.children('div')
.mouseover(function() {
$content.children('div').removeClass(o.selectClass);
$(this).addClass(o.selectClass);
})
.mouseup(function(e) {
e.preventDefault();
e.stopPropagation();
selectCurr();
});
if (o.maxVisibleRows > 0) {
var maxHeight = $row.outerHeight() * o.maxVisibleRows;
$content.css('max-height', maxHeight);
}
return totalSize;
}
function selectRange(s, l) {
var tb = $input[0];
if (tb.createTextRange) {
var r = tb.createTextRange();
r.moveStart('character', s);
r.moveEnd('character', l - tb.value.length);
r.select();
} else if (tb.setSelectionRange) {
tb.setSelectionRange(s, l);
}
tb.focus();
return true;
}
String.prototype.applyTemplate = function(d) {
try {
if (d === '') return this;
return this.replace(/{([^{}]*)}/g,
function(a, b) {
var r;
if (b.indexOf('.') !== -1) { // handle dot notation in {}, such as {Thumbnail.Url}
var ary = b.split('.');
var obj = d;
for (var i = 0; i < ary.length; i++)
obj = obj[ary[i]];
r = obj;
}
else
r = d[b];
if (typeof r === 'string' || typeof r === 'number') return r; else throw (a);
}
);
} catch (ex) {
alert('Invalid JSON property ' + ex + ' found when trying to apply resultTemplate or paging.summaryTemplate.\nPlease check your spelling and try again.');
}
};
function hideResults() {
$input.data('active', false); // for input blur
$div.css('z-index', 0);
$ctr.hide();
}
function getCurr() {
if (!$ctr.is(':visible'))
return false;
var $curr = $content.children('div.' + o.selectClass);
if (!$curr.length)
$curr = false;
return $curr;
}
function selectCurr() {
$curr = getCurr();
if ($curr) {
$hdn.val($curr.attr('id'));
$input.val($curr.attr('val')).focus();
hideResults();
if (o.onSelect) {
o.onSelect.apply($input[0]);
}
}
}
function supportsGetBoxObjectFor() {
try {
document.getBoxObjectFor(document.body);
return true;
}
catch (e) {
return false;
}
}
function supportsGetBoundingClientRect() {
try {
document.body.getBoundingClientRect();
return true;
}
catch (e) {
return false;
}
}
function nextPage() {
$curr = getCurr();
if ($curr && $curr.next().length > 0) {
$curr.removeClass(o.selectClass);
for (var i = 0; i < o.maxVisibleRows; i++) {
if ($curr.next().length > 0) {
$curr = $curr.next();
}
}
$curr.addClass(o.selectClass);
var scrollPos = $content.attr('scrollTop');
$content.attr('scrollTop', scrollPos + $content.height());
}
else if (!$curr)
$content.children('div:first-child').addClass(o.selectClass);
}
function prevPage() {
$curr = getCurr();
if ($curr && $curr.prev().length > 0) {
$curr.removeClass(o.selectClass);
for (var i = 0; i < o.maxVisibleRows; i++) {
if ($curr.prev().length > 0) {
$curr = $curr.prev();
}
}
$curr.addClass(o.selectClass);
var scrollPos = $content.attr('scrollTop');
$content.attr('scrollTop', scrollPos - $content.height());
}
else if (!$curr)
$content.children('div:last-child').addClass(o.selectClass);
}
function nextResult() {
$curr = getCurr();
if ($curr && $curr.next().length > 0) {
$curr.removeClass(o.selectClass).next().addClass(o.selectClass);
var scrollPos = $content.attr('scrollTop'),
curr = $curr[0], parentBottom, bottom, height;
if (supportsGetBoxObjectFor()) {
parentBottom = document.getBoxObjectFor($content[0]).y + $content.attr('offsetHeight');
bottom = document.getBoxObjectFor(curr).y + $curr.attr('offsetHeight');
height = document.getBoxObjectFor(curr).height;
}
else if (supportsGetBoundingClientRect()) {
parentBottom = $content[0].getBoundingClientRect().bottom;
var rect = curr.getBoundingClientRect();
bottom = rect.bottom;
height = bottom - rect.top;
}
if (bottom >= parentBottom)
$content.attr('scrollTop', scrollPos + height);
}
else if (!$curr)
$content.children('div:first-child').addClass(o.selectClass);
}
function prevResult() {
$curr = getCurr();
if ($curr && $curr.prev().length > 0) {
$curr.removeClass(o.selectClass).prev().addClass(o.selectClass);
var scrollPos = $content.attr('scrollTop'),
curr = $curr[0],
parent = $curr.parent()[0],
parentTop, top, height;
if (supportsGetBoxObjectFor()) {
height = document.getBoxObjectFor(curr).height;
parentTop = document.getBoxObjectFor($content[0]).y - (height * 2); // TODO: this is not working when i add another control...
top = document.getBoxObjectFor(curr).y - document.getBoxObjectFor($content[0]).y;
}
else if (supportsGetBoundingClientRect()) {
parentTop = parent.getBoundingClientRect().top;
var rect = curr.getBoundingClientRect();
top = rect.top;
height = rect.bottom - top;
}
if (top <= parentTop)
$content.attr('scrollTop', scrollPos - height);
}
else if (!$curr)
$content.children('div:last-child').addClass(o.selectClass);
}
};
$.fn.flexbox = function(source, options) {
if (!source)
return;
try {
var defaults = $.fn.flexbox.defaults;
var o = $.extend({}, defaults, options);
for (var prop in o) {
if (defaults[prop] === undefined) throw ('Invalid option specified: ' + prop + '\nPlease check your spelling and try again.');
}
o.source = source;
if (options) {
o.paging = (options.paging || options.paging == null) ? $.extend({}, defaults.paging, options.paging) : false;
for (var prop in o.paging) {
if (defaults.paging[prop] === undefined) throw ('Invalid option specified: ' + prop + '\nPlease check your spelling and try again.');
}
if (options.displayValue && !options.hiddenValue) {
o.hiddenValue = options.displayValue;
}
}
this.each(function() {
new $.flexbox(this, o);
});
return this;
} catch (ex) {
if (typeof ex === 'object') alert(ex.message); else alert(ex);
}
};
// plugin defaults - added as a property on our plugin function so they can be set independently
$.fn.flexbox.defaults = {
method: 'GET', // One of 'GET' or 'POST'
queryDelay: 100, // num of milliseconds before query is run.
allowInput: true, // set to false to disallow the user from typing in queries
containerClass: 'ffb',
contentClass: 'content',
selectClass: 'ffb-sel',
inputClass: 'ffb-input',
arrowClass: 'ffb-arrow',
matchClass: 'ffb-match',
noResultsText: 'No matching results', // text to show when no results match the query
noResultsClass: 'ffb-no-results', // class to apply to noResultsText
showResults: true, // whether to show results at all, or just typeahead
selectFirstMatch: true, // whether to highlight the first matching value
autoCompleteFirstMatch: false, // whether to complete the first matching value in the input box
highlightMatches: true, // whether all matches within the string should be highlighted with matchClass
highlightMatchesRegExModifier: 'i', // 'i' for case-insensitive, 'g' for global (all occurrences), or combine
matchAny: true, // for client-side filtering ONLY, match any occurrence of the search term in the result (e.g. "ar" would find "area" and "cart")
minChars: 1, // the minimum number of characters the user must enter before a search is executed
showArrow: true, // set to false to simulate google suggest
arrowQuery: '', // the query to run when the arrow is clicked
onSelect: false, // function to run when a result is selected
maxCacheBytes: 32768, // in bytes, 0 means caching is disabled
resultTemplate: '{name}', // html template for each row (put json properties in curly braces)
displayValue: 'name', // json element whose value is displayed on select
hiddenValue: 'id', // json element whose value is submitted when form is submitted
initialValue: '', // what should the value of the input field be when the form is loaded?
initialId: '', // what should the value of the hidden field be when the form is loaded?
watermark: '', // text that appears when flexbox is loaded, if no initialValue is specified. style with css class '.ffb-input.watermark'
width: 200, // total width of flexbox. auto-adjusts based on showArrow value
resultsProperty: 'results', // json property in response that references array of results
totalProperty: 'total', // json property in response that references the total results (for paging)
maxVisibleRows: 0, // default is 0, which means it is ignored. use either this, or paging.pageSize
paging: {
style: 'input', // or 'links'
cssClass: 'paging', // prefix with containerClass (e.g. .ffb .paging)
pageSize: 10, // acts as a threshold. if <= pageSize results, paging doesn't appear
maxPageLinks: 5, // used only if style is 'links'
showSummary: true, // whether to show 'displaying 1-10 of 200 results' text
summaryClass: 'summary', // class for 'displaying 1-10 of 200 results', prefix with containerClass
summaryTemplate: 'Displaying {start}-{end} of {total} results' // can use {page} and {pages} as well
}
};
$.fn.setValue = function(val) {
var id = '#' + this.attr('id');
$(id + '_hidden,' + id + '_input').val(val).removeClass('watermark');
};
})(jQuery);
File diff suppressed because one or more lines are too long
-36
View File
@@ -1,36 +0,0 @@
<%@ Page Language="VB" ValidateRequest="false" AutoEventWireup="false" CodeFile="AutoPostTest.aspx.vb" Inherits="PostTest" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
<script type="text/javascript" src="scripts/jquery-1.3.2.js"></script>
<script type="text/javascript" src="scripts/jHtmlArea-0.7.0.js"></script>
<link rel="Stylesheet" type="text/css" href="style/jHtmlArea.css" />
<script type="text/javascript">
$(function() {
$("textarea").htmlarea(); // Initialize jHtmlArea's with all default values
//window.setTimeout(function() { $("form").submit(); }, 3000);
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager runat="server" ID="sm1"></asp:ScriptManager>
<asp:Literal runat="server" ID="litText"></asp:Literal><br />
<textarea runat="server" id="txtText" cols="50" rows="15"></textarea>
<input type="submit" value='manual submit' />
<br />
<asp:Button runat="server" ID="btnSubmit" Text="asp:Button" />
<asp:LinkButton runat="server" ID="lbSubmit" Text="asp:LinkButton"></asp:LinkButton>
</div>
</form>
</body>
</html>
-9
View File
@@ -1,9 +0,0 @@

Partial Class PostTest
Inherits System.Web.UI.Page
Public Sub PostTest_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
txtText.Value = Request("txtText")
litText.Text = txtText.Value
End Sub
End Class
-89
View File
@@ -1,89 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="scripts/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="scripts/jHtmlArea-0.7.0.min.js"></script>
<link rel="Stylesheet" type="text/css" href="style/jHtmlArea.css" />
<script type="text/javascript" src="scripts/jHtmlArea.ColorPickerMenu-0.7.0.js"></script>
<link rel="Stylesheet" type="text/css" href="style/jHtmlArea.ColorPickerMenu.css" />
<style type="text/css">
div.jHtmlArea { border: solid 1px #ccc; }
</style>
</head>
<body>
<h3>jHtmlArea Live Demo - jHtmlAreaColorPickerMenu Example</h3>
<p>The jHtmlAreaColorPickerMenu plugin/extension allows you to show a simple Color Picker Menu when the user clicks on the "forecolor" Toolbar Button.</p>
<p>
<a href="http://jhtmlarea.codeplex.com">jHtmlArea Project Homepage</a>
&nbsp;|&nbsp;
<a href="http://jhtmlarea.codeplex.com/Release/ProjectReleases.aspx">Downloads</a>
&nbsp;|&nbsp;
<a href="http://jhtmlarea.codeplex.com/Thread/List.aspx">Discussions</a>
&nbsp;|&nbsp;
<a href="http://jhtmlarea.codeplex.com/WorkItem/List.aspx">Issue Tracker</a>
</p>
<script type="text/javascript">
//// You can also override the "default" colors option of the jHtmlAreaColorPickerMenu
//// to show only the specific colors you want.
// jHtmlAreaColorPickerMenu.defaultOptions.colors = ["red", "yellow", "blue", "green", "purple", "white", "black"];
// The followin creates a jHtmlArea and adds a custom list of toolbar buttons.
// Among the buttons is the "forecolor" button that will automatically take
// advantage of the jHtmlAreaColorPickerMenu plugin.
$(function() {
$("#Textarea1").htmlarea({
toolbar: ["html", "|",
"forecolor", // <-- Add the "forecolor" Toolbar Button
"|", "bold", "italic", "underline", "|", "p", "h1", "h2", "h3", "|", "link", "unlink"] // Overrides/Specifies the Toolbar buttons to show
});
});
</script>
<textarea id="Textarea1" cols="50" rows="15"><p><h3>Another TextArea</h3>This is some sample text to test out the <b>WYSIWYG Control</b>.</p></textarea>
<hr />
The jHtmlAreaColorPickerMenu object can also be reused for other purposes. For example clicking on the button below will allow you to change the background color of the page.
<br />
<input id="choosecolor" type="button" value="Choose Color..." />
<script type="text/javascript">
$(function() {
$("#choosecolor").click(function() {
jHtmlAreaColorPickerMenu(this, {
colorChosen: function(color) {
$(document.body).css('background-color', color);
}
});
});
});
</script>
<br /><br /><br /><br /><br />
<hr />
<div style="position: relative;border: solid 30px #cccccc;">
<h3>Editor within a "position: relative" DIV element.</h3>
<textarea id="txtInDiv" cols="50" rows="15">Some <b>Test</b> content.</textarea>
<script type="text/javascript">
$(function() {
$("#txtInDiv").htmlarea({
toolbar: ["html", "|",
"forecolor", // <-- Add the "forecolor" Toolbar Button
"|", "bold", "italic", "underline", "|", "p", "h1", "h2", "h3", "|", "link", "unlink"] // Overrides/Specifies the Toolbar buttons to show
});
});
</script>
</div>
</body>
</html>
-128
View File
@@ -1,128 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="scripts/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="scripts/jquery-ui-1.7.2.custom.min.js"></script>
<link rel="Stylesheet" type="text/css" href="style/jqueryui/ui-lightness/jquery-ui-1.7.2.custom.css" />
<script type="text/javascript" src="scripts/jHtmlArea-0.7.0.js"></script>
<link rel="Stylesheet" type="text/css" href="style/jHtmlArea.css" />
<style type="text/css">
/* body { background: #ccc;} */
div.jHtmlArea .ToolBar ul li a.custom_disk_button
{
background: url(images/disk.png) no-repeat;
background-position: 0 0;
}
div.jHtmlArea { border: solid 1px #ccc; }
</style>
</head>
<body>
<script type="text/javascript">
// You can do this to perform a global override of any of the "default" options
// jHtmlArea.fn.defaultOptions.css = "jHtmlArea.Editor.css";
$(function() {
//$("textarea").htmlarea(); // Initialize all TextArea's as jHtmlArea's with default values
$("#txtDefaultHtmlArea").htmlarea(); // Initialize jHtmlArea's with all default values
$("#txtCustomHtmlArea").htmlarea({
// Override/Specify the Toolbar buttons to show
toolbar: [
["bold", "italic", "underline", "|", "forecolor"],
["p", "h1", "h2", "h3", "h4", "h5", "h6"],
["link", "unlink", "|", "image"],
[{
// This is how to add a completely custom Toolbar Button
css: "custom_disk_button",
text: "Save",
action: function(btn) {
// 'this' = jHtmlArea object
// 'btn' = jQuery object that represents the <A> "anchor" tag for the Toolbar Button
alert('SAVE!\n\n' + this.toHtmlString());
}
}]
],
// Override any of the toolbarText values - these are the Alt Text / Tooltips shown
// when the user hovers the mouse over the Toolbar Buttons
// Here are a couple translated to German, thanks to Google Translate.
toolbarText: $.extend({}, jHtmlArea.defaultOptions.toolbarText, {
"bold": "fett",
"italic": "kursiv",
"underline": "unterstreichen"
}),
// Specify a specific CSS file to use for the Editor
css: "style//jHtmlArea.Editor.css",
// Do something once the editor has finished loading
loaded: function() {
//// 'this' is equal to the jHtmlArea object
//alert("jHtmlArea has loaded!");
//this.showHTMLView(); // show the HTML view once the editor has finished loading
}
});
});
</script>
<textarea id="txtDefaultHtmlArea" cols="50" rows="15"><p><h3>Test H3</h3>This is some sample text to test out the <b>WYSIWYG Control</b>.</p></textarea>
<input type="button" value="Alert HTML" onclick="alert($('#txtDefaultHtmlArea').htmlarea('toHtmlString'));" />
<input type="button" value="Change Color to Blue" onclick="$('#txtDefaultHtmlArea').htmlarea('forecolor', 'blue');" />
<br /><hr /><br />
<textarea id="txtCustomHtmlArea" cols="50" rows="15"><p><h3>Another TextArea</h3>This is some sample text to test out the <b>WYSIWYG Control</b>.</p></textarea>
<input type="button" id="btnRemoveCustomHtmlArea" value="Remove jHtmlArea" />
<script type="text/javascript">
$(function() {
$("#btnRemoveCustomHtmlArea").click(function() {
$("#txtCustomHtmlArea").htmlarea("dispose");
});
});
</script>
<input type="button" id="btnResetCustomHtmlArea" value="Reset To Default Options" />
<script type="text/javascript">
$(function() {
$("#btnResetCustomHtmlArea").click(function() {
$("#txtCustomHtmlArea").htmlarea("dispose");
$("#txtCustomHtmlArea").htmlarea();
});
});
</script>
<br /><hr /><br />
<h3>Use jHtmlArea within jQuery UI Dialog</h3>
<script type="text/javascript">
$.ui.dialog.defaults.bgiframe = true;
$(function() {
$("#dialogShowButton").click(function() {
$("#dialog").dialog({width: 420});
$("#dialogEditor").htmlarea();
});
});
</script>
<input type="button" id="dialogShowButton" value="Show Dialog with jHtmlArea Editor" />
<div id="dialog" title="Basic dialog" style="display: none">
Basic jHtmlArea within jQuery UI Dialog
<br />
<textarea id="dialogEditor" rows="10" style="width: 400px">Some <b>Basic</b> text.</textarea>
</div>
<p>To see a "proper" example of the "Font Color" button, you'll want to see the "<a href="ColorPickerMenu.htm">jHtmlAreaColorPickerMenu</a>" in action here: <a href="ColorPickerMenu.htm">ColorPickerMenu.htm</a></p>
</body>
</html>
-117
View File
@@ -1,117 +0,0 @@
/* jHtmlArea - WYSIWYG Html Editor jQuery Plugin
* Copyright (c) 2009 Chris Pietschmann
* http://jhtmlarea.codeplex.com
* Licensed under the Microsoft Reciprocal License (Ms-RL)
* http://jhtmlarea.codeplex.com/license
*/
EXAMPLE USAGE:
-----------------------
See "Default.htm" for example usages.
Or, check out http://jhtmlarea.codeplex.com
CHANGE LOG
-----------------------
v0.7.0
- Fixed ColorPickerMenu positioning when placed within a "position: relative"
div element.
- Fixed ColorPickerMenu to auto-hide after a short delay (1 second) once the
user moves the mouse off the menu.
- Fixed Form Submit issue that caused the text to not be posted. Also fixed a
related issue with ASP.NET Postbacks.
- Added jHtmlArea.p method and "paragraph" functionality + toolbar button
This allows the user to change the formatting from <H1>, <H2>, etc. to <P>
- Added an "Automatic" color option to the ColorPickerMenu.
v0.6.0
- Hide All Toolbar buttons except the "html" button when entering
HTML Source view (via clicking "html" button or executing
jHtmlArea.showHTMLView). When toggling view back to the WYSIWYG editor
all other buttons will then be shown again.
- Added jHtmlArea.dispose method - Allows you to remove the WYSIWYG
editor, and go back to having a plain TextArea. Beware, there is a
memory leak when using this method; it's not too bad, but you want
to call this as few a number of times if you can. The memory leak
is due to the way the browsers handle removing DOM Elements.
- Added Indent and Outdent functionality - This includes toolbar buttons
and jHtmlArea.indent and jHtmlArea.outdent buttons.
- Added justifyLeft, justifyCenter, justifyRight functionality and toolbar
buttons.
- Added insertHorizontalRule functionality and toolbar button. This adds a
<hr> tag to the currently selected area.
- Added an "alias" method for jHtmlArea.execCommand named "ec" to help reduce the
file size of the script.
- Added increaseFontSize and decreaseFontSize functionality and toolbar buttons.
The increaseFontSize and decreaseFontSize doesn't currently work in Safari.
- Added forecolor functionality - Changes a font color for the selection or at the
insertion point. Requires a color value string to be passed in as a value argument.
- Fixed bug in jHtmlArea.toString method
- Added jHtmlArea.queryCommandValue method and it's alias "jHtmlArea.qc"
- Added the jHtmlAreaColorPickerMenu plugin/extension that resides within the
"jHtmlAreaColorPickerMenu.js" file. This file includes a somewhat generic color
picker menu that can be used for any purpose, plus it includes the code to wire
up and override the "stock" jHtmlColor.forecolor functionality and inject the new
Color Picker Menu functionality in it's place when you click on the "forecolor"
toolbar button.
- Changed the "execCommand" and "ec" second parameter to default to "false" if not
specified, and third parameter to default to "null" if not specified. This helps to
reduce the overall file size of the script.
- Added support for Toolbar Button Grouping, now with the additional buttons included
in this release, or even when any custom buttons are used, they will be able to display
nicely by "auto-wrapping" to the next line.
- Added a gradient background to the Toolbar Button Groups, with a slight reverse
gradient on the Buttons when the mouse is hovered over.
v0.5.0 - Initial Release
ICONS / IMAGES:
-----------------------
Some of the Icons within the jHtmlArea.png file are from the
Silk icon set at www.famfamfam.com.
They are licensed under the following license:
Silk icon set 1.3
_________________________________________
Mark James
http://www.famfamfam.com/lab/icons/silk/
_________________________________________
This work is licensed under a
Creative Commons Attribution 2.5 License.
[ http://creativecommons.org/licenses/by/2.5/ ]
This means you may use it for any purpose,
and make any changes you like.
All I ask is that you include a link back
to this page in your credits.
Are you using this icon set? Send me an email
(including a link or picture if available) to
mjames@gmail.com
Any other questions about this icon set please
contact mjames@gmail.com
Binary file not shown.

Before

Width:  |  Height:  |  Size: 620 B

-365
View File
@@ -1,365 +0,0 @@
/*
* This file has been commented to support Visual Studio Intellisense.
* You should not use this file at runtime inside the browser--it is only
* intended to be used only for design-time IntelliSense. Please use the
* standard jHtmlArea library for all production use.
*/
/*
* jHtmlArea 0.7.0 - WYSIWYG Html Editor jQuery Plugin
* Copyright (c) 2009 Chris Pietschmann
* http://jhtmlarea.codeplex.com
* Licensed under the Microsoft Reciprocal License (Ms-RL)
* http://jhtmlarea.codeplex.com/license
*/
(function($) {
$.fn.htmlarea = function(options) {
/// <summary>
/// 1: (options) - Convert all TextArea DOM Elements to be displayed as jHtmlArea WYSIWYG Editors.
/// 2: (string, arguments) - This function accepts a string containing the method name that you want to execute against the jHtmlArea object.
/// </summary>
/// <param name="options" type="Object">
/// 1: options - The custom options you want applied to the jHtmlArea's that are created.
/// 2: string - The name of the jHtmlArea object method to be executed. The results of the method call are then returned instead of the jQuery object.
/// </param>
};
var jHtmlArea = window.jHtmlArea = function(elem, options) {
/// <summary>
/// Converts the passed in TextArea DOM Element to a jHtmlArea WYSIWYG Editor.
/// </summary>
/// <param name="elem" type="TextArea DOM Element">
/// The TextArea DOM Element to be converted to a jHtmlArea WYSIWYG Editor. Required.
/// </param>
/// <param name="options" type="Object">
/// The custom options you want applied to the jHtmlArea that is created. Optional.
/// </param>
/// <field name="defaultOptions" Type="Object">
/// The Default Options that are used for configuring the jHtmlArea WYSIWYG Editor upon creation.
/// </field>
/// <returns type="jHtmlArea" />
};
jHtmlArea.fn = jHtmlArea.prototype = {
// The current version of jHtmlArea being used
jhtmlarea: "0.7.0",
init: function(elem, options) {
/// <summary>
/// Converts the passed in TextArea DOM Element to a jHtmlArea WYSIWYG Editor.
/// </summary>
/// <param name="elem" type="TextArea DOM Element">
/// Required. The TextArea DOM Element to be converted to a jHtmlArea WYSIWYG Editor.
/// </param>
/// <param name="options" type="Object">
/// Optional. The custom options you want applied to the jHtmlArea that is created.
/// </param>
/// <returns type="jHtmlArea" />
},
execCommand: function(a, b, c) {
/// <summary>
/// Executes a command on the current document, current selection, or the given range.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
/// </param>
/// <param name="b" type="Boolean">
/// Optional. Boolean that specifies one of the following values:
/// "false" = Default. Do not display a user interface. Must be combined with vValue, if the command requires a value.
/// "true" = Display a user interface if the command supports one.
/// </param>
/// <param name="c" type="Object">
/// Optional. Variant that specifies the string, number, or other value to assign. Possible values depend on the command.
/// </param>
},
ec: function(a, b, c) {
/// <summary>
/// Executes a command on the current document, current selection, or the given range. An alias for the "execCommand" method.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
/// </param>
/// <param name="b" type="Boolean">
/// Optional. Boolean that specifies one of the following values:
/// "false" = Default. Do not display a user interface. Must be combined with vValue, if the command requires a value.
/// "true" = Display a user interface if the command supports one.
/// </param>
/// <param name="c" type="Object">
/// Optional. Variant that specifies the string, number, or other value to assign. Possible values depend on the command.
/// </param>
},
queryCommandValue: function(a) {
/// <summary>
/// Returns the current value of the document, range, or current selection for the given command.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies a command identifier.
/// </param>
/// <returns type="Variant" />
},
qc: function(a) {
/// <summary>
/// Returns the current value of the document, range, or current selection for the given command. An alias for the "queryCommandValue" method.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies a command identifier.
/// </param>
/// <returns type="Variant" />
},
getSelectedHTML: function() {
/// <summary>
/// Returns the HTML that is currently selected within the editor.
/// </summary>
/// <returns type="String" />
},
getSelection: function() {
/// <summary>
/// Returns the Browser Selection object that represents the currently selected region of the editor.
/// </summary>
/// <returns type="Object" />
},
getRange: function() {
/// <summary>
/// Returns the Browser Range object that represents the currently selected region of the editor. (This uses the "getSelection" method internally.)
/// </summary>
/// <returns type="Object" />
},
html: function(v) {
/// <summary>
/// 1: () Returns the HTML text value contained within the editor. 2: (v) Sets the editors value to the HTML text passed in.
/// </summary>
/// <param name="v" type="String">
/// The HTML text to set the editors value to.
/// </param>
},
pasteHTML: function(html) {
/// <summary>
/// Pastes HTML text into the editor, replacing any currently selected text and HTML elements.
/// </summary>
/// <param name="html" type="String">
/// The HTML text to paste/insert.
/// </param>
},
cut: function() {
/// <summary>
/// Copies the current selection to the clipboard and then deletes it.
/// </summary>
},
copy: function() {
/// <summary>
/// Copies the current selection to the clipboard.
/// </summary>
},
paste: function() {
/// <summary>
/// Overwrites the contents of the clipboard on the current selection.
/// </summary>
},
bold: function() {
/// <summary>
/// Toggles the current selection between bold and nonbold.
/// </summary>
},
italic: function() {
/// <summary>
/// Toggles the current selection between italic and nonitalic.
/// </summary>
},
underline: function() {
/// <summary>
/// Toggles the current selection between underlined and not underlined.
/// </summary>
},
strikeThrough: function() {
/// <summary>
/// If there is a selection and all of the characters are already striked, the strikethrough will be removed. Otherwise, all selected characters will have a line drawn through them.
/// </summary>
},
image: function(url) {
/// <summary>
/// This command will insert an image (referenced by url) at the insertion point.
/// If no URL is specified, a prompt will be displayed to the user.
/// </summary>
/// <param name="url" type="String">
/// The URL to the Image to be inserted. If no URL is specified, a prompt will be shown.
/// </param>
},
removeFormat: function() {
/// <summary>
/// Removes the formatting tags from the current selection.
/// </summary>
},
link: function() {
/// <summary>
/// Inserts a hyperlink on the current selection, or displays a dialog box enabling the user to specify a URL to insert as a hyperlink on the current selection.
/// </summary>
},
unlink: function() {
/// <summary>
/// Removes any hyperlink from the current selection.
/// </summary>
},
orderedList: function() {
/// <summary>
/// Converts the text selection into an ordered list.
/// </summary>
},
unorderedList: function() {
/// <summary>
/// Converts the text selection into an unordered list.
/// </summary>
},
superscript: function() {
/// <summary>
/// If there is a selection and all of the characters are already superscripted, the superscript will be removed. Otherwise, all selected characters will be drawn slightly higher than normal text.
/// </summary>
},
subscript: function() {
/// <summary>
/// If there is a selection and all of the characters are already subscripted, the subscript will be removed. Otherwise, all selected characters will be drawn slightly lower than normal text.
/// </summary>
},
p: function() {
/// <summary>
/// Sets the current block format tag to <P>.
/// </summary>
},
h1: function() {
/// <summary>
/// Sets the current block format tag to <H1>.
/// </summary>
},
h2: function() {
/// <summary>
/// Sets the current block format tag to <H2>.
/// </summary>
},
h3: function() {
/// <summary>
/// Sets the current block format tag to <H3>.
/// </summary>
},
h4: function() {
/// <summary>
/// Sets the current block format tag to <H4>.
/// </summary>
},
h5: function() {
/// <summary>
/// Sets the current block format tag to <H5>.
/// </summary>
},
h6: function() {
/// <summary>
/// Sets the current block format tag to <H6>.
/// </summary>
},
heading: function(h) {
/// <summary>
/// Sets the current block format tag to <H?> tag.
/// Example: Calling jHtmlArea.heading(2) will be the same as calling jHtmlArea.h2()
/// </summary>
/// <param name="h" type="Number">
/// The Number of Header (<H?>) tag to format the current block with.
/// For Example: Passing a 2 or "2" will cause the current block to be formatted with a <H2> tag.
/// </param>
},
indent: function() {
/// <summary>
/// Indents the selection or insertion point.
/// </summary>
},
outdent: function() {
/// <summary>
/// Outdents the selection or insertion point.
/// </summary>
},
insertHorizontalRule: function() {
/// <summary>
/// Inserts a horizontal rule at the insertion point (deletes selection).
/// </summary>
},
justifyLeft: function() {
/// <summary>
/// Justifies the selection or insertion point to the left.
/// </summary>
},
justifyCenter: function() {
/// <summary>
/// Centers the selection or insertion point.
/// </summary>
},
justifyRight: function() {
/// <summary>
/// Right-justifies the selection or the insertion point.
/// </summary>
},
increaseFontSize: function() {
/// <summary>
/// Increases the Font Size around the selection or at the insertion point.
/// </summary>
},
decreaseFontSize: function() {
/// <summary>
/// Decreases the Font Size around the selection or at the insertion point.
/// </summary>
},
forecolor: function(c) {
/// <summary>
/// Changes a font color for the selection or at the insertion point. Requires a color value string to be passed in as a value argument.
/// </summary>
},
formatBlock: function(v) {
/// <summary>
/// Sets the current block format tag.
/// </summary>
},
showHTMLView: function() {
/// <summary>
/// Shows the HTML/Source View (TextArea DOM Element) within the Editor and hides the WYSIWYG interface.
/// </summary>
},
hideHTMLView: function() {
/// <summary>
/// Hides the HTML/Source View (TextArea DOM Element) within the Editor and displays the WYSIWYG interface.
/// </summary>
},
toggleHTMLView: function() {
/// <summary>
/// Toggles between HTML/Source View (TextArea DOM Element) and the WYSIWYG interface within the Editor.
/// </summary>
},
toHtmlString: function() {
/// <summary>
/// Returns the HTML text contained within the editor.
/// </summary>
/// <returns type="String" />
},
toString: function() {
/// <summary>
/// Return the Text contained within the editor, with all HTML tags removed.
/// </summary>
/// <returns type="String" />
},
updateTextArea: function() {
/// <summary>
/// Forces the TextArea DOM Element to by sync'd with the contents of the HTML WYSIWYG Editor.
/// </summary>
},
updateHtmlArea: function() {
/// <summary>
/// Forces the HTML WYSIWYG Editor to be sync'd with the contents of the TextArea DOM Element.
/// </summary>
}
};
jHtmlArea.fn.init.prototype = jHtmlArea.fn;
})(jQuery);
-403
View File
@@ -1,403 +0,0 @@
/*
* jHtmlArea 0.7.0 - WYSIWYG Html Editor jQuery Plugin
* Copyright (c) 2009 Chris Pietschmann
* http://jhtmlarea.codeplex.com
* Licensed under the Microsoft Reciprocal License (Ms-RL)
* http://jhtmlarea.codeplex.com/license
*/
(function($) {
$.fn.htmlarea = function(opts) {
if (opts && typeof (opts) === "string") {
var args = [];
for (var i = 1; i < arguments.length; i++) { args.push(arguments[i]); }
var htmlarea = jHtmlArea(this[0]);
var f = htmlarea[opts];
if (f) { return f.apply(htmlarea, args); }
}
return this.each(function() { jHtmlArea(this, opts); });
};
var jHtmlArea = window.jHtmlArea = function(elem, options) {
if (elem.jquery) {
return jHtmlArea(elem[0]);
}
if (elem.jhtmlareaObject) {
return elem.jhtmlareaObject;
} else {
return new jHtmlArea.fn.init(elem, options);
}
};
jHtmlArea.fn = jHtmlArea.prototype = {
// The current version of jHtmlArea being used
jhtmlarea: "0.7.0",
init: function(elem, options) {
if (elem.nodeName.toLowerCase() === "textarea") {
var opts = $.extend({}, jHtmlArea.defaultOptions, options);
elem.jhtmlareaObject = this;
var textarea = this.textarea = $(elem);
var container = this.container = $("<div/>").addClass("jHtmlArea").width(textarea.width()).insertAfter(textarea);
var toolbar = this.toolbar = $("<div/>").addClass("ToolBar").appendTo(container);
priv.initToolBar.call(this, opts);
var iframe = this.iframe = $("<iframe/>").height(textarea.height());
iframe.width(textarea.width() - ($.browser.msie ? 0 : 4));
var htmlarea = this.htmlarea = $("<div/>").append(iframe);
container.append(htmlarea).append(textarea.hide());
priv.initEditor.call(this, opts);
priv.attachEditorEvents.call(this);
// Fix total height to match TextArea
iframe.height(iframe.height() - toolbar.height());
toolbar.width(textarea.width() - 2);
if (opts.loaded) { opts.loaded.call(this); }
}
},
dispose: function() {
this.textarea.show().insertAfter(this.container);
this.container.remove();
this.textarea[0].jhtmlareaObject = null;
},
execCommand: function(a, b, c) {
this.iframe[0].contentWindow.focus();
this.editor.execCommand(a, b || false, c || null);
this.updateTextArea();
},
ec: function(a, b, c) {
this.execCommand(a, b, c);
},
queryCommandValue: function(a) {
this.iframe[0].contentWindow.focus();
return this.editor.queryCommandValue(a);
},
qc: function(a) {
return this.queryCommandValue(a);
},
getSelectedHTML: function() {
if ($.browser.msie) {
return this.getRange().htmlText;
} else {
var elem = this.getRange().cloneContents();
return $("<p/>").append($(elem)).html();
}
},
getSelection: function() {
if ($.browser.msie) {
//return (this.editor.parentWindow.getSelection) ? this.editor.parentWindow.getSelection() : this.editor.selection;
return this.editor.selection;
} else {
return this.iframe[0].contentDocument.defaultView.getSelection();
}
},
getRange: function() {
var s = this.getSelection();
if (!s) { return null; }
//return (s.rangeCount > 0) ? s.getRangeAt(0) : s.createRange();
return (s.getRangeAt) ? s.getRangeAt(0) : s.createRange();
},
html: function(v) {
if (v) {
this.pastHTML(v);
} else {
return toHtmlString();
}
},
pasteHTML: function(html) {
this.iframe[0].contentWindow.focus();
var r = this.getRange();
if ($.browser.msie) {
r.pasteHTML(html);
} else if ($.browser.mozilla) {
r.deleteContents();
r.insertNode($((html.indexOf("<") != 0) ? $("<span/>").append(html) : html)[0]);
} else { // Safari
r.deleteContents();
r.insertNode($(this.iframe[0].contentWindow.document.createElement("span")).append($((html.indexOf("<") != 0) ? "<span>" + html + "</span>" : html))[0]);
}
r.collapse(false);
r.select();
},
cut: function() {
this.ec("cut");
},
copy: function() {
this.ec("copy");
},
paste: function() {
this.ec("paste");
},
bold: function() { this.ec("bold"); },
italic: function() { this.ec("italic"); },
underline: function() { this.ec("underline"); },
strikeThrough: function() { this.ec("strikethrough"); },
image: function(url) {
if ($.browser.msie && !url) {
this.ec("insertImage", true);
} else {
this.ec("insertImage", false, (url || prompt("Image URL:", "http://")));
}
},
removeFormat: function() {
this.ec("removeFormat", false, []);
this.unlink();
},
link: function() {
if ($.browser.msie) {
this.ec("createLink", true);
} else {
this.ec("createLink", false, prompt("Link URL:", "http://"));
}
},
unlink: function() { this.ec("unlink", false, []); },
orderedList: function() { this.ec("insertorderedlist"); },
unorderedList: function() { this.ec("insertunorderedlist"); },
superscript: function() { this.ec("superscript"); },
subscript: function() { this.ec("subscript"); },
p: function() {
this.formatBlock("<p>");
},
h1: function() {
this.heading(1);
},
h2: function() {
this.heading(2);
},
h3: function() {
this.heading(3);
},
h4: function() {
this.heading(4);
},
h5: function() {
this.heading(5);
},
h6: function() {
this.heading(6);
},
heading: function(h) {
this.formatBlock($.browser.msie ? "Heading " + h : "h" + h);
},
indent: function() {
this.ec("indent");
},
outdent: function() {
this.ec("outdent");
},
insertHorizontalRule: function() {
this.ec("insertHorizontalRule", false, "ht");
},
justifyLeft: function() {
this.ec("justifyLeft");
},
justifyCenter: function() {
this.ec("justifyCenter");
},
justifyRight: function() {
this.ec("justifyRight");
},
increaseFontSize: function() {
if ($.browser.msie) {
this.ec("fontSize", false, this.qc("fontSize") + 1);
} else if ($.browser.safari) {
this.getRange().surroundContents($(this.iframe[0].contentWindow.document.createElement("span")).css("font-size", "larger")[0]);
} else {
this.ec("increaseFontSize", false, "big");
}
},
decreaseFontSize: function() {
if ($.browser.msie) {
this.ec("fontSize", false, this.qc("fontSize") - 1);
} else if ($.browser.safari) {
this.getRange().surroundContents($(this.iframe[0].contentWindow.document.createElement("span")).css("font-size", "smaller")[0]);
} else {
this.ec("decreaseFontSize", false, "small");
}
},
forecolor: function(c) {
this.ec("foreColor", false, c || prompt("Enter HTML Color:", "#"));
},
formatBlock: function(v) {
this.ec("formatblock", false, v || null);
},
showHTMLView: function() {
this.updateTextArea();
this.textarea.show();
this.htmlarea.hide();
$("ul li:not(li:has(a.html))", this.toolbar).hide();
$("ul:not(:has(:visible))", this.toolbar).hide();
$("ul li a.html", this.toolbar).addClass("highlighted");
},
hideHTMLView: function() {
this.updateHtmlArea();
this.textarea.hide();
this.htmlarea.show();
$("ul", this.toolbar).show();
$("ul li", this.toolbar).show().find("a.html").removeClass("highlighted");
},
toggleHTMLView: function() {
(this.textarea.is(":hidden")) ? this.showHTMLView() : this.hideHTMLView();
},
toHtmlString: function() {
return this.editor.body.innerHTML;
},
toString: function() {
return this.editor.body.innerText;
},
updateTextArea: function() {
this.textarea.val(this.toHtmlString());
},
updateHtmlArea: function() {
this.editor.body.innerHTML = this.textarea.val();
}
};
jHtmlArea.fn.init.prototype = jHtmlArea.fn;
jHtmlArea.defaultOptions = {
toolbar: [
["html"], ["bold", "italic", "underline", "strikethrough", "|", "subscript", "superscript"],
["increasefontsize", "decreasefontsize"],
["orderedlist", "unorderedlist"],
["indent", "outdent"],
["justifyleft", "justifycenter", "justifyright"],
["link", "unlink", "image", "horizontalrule"],
["p", "h1", "h2", "h3", "h4", "h5", "h6"],
["cut", "copy", "paste"]
],
css: null,
toolbarText: {
bold: "Bold", italic: "Italic", underline: "Underline", strikethrough: "Strike-Through",
cut: "Cut", copy: "Copy", paste: "Paste",
h1: "Heading 1", h2: "Heading 2", h3: "Heading 3", h4: "Heading 4", h5: "Heading 5", h6: "Heading 6", p: "Paragraph",
indent: "Indent", outdent: "Outdent", horizontalrule: "Insert Horizontal Rule",
justifyleft: "Left Justify", justifycenter: "Center Justify", justifyright: "Right Justify",
increasefontsize: "Increase Font Size", decreasefontsize: "Decrease Font Size", forecolor: "Text Color",
link: "Insert Link", unlink: "Remove Link", image: "Insert Image",
orderedlist: "Insert Ordered List", unorderedlist: "Insert Unordered List",
subscript: "Subscript", superscript: "Superscript",
html: "Show/Hide HTML Source View"
}
};
var priv = {
toolbarButtons: {
strikethrough: "strikeThrough", orderedlist: "orderedList", unorderedlist: "unorderedList",
horizontalrule: "insertHorizontalRule",
justifyleft: "justifyLeft", justifycenter: "justifyCenter", justifyright: "justifyRight",
increasefontsize: "increaseFontSize", decreasefontsize: "decreaseFontSize",
html: function(btn) {
this.toggleHTMLView();
}
},
initEditor: function(options) {
var edit = this.editor = this.iframe[0].contentWindow.document;
edit.designMode = 'on';
edit.open();
edit.write(this.textarea.val());
edit.close();
if (options.css) {
var e = edit.createElement('link'); e.rel = 'stylesheet'; e.type = 'text/css'; e.href = options.css; edit.getElementsByTagName('head')[0].appendChild(e);
}
},
initToolBar: function(options) {
var that = this;
var menuItem = function(className, altText, action) {
return $("<li/>").append($("<a href='javascript:void(0);'/>").addClass(className).attr("title", altText).click(function() { action.call(that, $(this)); }));
};
function addButtons(arr) {
var ul = $("<ul/>").appendTo(that.toolbar);
for (var i = 0; i < arr.length; i++) {
var e = arr[i];
if ((typeof (e)).toLowerCase() === "string") {
if (e === "|") {
ul.append($('<li class="separator"/>'));
} else {
var f = (function(e) {
// If button name exists in priv.toolbarButtons then call the "method" defined there, otherwise call the method with the same name
var m = priv.toolbarButtons[e] || e;
if ((typeof (m)).toLowerCase() === "function") {
return function(btn) { m.call(this, btn); };
} else {
return function() { this[m](); this.editor.body.focus(); };
}
})(e.toLowerCase());
var t = options.toolbarText[e.toLowerCase()];
ul.append(menuItem(e.toLowerCase(), t || e, f));
}
} else {
ul.append(menuItem(e.css, e.text, e.action));
}
}
};
if (options.toolbar.length !== 0 && priv.isArray(options.toolbar[0])) {
for (var i = 0; i < options.toolbar.length; i++) {
addButtons(options.toolbar[i]);
}
} else {
addButtons(options.toolbar);
}
},
attachEditorEvents: function() {
var t = this;
var fnHA = function() {
t.updateHtmlArea();
};
this.textarea.click(fnHA).
keyup(fnHA).
keydown(fnHA).
mousedown(fnHA).
blur(fnHA);
var fnTA = function() {
t.updateTextArea();
};
$(this.editor.body).click(fnTA).
keyup(fnTA).
keydown(fnTA).
mousedown(fnTA).
blur(fnTA);
$('form').submit(function() { t.toggleHTMLView(); t.toggleHTMLView(); });
//$(this.textarea[0].form).submit(function() { //this.textarea.closest("form").submit(function() {
// Fix for ASP.NET Postback Model
if (window.__doPostBack) {
var old__doPostBack = __doPostBack;
window.__doPostBack = function() {
if (t) {
if (t.toggleHTMLView) {
t.toggleHTMLView();
t.toggleHTMLView();
}
}
return old__doPostBack.apply(window, arguments);
};
}
},
isArray: function(v) {
return v && typeof v === 'object' && typeof v.length === 'number' && typeof v.splice === 'function' && !(v.propertyIsEnumerable('length'));
}
};
})(jQuery);
-357
View File
@@ -1,357 +0,0 @@
/*
* This file has been commented to support Visual Studio Intellisense.
* You should not use this file at runtime inside the browser--it is only
* intended to be used only for design-time IntelliSense. Please use the
* standard jHtmlArea library for all production use.
*/
/*
* jHtmlArea 0.7.0 - WYSIWYG Html Editor jQuery Plugin
* Copyright (c) 2009 Chris Pietschmann
* http://jhtmlarea.codeplex.com
* Licensed under the Microsoft Reciprocal License (Ms-RL)
* http://jhtmlarea.codeplex.com/license
*/
(function($) {
$.fn.htmlarea = function(options) {
/// <summary>
/// 1: (options) - Convert all TextArea DOM Elements to be displayed as jHtmlArea WYSIWYG Editors.
/// 2: (string, arguments) - This function accepts a string containing the method name that you want to execute against the jHtmlArea object.
/// </summary>
/// <param name="options" type="Object">
/// 1: options - The custom options you want applied to the jHtmlArea's that are created.
/// 2: string - The name of the jHtmlArea object method to be executed. The results of the method call are then returned instead of the jQuery object.
/// </param>
};
var jHtmlArea = window.jHtmlArea = function(elem, options) {
/// <summary>
/// Converts the passed in TextArea DOM Element to a jHtmlArea WYSIWYG Editor.
/// </summary>
/// <param name="elem" type="TextArea DOM Element">
/// The TextArea DOM Element to be converted to a jHtmlArea WYSIWYG Editor. Required.
/// </param>
/// <param name="options" type="Object">
/// The custom options you want applied to the jHtmlArea that is created. Optional.
/// </param>
/// <field name="defaultOptions" Type="Object">
/// The Default Options that are used for configuring the jHtmlArea WYSIWYG Editor upon creation.
/// </field>
/// <returns type="jHtmlArea" />
};
jHtmlArea.fn = jHtmlArea.prototype = {
// The current version of jHtmlArea being used
jhtmlarea: "0.7.0",
init: function(elem, options) {
/// <summary>
/// Converts the passed in TextArea DOM Element to a jHtmlArea WYSIWYG Editor.
/// </summary>
/// <param name="elem" type="TextArea DOM Element">
/// Required. The TextArea DOM Element to be converted to a jHtmlArea WYSIWYG Editor.
/// </param>
/// <param name="options" type="Object">
/// Optional. The custom options you want applied to the jHtmlArea that is created.
/// </param>
/// <returns type="jHtmlArea" />
},
execCommand: function(a, b, c) {
/// <summary>
/// Executes a command on the current document, current selection, or the given range.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
/// </param>
/// <param name="b" type="Boolean">
/// Optional. Boolean that specifies one of the following values:
/// "false" = Default. Do not display a user interface. Must be combined with vValue, if the command requires a value.
/// "true" = Display a user interface if the command supports one.
/// </param>
/// <param name="c" type="Object">
/// Optional. Variant that specifies the string, number, or other value to assign. Possible values depend on the command.
/// </param>
},
ec: function(a, b, c) {
/// <summary>
/// Executes a command on the current document, current selection, or the given range. An alias for the "execCommand" method.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
/// </param>
/// <param name="b" type="Boolean">
/// Optional. Boolean that specifies one of the following values:
/// "false" = Default. Do not display a user interface. Must be combined with vValue, if the command requires a value.
/// "true" = Display a user interface if the command supports one.
/// </param>
/// <param name="c" type="Object">
/// Optional. Variant that specifies the string, number, or other value to assign. Possible values depend on the command.
/// </param>
},
queryCommandValue: function(a) {
/// <summary>
/// Returns the current value of the document, range, or current selection for the given command.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies a command identifier.
/// </param>
/// <returns type="Variant" />
},
qc: function(a) {
/// <summary>
/// Returns the current value of the document, range, or current selection for the given command. An alias for the "queryCommandValue" method.
/// </summary>
/// <param name="a" type="String">
/// Required. String that specifies a command identifier.
/// </param>
/// <returns type="Variant" />
},
getSelectedHTML: function() {
/// <summary>
/// Returns the HTML that is currently selected within the editor.
/// </summary>
/// <returns type="String" />
},
getSelection: function() {
/// <summary>
/// Returns the Browser Selection object that represents the currently selected region of the editor.
/// </summary>
/// <returns type="Object" />
},
getRange: function() {
/// <summary>
/// Returns the Browser Range object that represents the currently selected region of the editor. (This uses the "getSelection" method internally.)
/// </summary>
/// <returns type="Object" />
},
pasteHTML: function(html) {
/// <summary>
/// Pastes HTML text into the editor, replacing any currently selected text and HTML elements.
/// </summary>
/// <param name="html" type="String">
/// The HTML text to paste/insert.
/// </param>
},
cut: function() {
/// <summary>
/// Copies the current selection to the clipboard and then deletes it.
/// </summary>
},
copy: function() {
/// <summary>
/// Copies the current selection to the clipboard.
/// </summary>
},
paste: function() {
/// <summary>
/// Overwrites the contents of the clipboard on the current selection.
/// </summary>
},
bold: function() {
/// <summary>
/// Toggles the current selection between bold and nonbold.
/// </summary>
},
italic: function() {
/// <summary>
/// Toggles the current selection between italic and nonitalic.
/// </summary>
},
underline: function() {
/// <summary>
/// Toggles the current selection between underlined and not underlined.
/// </summary>
},
strikeThrough: function() {
/// <summary>
/// If there is a selection and all of the characters are already striked, the strikethrough will be removed. Otherwise, all selected characters will have a line drawn through them.
/// </summary>
},
image: function(url) {
/// <summary>
/// This command will insert an image (referenced by url) at the insertion point.
/// If no URL is specified, a prompt will be displayed to the user.
/// </summary>
/// <param name="url" type="String">
/// The URL to the Image to be inserted. If no URL is specified, a prompt will be shown.
/// </param>
},
removeFormat: function() {
/// <summary>
/// Removes the formatting tags from the current selection.
/// </summary>
},
link: function() {
/// <summary>
/// Inserts a hyperlink on the current selection, or displays a dialog box enabling the user to specify a URL to insert as a hyperlink on the current selection.
/// </summary>
},
unlink: function() {
/// <summary>
/// Removes any hyperlink from the current selection.
/// </summary>
},
orderedList: function() {
/// <summary>
/// Converts the text selection into an ordered list.
/// </summary>
},
unorderedList: function() {
/// <summary>
/// Converts the text selection into an unordered list.
/// </summary>
},
superscript: function() {
/// <summary>
/// If there is a selection and all of the characters are already superscripted, the superscript will be removed. Otherwise, all selected characters will be drawn slightly higher than normal text.
/// </summary>
},
subscript: function() {
/// <summary>
/// If there is a selection and all of the characters are already subscripted, the subscript will be removed. Otherwise, all selected characters will be drawn slightly lower than normal text.
/// </summary>
},
p: function() {
/// <summary>
/// Sets the current block format tag to <P>.
/// </summary>
},
h1: function() {
/// <summary>
/// Sets the current block format tag to <H1>.
/// </summary>
},
h2: function() {
/// <summary>
/// Sets the current block format tag to <H2>.
/// </summary>
},
h3: function() {
/// <summary>
/// Sets the current block format tag to <H3>.
/// </summary>
},
h4: function() {
/// <summary>
/// Sets the current block format tag to <H4>.
/// </summary>
},
h5: function() {
/// <summary>
/// Sets the current block format tag to <H5>.
/// </summary>
},
h6: function() {
/// <summary>
/// Sets the current block format tag to <H6>.
/// </summary>
},
heading: function(h) {
/// <summary>
/// Sets the current block format tag to <H?> tag.
/// Example: Calling jHtmlArea.heading(2) will be the same as calling jHtmlArea.h2()
/// </summary>
/// <param name="h" type="Number">
/// The Number of Header (<H?>) tag to format the current block with.
/// For Example: Passing a 2 or "2" will cause the current block to be formatted with a <H2> tag.
/// </param>
},
indent: function() {
/// <summary>
/// Indents the selection or insertion point.
/// </summary>
},
outdent: function() {
/// <summary>
/// Outdents the selection or insertion point.
/// </summary>
},
insertHorizontalRule: function() {
/// <summary>
/// Inserts a horizontal rule at the insertion point (deletes selection).
/// </summary>
},
justifyLeft: function() {
/// <summary>
/// Justifies the selection or insertion point to the left.
/// </summary>
},
justifyCenter: function() {
/// <summary>
/// Centers the selection or insertion point.
/// </summary>
},
justifyRight: function() {
/// <summary>
/// Right-justifies the selection or the insertion point.
/// </summary>
},
increaseFontSize: function() {
/// <summary>
/// Increases the Font Size around the selection or at the insertion point.
/// </summary>
},
decreaseFontSize: function() {
/// <summary>
/// Decreases the Font Size around the selection or at the insertion point.
/// </summary>
},
forecolor: function(c) {
/// <summary>
/// Changes a font color for the selection or at the insertion point. Requires a color value string to be passed in as a value argument.
/// </summary>
},
formatBlock: function(v) {
/// <summary>
/// Sets the current block format tag.
/// </summary>
},
showHTMLView: function() {
/// <summary>
/// Shows the HTML/Source View (TextArea DOM Element) within the Editor and hides the WYSIWYG interface.
/// </summary>
},
hideHTMLView: function() {
/// <summary>
/// Hides the HTML/Source View (TextArea DOM Element) within the Editor and displays the WYSIWYG interface.
/// </summary>
},
toggleHTMLView: function() {
/// <summary>
/// Toggles between HTML/Source View (TextArea DOM Element) and the WYSIWYG interface within the Editor.
/// </summary>
},
toHtmlString: function() {
/// <summary>
/// Returns the HTML text contained within the editor.
/// </summary>
/// <returns type="String" />
},
toString: function() {
/// <summary>
/// Return the Text contained within the editor, with all HTML tags removed.
/// </summary>
/// <returns type="String" />
},
updateTextArea: function() {
/// <summary>
/// Forces the TextArea DOM Element to by sync'd with the contents of the HTML WYSIWYG Editor.
/// </summary>
},
updateHtmlArea: function() {
/// <summary>
/// Forces the HTML WYSIWYG Editor to be sync'd with the contents of the TextArea DOM Element.
/// </summary>
}
};
jHtmlArea.fn.init.prototype = jHtmlArea.fn;
})(jQuery);
File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More