Compare commits

...

513 Commits

Author SHA1 Message Date
Serge Noiraud d5b0d2e347 ODFDoc : Issue 2576 : change run-through form background to foreground.
svn: r14920
2010-03-24 06:44:54 +00:00
Raphael Ackermann d6e1ebf801 0002857: Spacebar doesn't activate embedded edit buttons
svn: r14869
2010-03-19 14:59:53 +00:00
Joan Creus 236028d808 Updating translation
svn: r14776
2010-03-12 16:59:21 +00:00
Joan Creus 3c6253d4ff Minor corrections
svn: r14669
2010-03-07 16:50:18 +00:00
Joan Creus ca154e46cd Updating translation
svn: r14656
2010-03-06 23:31:12 +00:00
Erik De Richter d087a88d93 update nl translation
svn: r14419
2010-02-20 17:44:16 +00:00
Rob G. Healey 498284b2ba Fixed a bug in Alphabet Navigation which had the wrong screen width. Thank you, Phillip Olsson, for pointing it out.
svn: r14416
2010-02-20 14:00:49 +00:00
Arturas Sleinius 84eb262c26 Updated Lithuanian translation
svn: r14401
2010-02-16 13:40:41 +00:00
Benny Malengier 497cc66a20 3580: People list (private handlers) and display Name format
in reality: associations are not removed on delete person


svn: r14386
2010-02-15 12:18:03 +00:00
Gary Burton 9d28157f31 Use name displayer. Bug 3530
svn: r14228
2010-02-05 12:39:29 +00:00
Benny Malengier 7683470cf3 new gtk version has also a set_window
svn: r14189
2010-02-02 08:14:13 +00:00
Brian Matherly f48d15de5c Update to polish translation from Łukasz Rymarczyk
svn: r14150
2010-01-28 04:30:08 +00:00
Jérôme Rapinat 5704b4d113 Update Chinese translation (by Honeyword)
svn: r14128
2010-01-25 08:37:00 +00:00
Jérôme Rapinat a35defb35e 1683 typo/crash and get rid of old API
svn: r14047
2010-01-12 16:33:17 +00:00
Serge Noiraud 164db015e9 ODFDoc : issue 3439, 3440, 3461, 3462
svn: r14027
2010-01-11 08:12:08 +00:00
Doug Blank afd0dbf40e 3436: [crash] 'gtk.HBox' object has no attribute 'set_alignment'
svn: r13993
2010-01-08 11:31:52 +00:00
Serge Noiraud fca7917515 ODFDoc : issue 3440; remove only fo:max-height.
svn: r13988
2010-01-07 20:30:47 +00:00
Peter Landgren e4a8cc44ae Fix of issue 3480.
svn: r13966
2010-01-03 13:59:07 +00:00
Peter Landgren 7d93d35994 Fix of issue 3495.
svn: r13964
2010-01-03 11:22:36 +00:00
Jérôme Rapinat 8a41d0afd9 minor improvements
svn: r13926
2009-12-27 11:25:12 +00:00
Mirko Leonhäuser 9a83d2341b minor fixes in German translation (Surname, lastname translation)
svn: r13917
2009-12-25 23:35:42 +00:00
Gary Burton 776c4b639a Fix bug 2926. Two references created when dropping media onto gallery tab
svn: r13857
2009-12-20 17:23:45 +00:00
Gary Burton 545ec06e6d Fix wrong calls to get_type
svn: r13851
2009-12-19 16:07:40 +00:00
Serge Noiraud debe141034 ODFdoc : issue 3439 and 3440 (ODF validator).
svn: r13849
2009-12-18 22:49:17 +00:00
Peter Landgren 135e5639e1 Found one untranslated string
svn: r13803
2009-12-14 14:21:56 +00:00
Jérôme Rapinat 9c7c5453b1 fix an unicode conversion bug on nephew level (related to 3114 - thank you Peter)
svn: r13788
2009-12-13 17:47:51 +00:00
Jérôme Rapinat de34eab12c fix an unicode conversion bug on niece level (related to 3114)
svn: r13787
2009-12-13 16:34:19 +00:00
Jérôme Rapinat 4b2030d48b 1683: Untranslatable text in Relationship calculator (by Andrew I Baznikin)
svn: r13776
2009-12-12 10:59:26 +00:00
Stéphane Charette 52f4f76c82 bump version number
svn: r13727
2009-12-06 10:33:34 +00:00
Stéphane Charette 6a9be24e1c updated NEWS for version 3.1.3
svn: r13722
2009-12-06 08:25:22 +00:00
Jérôme Rapinat 487435d411 Update Croatian translation
svn: r13713
2009-12-05 08:18:56 +00:00
Jérôme Rapinat c6dcfef776 Merge Lithuanian and Croatian translations with last template
svn: r13712
2009-12-05 08:12:30 +00:00
Jérôme Rapinat 5866b28877 Updated Lithuanian translation (was added on tag 3.1.2)
svn: r13711
2009-12-05 07:55:18 +00:00
Jérôme Rapinat e9b643c5d6 Update Croatian translation (by Josip)
svn: r13710
2009-12-05 07:37:08 +00:00
Doug Blank 4cc6d3f904 3410: holidays.xml is reported to not load from user's plugin directory
svn: r13704
2009-12-05 03:16:56 +00:00
Jérôme Rapinat f18c6c9189 assignment after use
svn: r13701
2009-12-04 09:22:33 +00:00
Jérôme Rapinat aae0360818 case and add comments
svn: r13700
2009-12-04 08:07:50 +00:00
Serge Noiraud f649702b1d GeoView : gramps crash : issue 3341 : initialization change.
svn: r13699
2009-12-03 19:59:09 +00:00
Jérôme Rapinat 83c2b7940d typos
svn: r13696
2009-12-01 18:20:36 +00:00
Jérôme Rapinat 3f0475b252 Update Slovak translation (by Lubo Vasko)
svn: r13694
2009-12-01 13:39:51 +00:00
Peter Landgren 9c1af31a35 Fixed a minor bug.
svn: r13688
2009-11-29 19:26:38 +00:00
Luigi Toscano 431effe789 Italian translation updates.
svn: r13685
2009-11-29 00:29:15 +00:00
Jérôme Rapinat 2bc8f50ac2 Update french translation
svn: r13680
2009-11-27 18:57:19 +00:00
Serge Noiraud 5a6e6959de GeoView : workaround to correct issue 3341.
backward and forward button suppression in the toolbar.
          These functionalities are always available with the mouse <right button> in the html page.


svn: r13677
2009-11-26 20:54:59 +00:00
Jérôme Rapinat 5b5bf3344f Update polish translation (by Łukasz Rymarczyk)
svn: r13673
2009-11-26 10:29:16 +00:00
Jérôme Rapinat af15d80cdb two mismatches %() on plural_form
svn: r13672
2009-11-25 15:34:25 +00:00
Peter Landgren 613c11b64f Final Swedish update for 3.1.3
svn: r13669
2009-11-24 14:52:13 +00:00
Jérôme Rapinat dec5bb6390 re-enable entries for 3rd party plugins
svn: r13668
2009-11-24 10:37:49 +00:00
Erik De Richter fb178130c8 updated gramps.pot and translations
svn: r13667
2009-11-24 07:10:34 +00:00
Jérôme Rapinat 93812faa40 3387: Updated finnish translation for gramps31 (Janne Kovesjärvi)
svn: r13666
2009-11-23 22:52:21 +00:00
Jérôme Rapinat 6d990ba147 Updated Danish translation (Morten Bo Johansen)
svn: r13665
2009-11-23 22:45:11 +00:00
Doug Blank f8316f1794 Moved out of gramps31 branch
svn: r13663
2009-11-23 12:16:21 +00:00
Joan Creus e36d39f208 Updating Catalan translation
svn: r13659
2009-11-22 23:29:53 +00:00
Peter Landgren dbc96aad2e Update for 3.1.3
svn: r13656
2009-11-22 22:12:51 +00:00
Serge Noiraud 990a833d21 GeoView : map internationalization.
svn: r13650
2009-11-22 10:00:12 +00:00
Benny Malengier af25513134 3106: Unable to use People with a common ancestor with <filter> match rule
svn: r13648
2009-11-22 08:30:06 +00:00
Benny Malengier 853d2a638d 3269: Export privacy switch toggles inclusion of source page data
svn: r13640
2009-11-19 20:50:17 +00:00
Benny Malengier a4c22a3b46 2799: in GEDCOM export, changed timestamp for every single record is 31 DEC 1969
svn: r13629
2009-11-18 22:45:39 +00:00
Peter Landgren 963f99536e Minor corrections.
svn: r13624
2009-11-18 13:20:49 +00:00
Mirko Leonhäuser 6844392c3d Update german translation
svn: r13609
2009-11-17 17:22:38 +00:00
Benny Malengier a7bc1ad0f8 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=532559
svn: r13605
2009-11-17 08:46:12 +00:00
Rob G. Healey 01f6e569a7 Fixed several problems with stylesheets.
svn: r13602
2009-11-17 05:01:50 +00:00
Erik De Richter 6d533d4c35 update nl translation
svn: r13577
2009-11-14 07:05:09 +00:00
Erik De Richter 55e41fadf4 update nl translation
svn: r13576
2009-11-14 06:59:01 +00:00
Espen Berg ee5ee7db3f Revised Norwegian bokmål and nynorsk to 100%
svn: r13573
2009-11-13 14:22:39 +00:00
Jérôme Rapinat 5fdcc32703 update french translation
svn: r13558
2009-11-11 15:25:42 +00:00
Jérôme Rapinat b4aa00dac7 1563: 'Compressed Strudtured Vector Graphic SVG should be SVGZ (contribution by DuncanNZ)
svn: r13557
2009-11-11 15:00:13 +00:00
Jérôme Rapinat 834662a823 Update Hungarian translation (contribution by Kolesár András)
svn: r13548
2009-11-10 15:04:17 +00:00
Jérôme Rapinat b25211037a Update Hungarian translation (contribution by Kolesár András)
svn: r13533
2009-11-09 16:36:37 +00:00
Luigi Toscano 35a03d7994 Italian translation updates.
svn: r13526
2009-11-07 23:20:11 +00:00
Jérôme Rapinat 1a7fad0ab1 Update Hungarian translation (contribution by Kolesár András)
svn: r13521
2009-11-07 14:26:57 +00:00
Benny Malengier ac84dc2e26 add time to logger
svn: r13517
2009-11-07 13:24:50 +00:00
Mirko Leonhäuser e6ddc51d72 Update german translation
svn: r13510
2009-11-06 18:18:54 +00:00
Espen Berg e6c1c5f689 Fully revised Norwegian nynorsk translation
svn: r13508
2009-11-06 12:08:02 +00:00
Rob G. Healey 5a44ced7b1 Removed spaces and commas from alphabet_navigation().
svn: r13504
2009-11-05 23:15:59 +00:00
Nick Hall ba9e469215 Fixed error when opening two plugin status windows
svn: r13502
2009-11-05 16:52:51 +00:00
Espen Berg 7cc523ac4e Revised Norwegian translation to 100%
svn: r13495
2009-11-04 13:55:02 +00:00
Peter Landgren f8d54b64bc Fix so that a copy is created, if new filename already exists. Works like normal XML export.
svn: r13493
2009-11-03 17:21:46 +00:00
Luigi Toscano ce3c465ef5 More updates.
svn: r13471
2009-10-30 22:26:14 +00:00
Luigi Toscano 275e9eebfd Italian translation updates (+regenerated template)
svn: r13470
2009-10-30 22:02:55 +00:00
Jérôme Rapinat c9cb640f28 cannot translate variable (part2 - thanks Peter)
svn: r13466
2009-10-30 18:00:48 +00:00
Jérôme Rapinat 3eaa8115c2 cannot translate variable (mailing-list)
svn: r13464
2009-10-30 10:16:57 +00:00
Jérôme Rapinat 285e23303c 3278: [Records plugin] Mariage calculation should only work with event_role=Family or primary
svn: r13455
2009-10-29 11:44:09 +00:00
Rob G. Healey bda858cc5f Fixed navigation menu in Web_Basic-Cypress.css. Changed body background in body#WebCal in Web_Visually.css.
svn: r13453
2009-10-28 23:55:39 +00:00
Espen Berg 597e6a150d Some revision on Norwegian translation
svn: r13450
2009-10-28 20:56:41 +00:00
Gerald Britton b9c091a72e Bug 0003098: "Buri" event on GeneWeb file may break import into Gramps
svn: r13449
2009-10-28 19:21:49 +00:00
Benny Malengier 2732634e98 03288: [XML import] Custom family event role type is ignored on Family Events
svn: r13446
2009-10-28 16:14:48 +00:00
Gerald Britton 23f0fae4e3 Bug 3063: Deprecation warnings with gtk 2.18 on Ubuntu 9.10
svn: r13427
2009-10-26 20:42:58 +00:00
Rob G. Healey f459fc1ee4 Fix for #3262. The extensions of .php, .php3, .cgi do not the document starting with the xml declaration.
svn: r13426
2009-10-26 20:27:20 +00:00
Benny Malengier 602097c854 03289: GVFamilyLines, PlaceReport crash without individuals set
svn: r13412
2009-10-25 17:06:50 +00:00
Benny Malengier 75991dd5cd 3282: Gramps should only display marriage event with role = family (or primary)
svn: r13410
2009-10-25 16:51:15 +00:00
Peter Landgren c5951cab7c Fix of issue 3307. Was a typo.
svn: r13392
2009-10-22 09:02:45 +00:00
Jérôme Rapinat 4c4605e744 3305: update Brazilian Portuguese translation (by lcc)
svn: r13388
2009-10-20 18:00:17 +00:00
Peter Landgren fcab11a0ee Fix of issue 3299.
svn: r13383
2009-10-18 09:16:19 +00:00
Doug Blank 28e4707cd1 3296: Data loss during XML-export->import; assumed type was set on name element
svn: r13381
2009-10-17 22:53:30 +00:00
Doug Blank ffe4ea5306 3063: tooltips in new gtk; missed conversion change
svn: r13378
2009-10-17 14:27:06 +00:00
Doug Blank 809a810c37 3291: "Probably alive" misses persons definitely alive
svn: r13376
2009-10-16 03:14:26 +00:00
Doug Blank d1592c55be Missed make_gui_option conversion from tooltip update
svn: r13373
2009-10-15 10:15:29 +00:00
Gerald Britton 14c76f563f Bug 3290: Deprecation warnings with gtk 2.18 on Ubuntu 9.10
svn: r13370
2009-10-14 17:43:54 +00:00
Gerald Britton 7ba22af095 Bug 3290: Deprecation warnings with gtk 2.18 on Ubuntu 9.10
svn: r13368
2009-10-13 19:20:35 +00:00
Mirko Leonhäuser fba0650302 minor fixes in German translation
svn: r13356
2009-10-08 20:54:06 +00:00
Jérôme Rapinat 4b5383170c typo/wording on web reports
svn: r13355
2009-10-08 18:03:08 +00:00
Jérôme Rapinat 9d78dd6613 3199: Localisation in web page report - Problem with word Home, too many meanings
svn: r13351
2009-10-08 12:01:48 +00:00
Mirko Leonhäuser 31e415f442 Update german translation
svn: r13336
2009-10-07 18:41:14 +00:00
Jérôme Rapinat fe54661b54 3199: Localisation in web page report - use context for home (not the same as home on program)
svn: r13330
2009-10-07 10:05:45 +00:00
Rob G. Healey e0570c9d3a Fixed alphabet navigation and content padding in all stylesheets now.
svn: r13323
2009-10-07 00:47:20 +00:00
Rob G. Healey 615abec162 Fixed Alphabet Navigation and content padding.
svn: r13322
2009-10-07 00:12:38 +00:00
Espen Berg d71ccad5b5 Some more revision on nb.po
svn: r13318
2009-10-06 13:38:05 +00:00
Jérôme Rapinat 4b694197cf 3199: Localisation in web page report - Problem with a word Name, too many meanings (by Łukasz Rymarczyk)
svn: r13317
2009-10-06 10:34:38 +00:00
Jérôme Rapinat 38651e2349 #3270: update Polish translation (by Łukasz Rymarczyk)
svn: r13315
2009-10-06 10:06:34 +00:00
Jérôme Rapinat bd9393ddbf to allow to translate birth word
svn: r13313
2009-10-06 09:41:15 +00:00
Espen Berg a6ecbce949 Some more revision on nb.po
svn: r13312
2009-10-06 08:48:27 +00:00
Rob G. Healey 690c95b098 Moved some elements around in the stylesheets. Fixed alphabet navigation in Ash stylesheet. Fixed the div id in def alphabet_navigation() to alphabet.
svn: r13310
2009-10-06 08:14:56 +00:00
Jérôme Rapinat f89f313836 small improvements on spouse/partner relationships
svn: r13301
2009-10-04 08:07:40 +00:00
Jérôme Rapinat 49d21ff189 small improvements on spouse/partner relationships
svn: r13300
2009-10-04 07:59:00 +00:00
Peter Landgren 0687de05f4 Fix of issue 3253 for Family Lines report. Zeros are not shown.
svn: r13294
2009-10-03 13:46:19 +00:00
Doug Blank 562c14ebb4 #3194: Order of children in export and import of GEDCOM was wrong. See bug for more details.
svn: r13291
2009-10-03 05:05:38 +00:00
Doug Blank b135a50fe9 #3254: protect from crashing on copy to same file
svn: r13290
2009-10-03 03:39:32 +00:00
Espen Berg 51db87f2c4 Some updates on Norwegian translation. Quite a lot remaining
svn: r13281
2009-10-01 18:31:16 +00:00
Espen Berg 6335ba09de Some updates on Norwegian translation. Quite a lot remaining
svn: r13277
2009-09-30 19:49:53 +00:00
Jérôme Rapinat 0e6b7ed78b avoid possible conflict with regex on a third party plugin
svn: r13274
2009-09-29 05:47:17 +00:00
Jérôme Rapinat ac8bfe2732 avoid possible conflict with regex a third party plugin
svn: r13273
2009-09-29 05:43:46 +00:00
Doug Blank e8835aa513 #3241: wife should be mother
svn: r13272
2009-09-29 00:23:18 +00:00
Serge Noiraud 91cf708449 GeoView : internationalisation for map control ( google and openstreetmap )
svn: r13266
2009-09-27 11:18:14 +00:00
Mirko Leonhäuser d397a2a64f minor fixes in German translation
svn: r13264
2009-09-27 09:27:34 +00:00
Doug Blank 95e0b720a9 #2930: Crash whilts generating web pages; fix requested by Rob
svn: r13262
2009-09-27 00:13:57 +00:00
Doug Blank 3552b01910 Removed unnecessary update signals
svn: r13261
2009-09-27 00:03:52 +00:00
Doug Blank 2da9d7e1ab Allows users to go back to 3.1 after 3.2 Pedigree Style change
svn: r13260
2009-09-27 00:00:36 +00:00
Peter Landgren 5e7f896e92 Fix of issue 3215.
svn: r13235
2009-09-23 13:03:33 +00:00
Peter Landgren d47c4534c6 Minor translation update.
svn: r13232
2009-09-22 11:40:14 +00:00
Mirko Leonhäuser 20d1cb0110 minor fixes in German translation
svn: r13229
2009-09-20 11:20:13 +00:00
Jérôme Rapinat 8abec7ba25 added optional additional third party plugins references
svn: r13225
2009-09-19 10:07:19 +00:00
Mirko Leonhäuser 465c9d1a0b minor fixes in German translation
svn: r13219
2009-09-17 17:05:06 +00:00
Doug Blank 7947af1fb7 bug #3221: Improvements for WhatsNext Gramplet, by reinhard
svn: r13216
2009-09-17 03:12:33 +00:00
Mirko Leonhäuser e291b76c00 minor fixes in German translation
svn: r13214
2009-09-16 18:27:22 +00:00
Mirko Leonhäuser 2cde7624f5 minor fixes in German translation
svn: r13202
2009-09-14 17:21:07 +00:00
Mirko Leonhäuser 6eb3c3f9b2 Update german translation
svn: r13189
2009-09-10 16:43:12 +00:00
Jérôme Rapinat 0ebbeb30b8 #3182 Add an used singular form, avoid empty string on translation dict
svn: r13187
2009-09-10 13:47:37 +00:00
Peter Landgren 82500dc151 String must be unicode for truncation to work for non ascii characters.
svn: r13179
2009-09-08 13:45:44 +00:00
Peter Landgren 1f576221d7 String must be unicode for truncation to work for non ascii characters.
svn: r13177
2009-09-08 10:15:24 +00:00
Peter Landgren b7b5045497 String must be unicode for truncation to work for non ascii characters.
svn: r13175
2009-09-08 10:01:58 +00:00
Peter Landgren 37db7366c1 String must be unicode for truncation to work for non ascii characters.
svn: r13173
2009-09-08 08:45:08 +00:00
Peter Landgren 30acde6546 String must be unicode for truncation to work for non ascii characters.
svn: r13171
2009-09-08 08:28:29 +00:00
Peter Landgren 26fed05e64 String must be unicode for truncation to work for non ascii characters.
svn: r13169
2009-09-08 07:35:10 +00:00
Peter Landgren 2554a1decd Strings must be unicode for truncation to work for non ascii characters.
svn: r13167
2009-09-08 06:35:01 +00:00
Arturas Sleinius cfa140e165 Updated Lithuanian translation
svn: r13162
2009-09-06 12:04:16 +00:00
Jérôme Rapinat fbc6414670 Update french translation
svn: r13154
2009-09-03 08:35:50 +00:00
Peter Landgren 8cc62188e1 New strings translated.
svn: r13147
2009-09-01 16:29:04 +00:00
Serge Noiraud 40399556c2 NarrativeWeb : issue 2788 and 2914 : mixed / and \\ on windows
svn: r13129
2009-08-28 16:25:30 +00:00
Mirko Leonhäuser 940b2471c4 Update german translation
svn: r13128
2009-08-28 09:56:09 +00:00
Serge Noiraud 718b763b6d GeoView : Full functionalities.
svn: r13126
2009-08-27 19:57:57 +00:00
Peter Landgren 234994bfaf Fix of issue 3188, search for ü did not work.
svn: r13125
2009-08-27 19:51:57 +00:00
Erik De Richter c62229a449 update fr po
svn: r13121
2009-08-27 05:49:43 +00:00
Serge Noiraud f4b5710959 GeoView : Fix of issues 3150, 3152 for 3.1 branch (path problem on windows)
svn: r13114
2009-08-24 20:17:05 +00:00
Mirko Leonhäuser 84d1485cec German holidays depending to easter
svn: r13111
2009-08-23 12:20:55 +00:00
Mirko Leonhäuser 960a62b4c8 Update german translation
svn: r13110
2009-08-23 09:05:34 +00:00
Erik De Richter 94313ae388 update-po and new nl.po
svn: r13108
2009-08-23 08:14:18 +00:00
Jérôme Rapinat d43de411bc Use plural forms (ngettext) in plugins/tool/NotRelated (patch by VPeric)
svn: r13106
2009-08-23 07:35:10 +00:00
Mirko Leonhäuser 6d48930121 minor fixes in German translation
svn: r13100
2009-08-21 15:45:05 +00:00
Peter Landgren 5bd5a98ba9 unicode text must be sliced correctly.
svn: r13091
2009-08-20 13:08:49 +00:00
Benny Malengier 26dd3db5bc 2863: Wrong row when dropping on embedded list
svn: r13088
2009-08-20 12:35:34 +00:00
Espen Berg 057c962fe0 Some revised strings in Norwegian language file
svn: r13028
2009-08-16 09:26:48 +00:00
Peter Landgren bd8f5317ba Better translation i one gramplet.
svn: r12979
2009-08-12 17:34:31 +00:00
Mirko Leonhäuser 6a6ccadf6a minor fixes in German translation
svn: r12960
2009-08-11 20:01:06 +00:00
Jérôme Rapinat 4cd92c86e1 3160: Add Serbian DateHandler (patch provided by VPeric)
svn: r12946
2009-08-10 14:56:18 +00:00
Jérôme Rapinat 2cfdd5f179 3156: Bug in Croatian DateHandler (patch provided by VPeric)
svn: r12944
2009-08-10 14:23:29 +00:00
Serge Noiraud 1c41b04d3d GeoView : Update mapstraction to version 215.
Switch between maps works.


svn: r12928
2009-08-08 21:31:21 +00:00
Richard Taylor 57456a3fdf SVN reorganisation: Move current maintenance branches
svn: r12910
2009-08-07 08:13:20 +00:00
Richard Taylor 28babdfd20 Fix for OS X Scratchpad issue 3089: clipboard broken in Mac port. Merged from trunk r12882.
svn: r12894
2009-08-07 07:49:42 +00:00
Benny Malengier 83177dbe7b remember scrolled position
svn: r12873
2009-08-04 17:18:18 +00:00
Jérôme Rapinat 5ccc779779 3114: Kinship report in french crash under Windows with rtf or pdf output format (contribution by danielg)
svn: r12867
2009-08-03 05:43:46 +00:00
Jérôme Rapinat 6cd32e4b74 Bug [0003123]: [Gedcom] An empty type on event may break import (gbritton)
svn: r12853
2009-07-29 20:17:41 +00:00
Jérôme Rapinat f0f32f6122 #2776: Thumbnail images in report output do not take referenced area into account (patch provided by lomo)
svn: r12852
2009-07-29 17:48:18 +00:00
Brian Matherly c81b322009 0003032: Book reports loses center person
svn: r12842
2009-07-28 04:28:12 +00:00
Brian Matherly d7fcfc6fb1 0002957: Crash when displaying the configuration of a book created with Gramps 3.0.x
svn: r12840
2009-07-28 03:52:09 +00:00
Jérôme Rapinat 466bffef30 update gedcom sample
svn: r12833
2009-07-23 10:30:11 +00:00
Peter Landgren 7272f94206 Fix of issue 3111, string.lowercase in Windows.
svn: r12830
2009-07-21 15:42:11 +00:00
Doug Blank 450991f5c3 fix to match changed url of blog comment rss
svn: r12824
2009-07-20 12:46:05 +00:00
Doug Blank 76c8eb47cf Bug #3097: Dates parsed after a .gw import should not use Julian calendar; Changed None to 0
svn: r12823
2009-07-20 06:50:19 +00:00
Peter Landgren 07218ca4c4 Fix of issue 3109, max number of generations are now set to 50, equal in ancestor tree and descendent tree.
svn: r12815
2009-07-19 06:53:15 +00:00
Jérôme Rapinat 1d1281ae10 try to provide a better support for place labels : Belgique and Canada
svn: r12814
2009-07-17 13:01:47 +00:00
Benny Malengier c207cf819b 2352: 'NoneType' object has no attribute 'get_family_handle_list'
svn: r12805
2009-07-16 12:40:52 +00:00
Erik De Richter b294f3608b new nl. po translation
svn: r12779
2009-07-09 07:17:42 +00:00
Mirko Leonhäuser 7423eec380 Update german translation
svn: r12777
2009-07-08 16:40:31 +00:00
Jérôme Rapinat 59c14c507c typo
svn: r12772
2009-07-07 09:43:26 +00:00
Peter Landgren 9d055bb444 Fix of issue 3087.
svn: r12768
2009-07-06 18:17:07 +00:00
Benny Malengier 494311f234 3089: clipboard drop broken in Mac port
svn: r12767
2009-07-06 17:36:36 +00:00
Jérôme Rapinat 56762c8444 to allow to translate n years old
svn: r12754
2009-07-02 15:45:17 +00:00
Jérôme Rapinat 6eb21926ed Retour a la version n de bonjour
svn: r12752
2009-07-02 07:00:24 +00:00
Jérôme Rapinat 1de0ef724f bug 2963 - typo (Lcc)
svn: r12751
2009-07-02 06:42:40 +00:00
Benny Malengier 6e5f90e580 3073: Add/edit personfilter is VERY slow in one database
svn: r12748
2009-07-01 10:58:54 +00:00
Benny Malengier cdaddc3479 3064: Remove check for libglade in configure
svn: r12743
2009-06-30 20:32:13 +00:00
Jérôme Rapinat 641adf57de Update polish translation (Łukasz Rymarczyk)
svn: r12741
2009-06-30 17:55:28 +00:00
Jérôme Rapinat 1e34c037f3 minor improvement on place code definition
svn: r12740
2009-06-30 14:39:59 +00:00
Mirko Leonhäuser 501be49025 Fixed BUG 0003072 Germantranslation error on Web Pages
svn: r12735
2009-06-29 21:10:50 +00:00
Benny Malengier 94f8838dd6 3052: Only PeopleView rebuilds entries on SearchBar after a change on columns Editor
svn: r12731
2009-06-29 19:56:36 +00:00
Mirko Leonhäuser a5f68318db Update german translation
svn: r12729
2009-06-29 16:04:20 +00:00
Jérôme Rapinat 02cd032f72 3046: Update polish translation (Łukasz Rymarczyk)
svn: r12727
2009-06-29 15:40:07 +00:00
Gary Burton ee565d5d6b Remove some junk leftover from testing.
svn: r12720
2009-06-26 10:37:53 +00:00
Gary Burton b09fa93eea Parse address from GEDCOM submitter tag. Bug #3056
svn: r12717
2009-06-26 10:25:22 +00:00
Benny Malengier 48abb86bb8 [Emrys] 2896: Macports 3.0.4 cannot view images
svn: r12715
2009-06-26 09:45:34 +00:00
Benny Malengier eb337a8d29 [Emrys] 2896: Macports 3.0.4 cannot view images
svn: r12713
2009-06-26 09:43:55 +00:00
Jérôme Rapinat 52e908a5a1 typo - contribution by Jérôme Chailloux
svn: r12708
2009-06-25 18:11:37 +00:00
Espen Berg 9e8420aaac Modified a string in Norwegian translation
svn: r12701
2009-06-24 07:36:18 +00:00
Erik De Richter 72767dce85 new nl. po translation
svn: r12697
2009-06-22 16:36:33 +00:00
Peter Landgren 385c3c3d9b Added errormsg in conn. with issue 3066.
svn: r12695
2009-06-22 09:51:18 +00:00
Benny Malengier b9e1ba0195 3066: [PlaceView] Loading... should disappear when map service plugins are present.
svn: r12693
2009-06-22 09:18:00 +00:00
Espen Berg f1ded0d689 Fixed one typo in Norwegian translation
svn: r12691
2009-06-22 05:03:59 +00:00
Gary Burton f45b4316b5 Ensure source reference dates are always exported. Bug #3062
svn: r12687
2009-06-20 20:23:21 +00:00
Gary Burton 49599fa9c3 GEDCOM parser fixes for gallery objects. Bug #3056
svn: r12685
2009-06-20 19:33:45 +00:00
Jérôme Rapinat 170336d573 update Chinese translation (contribution by honeyword)
svn: r12684
2009-06-20 07:21:17 +00:00
Jérôme Rapinat 78216846f2 update Chinese translation (contribution by honeyword)
svn: r12678
2009-06-19 09:11:23 +00:00
Zdeněk Hataš b236953ebe Fixed typo in localized date handler.
svn: r12675
2009-06-19 06:42:44 +00:00
Espen Berg c4a2e2791d Revised Norwegian Nynorsk translation thanks to Sigmund Lorentsen
svn: r12658
2009-06-12 12:33:18 +00:00
Benny Malengier 705fbf4007 2712: middle click copy paste not working in notes
svn: r12653
2009-06-11 12:51:27 +00:00
Jérôme Rapinat 72838423a0 update Bulgarian translation (Boril Gourinov, Svetoslav Stefanov-LFU)
svn: r12651
2009-06-11 07:48:08 +00:00
Erik De Richter a5970e71bc new nl. po translation
svn: r12645
2009-06-09 18:42:17 +00:00
Espen Berg 430124cdc4 Updated Norwegian Nynorsk translation
svn: r12643
2009-06-07 20:26:29 +00:00
Jérôme Rapinat 4e7b70b2b4 #3040: typo translation (contribution by Zegzda Yevgeny)
svn: r12639
2009-06-07 19:02:25 +00:00
Stéphane Charette 5125046ac1 version bump
svn: r12637
2009-06-07 07:37:03 +00:00
Stéphane Charette a2a8faec04 update for 3.1.2 release
svn: r12633
2009-06-07 06:18:50 +00:00
Jérôme Rapinat 8476afd5f3 add support for russian manual (contribution by Zegzda Yevgeny)
svn: r12629
2009-06-05 14:44:59 +00:00
Jérôme Rapinat 500435cf98 update Russian translation (contribution by Zegzda Yevgeny)
svn: r12628
2009-06-05 14:40:21 +00:00
Jérôme Rapinat 47f9471b55 update Slovak translation (keep third party entries)
svn: r12627
2009-06-05 09:01:41 +00:00
Jérôme Rapinat ea9ed2ddde update Slovak translation (contribution by Lubo Vasko)
svn: r12626
2009-06-05 08:45:59 +00:00
Erik De Richter bd4e7688a7 new nl. po translation
svn: r12624
2009-06-04 07:41:56 +00:00
Peter Landgren 1b32bc543c Fix of issue 3007.
svn: r12620
2009-06-03 18:30:42 +00:00
Peter Landgren ccf9f5b311 Fix of issue 3007.
svn: r12619
2009-06-03 18:29:54 +00:00
Gary Burton 9b5749fc8e Update PyGTK version requirement
svn: r12618
2009-06-02 20:33:23 +00:00
Espen Berg 53b832c4f8 Corrected one string
svn: r12613
2009-06-02 17:34:59 +00:00
Mirko Leonhäuser 94ff7d085a Update german translation
svn: r12607
2009-06-01 20:20:56 +00:00
Jérôme Rapinat 3c2cc180c4 update french translation
svn: r12606
2009-06-01 14:05:34 +00:00
Peter Landgren b49b9f7941 Minor update of one fuzzy string.
svn: r12605
2009-06-01 12:13:53 +00:00
Zdeněk Hataš 5f31494546 Finished czech translation.
svn: r12601
2009-05-31 11:42:31 +00:00
Jérôme Rapinat ee26d9b0d5 update Hebrew translation (contribution by Igal Shapira)
svn: r12600
2009-05-31 07:47:03 +00:00
Zdeněk Hataš dddfd7f083 Czech translation update
svn: r12597
2009-05-30 18:15:54 +00:00
Gary Burton ba01db947b Bug 2950. Made subgraph optional for Relationship Graph as discussed in bug report. Moved the option to GraphvizReportDialog and refactored FamilyLines to use it.
svn: r12595
2009-05-30 11:58:03 +00:00
Zdeněk Hataš 1157557105 Multiple updates and fixes in Czech language related files.
- Date handler
 - Relations module
 - major translation update.
pot refreshed.


svn: r12588
2009-05-29 18:29:33 +00:00
Zdeněk Hataš c09cf15e78 Minor translation fixes.
svn: r12586
2009-05-28 21:57:25 +00:00
Espen Berg 8e4d65cfc0 Revised Norwegian (bokmål) translation
svn: r12584
2009-05-28 15:12:33 +00:00
Zdeněk Hataš 70bfdbf73a Translation fixes and updates
svn: r12583
2009-05-28 14:51:25 +00:00
Erik De Richter 9c2027e437 new nl. po translation
svn: r12581
2009-05-28 06:48:25 +00:00
Mirko Leonhäuser 1da2cb2ab2 Update german translation
svn: r12580
2009-05-27 21:11:09 +00:00
Jérôme Rapinat 71ed8bd1fc update french translation
svn: r12578
2009-05-27 16:45:35 +00:00
Peter Landgren 17afb65f7a Swedish update.
svn: r12577
2009-05-27 14:40:40 +00:00
Jérôme Rapinat ba627e4e9d new template (->3.1.2)
svn: r12576
2009-05-27 10:57:18 +00:00
Benny Malengier 66142929da 2847: Trying to import an older Gramps DB fails
svn: r12575
2009-05-27 09:57:21 +00:00
Benny Malengier 2ecd1e022e 3021: When ever try to import a data.gramps from 3/2005, it bombs with errors given here
svn: r12573
2009-05-27 09:34:16 +00:00
Gerald Britton 6b858a2385 Bug 3011: fix problem with new-style class and special method names
svn: r12570
2009-05-25 19:19:51 +00:00
Rob G. Healey 917714b9c6 Fixed vertical alignment for alphabet navigation.
svn: r12567
2009-05-23 17:41:39 +00:00
Gerald Britton 8c73b202c3 Bug 3017: change old-style classes to new-style classes
svn: r12560
2009-05-21 17:58:31 +00:00
Jérôme Rapinat 5befb6046b #3015 typo
svn: r12558
2009-05-21 11:16:51 +00:00
Erik De Richter 1fafeab275 new gramps.pot
svn: r12556
2009-05-21 07:04:04 +00:00
Erik De Richter 6eb37cbdcf new nl. po translation
svn: r12555
2009-05-21 07:03:15 +00:00
Benny Malengier b0ef00da80 2995: Unable to produce Narrated Web Site using filter and privacy settings
svn: r12552
2009-05-20 10:19:29 +00:00
Benny Malengier ce44bc6b8d 2956: Errors with GTKPrint on Ubuntu 9.04
svn: r12546
2009-05-19 08:59:41 +00:00
Benny Malengier 45561e1596 2995: Unable to produce Narrated Web Site using filter and privacy settings
svn: r12542
2009-05-19 08:43:34 +00:00
Benny Malengier f19488da77 3001: crash on Narrated Web Site report on my database
svn: r12541
2009-05-19 08:20:25 +00:00
Benny Malengier de2a2c2e67 2860: Problem with det_ancestor report in PDF at page breaks\n no more STRANGE output
svn: r12536
2009-05-18 14:42:06 +00:00
Benny Malengier afbf70ed3f 2942: Note in Family eventref not referenced, also source of attribute of family eventref
svn: r12534
2009-05-18 14:01:52 +00:00
Jérôme Rapinat 0b7d3bcb41 #2962 add Hebrew translation (contribution by Igal Shapira)
svn: r12531
2009-05-18 10:13:51 +00:00
Benny Malengier bc49dcb2d9 2860: Problem with det_ancestor report in PDF at page breaks
svn: r12527
2009-05-14 14:44:28 +00:00
Benny Malengier 5386daf355 2808: fonts with xml codes don't print correctly
svn: r12524
2009-05-14 13:50:40 +00:00
Luigi Toscano 505ec7440c Italian translation updates
svn: r12523
2009-05-13 21:37:08 +00:00
Benny Malengier c980ef955a 2860: Problem with det_ancestor report in PDF at page breaks
svn: r12521
2009-05-13 08:34:22 +00:00
Jérôme Rapinat 177044c5db add third party glade references
svn: r12520
2009-05-13 07:31:20 +00:00
Peter Landgren d107631a40 Fix if issue 2964.
svn: r12517
2009-05-10 16:02:11 +00:00
Jérôme Rapinat b817556ccd #2810 update localized man files (nl)
svn: r12515
2009-05-10 13:20:08 +00:00
Serge Noiraud a91dc48e42 ODFDoc : internal permission of files and encoding.
svn: r12513
2009-05-08 20:16:29 +00:00
Jérôme Rapinat 25c01a5a78 update french translation
svn: r12511
2009-05-07 16:40:08 +00:00
Jérôme Rapinat 431985b420 #2963 fixed Brazilian-Portuguese translation (contribution by lcc)
svn: r12507
2009-05-06 14:02:03 +00:00
Jérôme Rapinat baca380914 update Brazilian-Portuguese translation (contribution by lcc)
svn: r12505
2009-05-03 06:26:00 +00:00
Peter Landgren 5652e047e6 Major update for plugins.
svn: r12504
2009-05-02 19:36:39 +00:00
Serge Noiraud da52e4cdcb Narrativeweb : Swedish specific alphabet sort.
svn: r12499
2009-05-01 08:06:21 +00:00
Jérôme Rapinat 4c9752d6bc update french translation
svn: r12492
2009-04-27 19:34:07 +00:00
Jérôme Rapinat c322cbfd5f remove old third-party plugin references
svn: r12491
2009-04-27 18:02:42 +00:00
Jérôme Rapinat 77afdabed8 update french translation and add some references for additional third party plugins
svn: r12490
2009-04-27 17:26:29 +00:00
Gary Burton b3d21f8454 Bug #2950. Use Graphviz subgraphs to keep children with their spouses on Relationship Graph
svn: r12489
2009-04-26 21:05:26 +00:00
Serge Noiraud 9aede5be4f There are three bugs which give mistery sort problems :
1 : The normalize function use NFC in one place and NFKC in all others.
    either we use NFC or we use NFKC, but don't mix these two modes.
2 : One sort function does not use the locale.strcoll
3 : There is a problem with the following statement:
    if letter is not last_letter. "is not" doesn't work correctly.



svn: r12481
2009-04-20 20:42:39 +00:00
Peter Landgren c4282e685d Minor corrections.
svn: r12480
2009-04-19 07:18:59 +00:00
Peter Landgren d1716a8387 Fix of issue 2936.
svn: r12479
2009-04-19 07:13:54 +00:00
Mirko Leonhäuser 10e437384c Fixed minor errors in translation
svn: r12475
2009-04-18 18:11:49 +00:00
Mirko Leonhäuser 581c713311 Fixed minor errors in translation
svn: r12474
2009-04-18 14:00:45 +00:00
Peter Landgren 0637992264 Fix of issue 2932.
svn: r12469
2009-04-17 19:10:03 +00:00
Jérôme Rapinat 8e3560821d update russian translation (contribution by Zegzda Yevgeny)
svn: r12459
2009-04-17 11:31:23 +00:00
Jérôme Rapinat d5502f02df #2910 translation mistakes
svn: r12454
2009-04-16 07:55:48 +00:00
Jérôme Rapinat d50a527fd4 #2810 update localized man file (polish)
svn: r12452
2009-04-16 07:51:47 +00:00
Brian Matherly 71e08f0ef7 0002868: to use '&' on filename will hide resume text on export assistant dialog
svn: r12436
2009-04-13 01:55:39 +00:00
Mirko Leonhäuser b29f07c524 Updated German translation
svn: r12434
2009-04-12 12:44:53 +00:00
Gary Burton 0b3cbc5c12 Make clipboard remember its dimensions
svn: r12432
2009-04-12 10:22:27 +00:00
Mirko Leonhäuser 507e9ec8d6 Updated German translation
svn: r12429
2009-04-10 12:00:34 +00:00
Gary Burton 29bf07cb1c Bug #2902: Fix problem with notes in geneweb export
svn: r12426
2009-04-10 10:35:47 +00:00
Brian Matherly 25864a5d16 0002897: Clipboard's Source Reference popup lingers forever
svn: r12424
2009-04-10 02:50:00 +00:00
Peter Landgren 840e77aec8 Update due to change in enirosweden.py.
svn: r12408
2009-04-08 12:41:15 +00:00
Peter Landgren fc9759c177 Improved test for valid country.
svn: r12407
2009-04-08 12:36:47 +00:00
Mirko Leonhäuser 5acd0f70c8 Fixed minor errors in translation
svn: r12405
2009-04-03 23:39:44 +00:00
Benny Malengier b8f71776d2 2880: old api use in import grdb
svn: r12398
2009-03-31 21:21:06 +00:00
Benny Malengier c9172e064f Increase usability editrule by allowing select with mouse and keyboard
svn: r12396
2009-03-30 10:19:10 +00:00
Benny Malengier 6d8dbdae60 2860: Problem with det_ancestor report in PDF at page breaks - part 1
svn: r12392
2009-03-29 09:07:13 +00:00
Benny Malengier cd24dc27bf 2770: Error on XML parser with data using '&'.
2678: Error on import of gramps XML with xml codes in the ids


svn: r12391
2009-03-28 13:20:26 +00:00
Benny Malengier 76da035636 2396: Reorder families button grabs focus
svn: r12388
2009-03-25 12:03:41 +00:00
Peter Landgren 6da75fba18 Fix of issue 2836.
svn: r12379
2009-03-23 13:52:16 +00:00
Peter Landgren 4297c5c77f Fix of issue 2851.
svn: r12377
2009-03-21 20:34:06 +00:00
Peter Landgren d0609e0666 Update of Swedish translation.
svn: r12376
2009-03-21 20:16:00 +00:00
Mirko Leonhäuser bce48c7231 Updated German translation
svn: r12375
2009-03-21 20:07:23 +00:00
Peter Landgren e9295da5a1 Made a typo.
svn: r12373
2009-03-21 18:58:58 +00:00
Peter Landgren 8e82370798 Some changes in tool tip.
svn: r12372
2009-03-21 18:55:12 +00:00
Peter Landgren 34fa469ffe Final fix of issue 2843 for any number of references.
svn: r12369
2009-03-21 08:03:44 +00:00
Peter Landgren 517ab79472 Fix of issue 2843.
svn: r12364
2009-03-20 14:21:08 +00:00
Brian Matherly 9a85727a75 0002838: NAVWEB images in predigree chart comming out as thin lines.
svn: r12362
2009-03-19 04:25:37 +00:00
Mirko Leonhäuser 8619a1b03d Updated German translation
svn: r12357
2009-03-17 11:58:30 +00:00
Rob G. Healey 19df538d3e WebCal was having problems with female marriages even though they were divorced; still showing married. Web_Visually.css - was having problems with proper highlighting of navigation menus.
svn: r12355
2009-03-16 23:33:57 +00:00
Mirko Leonhäuser e07febd145 Fixed minor error in translation
svn: r12350
2009-03-15 20:59:00 +00:00
Peter Landgren 6659dcc927 Swedish update due to issue 2820.
svn: r12349
2009-03-15 19:22:45 +00:00
Peter Landgren 5ecb4d2145 Fix of issue 2820 by changeing text.
svn: r12347
2009-03-15 19:12:32 +00:00
Rob G. Healey 44a1904dbd Fixed link and doctype statements -- Patch from Jason Simanek. Changed "id="CurrentSection" to "class="CurrentSection" -- for www.w3.org compliance.
svn: r12346
2009-03-14 21:55:30 +00:00
Doug Blank cb3d543bd6 2823: Text blocks of different size
svn: r12341
2009-03-14 12:22:31 +00:00
Doug Blank 514e8f9d3f 2816: Compilation from source; need to delete old version first
svn: r12340
2009-03-14 12:10:11 +00:00
Mirko Leonhäuser 5fcab02199 Updated German translation
svn: r12337
2009-03-14 11:11:19 +00:00
Peter Landgren 29750623a9 Fix of issue 2824.
svn: r12335
2009-03-14 10:51:05 +00:00
Benny Malengier 79cc2ba4b1 2784: Detailed Ancestral Report – center-person's spouse has no
heading (inconsistent with Detailed Descendant Report)
2783: Detailed Ancestral Report lists center-person's children
      twice


svn: r12334
2009-03-14 08:50:36 +00:00
Peter Landgren 4f177aa1d9 Swedish update.
svn: r12332
2009-03-13 11:58:18 +00:00
Peter Landgren 116ec44e79 Wrong Help reference.
svn: r12331
2009-03-13 11:52:20 +00:00
Peter Landgren 5f618ba6ec Fix of issue 2815, which was caused by allowing Non-Latin-1 letters.
svn: r12329
2009-03-13 10:04:16 +00:00
Peter Landgren d48d1122f3 Fix of issue 2790 for nonlatin-1 letters.
svn: r12328
2009-03-12 12:55:29 +00:00
Peter Landgren c2db8cf1fb Fixed typo.
svn: r12325
2009-03-11 15:35:29 +00:00
Jérôme Rapinat c9913ba9eb #2810 update localized man file (french)
svn: r12323
2009-03-11 15:13:07 +00:00
Peter Landgren a972560b9a Some changes, suggested by user.
svn: r12321
2009-03-11 13:54:46 +00:00
Peter Landgren 0a3a99769d Update due to issue #2522.
svn: r12320
2009-03-11 13:30:14 +00:00
Benny Malengier c84ac60e96 2781: Turkish dictionnary (Enchant's zemberek_provider) on Note Editor returns an error
svn: r12318
2009-03-11 11:52:50 +00:00
Benny Malengier 7eb951c8cd 2795: Regression: cannot create backups from command-line
svn: r12316
2009-03-11 11:41:12 +00:00
Jérôme Rapinat a9c2363951 update slovak translation (by Lubo Vasko)
svn: r12315
2009-03-11 11:31:08 +00:00
Benny Malengier fdf94834c5 2522: -o didn't write an output file : replaced by -e
svn: r12314
2009-03-11 11:14:56 +00:00
Peter Landgren e94fb3f66f New format for lat/long with decimal minutes and no seconds due to change in Eniro maps.
svn: r12311
2009-03-11 09:37:36 +00:00
Doug Blank 12a642b166 Newly loaded Gramplets from the Plugins Reload are now available
svn: r12310
2009-03-11 02:41:30 +00:00
Joan Creus fca98024fc update for ca.po
svn: r12308
2009-03-10 23:11:42 +00:00
Jérôme Rapinat 5e30c890b9 update french translation and template
svn: r12307
2009-03-10 18:40:54 +00:00
Mirko Leonhäuser c5b0bdffe1 Updated German translation
svn: r12306
2009-03-10 17:43:32 +00:00
Benny Malengier bbfb853ee9 feature 2769: add styled note output to markerreport and
famgroupreport


svn: r12304
2009-03-10 16:50:11 +00:00
Peter Landgren 878931e076 Swedish update.
svn: r12302
2009-03-10 12:52:13 +00:00
Doug Blank ad71da397f 2803: 'Check & Repair Database' failed at stage: 'Checking families for proper date formats'
svn: r12301
2009-03-10 12:51:40 +00:00
Doug Blank 6470c49eda 2804: Cannot detach two gramplets
svn: r12300
2009-03-10 12:32:57 +00:00
Doug Blank a3656c2be5 2803: 'Check & Repair Database' failed at stage: 'Checking families for proper date formats'
svn: r12297
2009-03-10 12:20:50 +00:00
Stéphane Charette 81a83ce2d9 bump version to 3.1.2
svn: r12295
2009-03-10 06:58:38 +00:00
Stéphane Charette 400c0db84b update for 3.1.1 release
svn: r12292
2009-03-10 06:09:53 +00:00
Stéphane Charette ea2d2eb2f5 bug #2789 - wrong relative path for blank.gif
svn: r12290
2009-03-10 05:24:08 +00:00
Doug Blank f0852c0a41 2798: Gramplet 'Fan Chart' throws error when right-clicked prior to defining Home Person.
svn: r12288
2009-03-10 00:53:10 +00:00
Doug Blank a10093408e 2792: Dates in sourcereferences in person_ref_list not upgraded; this fixes the missing conversion in child-ref-list
svn: r12285
2009-03-09 19:36:43 +00:00
Doug Blank 1b56b2e9fe 2792: Dates in sourcereferences in person_ref_list not upgraded; this adds check and repair fix to these dates
svn: r12284
2009-03-09 19:33:15 +00:00
Mirko Leonhäuser e9d2e361da Updated German translation
svn: r12283
2009-03-09 19:13:45 +00:00
Jérôme Rapinat bb8a97372c typo (new gramps.pot)
svn: r12282
2009-03-09 18:55:51 +00:00
Jérôme Rapinat b37590b2b5 typos (new gramps.pot)
svn: r12281
2009-03-09 18:48:37 +00:00
Joan Creus 1e79a2aed6 Adding translator hint
svn: r12279
2009-03-09 18:42:37 +00:00
Jérôme Rapinat 42e2e8960d there was a typo (new gramps.pot) and add more 3rd party references
svn: r12278
2009-03-09 18:36:50 +00:00
Joan Creus 3a4781aaa0 Improving help messages
svn: r12276
2009-03-09 18:33:26 +00:00
Joan Creus 4d900e41e8 Fixing typos
svn: r12274
2009-03-09 18:23:48 +00:00
Doug Blank 1566aa7f43 2792: Dates in sourcereferences in person_ref_list not upgraded; hack to be removed in future
svn: r12270
2009-03-09 14:00:19 +00:00
Doug Blank 3b21c9457c 2772: Name Display Format – Rev. is not a prefix
svn: r12268
2009-03-09 12:51:00 +00:00
Doug Blank c0ef6c74a7 Gramplets updating twice on start-up
svn: r12266
2009-03-09 12:04:53 +00:00
Doug Blank b9200ade80 2792: Dates in sourcereferences in person_ref_list not upgraded
svn: r12264
2009-03-09 11:38:45 +00:00
Peter Landgren f597681a11 Deleted one definition, that was committed earlier by mistake.
svn: r12263
2009-03-09 08:11:15 +00:00
Doug Blank 7f9afcec58 New Plugin Manager Gramplet
svn: r12262
2009-03-09 01:45:55 +00:00
Joan Creus 180995643b Fixing typos
svn: r12259
2009-03-08 22:58:27 +00:00
Mirko Leonhäuser 9e9d522099 Fixed minor error in translation
svn: r12258
2009-03-08 20:49:00 +00:00
Doug Blank 0015f16e9f Added version info
svn: r12257
2009-03-08 20:46:19 +00:00
Doug Blank 6d0b902aab Updated version info
svn: r12254
2009-03-08 20:38:17 +00:00
Doug Blank f185911423 Added version info
svn: r12253
2009-03-08 20:35:40 +00:00
Doug Blank c7127fe162 RSS and Wiki Headline News Reader
svn: r12252
2009-03-08 20:32:22 +00:00
Stéphane Charette c6633a559e re-apply fix for bug #2121 - graphviz graphs generated off the edge of the page
svn: r12249
2009-03-08 19:58:49 +00:00
Doug Blank 5d84e3b1e2 2753: Using 'is' or 'was' logic in the Detailed Reports is flawed; replaced with probably_alive
svn: r12248
2009-03-08 14:31:20 +00:00
Benny Malengier d10d443c9d remove whitespace
svn: r12246
2009-03-08 09:35:30 +00:00
Benny Malengier 930c47b290 2781: Turkish dictionnary (Enchant's zemberek_provider) on Note Editor
returns an error


svn: r12245
2009-03-08 09:31:38 +00:00
Benny Malengier 3ae4e233db add warning to remove old gramps version
svn: r12242
2009-03-07 20:11:24 +00:00
Stéphane Charette bdbcc5efb2 bump version to 3.1.1
svn: r12241
2009-03-07 10:10:28 +00:00
Stéphane Charette 231a26fbf0 change for bug #2763 requires me to add the 2 glade files to POTFILES.skip
svn: r12239
2009-03-07 09:57:20 +00:00
Stéphane Charette 9d3c20898c update for 3.1.0 release
svn: r12235
2009-03-07 09:32:31 +00:00
Stéphane Charette b2a8a557ab applied optim.patch from bug #2763 (thanks Benny!) and further suggestions for evel.glade and leeak.lade (thanksm Jérôm!)
svn: r12234
2009-03-07 08:36:09 +00:00
Jérôme Rapinat 4f92f8d713 2774: po/es.po missing a '\n' causes msgfmt to fail (patch provided by James A. Treacy)
svn: r12233
2009-03-06 19:29:37 +00:00
Jérôme Rapinat 708ab325bd typo on header
svn: r12232
2009-03-06 13:26:01 +00:00
Jérôme Rapinat 9fa3b9a9d2 update slovak translation (by Lubo Vasko)
svn: r12231
2009-03-06 13:03:56 +00:00
Luigi Toscano 7cdbc88fc3 Updates and fixes.
svn: r12230
2009-03-05 16:49:12 +00:00
Espen Berg 3153f10118 Revised Norwegian Bokmål/Nynorsk to 100%
svn: r12229
2009-03-05 12:30:29 +00:00
Jérôme Rapinat 8efc6f0184 print more text if gettext file does not use last gramps.pot
svn: r12227
2009-03-05 12:18:53 +00:00
Benny Malengier 797075b59f update README with optional enchant
svn: r12225
2009-03-05 12:17:09 +00:00
Benny Malengier 95e5848d03 2764: use pyenchant for testing installed spell check dictionaries
svn: r12224
2009-03-05 12:11:57 +00:00
Julio Sánchez 05f91734e2 Partial update
svn: r12223
2009-03-05 12:10:57 +00:00
Peter Landgren 15a9ca94f3 Corrected typo.
svn: r12221
2009-03-05 12:04:37 +00:00
Peter Landgren e43452178c Super Extra Final update of Swedish translation.
svn: r12220
2009-03-05 12:00:13 +00:00
Julio Sánchez 722af724f9 Partial update
svn: r12219
2009-03-05 08:36:34 +00:00
Erik De Richter d0606fe836 update nl.po
svn: r12218
2009-03-05 07:02:22 +00:00
Jérôme Rapinat 9ccef7848e keep 3rd party gramplet references
svn: r12216
2009-03-04 22:38:37 +00:00
Gary Burton 37063335fe Bug #2768: .rtf report disrespects DDR-FirstEntry style
svn: r12215
2009-03-04 22:31:10 +00:00
Peter Landgren 69dbf66558 Extra Final update of Swedish translation.
svn: r12214
2009-03-04 21:29:47 +00:00
Jérôme Rapinat 65c3b60c55 try to avoid mistakes on translations
svn: r12212
2009-03-04 17:46:49 +00:00
Jérôme Rapinat f0c39aae21 enable new Macedonian and Albanian translations
svn: r12210
2009-03-04 11:05:09 +00:00
Jérôme Rapinat 42fbb1aa57 update Slovak translation (by Lubo Vasko)
svn: r12208
2009-03-03 14:59:54 +00:00
Jérôme Rapinat 6e2827a62e add Macedonian and Albanian translations (references not yet added on configure.in)
svn: r12207
2009-03-03 14:41:56 +00:00
Jérôme Rapinat 6dbc57aaac typo
svn: r12206
2009-03-03 13:23:44 +00:00
Julio Sánchez 31fb009b66 Partial update
svn: r12205
2009-03-03 06:08:08 +00:00
Jérôme Rapinat 6f43a05424 reorder entries
svn: r12203
2009-03-02 17:14:16 +00:00
Julio Sánchez c2a49e1dd8 Align with gramps30
svn: r12201
2009-03-02 14:30:19 +00:00
Erik De Richter 0dda10baf9 update nl.po
svn: r12200
2009-03-02 07:14:08 +00:00
Peter Landgren 8ce73d3956 Final update of Swedish translation.
svn: r12198
2009-03-01 20:51:58 +00:00
Mirko Leonhäuser 1a2b50e645 Updated German translation
svn: r12197
2009-03-01 18:24:08 +00:00
Doug Blank cc52eab90d 2747: XML: RNG & DTD need to be moved onto web site; updated RNG to include dualdated and newyear attributes
svn: r12195
2009-03-01 15:35:58 +00:00
Gary Burton fee2d84f67 Update copyright message for 2009
svn: r12193
2009-03-01 13:03:11 +00:00
Doug Blank a614049b08 2760: Removed config.sub and config.guess; passes distcheck
svn: r12192
2009-03-01 12:58:41 +00:00
Doug Blank 1d7d2c5289 2760: errors in 'make distcheck'
svn: r12191
2009-03-01 12:46:04 +00:00
Gary Burton b5f738859a Remove assert as a means of testing for self.title
svn: r12188
2009-03-01 12:16:43 +00:00
Jérôme Rapinat ae56bee828 add Polish translator
svn: r12186
2009-03-01 10:59:27 +00:00
Jérôme Rapinat 254930fc55 add some contributors
svn: r12184
2009-03-01 10:55:14 +00:00
Jérôme Rapinat c200651f74 add russian translator (October 15, 2008)
svn: r12182
2009-03-01 10:43:18 +00:00
Jérôme Rapinat 7f7b155e36 add some contributors
svn: r12181
2009-03-01 10:37:08 +00:00
Jérôme Rapinat 02a02b8499 add some translators
svn: r12178
2009-03-01 10:28:13 +00:00
Rob G. Healey 890be35845 Web_Visually --had a problem with repeating gender symbols. All other had a problem with street address.
svn: r12176
2009-03-01 04:55:28 +00:00
Rob G. Healey e16e91d973 Fixes graphic name error. --Jason M. Simanek
svn: r12174
2009-03-01 03:17:31 +00:00
Rob G. Healey 72f4ca9df9 Fixes the Ancestor Tree Unlinked Person's issue. Thanks a million, Jason.
svn: r12172
2009-03-01 03:06:42 +00:00
Gary Burton 0bfb3a622d Fix for bug 2759: Error on Marker report (notes)
svn: r12170
2009-02-28 22:17:09 +00:00
Doug Blank c34b30fa0d Removed Records Gramplet... in different place
svn: r12167
2009-02-28 21:36:58 +00:00
Doug Blank 5417a69408 Added missing Records Gramplet
svn: r12166
2009-02-28 21:28:19 +00:00
Doug Blank 5c04db932d Added missing Records Gramplet
svn: r12165
2009-02-28 21:25:45 +00:00
Doug Blank 146dcc3773 Removed FaqGramplet and HeadlineNewsGramplet as they are not complete
svn: r12164
2009-02-28 20:09:43 +00:00
Doug Blank 3cf4da5cee minimal changes to allow updated gramplets in user's .gramps/plugins directory
svn: r12163
2009-02-28 20:00:38 +00:00
Stéphane Charette 57ed71a842 add -O flag to python to remove debug menu options
svn: r12162
2009-02-28 18:48:36 +00:00
Doug Blank 06d28806f3 Added version numbers for 3rd party gramplets
svn: r12161
2009-02-28 18:35:17 +00:00
Arturas Sleinius c4d27e603d Updated Lithuanian translation
svn: r12160
2009-02-28 14:19:33 +00:00
Rob G. Healey 20baece6b3 Fixed error in display_year_navs() which also affects the Visually Impaired stylesheet.
svn: r12158
2009-02-28 11:48:43 +00:00
Benny Malengier 666df8e6f2 DateParserDisplayTest.py is a debug tool but runs always, only run when debug
svn: r12157
2009-02-28 09:19:39 +00:00
Benny Malengier e498b18d52 Data changing GRAMPLETS are not distributed on install, user
must download them


svn: r12154
2009-02-28 09:04:51 +00:00
Arturas Sleinius 3ebb888cce Updated Lithuanian translation
svn: r12151
2009-02-27 20:14:36 +00:00
Benny Malengier dabf4f4756 2745: PlaceView crash on old pygtk
svn: r12149
2009-02-27 17:55:49 +00:00
Espen Berg dda2662b0b Norwegian Bokmål translation completed 100%
svn: r12147
2009-02-27 17:37:28 +00:00
Jérôme Rapinat d1ae849c1b typo on slovak translation
svn: r12145
2009-02-27 16:07:07 +00:00
Jérôme Rapinat 237c4a055b update slovak translation
svn: r12144
2009-02-27 15:59:58 +00:00
Benny Malengier fbd2afdf8c 2730: numeric dates on windows not correct
svn: r12142
2009-02-27 07:35:29 +00:00
Mirko Leonhäuser 844cb231c7 Fixed wrong translation of Records
svn: r12140
2009-02-26 20:21:28 +00:00
Peter Landgren eb42ce4ce2 Update of sv.po.
svn: r12138
2009-02-26 16:48:19 +00:00
Erik De Richter ecc30300d4 update nl.po
svn: r12135
2009-02-26 10:28:34 +00:00
Jérôme Rapinat a533c3abd4 2748: Some URLs still point user to wiki manual version 3.0
svn: r12130
2009-02-26 09:51:19 +00:00
Jérôme Rapinat 1edbdc33d9 2748: Some URLs still point user to wiki manual version 3.0
svn: r12129
2009-02-26 09:36:41 +00:00
Jérôme Rapinat 9b017678ad 2748: Some URLs still point user to wiki manual version 3.0
svn: r12127
2009-02-26 09:23:40 +00:00
Jérôme Rapinat d7c5e02a55 update Finnish translation (byJanne Kovesjärvi)
svn: r12124
2009-02-26 09:01:32 +00:00
Joan Creus 2445590149 Update ca.po
svn: r12121
2009-02-25 23:05:14 +00:00
Espen Berg 0f2d8769f0 57 fuzzies and 2 not translated strings in Norwegian Bokmål language file
svn: r12119
2009-02-25 20:55:43 +00:00
Espen Berg a7e6e1b089 158 fuzzies left to be revised in Norwegian Bokmål translation file
svn: r12118
2009-02-25 20:31:29 +00:00
Espen Berg e36ffede8e Corrected some typos in Norwegian Nynorsk translation
svn: r12117
2009-02-25 20:30:51 +00:00
Rob G. Healey bac46805f9 Removed ExportSql.py from Makefile.am
svn: r12114
2009-02-25 03:31:45 +00:00
Jérôme Rapinat 1e0e05a43e update danish translation (by Morten Bo Johansen)
svn: r12113
2009-02-24 17:22:57 +00:00
Jérôme Rapinat cd04faca60 update polish translation (by Łukasz Rymarczyk)
svn: r12111
2009-02-24 17:16:11 +00:00
Rob G. Healey 86d0cc8b26 Added and deleted some files that Brian listed.
svn: r12108
2009-02-24 08:38:26 +00:00
Brian Matherly 2f2a0712a0 0002655: Directories and files with accents characters cause failures in Windows.
svn: r12105
2009-02-24 04:30:47 +00:00
Rob G. Healey 8ca8e2f4bd Added or fixed the name in revision numbering.
svn: r12104
2009-02-24 03:42:55 +00:00
Doug Blank c645246b2c Bugs 2742, 2743: Detaching a minimized gramplet doesn't run update; Changing columns in gramplet view expands minimized gramplets
svn: r12102
2009-02-24 00:11:52 +00:00
Joan Creus 8de51db5fe Updating Catalan. Almost there!
svn: r12100
2009-02-23 23:36:48 +00:00
Mirko Leonhäuser 795a745793 Updated German translation
svn: r12097
2009-02-23 19:04:23 +00:00
Jérôme Rapinat 3d057838ff new template (mistake on some ChangedSince filter rules) and update french translation
svn: r12096
2009-02-23 18:23:45 +00:00
Jérôme Rapinat cc6e62dc66 mistake on names and descriptions (after date)
svn: r12094
2009-02-23 18:19:04 +00:00
Jérôme Rapinat c98e4e94df mistake on names and descriptions (after date)
svn: r12093
2009-02-23 18:16:52 +00:00
Espen Berg 5224211634 Norwegian Nynorsk translation file revised to 100%
svn: r12092
2009-02-23 09:01:56 +00:00
Peter Landgren 04bb731620 Swedish update.
svn: r12091
2009-02-23 07:46:59 +00:00
Stéphane Charette c1274ebdef bug #2737 - remove alphabet navigation from surnames_count web page
svn: r12088
2009-02-23 02:04:55 +00:00
Stéphane Charette d6d7855caa bug #2736 - fix 'link-home' feature
svn: r12087
2009-02-23 01:47:39 +00:00
Luigi Toscano c844f30bd0 Translation updates and fixes.
svn: r12085
2009-02-22 23:47:43 +00:00
Espen Berg 505ab40201 Revised Norwegian Bokmål translation...still more to do
svn: r12084
2009-02-22 21:16:50 +00:00
Gary Burton 4937994904 Revert revision 10874 as it causes bug #2720
svn: r12083
2009-02-22 20:59:13 +00:00
Espen Berg 1c556b7134 Revised Norwegian Nynorsk translation. Thanks to Sigmund Lorentsen in DIS-Norge
svn: r12081
2009-02-22 20:41:15 +00:00
Mirko Leonhäuser ba5c5835f9 Updated German translation
svn: r12079
2009-02-22 20:19:32 +00:00
Stéphane Charette 6b78d5ae01 fix bug #2709 - fail don't crash if db has no active person (thanks Jérôme for the patch)
svn: r12078
2009-02-22 19:54:17 +00:00
Stéphane Charette 56de9475f6 get rid of the beta warning (same fix as in gramps30 -- delete the entire function)
svn: r12077
2009-02-22 19:35:05 +00:00
Stéphane Charette a92154970b my fault -- previous checkin of gramps.pot was done prior to getting the fixed strings
svn: r12076
2009-02-22 19:25:24 +00:00
Stéphane Charette 7fce761948 new pot file
svn: r12073
2009-02-22 11:09:56 +00:00
Joan Creus 80e78696ab typo: to many-> too many
svn: r12070
2009-02-22 10:08:13 +00:00
Joan Creus 6f3186c82c typo: Create Commons->Creative Commons
svn: r12069
2009-02-22 10:06:32 +00:00
Stéphane Charette 9884160929 bug #2692, fix css problem where image borders were not being drawn
svn: r12067
2009-02-22 02:52:33 +00:00
Joan Creus b7805d90a8 Updating catalan translation
svn: r12065
2009-02-22 00:12:36 +00:00
Gary Burton 7163ce148a Fix memory leak in DbManager
svn: r12064
2009-02-21 21:05:45 +00:00
Peter Landgren 9bb68012d5 Removed code, that was committed by mistake.
svn: r12061
2009-02-21 07:15:51 +00:00
Mirko Leonhäuser d5781b27a7 Updated German translation
svn: r12060
2009-02-21 01:01:14 +00:00
Serge Noiraud 54a0d23f27 GeoView : too many simplification after pylint : missing argument error.
svn: r12058
2009-02-20 21:56:43 +00:00
Benny Malengier 7457c9f5f6 Make size eventref editor independant of language noplace text is in
svn: r12055
2009-02-20 13:31:17 +00:00
Jérôme Rapinat 8236591a71 update french translation
svn: r12054
2009-02-20 12:01:00 +00:00
Peter Landgren 41fadda92b Swedish update.
svn: r12053
2009-02-20 07:35:39 +00:00
Rob G. Healey dbb777d411 More code cleanup in get_day_list() with help from Kees Bakker.
svn: r12051
2009-02-20 02:21:46 +00:00
Serge Noiraud 66753f3d3b GeoView : forgot to make a string translatable in the html page.
svn: r12049
2009-02-19 21:07:18 +00:00
Kees Bakker 9da589e7b7 Revert _has_webpage_extension to what it was before.
svn: r12048
2009-02-19 20:42:13 +00:00
Kees Bakker beda493165 CSS is case sensitive, I think. Use body id "WebCal" instead of "webcal".
svn: r12047
2009-02-19 20:25:36 +00:00
Kees Bakker 2799d50a90 Solved bug #2722 as suggested by Stephen George. Names of weekdays were
not correct (off by two days). Only systems that do not have a proper
locale.nl_langinfo were (Windows) affected by this bug.


svn: r12046
2009-02-19 20:14:37 +00:00
Erik De Richter 06819df7ac update nl.po
svn: r12045
2009-02-19 19:53:41 +00:00
Rob G. Healey 3700908cdc Removed backslash character in middle of translation string as per Benny.
svn: r12042
2009-02-19 19:12:05 +00:00
Mirko Leonhäuser 66f9048cb8 Updated German translation
svn: r12041
2009-02-19 18:13:31 +00:00
Rob G. Healey 3b2deb1021 Fixed USA Holidays error. Upon moving United States to the top of the holidays.xml file as asked, it no longer was giving holidays for USA.
svn: r12039
2009-02-19 17:27:12 +00:00
Peter Landgren 5ae168c618 Update Swedish translation.
svn: r12038
2009-02-19 17:01:11 +00:00
Jérôme Rapinat dd8be64503 update french translation
svn: r12037
2009-02-19 15:03:53 +00:00
Jérôme Rapinat f076668200 update some tips
svn: r12034
2009-02-19 13:05:50 +00:00
Jérôme Rapinat d0d3849250 #2726 #2641 To improve informations on dialog
svn: r12032
2009-02-19 12:52:41 +00:00
Erik De Richter 408c7cf4a4 update nl.po
svn: r12030
2009-02-19 09:54:02 +00:00
Gary Burton a84ee1da33 Display markup correctly for fields that may contain it
svn: r12029
2009-02-18 19:02:28 +00:00
Serge Noiraud bf24fcee1f GeoView : synchronize with trunk for last update.
svn: r12027
2009-02-18 15:42:36 +00:00
Benny Malengier c595f6d4b0 2725: End Of Line Report not flowing over page boundaries
svn: r12026
2009-02-17 21:20:08 +00:00
Mirko Leonhäuser 31e4cf1114 Updated German translation
svn: r12024
2009-02-17 18:39:23 +00:00
Brian Matherly 548e8d20c3 Remove CmdRef.py from POTFILES.in.
svn: r12023
2009-02-17 05:11:54 +00:00
Brian Matherly e6f1e2a82e Remove the Command Line Reference plugin from being distributed. It is no longer supported.
svn: r12020
2009-02-17 05:02:08 +00:00
Luigi Toscano 512231d54b Updates and fixes.
svn: r12019
2009-02-17 00:22:51 +00:00
Mirko Leonhäuser f55b046171 Fixed wrong translation of Records
svn: r12018
2009-02-16 21:39:40 +00:00
Mirko Leonhäuser a1cc0b2788 Updated German translation
svn: r12017
2009-02-16 21:02:00 +00:00
Espen Berg eda3cd2c94 Some work on Norwegian Bokmål translation
svn: r12016
2009-02-16 19:59:07 +00:00
Jérôme Rapinat c0053b6117 update french translation
svn: r12014
2009-02-16 17:03:13 +00:00
Doug Blank bcf2cd4fa4 Bug 2707: reverting linkbox change from r10763
svn: r12012
2009-02-16 13:43:12 +00:00
Peter Landgren 63aa9b9ea3 Swedish update for 3.1
svn: r12009
2009-02-16 11:31:37 +00:00
Espen Berg d9937bcfc3 Norwegian translation files ready to be revised
svn: r12008
2009-02-16 11:29:05 +00:00
Peter Landgren ee46a8f43a Missed a tab/space
svn: r12007
2009-02-16 10:54:01 +00:00
Peter Landgren 6f1ad8ce5a Forgot to update with eniroswedenmap. It's ok in POTFILES.in
svn: r12005
2009-02-16 10:44:19 +00:00
Brian Matherly 249efbaa53 Create the GRAMPS 3.1 maintenance branch. All releases in the GRAMPS 3.1.x series will come from this branch.
svn: r12001
2009-02-16 04:28:24 +00:00
314 changed files with 321289 additions and 198156 deletions
+15
View File
@@ -4,6 +4,21 @@ 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)
* OR by running "make uninstall" from the old directory where you
ran "make install" (not the new GRAMPS directory)
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.
configure vs autogen scripts
----------------------------
+1 -2
View File
@@ -6,8 +6,7 @@ SUBDIRS = m4 po src data example
EXTRA_DIST = \
config.rpath autogen.sh \
FAQ COPYING \
intltool-extract.in intltool-merge.in intltool-update.in \
config.sub config.guess
intltool-extract.in intltool-merge.in intltool-update.in
bin_SCRIPTS = gramps
+40
View File
@@ -1,3 +1,43 @@
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
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
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
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.)
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
+5 -2
View File
@@ -6,7 +6,7 @@ Requirements
--------------------------------
The following packages *MUST* be installed in order for Gramps to work:
Python 2.5 or greater
PyGTK2 2.10 or greater
PyGTK2 2.12 or greater
Python Glade bindings
librsvg2 (svg icon view)
xdg-utils
@@ -16,7 +16,9 @@ The following packages are *STRONGLY RECOMMENDED* to be installed:
http://www.graphviz.org
The following packages are optional
gtkspell Enable spell checking in the notes
python gtkspell Enable spell checking in the notes
pyenchant Enable query of installed spell check dictionaries
ttf-freefont More font support in the reports
No longer needed in 3.0:
@@ -42,3 +44,4 @@ you need to apply to po/Makefile.in.in
--------------------------------
Donald Allingham
dallingham@users.sourceforge.net
benny.malengier@gramps-project.org
+3 -3
View File
@@ -5,7 +5,7 @@ dnl May need to run automake && aclocal first
AC_PREREQ(2.57)
dnl NOTE: arg to macro below becomes the "VERSION"
AC_INIT(gramps, 3.1.0, [gramps-bugs@lists.sourceforge.net])
AC_INIT(gramps, 3.1.4, [gramps-bugs@lists.sourceforge.net])
AC_CONFIG_SRCDIR(configure.in)
AM_INIT_AUTOMAKE([1.6.3 foreign])
@@ -33,7 +33,7 @@ AC_SUBST(RELEASE)
AC_SUBST(VERSIONSTRING)
dnl Add the languages which your application supports here.
ALL_LINGUAS="hu zh_CN cs da de es fr it nb nl nn pl pt_BR ro ru sv eo fi lt sk tr bg hr sl ca"
ALL_LINGUAS="hu zh_CN cs da de es fr it nb nl nn pl pt_BR ro ru sv eo fi lt sk tr bg hr sl ca mk sq he"
GETTEXT_PACKAGE=gramps
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define to the Gettext package name.])
@@ -92,7 +92,7 @@ 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')
imp.find_module('glade',[[imp.find_module('gtk')[1]]])
out("gtk.glade")
except ImportError:
out("NO")
+12
View File
@@ -268,6 +268,10 @@
<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>
@@ -277,6 +281,10 @@
<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>
@@ -290,6 +298,10 @@
<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>
+10 -10
View File
@@ -1,4 +1,4 @@
.TH gramps 1 "@VERSION@" "Avril 2008" "@VERSION@"
.TH gramps 1 "@VERSION@" "Mars 2009" "@VERSION@"
.SH NOM
gramps \- GRAMPS est une application de généalogie. GRAMPS est l'acronyme de Genealogical Research and Analysis Management Programming System (Systeme de Programmation pour Recherche, Analyse et Gestion de données généalogiques)
@@ -19,7 +19,7 @@ gramps \- GRAMPS est une application de généalogie. GRAMPS est l'acronyme de G
.IR FORMAT ]]
.RB [ \-i|\-\^\-import=
.IR ... ]
.RB [ \-o|\-\^\-output=
.RB [ \-e|\-\^\-export=
.IR FICHIER
.RB [ \-f|\-\^\-format=
.IR FORMAT ]]
@@ -55,7 +55,7 @@ Le format spécifique du \fIFICHIER\fR est précédé par les arguments
\fB\-O\fR,
..
\fB\-i\fR, ou
\fB\-o\fR. Si l'option \fB\-f\fR n'est pas donnée pour le \fIFICHIER\fR, alors le format sera celui de l'extension ou du type-MIME.
\fB\-e\fR. Si l'option \fB\-f\fR n'est pas donnée pour le \fIFICHIER\fR, alors le format sera celui de l'extension ou du type-MIME.
.br
Les formats de sortie disponibles sont \fBgramps\-xml\fR (deviné si \fIFICHIER\fR se termine par
@@ -103,7 +103,7 @@ i.e. \fB\-i\fR \fIFICHIER1\fR \fB\-i\fR \fIFICHIER2\fR
et \fB\-i\fR \fIFICHIER2\fR \fB\-i\fR \fIFICHIER1\fR vont tous les deux produire différents IDs gramps.
.TP
.BI \-o,\-\^\-output= " FICHIER"
.BI \-e,\-\^\-export= " FICHIER"
Exporter des données dans un \fIFICHIER\fR. Pour le format \fBiso\fR, le \fIFICHIER\fR est le nom du répertoire dans lequel la base de données gramps est écrite.
Pour
.ig
@@ -113,7 +113,7 @@ Pour
et \fBgeneweb\fR, le \fIFICHIER\fR est le nom du fichier de sortie
.br
Quand plus d'un fichier doit être exporté, chacun doit être précédé par la commande \fB\-o\fR. Ces fichiers sont importés dans le même ordre.
Quand plus d'un fichier doit être exporté, chacun doit être précédé par la commande \fB\-e\fR. Ces fichiers sont importés dans le même ordre.
.TP
.BI \-a,\-\^\-action= " ACTION"
@@ -197,16 +197,16 @@ Si la commande \fB\-O\fR est notée, alors gramps va essayer le fichier défini
.LP
Avec ou sans la commande \fB\-O\fR, il peut y avoir plusieurs imports, exports, et actions dans la ligne de commande \fB\-i\fR,
\fB\-o\fR, et \fB\-a\fR.
\fB\-e\fR, et \fB\-a\fR.
.LP
L'ordre des options \fB\-i\fR, \fB\-o\fR, ou \fB\-a\fR n'a pas de sens. L'ordre actuel est toujours : imports -> actions -> exports. Mais l'ouverture doit toujours être la première!
L'ordre des options \fB\-i\fR, \fB\-e\fR, ou \fB\-a\fR n'a pas de sens. L'ordre actuel est toujours : imports -> actions -> exports. Mais l'ouverture doit toujours être la première!
.LP
Si aucune option \fB\-O\fR ou \fB\-i\fR n'est donnée, gramps lancera sa propre fenêtre et demarrera avec une base vide, puisqu'il n'y a pas données.
.LP
Si aucune option \fB\-o\fR ou \fB\-a\fR n'est donnée, gramps lancera sa propre fenêtre et démarrera avec la base de données issue de tout les imports. Cette base sera \fBimport_db.grdb\fR sous le répertoire \fB~/.gramps/import\fR.
Si aucune option \fB\-e\fR ou \fB\-a\fR n'est donnée, gramps lancera sa propre fenêtre et démarrera avec la base de données issue de tout les imports. Cette base sera \fBimport_db.grdb\fR sous le répertoire \fB~/.gramps/import\fR.
.LP
Les erreurs rencontrées lors d'import, export, ou action, seront mémorisées en \fIstdout\fR (si elles sont le fait de la manipulation par gramps) ou
@@ -227,8 +227,8 @@ Lecture de quatre bases de données dont les formats peuvent être devinés d'ap
Si vous voulez préciser les formats de fichiers dans l'exemple ci-dessus, complétez les noms de fichiers par les options \fB\-f\fR appropriées:
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-f\fR \fIgedcom\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-f\fR \fIgramps-pkg\fR \fB\-i\fR \fI~/db3.gramps\fR \fB\-f\fR \fIgramps-xml\fR \fB\-i\fR \fIfile4.wft\fR \fB\-f\fR \fIwft\fR \fB\-a\fR \fIcheck\fR
.TP
Pour enregistrer le résultat des lectures, donnez l'option \fB\-o\fR (utiliser \fB\-f\fR si le nom de fichier ne permet pas à gramps de deviner le format):
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-o\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
Pour enregistrer le résultat des lectures, donnez l'option \fB\-e\fR (utiliser \fB\-f\fR si le nom de fichier ne permet pas à gramps de deviner le format):
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-e\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
.TP
Pour lire trois ensembles de données puis lancer une session interactive de gramps sur le tout :
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-i\fR \fI~/db3.gramps\fR
+7 -22
View File
@@ -19,7 +19,7 @@ gramps \- Genealogical Research and Analysis Management Programming System.
.IR FORMAT ]]
.RB [ \-i|\-\^\-import=
.IR ... ]
.RB [ \-o|\-\^\-output=
.RB [ \-e|\-\^\-export=
.IR FILE
.RB [ \-f|\-\^\-format=
.IR FORMAT ]]
@@ -64,7 +64,7 @@ Explicitly specify format of \fIFILE\fR given by preceding
\fB\-O\fR,
..
\fB\-i\fR, or
\fB\-o\fR option. If the \fB\-f\fR option is not given for any \fIFILE\fR,
\fB\-e\fR option. If the \fB\-f\fR option is not given for any \fIFILE\fR,
the format of that file is guessed according to its extension or MIME-type.
.br
@@ -113,21 +113,6 @@ i.e. \fB\-i\fR \fIFILE1\fR \fB\-i\fR \fIFILE2\fR
and \fB\-i\fR \fIFILE2\fR \fB\-i\fR \fIFILE1\fR might produce different
gramps IDs in the resulting database.
.TP
.BI \-o,\-\^\-output= " FILE"
Export data into \fIFILE\fR. For \fBiso\fR format, the \fIFILE\fR is actually
the name of directory the gramps database will be written into.
For
.ig
\fBgrdb\fR,
..
\fBgramps\-xml\fR, \fBgedcom\fR, \fBwft\fR, \fBgramps\-pkg\fR,
and \fBgeneweb\fR, the \fIFILE\fR is the name of the resulting file.
.br
When more than one output file is given, each has to be preceded
by \fB\-o\fR flag. The files are written one by one, in the specified order.
.TP
.BI \-a,\-\^\-action= " ACTION"
Perform \fIACTION\fR on the imported data. This is done after all imports
@@ -228,10 +213,10 @@ further command line parameters.
.LP
With or without the \fB\-O\fR flag, there could be multiple imports,
exports, and actions specified further on the command line by using \fB\-i\fR,
\fB\-o\fR, and \fB\-a\fR flags.
\fB\-e\fR, and \fB\-a\fR flags.
.LP
The order of \fB\-i\fR, \fB\-o\fR, or \fB\-a\fR options does not matter. The
The order of \fB\-i\fR, \fB\-e\fR, or \fB\-a\fR options does not matter. The
actual order always is: all imports (if any) -> all actions (if any)
-> all exports (if any). But opening must always be first!
@@ -241,7 +226,7 @@ window and start the usual interactive session with the empty database,
since there is no data to process, anyway.
.LP
If no \fB\-o\fR or \fB\-a\fR options are given, gramps will launch its main
If no \fB\-e\fR or \fB\-a\fR options are given, gramps will launch its main
window and start the usual interactive session with the database resulted
from all imports. This database resides in the \fBimport_db.grdb\fR
under \fB~/.gramps/import\fR directory.
@@ -266,8 +251,8 @@ To import four databases (whose formats can be determined from their names) and
To explicitly specify the formats in the above example, append filenames with appropriate \fB\-f\fR options:
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-f\fR \fIgedcom\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-f\fR \fIgramps-pkg\fR \fB\-i\fR \fI~/db3.gramps\fR \fB\-f\fR \fIgramps-xml\fR \fB\-i\fR \fIfile4.wft\fR \fB\-f\fR \fIwft\fR \fB\-a\fR \fIcheck\fR
.TP
To record the database resulting from all imports, supply \fB\-o\fR flag (use \fB\-f\fR if the filename does not allow gramps to guess the format):
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-o\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
To record the database resulting from all imports, supply \fB\-e\fR flag (use \fB\-f\fR if the filename does not allow gramps to guess the format):
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-e\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
.TP
To import three databases and start interactive gramps session with the result:
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-i\fR \fI~/db3.gramps\fR
+8 -8
View File
@@ -17,7 +17,7 @@ gramps \- Genealogisch Onderzoek en Analyse Beheersysteem.
.IR FORMAAT ]]
.RB [ \-i|\-\^\-import=
.IR ... ]
.RB [ \-o|\-\^\-output=
.RB [ \-e|\-\^\-export=
.IR BESTAND
.RB [ \-f|\-\^\-format=
.IR FORMAAT ]]
@@ -63,7 +63,7 @@ Expliciet een formaat opgeven voor \fIBESTAND\fR door de optie
\fB\-O\fR,
..
\fB\-i\fR, of
\fB\-o\fR mee te geven. Indien de \fB\-f\fR optie niet opgegeven wordt voor
\fB\-e\fR mee te geven. Indien de \fB\-f\fR optie niet opgegeven wordt voor
\fIBESTAND\fR, wordt het formaat gebaseerd op de bestandsextensie of het
MIME-type.
.br
@@ -106,7 +106,7 @@ and \fB\-i\fR \fIFILE2\fR \fB\-i\fR \fIFILE1\fR might produce different
gramps IDs in the resulting database.
.TP
.BI \-o,\-\^\-output= " FILE"
.BI \-e,\-\^\-export= " FILE"
Export data into \fIFILE\fR. For \fBiso\fR format, the \fIFILE\fR is actually
the name of directory the gramps database will be written into.
For
@@ -118,7 +118,7 @@ and \fBgeneweb\fR, the \fIFILE\fR is the name of the resulting file.
.br
When more than one output file is given, each has to be preceded
by \fB\-o\fR flag. The files are written one by one, in the specified order.
by \fB\-e\fR flag. The files are written one by one, in the specified order.
.TP
.BI \-a,\-\^\-action= " ACTION"
@@ -218,10 +218,10 @@ further command line parameters.
.LP
With or without the \fB\-O\fR flag, there could be multiple imports,
exports, and actions specified further on the command line by using \fB\-i\fR,
\fB\-o\fR, and \fB\-a\fR flags.
\fB\-e\fR, and \fB\-a\fR flags.
.LP
The order of \fB\-i\fR, \fB\-o\fR, or \fB\-a\fR options does not matter. The
The order of \fB\-i\fR, \fB\-e\fR, or \fB\-a\fR options does not matter. The
actual order always is: all imports (if any) -> all actions (if any)
-> all exports (if any). But opening must always be first!
@@ -256,8 +256,8 @@ To import four databases (whose formats can be determined from their names) and
To explicitly specify the formats in the above example, append filenames with appropriate \fB\-f\fR options:
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-f\fR \fIgedcom\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-f\fR \fIgramps-pkg\fR \fB\-i\fR \fI~/db3.gramps\fR \fB\-f\fR \fIgramps-xml\fR \fB\-i\fR \fIfile4.wft\fR \fB\-f\fR \fIwft\fR \fB\-a\fR \fIcheck\fR
.TP
To record the database resulting from all imports, supply \fB\-o\fR flag (use \fB\-f\fR if the filename does not allow gramps to guess the format):
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-o\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
To record the database resulting from all imports, supply \fB\-e\fR flag (use \fB\-f\fR if the filename does not allow gramps to guess the format):
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-e\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
.TP
To import three databases and start interactive gramps session with the result:
\fBgramps\fR \fB\-i\fR \fIfile1.ged\fR \fB\-i\fR \fIfile2.tgz\fR \fB\-i\fR \fI~/db3.gramps\fR
+9 -9
View File
@@ -22,7 +22,7 @@ i Programowego Zarządzania Tą Informacją)
.IR FORMAT ]]
.RB [ \-i|\-\^\-import=
.IR ... ]
.RB [ \-o|\-\^\-output=
.RB [ \-e|\-\^\-export=
.IR PLIK
.RB [ \-f|\-\^\-format=
.IR FORMAT ]]
@@ -66,7 +66,7 @@ Jawne określenie formatu \fIPLIKU\fR przez poprzedzenie opcji
.ig
\fB\-O\fR,
..
\fB\-i\fR, lub \fB\-o\fR.
\fB\-i\fR, lub \fB\-e\fR.
Jeśli opcja \fB\-f\fR nie jest podana dla żadnego \fIPLIKU\fR,
to format pliku jest określany na podstawie rozszerzenia albo typu MIME.
.br
@@ -126,7 +126,7 @@ poleceń, np.: \fB\-i\fR \fIPLIK1\fR \fB\-i\fR \fIPLIK2\fR oraz
(gramps ID) w bazie wynikowej.
.TP
.BI \-o,\-\^\-output= " PLIK"
.BI \-e,\-\^\-export= " PLIK"
Eksportuje dane do \fIPLIKU\fR. Dla formatu \fBiso\fR, \fIPLIK\fR natomiast
nazwą katalogu, do którego baza danych gramps zostanie zapisana.
Dla
@@ -138,7 +138,7 @@ oraz \fBgeneweb\fR, \fIPLIK\fR jest nazwą pliku wynikowego.
.br
Kiedy więcej niż jeden plik wyjściowy jest podany, każdy musi być poprzedzony
flagą \fB\-o\fR. Pliki będą zapisywane kolejno, w podanej przez parametry
flagą \fB\-e\fR. Pliki będą zapisywane kolejno, w podanej przez parametry
kolejności.
.TP
@@ -248,10 +248,10 @@ z linii komend.
.LP
Z flagą \fB\-O\fR czy bez, może występować wiele importów, eksportów oraz
akcji określonych za pomocą flag \fB\-i\fR, \fB\-o\fR, oraz \fB\-a\fR .
akcji określonych za pomocą flag \fB\-i\fR, \fB\-e\fR, oraz \fB\-a\fR .
.LP
Kolejność podawania opcji \fB\-i\fR, \fB\-o\fR, czy \fB\-a\fR nie ma znaczenia.
Kolejność podawania opcji \fB\-i\fR, \fB\-e\fR, czy \fB\-a\fR nie ma znaczenia.
Wykonywane są one zawsze w kolejności: wszystkie importy (jeśli podane) ->
wszystkie akcje (jeśli podane) -> wszystkie eksporty (jeśli podane)
Ale otwarcie bazy zawsze musi być na pierwszym parametrem !
@@ -262,7 +262,7 @@ okno i rozpocznie normalną sesję interaktywną z pustą bazą danych (poniewa
nie zdołał przetworzyć do niej żadnych danych).
.LP
Jeśli nie podano opcji\fB\-o\fR albo \fB\-a\fR gramps uruchomi swoje głowne
Jeśli nie podano opcji\fB\-e\fR albo \fB\-a\fR gramps uruchomi swoje głowne
okno i rozpocznie normalną sesję interaktywną z bazą będącą wynikiem wszystkich importów. Ta baza będzie znajdować się w pliku \fBimport_db.grdb\fR
w katalogu \fB~/.gramps/import\fR.
@@ -290,8 +290,8 @@ Aby jawnie określić formaty w powyższym przykładzie, należy dodać nazwy pl
z odpowiednimi opcjami \fB\-f\fR options:
\fBgramps\fR \fB\-i\fR \fIplik1.ged\fR \fB\-f\fR \fIgedcom\fR \fB\-i\fR \fIplik2.tgz\fR \fB\-f\fR \fIgramps-pkg\fR \fB\-i\fR \fI~/db3.gramps\fR \fB\-f\fR \fIgramps-xml\fR \fB\-i\fR \fIplik4.wft\fR \fB\-f\fR \fIwft\fR \fB\-a\fR \fIcheck\fR
.TP
Aby zachować bazę z wynikami wszystkich importów, należy dodać flagę \fB\-o\fR (należy użyć \fB\-f\fR jeśli nazwa pliku nie pozwala gramps'owi na odgadnięcie formatu wyjściowego):
\fBgramps\fR \fB\-i\fR \fIplik1.ged\fR \fB\-i\fR \fIplik2.tgz\fR \fB\-o\fR \fI~/nowy-pakiet\fR \fB\-f\fR \fIgramps-pkg\fR
Aby zachować bazę z wynikami wszystkich importów, należy dodać flagę \fB\-e\fR (należy użyć \fB\-f\fR jeśli nazwa pliku nie pozwala gramps'owi na odgadnięcie formatu wyjściowego):
\fBgramps\fR \fB\-i\fR \fIplik1.ged\fR \fB\-i\fR \fIplik2.tgz\fR \fB\-e\fR \fI~/nowy-pakiet\fR \fB\-f\fR \fIgramps-pkg\fR
.TP
W celu zaimportwania trzech baz i rozpoczęcia sesji interaktywnej z wynikiem
importu należy użyć polecenia podobnego do poniższego:
+11 -11
View File
@@ -19,7 +19,7 @@ gramps \- Genealogical Research and Analysis Management Programming System.
.IR FORMAT ]]
.RB [ \-i|\-\^\-import=
.IR ... ]
.RB [ \-o|\-\^\-output=
.RB [ \-e|\-\^\-export=
.IR FIL
.RB [ \-f|\-\^\-format=
.IR FORMAT ]]
@@ -63,7 +63,7 @@ Uttryckligen specificera format på \fIFIL\fR givet av föregående
\fB\-O\fR,
..
\fB\-i\fR eller
\fB\-o\fR-alternativ. Om \fB\-f\fR-alternativet inte ges för någon \fIFIL\fR,
\fB\-e\fR-alternativ. Om \fB\-f\fR-alternativet inte ges för någon \fIFIL\fR,
gissas filformat för den filen utgående från dess filändelse eller dess MIME-typ.
.br
@@ -113,7 +113,7 @@ och \fB\-i\fR \fIFIL2\fR \fB\-i\fR \fIFIL1\fR kan skapa skilda
gramps IDs i den resulterande databasen.
.TP
.BI \-o,\-\^\-output= " FIL"
.BI \-e,\-\^\-export= " FIL"
Exporterar data till \fIFIL\fR. För \fBiso\fR-format, är \fIFIL\fR i själva verket namnet på den mapp,
som gramps databas kommer att skrivas till.
För
@@ -124,7 +124,7 @@ För
och \fBgeneweb\fR, är \fIFIL\fR namnet på resultatfilen.
.br
Om mer är en utdatafil anges, måste varje föregås av en \fB\-o\fR-flagga.
Om mer är en utdatafil anges, måste varje föregås av en \fB\-e\fR-flagga.
Filerna skrivs en efter en i den givna ordningen.
.TP
@@ -220,21 +220,21 @@ och sedan arbeta med dess data, enligt ytterligare instruktioner på kommandorad
Med eller utan \fB\-O\fRflagga, kan det ske många importeringar,
exporteringar och åtgärder beskrivna ytterligare på kommanodraden
genom att använda \fB\-i\fR-,
\fB\-o\fR- samt \fB\-a\fR-flaggor.
\fB\-e\fR- samt \fB\-a\fR-flaggor.
.LP
Ordningen på \fB\-i\fR-, \fB\-o\fR- eller \fB\-a\fR-alternativen spelar ingen roll.
Ordningen på \fB\-i\fR-, \fB\-e\fR- eller \fB\-a\fR-alternativen spelar ingen roll.
Den gällande ordningen är alltid: all import (om någon) -> alla åtgärder (om några)
-> all export (om någon). Men öppning måste alltid ske först!
.LP
Om inget \fB\-O\fR- eller \fB\-i\fR-alternativ givits, kommer gramps att starta sitt
huvudfönster samt påbörja den valiga interaktiva sessionen med en tom databas,
huvudfönster samt påbörja den vanliga interaktiva sessionen med en tom databas,
då hur som helst inget data finns att bearbeta.
.LP
Om inget \fB\-o\fR- eller \fB\-a\fR-alternativ givits, kommer gramps att starta sitt
huvudfönster samt påbörja den valiga interaktiva sessionen med den databas, som blev
Om inget \fB\-e\fR- eller \fB\-a\fR-alternativ givits, kommer gramps att starta sitt
huvudfönster samt påbörja den vanliga interaktiva sessionen med den databas, som blev
resultet från all import. Denna databas återfinns i \fBimport_db.grdb\fR
under \fB~/.gramps/import\fR-mappen.
@@ -258,8 +258,8 @@ För att importera fyra databaser (vars format kan avgöras av deras namn) och s
För att uttryckligen specificera formaten i examplet ovan, lägg till filnamn med passande \fB\-f\fR-alternativ:
\fBgramps\fR \fB\-i\fR \fIFIL1.ged\fR \fB\-f\fR \fIgedcom\fR \fB\-i\fR \fIFIL2.tgz\fR \fB\-f\fR \fIgramps-pkg\fR \fB\-i\fR \fI~/db3.gramps\fR \fB\-f\fR \fIgramps-xml\fR \fB\-i\fR \fIFIL4.wft\fR \fB\-f\fR \fIwft\fR \fB\-a\fR \fIcheck\fR
.TP
För att spara den databas, som är resultat av all import, ange \fB\-o\fR-flagga (använd \fB\-f\fR om filnamnet inte tillåter gramps att gissa dess format):
\fBgramps\fR \fB\-i\fR \fIFIL1.ged\fR \fB\-i\fR \fIFIL2.tgz\fR \fB\-o\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
För att spara den databas, som är resultat av all import, ange \fB\-e\fR-flagga (använd \fB\-f\fR om filnamnet inte tillåter gramps att gissa dess format):
\fBgramps\fR \fB\-i\fR \fIFIL1.ged\fR \fB\-i\fR \fIFIL2.tgz\fR \fB\-e\fR \fI~/new-package\fR \fB\-f\fR \fIgramps-pkg\fR
.TP
För att importera tre databaser och påbörja en interaklive gramps-session med importresultatet:
\fBgramps\fR \fB\-i\fR \fIFIL1.ged\fR \fB\-i\fR \fIFIL2.tgz\fR \fB\-i\fR \fI~/db3.gramps\fR
+834 -825
View File
File diff suppressed because it is too large Load Diff
+5 -10
View File
@@ -269,15 +269,10 @@ src/plugins/gramplet/AgeOnDateGramplet.py
src/plugins/gramplet/AgeStats.py
src/plugins/gramplet/AttributesGramplet.py
src/plugins/gramplet/CalendarGramplet.py
src/plugins/gramplet/DataEntryGramplet.py
src/plugins/gramplet/DescendGramplet.py
src/plugins/gramplet/FanChartGramplet.py
src/plugins/gramplet/FaqGramplet.py
src/plugins/gramplet/GivenNameGramplet.py
src/plugins/gramplet/HeadlineNewsGramplet.py
src/plugins/gramplet/NoteGramplet.py
src/plugins/gramplet/PedigreeGramplet.py
src/plugins/gramplet/PythonGramplet.py
src/plugins/gramplet/QuickViewGramplet.py
src/plugins/gramplet/RelativeGramplet.py
src/plugins/gramplet/SessionLogGramplet.py
@@ -304,6 +299,7 @@ src/plugins/import/ImportVCard.py
# plugins/lib directory
src/plugins/lib/libholiday.py
src/plugins/lib/libmapservice.py
src/plugins/lib/libgrampsxml.py
# plugins/mapservices directory
src/plugins/mapservices/eniroswedenmap.py
@@ -363,14 +359,13 @@ src/plugins/tool/CalculateEstimatedDates.py
src/plugins/tool/ChangeNames.py
src/plugins/tool/ChangeTypes.py
src/plugins/tool/Check.py
src/plugins/tool/CmdRef.py
src/plugins/tool/Desbrowser.py
src/plugins/tool/Eval.py
#src/plugins/tool/Eval.py -- commented out due to bug #2763
src/plugins/tool/EventCmp.py
src/plugins/tool/EventNames.py
src/plugins/tool/ExtractCity.py
src/plugins/tool/FindDupes.py
src/plugins/tool/Leak.py
#src/plugins/tool/Leak.py -- commented out due to bug #2763
src/plugins/tool/MediaManager.py
src/plugins/tool/NotRelated.py
src/plugins/tool/OwnerEditor.py
@@ -791,10 +786,10 @@ src/plugins/book.glade
src/plugins/tool/changenames.glade
src/plugins/tool/changetype.glade
src/plugins/tool/desbrowse.glade
src/plugins/tool/eval.glade
#src/plugins/tool/eval.glade -- commented out due to bug #2763
src/plugins/tool/eventcmp.glade
src/plugins/import/ImportGedcom.glade
src/plugins/tool/leak.glade
#src/plugins/tool/leak.glade -- commented out due to bug #2763
src/plugins/tool/merge.glade
src/plugins/tool/ownereditor.glade
src/plugins/tool/patchnames.glade
+5 -1
View File
@@ -15,5 +15,9 @@ src/plugins/tool/PHPGedViewConnector.py
src/plugins/tool/TestcaseGenerator.py
src/plugins/tool/phpgedview.glade
src/ReportBase/_DocReportDialog.py
src/plugins/gramplet/FaqGramplet.py
src/plugins/gramplet/HeadlineNewsGramplet.py
src/plugins/quickview/Query.py
src/plugins/tool/eval.glade
src/plugins/tool/leak.glade
+13219 -11071
View File
File diff suppressed because it is too large Load Diff
+11604 -9301
View File
File diff suppressed because it is too large Load Diff
+9
View File
@@ -556,6 +556,15 @@ def analyze_msgs( options, fname, msgs, nr_templates = None, nth = 0 ):
template_coverage = po_coverage * float(nr_msgs) / float(nr_templates)
print "%-20s%5.2f%%" % ( "Template Coverage:", template_coverage )
not_displayed = nr_untranslated + nr_fuzzy
translation = (1.0 - (float(not_displayed) / float(nr_templates))) * 100
text = "%-20s%5.2f%%" % ( "Localized at:", translation)
if template_coverage == po_coverage:
print text
else:
print text + ' (previous gramps.pot)'
if not options.only_summary:
for c in checks:
c.diag()
+10972 -8544
View File
File diff suppressed because it is too large Load Diff
+11803 -12035
View File
File diff suppressed because it is too large Load Diff
+5845 -3074
View File
File diff suppressed because it is too large Load Diff
+10024 -7710
View File
File diff suppressed because it is too large Load Diff
+15921 -12706
View File
File diff suppressed because it is too large Load Diff
+10912 -9804
View File
File diff suppressed because it is too large Load Diff
+5725 -3941
View File
File diff suppressed because it is too large Load Diff
+2450 -2591
View File
File diff suppressed because it is too large Load Diff
+22808
View File
File diff suppressed because it is too large Load Diff
+4871 -3486
View File
File diff suppressed because it is too large Load Diff
+10371 -8394
View File
File diff suppressed because it is too large Load Diff
+4000 -2704
View File
File diff suppressed because it is too large Load Diff
+9937 -7924
View File
File diff suppressed because it is too large Load Diff
Executable
+25119
View File
File diff suppressed because it is too large Load Diff
+12672 -8566
View File
File diff suppressed because it is too large Load Diff
+2733 -3038
View File
File diff suppressed because it is too large Load Diff
+14310 -9358
View File
File diff suppressed because it is too large Load Diff
+5383 -3435
View File
File diff suppressed because it is too large Load Diff
+3574 -5233
View File
File diff suppressed because it is too large Load Diff
+10123 -7851
View File
File diff suppressed because it is too large Load Diff
+10766 -9696
View File
File diff suppressed because it is too large Load Diff
+12109 -10941
View File
File diff suppressed because it is too large Load Diff
+9958 -7373
View File
File diff suppressed because it is too large Load Diff
Executable
+24658
View File
File diff suppressed because it is too large Load Diff
+6905 -2628
View File
File diff suppressed because it is too large Load Diff
+10060 -7860
View File
File diff suppressed because it is too large Load Diff
+14093 -13388
View File
File diff suppressed because it is too large Load Diff
+3 -4
View File
@@ -68,7 +68,6 @@ Application options
-O, --open=FAMILY_TREE Open family tree
-i, --import=FILENAME Import file
-e, --export=FILENAME Export file
-o, --output=FILENAME Write file
-f, --format=FORMAT Specify format
-a, --action=ACTION Specify action
-p, --options=OPTIONS_STRING Specify options
@@ -81,7 +80,7 @@ Application options
#-------------------------------------------------------------------------
# ArgHandler
#-------------------------------------------------------------------------
class ArgHandler:
class ArgHandler(object):
"""
This class is responsible for handling command line arguments (if any)
given to gramps. The valid arguments are:
@@ -102,10 +101,10 @@ class ArgHandler:
If no filename or -i option is given, a new interactive session (empty
database) is launched, since no data is given anyway.
If -O or -i option is given, but no -o or -a options are given, an
If -O or -i option is given, but no -e or -a options are given, an
interactive session is launched with the FILE (specified with -i).
If both input (-O or -i) and processing (-o or -a) options are given,
If both input (-O or -i) and processing (-e or -a) options are given,
interactive session will not be launched.
"""
+1 -1
View File
@@ -76,7 +76,7 @@ def fill_entry(entry, data_list):
# StandardCustomSelector class
#
#-------------------------------------------------------------------------
class StandardCustomSelector:
class StandardCustomSelector(object):
"""
This class provides an interface to selecting from the predefined
options or entering custom string.
+19 -16
View File
@@ -5,6 +5,7 @@
# Copyright (C) 2002 Gary Shao
# Copyright (C) 2007 Brian G. Matherly
# Copyright (C) 2009 Benny Malengier
# Copyright (C) 2009 Gary Burton
#
# 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
@@ -137,7 +138,7 @@ def cnv2color(text):
# PaperSize
#
#------------------------------------------------------------------------
class PaperSize:
class PaperSize(object):
"""
Defines the dimensions of a sheet of paper. All dimensions are in
centimeters.
@@ -187,7 +188,7 @@ class PaperSize:
# PaperStyle
#
#------------------------------------------------------------------------
class PaperStyle:
class PaperStyle(object):
"""
Define the various options for a sheet of paper.
"""
@@ -300,7 +301,7 @@ class PaperStyle:
# FontStyle
#
#------------------------------------------------------------------------
class FontStyle:
class FontStyle(object):
"""
Defines a font style. Controls the font face, size, color, and
attributes. In order to remain generic, the only font faces available
@@ -414,7 +415,7 @@ class FontStyle:
# TableStyle
#
#------------------------------------------------------------------------
class TableStyle:
class TableStyle(object):
"""
Specifies the style or format of a table. The TableStyle contains the
characteristics of table width (in percentage of the full width), the
@@ -497,7 +498,7 @@ class TableStyle:
# TableCellStyle
#
#------------------------------------------------------------------------
class TableCellStyle:
class TableCellStyle(object):
"""
Defines the style of a particular table cell. Characteristics are:
right border, left border, top border, bottom border, and padding.
@@ -591,7 +592,7 @@ class TableCellStyle:
# ParagraphStyle
#
#------------------------------------------------------------------------
class ParagraphStyle:
class ParagraphStyle(object):
"""
Defines the characteristics of a paragraph. The characteristics are:
font (a FontStyle instance), right margin, left margin, first indent,
@@ -884,7 +885,7 @@ class ParagraphStyle:
# StyleSheetList
#
#------------------------------------------------------------------------
class StyleSheetList:
class StyleSheetList(object):
"""
Interface into the user's defined style sheets. Each StyleSheetList
has a predefined default style specified by the report. Additional
@@ -1012,7 +1013,7 @@ class StyleSheetList:
# StyleSheet
#
#------------------------------------------------------------------------
class StyleSheet:
class StyleSheet(object):
"""
A collection of named paragraph styles.
"""
@@ -1200,7 +1201,7 @@ class SheetParser(handler.ContentHandler):
self.f.set_underline(int(attrs['underline']))
self.f.set_color(cnv2color(attrs['color']))
elif tag == "para":
if 'description' in attrs:
if attrs.has_key('description'):
self.p.set_description(attrs['description'])
self.p.set_right_margin(Utils.gfloat(attrs['rmargin']))
self.p.set_right_margin(Utils.gfloat(attrs['rmargin']))
@@ -1238,7 +1239,7 @@ class SheetParser(handler.ContentHandler):
# GraphicsStyle
#
#------------------------------------------------------------------------
class GraphicsStyle:
class GraphicsStyle(object):
"""
Defines the properties of graphics objects, such as line width,
color, fill, ect.
@@ -1317,7 +1318,7 @@ class GraphicsStyle:
# IndexMark
#
#------------------------------------------------------------------------
class IndexMark:
class IndexMark(object):
"""
Defines a mark to be associated with text for indexing.
"""
@@ -1334,7 +1335,7 @@ class IndexMark:
# BaseDoc
#
#------------------------------------------------------------------------
class BaseDoc:
class BaseDoc(object):
"""
Base class for document generators. Different output formats,
such as OpenOffice, AbiWord, and LaTeX are derived from this base
@@ -1411,7 +1412,7 @@ class BaseDoc:
def noescape(text):
return text
class TextDoc:
class TextDoc(object):
"""
Abstract Interface for text document generators. Output formats for
text reports must implment this interface to be used by the report
@@ -1676,6 +1677,8 @@ class TextDoc:
is <b>text</b><i><b> here</b> not</i>
overwrite this method if this complexity is not needed.
"""
#unicode text most be sliced correctly
text=unicode(text)
FIRST = 0
LAST = 1
tagspos = {}
@@ -1706,7 +1709,7 @@ class TextDoc:
#make sure text can split
splitpos = text[start:pos].find(split)
while splitpos <> -1:
otext += self.ESCAPE_FUNC()(text[start:splitpos])
otext += self.ESCAPE_FUNC()(text[start:start+splitpos])
#close open tags
opentags.reverse()
for opentag in opentags:
@@ -1759,7 +1762,7 @@ class TextDoc:
# DrawDoc
#
#------------------------------------------------------------------------
class DrawDoc:
class DrawDoc(object):
"""
Abstract Interface for graphical document generators. Output formats
for graphical reports must implment this interface to be used by the
@@ -1819,7 +1822,7 @@ class DrawDoc:
# GVDoc
#
#-------------------------------------------------------------------------------
class GVDoc:
class GVDoc(object):
"""
Abstract Interface for Graphviz document generators. Output formats
for Graphviz reports must implment this interface to be used by the
+1 -1
View File
@@ -86,7 +86,7 @@ def _make_cmp(a,b): return -cmp(a[1], b[1])
# NameDisplay class
#
#-------------------------------------------------------------------------
class NameDisplay:
class NameDisplay(object):
"""
Base class for displaying of Name instances.
"""
+1 -1
View File
@@ -40,7 +40,7 @@ import time
# Callback updater
#
#-------------------------------------------------------------------------
class UpdateCallback:
class UpdateCallback(object):
"""
Basic class providing way of calling the callback to update
things during lenghty operations.
+4 -1
View File
@@ -54,6 +54,7 @@ import GrampsDisplay
from BasicUtils import name_displayer
import ListModel
import Utils
import const
from TransUtils import sgettext as _
#-------------------------------------------------------------------------
@@ -61,7 +62,7 @@ from TransUtils import sgettext as _
# Constants
#
#-------------------------------------------------------------------------
WIKI_HELP_PAGE = 'Gramps_3.0_Wiki_Manual_-_Navigation'
WIKI_HELP_PAGE = '%s_-_Navigation' % const.URL_MANUAL_PAGE
WIKI_HELP_SEC = _('manual|Bookmarks')
#-------------------------------------------------------------------------
@@ -427,6 +428,8 @@ class NoteBookmarks(ListBookmarks) :
def make_label(self, handle):
obj = self.dbstate.db.get_note_from_handle(handle)
name = obj.get().replace('\n', ' ')
#String must be unicode for truncation to work for non ascii characters
name = unicode(name)
if len(name) > 40:
name = name[:40]+"..."
return ("%s [%s]" % (name, obj.gramps_id), obj)
+4
View File
@@ -127,6 +127,8 @@ PEDVIEW_TREESIZE = ('interface', 'pedview-tree-size', 1)
PEDVIEW_LAYOUT = ('interface', 'pedview-layout', 1)
PEDVIEW_SHOW_MARRIAGE= ('interface', 'pedview-show-marriage', 0)
PEDVIEW_SHOW_IMAGES = ('interface', 'pedview-show-images', 0)
CLIPBOARD_WIDTH = ('interface', 'clipboard-width', 1)
CLIPBOARD_HEIGHT = ('interface', 'clipboard-height', 1)
DATABASE_PATH = ('behavior', 'database-path', 2)
FPREFIX = ('preferences', 'fprefix', 2)
EPREFIX = ('preferences', 'eprefix', 2)
@@ -272,6 +274,8 @@ default_value = {
PERSON_SEL_HEIGHT : 450,
MEDIA_SEL_WIDTH : 600,
MEDIA_SEL_HEIGHT : 450,
CLIPBOARD_WIDTH : 300,
CLIPBOARD_HEIGHT : 300,
FILTER : False,
PEDVIEW_TREESIZE : 0,
PEDVIEW_LAYOUT : 0,
+1 -1
View File
@@ -42,7 +42,7 @@ def make_bool(val):
else:
return True
class IniKeyClient:
class IniKeyClient(object):
""" Class to emulate gconf's client """
def __init__(self, filename = None):
""" Constructor takes an optional filename """
+13 -7
View File
@@ -199,13 +199,19 @@ class FamilyListView(PageView.ListView):
pass
def remove(self, obj):
self.uistate.set_busy_cursor(1)
import gen.utils
for handle in self.selected_handles():
gen.utils.remove_family_relationships(self.dbstate.db, handle)
self.build_tree()
self.uistate.set_busy_cursor(0)
from QuestionDialog import QuestionDialog2
from Utils import data_recover_msg
msg = _('Deleting item will remove it from the database.')
msg = msg + '\n' + data_recover_msg
q = QuestionDialog2(_('Delete %s?') % _('family'), msg,
_('_Delete Item'), _('Cancel'))
if q.run():
self.uistate.set_busy_cursor(1)
import gen.utils
for handle in self.selected_handles():
gen.utils.remove_family_relationships(self.dbstate.db, handle)
self.build_tree()
self.uistate.set_busy_cursor(0)
def edit(self, obj):
for handle in self.selected_handles():
+527 -402
View File
File diff suppressed because it is too large Load Diff
+45 -39
View File
@@ -80,10 +80,19 @@ def register_gramplet(data_dict):
base_opts = {"name":"Unnamed Gramplet",
"tname": _("Unnamed Gramplet"),
"state":"maximized",
"version":"0.0.0",
"gramps":"0.0.0",
"column": -1, "row": -1,
"data": []}
base_opts.update(data_dict)
AVAILABLE_GRAMPLETS[base_opts["name"]] = base_opts
if base_opts["name"] not in AVAILABLE_GRAMPLETS:
AVAILABLE_GRAMPLETS[base_opts["name"]] = base_opts
else: # go with highest version (or current one in case of tie)
# GRAMPS loads system plugins first
loaded_version = [int(i) for i in AVAILABLE_GRAMPLETS[base_opts["name"]]["version"].split(".")]
current_version = [int(i) for i in base_opts["version"].split(".")]
if current_version >= loaded_version:
AVAILABLE_GRAMPLETS[base_opts["name"]] = base_opts
def register(**data):
"""
@@ -165,8 +174,7 @@ def make_requested_gramplet(viewpage, name, opts, dbstate, uistate):
if msg is None:
msg = _("Drag Properties Button to move and click it for setup")
if msg:
gui.tooltips = gtk.Tooltips()
gui.tooltips.set_tip(gui.scrolledwindow, msg)
gui.scrolledwindow.set_tooltip_text(msg)
gui.tooltips_text = msg
gui.make_gui_options()
gui.gvoptions.hide()
@@ -202,7 +210,7 @@ class GrampletWindow(ManagedWindow.ManagedWindow):
"""
self.title = gramplet.title + " " + _("Gramplet")
self.gramplet = gramplet
ManagedWindow.ManagedWindow.__init__(self, gramplet.uistate, [], self.__class__)
ManagedWindow.ManagedWindow.__init__(self, gramplet.uistate, [], self.title)
self.set_window(gtk.Dialog("",gramplet.uistate.window,
gtk.DIALOG_DESTROY_WITH_PARENT,
(gtk.STOCK_CLOSE, gtk.RESPONSE_CLOSE)),
@@ -249,19 +257,22 @@ class GrampletWindow(ManagedWindow.ManagedWindow):
def close(self, *args):
"""
Closes the detached GrampletWindow.
Dock the detached GrampletWindow back in the column from where it came.
"""
self.gramplet.gvoptions.hide()
self.gramplet.viewpage.detached_gramplets.remove(self.gramplet)
self.gramplet.state = "maximized"
parent = self.gramplet.viewpage.get_column_frame(self.gramplet.column)
self.gramplet.mainframe.reparent(parent)
# FIXME: Put the gramplet in the same column/row where it came from, if you can.
# This will put it at the bottom of column:
expand,fill,padding,pack = parent.query_child_packing(self.gramplet.mainframe)
parent.set_child_packing(self.gramplet.mainframe,
self.gramplet.expand,
fill,
padding,
pack)
# end FIXME
self.gramplet.gvclose.show()
self.gramplet.gvstate.show()
self.gramplet.gvproperties.show()
@@ -573,8 +584,7 @@ class Gramplet(object):
"""
from PluginUtils import make_gui_option
#tooltips, dbstate, uistate, track
widget, label = make_gui_option(option, None, self.dbstate,
self.uistate,None)
widget, label = make_gui_option(option, self.dbstate, self.uistate,None)
self.option_dict.update({option.get_label(): (widget, option)})
self.option_order.append(option.get_label())
@@ -588,7 +598,7 @@ class Gramplet(object):
def save_options(self):
pass
class GuiGramplet:
class GuiGramplet(object):
"""
Class that handles the plugin interfaces for the GrampletView.
"""
@@ -659,7 +669,7 @@ class GuiGramplet:
"""
Remove (delete) the gramplet from view.
"""
if self.state == "windowed":
if self.state == "detached":
return
self.state = "closed"
self.viewpage.closed_gramplets.append(self)
@@ -670,7 +680,7 @@ class GuiGramplet:
Detach the gramplet from the GrampletView, and open in own window.
"""
# hide buttons:
self.set_state("windowed")
self.set_state("detached")
self.viewpage.detached_gramplets.append(self)
# make a window, and attach it there
self.detached_window = GrampletWindow(self)
@@ -679,6 +689,7 @@ class GuiGramplet:
"""
Set the state of a gramplet.
"""
oldstate = self.state
self.state = state
if state == "minimized":
self.scrolledwindow.hide()
@@ -699,15 +710,15 @@ class GuiGramplet:
fill,
padding,
pack)
if state == "maximized" and self.pui:
if oldstate is "minimized" and self.pui:
self.pui.update()
def change_state(self, obj):
"""
Change the state of a gramplet.
"""
if self.state == "windowed":
pass # don't change if windowed
if self.state == "detached":
pass # don't change if detached
else:
if self.state == "maximized":
self.set_state("minimized")
@@ -718,12 +729,11 @@ class GuiGramplet:
"""
Set the properties of a gramplet.
"""
if self.state == "windowed":
if self.state == "detached":
pass
else:
self.detach()
return
# FIXME: add control for expand AND detach
self.expand = not self.expand
if self.state == "maximized":
column = self.mainframe.get_parent() # column
@@ -937,13 +947,10 @@ class GuiGramplet:
else:
tag.set_property('underline', pango.UNDERLINE_NONE)
view.get_window(gtk.TEXT_WINDOW_TEXT).set_cursor(cursor)
if self.tooltips:
if ttip:
self.tooltips.set_tip(self.scrolledwindow,
ttip)
else:
self.tooltips.set_tip(self.scrolledwindow,
self.tooltips_text)
if ttip:
self.scrolledwindow.set_tooltip_text(ttip)
elif self.tooltips_text:
self.scrolledwindow.set_tooltip_text(self.tooltips_text)
return False # handle event further, if necessary
def on_button_press(self, view, event):
@@ -1089,8 +1096,7 @@ class GrampletView(PageView.PersonNavView):
# build the GUI:
frame = MyScrolledWindow()
msg = _("Right click to add gramplets")
self.tooltips = gtk.Tooltips()
self.tooltips.set_tip(frame, msg)
frame.set_tooltip_text(msg)
frame.viewpage = self
frame.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
self.hbox = gtk.HBox(homogeneous=True)
@@ -1156,7 +1162,7 @@ class GrampletView(PageView.PersonNavView):
"""
gramplets = [g for g in self.gramplet_map.values() if g is not None]
for gramplet in gramplets:
if (gramplet.state == "windowed" or gramplet.state == "closed"):
if (gramplet.state == "detached" or gramplet.state == "closed"):
continue
column = gramplet.mainframe.get_parent()
if column:
@@ -1180,16 +1186,19 @@ class GrampletView(PageView.PersonNavView):
# else, spread them out:
pos = cnt % self.column_count
gramplet.column = pos
if recolumn and (gramplet.state == "windowed" or gramplet.state == "closed"):
if recolumn and (gramplet.state == "detached" or gramplet.state == "closed"):
continue
self.columns[pos].pack_start(gramplet.mainframe, expand=gramplet.expand)
if gramplet.state == "minimized":
self.columns[pos].pack_start(gramplet.mainframe, expand=False)
else:
self.columns[pos].pack_start(gramplet.mainframe, expand=gramplet.expand)
# set height on gramplet.scrolledwindow here:
gramplet.scrolledwindow.set_size_request(-1, gramplet.height)
# Can't minimize here, because GRAMPS calls show_all later:
#if gramplet.state == "minimized": # starts max, change to min it
# gramplet.set_state("minimized") # minimize it
# set minimized is called in page subclass hack (above)
if gramplet.state == "windowed":
if gramplet.state == "detached":
gramplet.detach()
elif gramplet.state == "closed":
gramplet.close()
@@ -1500,8 +1509,6 @@ class GrampletView(PageView.PersonNavView):
self._popup_xy[0], self._popup_xy[1], 0)
else:
self.drop_widget(self.widget, gramplet, 0, 0, 0)
if g.pui:
g.pui.update()
else:
print "Can't make gramplet of type '%s'." % name
@@ -1559,15 +1566,14 @@ class GrampletView(PageView.PersonNavView):
ag_menu = self.uistate.uimanager.get_widget('/Popup/AddGramplet')
if ag_menu:
qr_menu = ag_menu.get_submenu()
if qr_menu is None:
qr_menu = gtk.Menu()
names = [AVAILABLE_GRAMPLETS[key]["tname"] for key
in AVAILABLE_GRAMPLETS.keys()]
names.sort()
for name in names:
Utils.add_menuitem(qr_menu, name,
None, self.add_gramplet)
self.uistate.uimanager.get_widget('/Popup/AddGramplet').set_submenu(qr_menu)
qr_menu = gtk.Menu()
names = [AVAILABLE_GRAMPLETS[key]["tname"] for key
in AVAILABLE_GRAMPLETS.keys()]
names.sort()
for name in names:
Utils.add_menuitem(qr_menu, name,
None, self.add_gramplet)
self.uistate.uimanager.get_widget('/Popup/AddGramplet').set_submenu(qr_menu)
rg_menu = self.uistate.uimanager.get_widget('/Popup/RestoreGramplet')
if rg_menu:
qr_menu = rg_menu.get_submenu()
+1
View File
@@ -7,6 +7,7 @@ pkgdatadir = $(datadir)/@PACKAGE@/DataViews
pkgdata_PYTHON = \
__init__.py\
GeoView.py\
GrampletView.py\
PersonView.py\
RelationView.py\
+2 -2
View File
@@ -152,7 +152,7 @@ class GuideMap(gtk.DrawingArea):
return (px,py)
# Map tile files used by the ZoomMap
class MapTile:
class MapTile(object):
def __init__( self, filename, x, y, w, h, pw, ph):
self.filename = filename
self.full_path = os.path.join(const.IMAGE_DIR,filename)
@@ -226,7 +226,7 @@ class MapTile:
self.scale = None
self.scaled_pixbuf = None
class WMSMapTile:
class WMSMapTile(object):
def __init__(self,capabilities,change_cb=None):
self.change_cb = change_cb
self.scaled_pixbuf = None
+2 -6
View File
@@ -275,13 +275,11 @@ class MediaView(PageView.ListView):
ebox = gtk.EventBox()
ebox.add(self.image)
ebox.connect('button-press-event', self.button_press_event)
ebox.set_tooltip_text(
_('Double click image to view in an external viewer'))
vbox.pack_start(ebox, False)
vbox.pack_start(base, True)
self.ttips = gtk.Tooltips()
self.ttips.set_tip(
ebox, _('Double click image to view in an external viewer'))
self.selection.connect('changed', self.row_change)
self._set_dnd()
return vbox
@@ -314,13 +312,11 @@ class MediaView(PageView.ListView):
handle = self.first_selected()
if not handle:
self.image.clear()
self.ttips.disable()
else:
obj = self.dbstate.db.get_object_from_handle(handle)
pix = ThumbNails.get_thumbnail_image(
Utils.media_path_full(self.dbstate.db, obj.get_path()))
self.image.set_from_pixbuf(pix)
self.ttips.enable()
def ui_definition(self):
"""
+11 -10
View File
@@ -357,7 +357,7 @@ class PersonBoxWidget( gtk.DrawingArea, _PersonWidget_base):
else:
self.window.draw_rectangle(self.border_gc, False, 0, 0, alloc.width-4, alloc.height-4)
class FormattingHelper:
class FormattingHelper(object):
def __init__(self,dbstate):
self.dbstate = dbstate
self._text_cache = {}
@@ -367,7 +367,9 @@ class FormattingHelper:
text = ""
for event_ref in family.get_event_ref_list():
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
if event and event.get_type() == gen.lib.EventType.MARRIAGE:
if event and event.get_type() == gen.lib.EventType.MARRIAGE and \
(event_ref.get_role() == gen.lib.EventRoleType.FAMILY or
event_ref.get_role() == gen.lib.EventRoleType.PRIMARY ):
if line_count < 3:
return DateHandler.get_date(event)
name = str(event.get_type())
@@ -527,8 +529,6 @@ class PedigreeView(PageView.PersonNavView):
contains the interface. This containter will be inserted into
a gtk.Notebook page.
"""
self.tooltips = gtk.Tooltips()
self.tooltips.enable()
self.notebook = gtk.Notebook()
self.notebook.connect("button-press-event", self.bg_button_press_cb)
@@ -747,7 +747,8 @@ class PedigreeView(PageView.PersonNavView):
((8,26,3,1),None,None),
((8,28,3,1),None,None),
((8,30,3,1),None,None),)
elif self.tree_style == 0:
else:
#elif self.tree_style == 0:
pos_2 =(((0,0,1,3),(1,0,3),(2,1,1,1)),
((2,0,1,1),None,None),
((2,2,1,1),None,None))
@@ -876,7 +877,7 @@ class PedigreeView(PageView.PersonNavView):
else:
pw = PersonBoxWidget( self, self.format_helper, lst[i][0], lst[i][3], positions[i][0][3], image);
if positions[i][0][3] < 7:
self.tooltips.set_tip(pw, self.format_helper.format_person(lst[i][0], 11))
pw.set_tooltip_text(self.format_helper.format_person(lst[i][0], 11))
pw.connect("button-press-event", self.person_button_press_cb,lst[i][0].get_handle())
if positions[i][0][2] > 1:
@@ -944,7 +945,7 @@ class PedigreeView(PageView.PersonNavView):
if lst[i] and lst[i][2]:
line.add_events(gtk.gdk.ENTER_NOTIFY_MASK) # Required for tooltip and mouse-over
line.add_events(gtk.gdk.LEAVE_NOTIFY_MASK) # Required for tooltip and mouse-over
self.tooltips.set_tip(line, self.format_helper.format_relation(lst[i][2], 11))
line.set_tooltip_text(self.format_helper.format_relation(lst[i][2], 11))
if lst[i*2+1]:
line.set_data("frela", lst[i*2+1][1])
if lst[i*2+2]:
@@ -978,7 +979,7 @@ class PedigreeView(PageView.PersonNavView):
childlist = find_children(self.dbstate.db,lst[0][0])
if childlist:
l.connect("clicked",self.on_show_child_menu)
self.tooltips.set_tip(l, _("Jump to child..."))
l.set_tooltip_text(_("Jump to child..."))
else:
l.set_sensitive(False)
ymid = int(math.floor(ymax/2))
@@ -987,7 +988,7 @@ class PedigreeView(PageView.PersonNavView):
l.add(gtk.Arrow(gtk.ARROW_RIGHT, gtk.SHADOW_IN))
if lst[1]:
l.connect("clicked",self.on_childmenu_changed,lst[1][0].handle)
self.tooltips.set_tip(l, _("Jump to father"))
l.set_tooltip_text(("Jump to father"))
else:
l.set_sensitive(False)
ymid = int(math.floor(ymax/4))
@@ -996,7 +997,7 @@ class PedigreeView(PageView.PersonNavView):
l.add(gtk.Arrow(gtk.ARROW_RIGHT, gtk.SHADOW_IN))
if lst[2]:
l.connect("clicked",self.on_childmenu_changed,lst[2][0].handle)
self.tooltips.set_tip(l, _("Jump to mother"))
l.set_tooltip_text(("Jump to mother"))
else:
l.set_sensitive(False)
ymid = int(math.floor(ymax/4*3))
+24
View File
@@ -31,6 +31,7 @@ PersonView interface.
#------------------------------------------------------------------------
import cPickle as pickle
import time
#-------------------------------------------------------------------------
#
@@ -41,6 +42,14 @@ import gtk
import pango
from gtk.gdk import ACTION_COPY, BUTTON1_MASK
#-------------------------------------------------------------------------
#
# set up logging
#
#-------------------------------------------------------------------------
import logging
_LOG = logging.getLogger(".gui.personview")
#-------------------------------------------------------------------------
#
# GRAMPS modules
@@ -518,6 +527,7 @@ class PersonView(PageView.PersonNavView):
since it can change when rows are unselected when the model is set.
"""
if self.active:
cput = time.clock()
if Config.get(Config.FILTER):
filter_info = (PeopleModel.GENERIC, self.generic_filter)
else:
@@ -525,7 +535,9 @@ class PersonView(PageView.PersonNavView):
self.model = PeopleModel(self.dbstate.db, filter_info, skip)
active = self.dbstate.active
cput1 = time.clock()
self.tree.set_model(self.model)
cput2 = time.clock()
if const.USE_TIPS and self.model.tooltip_column is not None:
self.tooltips = TreeTips.TreeTips(self.tree,
@@ -539,6 +551,9 @@ class PersonView(PageView.PersonNavView):
self.uistate.show_filter_results(self.dbstate,
self.model.displayed,
self.model.total)
_LOG.debug(self.__class__.__name__ + ' build_tree ' +
str(time.clock() - cput) + ' sec')
_LOG.debug(' setting model ' + str(cput2 - cput1) + ' sec')
else:
self.dirty = True
@@ -710,6 +725,7 @@ class PersonView(PageView.PersonNavView):
if not self.model:
return
if self.active:
cput = time.clock()
self.dirty = False
for node in set(handle_list):
person = self.dbstate.db.get_person_from_handle(node)
@@ -729,6 +745,8 @@ class PersonView(PageView.PersonNavView):
path = self.model.on_get_path(node)
pnode = self.model.get_iter(path)
self.model.row_inserted(path, pnode)
_LOG.debug(self.__class__.__name__ + ' person_added ' +
str(time.clock() - cput) + ' sec')
else:
self.dirty = True
@@ -745,6 +763,7 @@ class PersonView(PageView.PersonNavView):
if not self.model:
return
cput = time.clock()
expand = []
self.tree.map_expanded_rows(self.func, expand)
@@ -753,11 +772,14 @@ class PersonView(PageView.PersonNavView):
path = self.model.mapper.top_iter2path.get(i)
if path:
self.tree.expand_row(path, False)
_LOG.debug(self.__class__.__name__ + ' person_removed ' +
str(time.clock() - cput) + ' sec')
def person_updated(self, handle_list):
if not self.model:
return
cput = time.clock()
self.model.clear_cache()
for node in handle_list:
person = self.dbstate.db.get_person_from_handle(node)
@@ -796,6 +818,8 @@ class PersonView(PageView.PersonNavView):
break
self.goto_active_person()
_LOG.debug(self.__class__.__name__ + ' person_updated ' +
str(time.clock() - cput) + ' sec')
def get_selected_objects(self):
(mode, paths) = self.selection.get_selected_rows()
+16 -12
View File
@@ -131,14 +131,14 @@ class PlaceView(PageView.ListView):
callback=self.fast_merge)
self._add_toolmenu_action('MapsList', _('Loading...'),
_("Attempt to see selected locations with a Map "
"Service (OpenstreetMap, Google Maps, ..."),
"Service (OpenstreetMap, Google Maps, ...)"),
self.gotomap,
_('Select a Map Service'))
self._add_action('GotoMap', gtk.STOCK_JUMP_TO,
_('_Look up with Map Service'),
callback=self.gotomap,
tip=_("Attempt to see this location with a Map "
"Service (OpenstreetMap, Google Maps, ..."))
"Service (OpenstreetMap, Google Maps, ...)"))
self._add_action('FilterEdit', None, _('Place Filter Editor'),
callback=self.filter_editor)
@@ -171,16 +171,13 @@ class PlaceView(PageView.ListView):
for widget in widgets :
if isinstance(widget, gtk.MenuToolButton):
widget.set_menu(mmenu)
widget.set_arrow_tooltip_text(actionservices.arrowtooltip)
hbox=gtk.HBox()
img = gtk.Image()
img.set_from_stock(gtk.STOCK_JUMP_TO,
gtk.ICON_SIZE_LARGE_TOOLBAR)
hbox.pack_start(img)
self.mapslistlabel.append(gtk.Label(self.mapservice_label()))
hbox.pack_start(self.mapslistlabel[-1])
hbox.show_all()
widget.set_icon_widget(hbox)
if gtk.pygtk_version >= (2, 12, 0):
widget.set_arrow_tooltip_text(actionservices.arrowtooltip)
lbl = gtk.Label(self.mapservice_label())
lbl.show()
self.mapslistlabel.append(lbl)
widget.set_label_widget(self.mapslistlabel[-1])
widget.set_stock_id(gtk.STOCK_JUMP_TO)
def __create_maps_menu_actions(self):
"""
@@ -222,6 +219,13 @@ class PlaceView(PageView.ListView):
"""
Run the map service
"""
#First test if any map service is available
if not len(self.mapservicedata):
msg = _("No map service is available.")
msg2 = _("Check your installation.")
ErrorDialog(msg, msg2)
return
place_handles = self.selected_handles()
try:
place_handle = self.selected_handles()[0]
+41 -27
View File
@@ -1,6 +1,7 @@
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2001-2007 Donald N. Allingham
# Copyright (C) 2009 Gary Burton
#
# 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
@@ -91,10 +92,11 @@ _SDATA_START = 2
_SDATA_STOP = 4
_RETURN = gtk.gdk.keyval_from_name("Return")
_KP_ENTER = gtk.gdk.keyval_from_name("KP_Enter")
_SPACE = gtk.gdk.keyval_from_name("space")
_LEFT_BUTTON = 1
_RIGHT_BUTTON = 3
class AttachList:
class AttachList(object):
def __init__(self):
self.list = []
@@ -130,6 +132,7 @@ class RelationshipView(PageView.PersonNavView):
self.color = gtk.TextView().style.white
self.child = None
self.old_handle = None
Config.client.notify_add("/apps/gramps/preferences/relation-shade",
self.shade_update)
@@ -417,12 +420,19 @@ class RelationshipView(PageView.PersonNavView):
return True
def _change_person(self, obj):
if obj == self.old_handle:
#same object, keep present scroll position
old_vadjust = self.scroll.get_vadjustment().value
self.old_handle = obj
else:
#different object, scroll to top
old_vadjust = self.scroll.get_vadjustment().lower
self.old_handle = obj
self.scroll.get_vadjustment().value = \
self.scroll.get_vadjustment().lower
if self.redrawing:
return False
self.redrawing = True
self.tooltips = gtk.Tooltips()
for old_child in self.vbox.get_children():
self.vbox.remove(old_child)
@@ -503,6 +513,8 @@ class RelationshipView(PageView.PersonNavView):
self.child.show_all()
self.vbox.pack_start(self.child, False)
#reset scroll position as it was before
self.scroll.get_vadjustment().value = old_vadjust
self.redrawing = False
self.uistate.modify_statusbar(self.dbstate)
@@ -528,7 +540,7 @@ class RelationshipView(PageView.PersonNavView):
if Config.get(Config.RELEDITBTN):
button = widgets.IconButton(self.edit_button_press,
person.handle)
self.tooltips.set_tip(button, _('Edit %s') % name)
button.set_tooltip_text(_('Edit %s') % name)
else:
button = None
hbox = widgets.LinkBox(label, button)
@@ -745,30 +757,30 @@ class RelationshipView(PageView.PersonNavView):
if not self.toolbar_visible and not self.dbstate.db.readonly:
# Show edit-Buttons if toolbar is not visible
if self.reorder_sensitive:
add = widgets.IconButton(self.reorder, None,
add = widgets.IconButton(self.reorder_button_press, None,
gtk.STOCK_SORT_ASCENDING)
self.tooltips.set_tip(add, ord_msg)
add.set_tooltip_text(ord_msg)
hbox.pack_start(add, False)
add = widgets.IconButton(call_fcn, None, gtk.STOCK_ADD)
self.tooltips.set_tip(add, add_msg)
add.set_tooltip_text(add_msg)
hbox.pack_start(add, False)
if is_parent:
add = widgets.IconButton(self.select_family, None,
gtk.STOCK_INDEX)
self.tooltips.set_tip(add, sel_msg)
add.set_tooltip_text(sel_msg)
hbox.pack_start(add, False)
if family:
edit = widgets.IconButton(self.edit_family, family.handle,
gtk.STOCK_EDIT)
self.tooltips.set_tip(edit, edit_msg)
edit.set_tooltip_text(edit_msg)
hbox.pack_start(edit, False)
if not self.dbstate.db.readonly:
delete = widgets.IconButton(del_fcn, family.handle,
gtk.STOCK_REMOVE)
self.tooltips.set_tip(delete, del_msg)
delete.set_tooltip_text(del_msg)
hbox.pack_start(delete, False)
self.attach.attach(hbox, _BTN_START, _BTN_STOP, self.row, self.row+1)
self.row += 1
@@ -873,13 +885,11 @@ class RelationshipView(PageView.PersonNavView):
addchild = widgets.IconButton(self.add_child_to_fam,
family.handle,
gtk.STOCK_ADD)
self.tooltips.set_tip(addchild,
_('Add new child to family'))
addchild.set_tooltip_text(_('Add new child to family'))
selchild = widgets.IconButton(self.sel_child_to_fam,
family.handle,
gtk.STOCK_INDEX)
self.tooltips.set_tip(selchild,
_('Add existing child to family'))
selchild.set_tooltip_text(_('Add existing child to family'))
hbox.pack_start(addchild, False)
hbox.pack_start(selchild, False)
@@ -901,7 +911,7 @@ class RelationshipView(PageView.PersonNavView):
eventbox.modify_bg(gtk.STATE_NORMAL, self.color)
eventbox.add(vbox)
self.attach.attach(
eventbox, _CDATA_START-1, _CDATA_STOP-1, self.row,
eventbox, _CDATA_START-1, _CDATA_STOP, self.row,
self.row+1)
self.row += 1
@@ -923,7 +933,7 @@ class RelationshipView(PageView.PersonNavView):
if Config.get(Config.RELEDITBTN):
button = widgets.IconButton(self.edit_button_press,
handle)
self.tooltips.set_tip(button, _('Edit %s') % name[0])
button.set_tooltip_text(('Edit %s') % name[0])
else:
button = None
vbox.pack_start(widgets.LinkBox(link_label, button),
@@ -976,7 +986,7 @@ class RelationshipView(PageView.PersonNavView):
link_label.modify_bg(gtk.STATE_NORMAL, self.color)
if Config.get(Config.RELEDITBTN):
button = widgets.IconButton(self.edit_button_press, handle)
self.tooltips.set_tip(button, _('Edit %s') % name[0])
button.set_tooltip_text(_('Edit %s') % name[0])
else:
button = None
vbox.pack_start(widgets.LinkBox(link_label, button))
@@ -1063,7 +1073,7 @@ class RelationshipView(PageView.PersonNavView):
link_label.set_padding(3, 0)
if child_should_be_linked and Config.get(Config.RELEDITBTN):
button = widgets.IconButton(self.edit_button_press, handle)
self.tooltips.set_tip(button, _('Edit %s') % name[0])
button.set_tooltip_text(_('Edit %s') % name[0])
else:
button = None
@@ -1094,7 +1104,7 @@ class RelationshipView(PageView.PersonNavView):
return None
birth = ReportUtils.get_birth_or_fallback(self.dbstate.db, person)
if birth and birth.get_type != gen.lib.EventType.BIRTH:
if birth and birth.get_type() != gen.lib.EventType.BIRTH:
sdate = DateHandler.get_date(birth)
if sdate:
bdate = "<i>%s</i>" % cgi.escape(sdate)
@@ -1106,7 +1116,7 @@ class RelationshipView(PageView.PersonNavView):
bdate = ""
death = ReportUtils.get_death_or_fallback(self.dbstate.db, person)
if death and death.get_type != gen.lib.EventType.DEATH:
if death and death.get_type() != gen.lib.EventType.DEATH:
sdate = DateHandler.get_date(death)
if sdate:
ddate = "<i>%s</i>" % cgi.escape(sdate)
@@ -1199,7 +1209,9 @@ class RelationshipView(PageView.PersonNavView):
for event_ref in family.get_event_ref_list():
handle = event_ref.ref
event = self.dbstate.db.get_event_from_handle(handle)
if event.get_type() == gen.lib.EventType.MARRIAGE:
if event and event.get_type() == gen.lib.EventType.MARRIAGE and \
(event_ref.get_role() == gen.lib.EventRoleType.FAMILY or
event_ref.get_role() == gen.lib.EventRoleType.PRIMARY ):
self.write_event_ref(vbox, _('Marriage'), event)
value = True
return value
@@ -1331,13 +1343,11 @@ class RelationshipView(PageView.PersonNavView):
addchild = widgets.IconButton(self.add_child_to_fam,
family.handle,
gtk.STOCK_ADD)
self.tooltips.set_tip(addchild,
_('Add new child to family'))
addchild.set_tooltip_text(_('Add new child to family'))
selchild = widgets.IconButton(self.sel_child_to_fam,
family.handle,
gtk.STOCK_INDEX)
self.tooltips.set_tip(selchild,
_('Add existing child to family'))
selchild.set_tooltip_text(_('Add existing child to family'))
hbox.pack_start(addchild, False)
hbox.pack_start(selchild, False)
self.attach.attach(
@@ -1358,7 +1368,7 @@ class RelationshipView(PageView.PersonNavView):
eventbox.modify_bg(gtk.STATE_NORMAL, self.color)
eventbox.add(vbox)
self.attach.attach(
eventbox, _CDATA_START-1, _CDATA_STOP-1, self.row,
eventbox, _CDATA_START-1, _CDATA_STOP, self.row,
self.row+1)
self.row += 1
@@ -1561,6 +1571,10 @@ class RelationshipView(PageView.PersonNavView):
def change_to(self, obj, handle):
self.dbstate.change_active_handle(handle)
def reorder_button_press(self, obj, event, handle):
if button_activated(event, _LEFT_BUTTON):
self.reorder(obj)
def reorder(self, obj, dumm1=None, dummy2=None):
if self.dbstate.active:
try:
@@ -1590,7 +1604,7 @@ def button_activated(event, mouse_button):
if (event.type == gtk.gdk.BUTTON_PRESS and \
event.button == mouse_button) or \
(event.type == gtk.gdk.KEY_PRESS and \
event.keyval in (_RETURN, _KP_ENTER)):
event.keyval in (_RETURN, _KP_ENTER, _SPACE)):
return True
else:
return False
+2 -2
View File
@@ -98,14 +98,14 @@ CAL_TO_MONTHS_NAMES = {
Date.CAL_ISLAMIC : DateHandler.displayer.islamic,
Date.CAL_SWEDISH : DateHandler.displayer.swedish }
WIKI_HELP_PAGE = 'Gramps_3.0_Wiki_Manual_-_Entering_and_Editing_Data:_Detailed'
WIKI_HELP_PAGE = '%s_-_Entering_and_Editing_Data:_Detailed_-_part_1' % const.URL_MANUAL_PAGE
WIKI_HELP_SEC = _('manual|Editing_Dates')
#-------------------------------------------------------------------------
#
# DateEdit
#
#-------------------------------------------------------------------------
class DateEdit:
class DateEdit(object):
"""Class that associates a pixmap with a text widget, providing visual
feedback that indicates if the text widget contains a valid date"""
+10 -9
View File
@@ -9,19 +9,20 @@ pkgdata_PYTHON = \
_Date_ca.py\
_Date_cs.py\
_Date_de.py\
_Date_ru.py\
_Date_lt.py\
_Date_fr.py\
_Date_es.py\
_Date_fi.py\
_Date_sv.py\
_Date_nb.py\
_Date_nl.py\
_Date_sk.py\
_Date_pl.py\
_Date_pt.py\
_Date_fr.py\
_Date_hr.py\
_Date_it.py\
_Date_lt.py\
_Date_nb.py\
_Date_nl.py\
_Date_pl.py\
_Date_pt.py\
_Date_ru.py\
_Date_sk.py\
_Date_sr.py\
_Date_sv.py\
_DateDisplay.py\
_DateParser.py\
_DateHandler.py\
+1 -1
View File
@@ -46,7 +46,7 @@ import GrampsLocale
# DateDisplay
#
#-------------------------------------------------------------------------
class DateDisplay:
class DateDisplay(object):
_months = GrampsLocale.long_months
MONS = GrampsLocale.short_months
+1 -7
View File
@@ -122,7 +122,7 @@ def french_valid(date_tuple):
# Parser class
#
#-------------------------------------------------------------------------
class DateParser:
class DateParser(object):
"""
Convert a text string into a Date object. If the date cannot be
converted, the text string is assigned.
@@ -474,12 +474,6 @@ class DateParser:
value = subparser(text)
if value != Date.EMPTY:
return value
# if 8 digits are entered and month and day in range
# assume yyyymmdd and convert to yyyy-mm-dd
if len(text) == 8 and text.isdigit() \
and (int(text[4:6]) in range(1,13)) \
and (int(text[6:8]) in range(1,32)):
text = text[0:4] + "-" + text[4:6] + "-" + text[6:8]
match = self._iso.match(text)
if match:
groups = match.groups()
+3 -3
View File
@@ -69,7 +69,7 @@ class DateParserCZ(DateParser):
u'r' : Date.CAL_FRENCH,
u'perský' : Date.CAL_PERSIAN,
u'p' : Date.CAL_PERSIAN,
u'swedish' : Date.CAL_SWEDISH,
u'švédský' : Date.CAL_SWEDISH,
u's' : Date.CAL_SWEDISH,
}
@@ -103,7 +103,7 @@ class DateDisplayCZ(DateDisplay):
calendar = (
"", u" (juliánský)", u" (hebrejský)",
u" (republikánský)", u" (perský)", u" (islámský)",
u" (swedish)"
u" (švédský)"
)
_mod_str = ("", u"před ", u"po ", u"kolem ", "", "", "")
@@ -138,7 +138,7 @@ class DateDisplayCZ(DateDisplay):
elif mod == Date.MOD_RANGE:
d1 = self.display_cal[cal](start)
d2 = self.display_cal[cal](date.get_stop_date())
return "%s%s %s %s %s%s" % (qual_str, u'medzi',
return "%s%s %s %s %s%s" % (qual_str, u'mezi',
d1, u'a', d2, self.calendar[cal])
else:
text = self.display_cal[date.get_calendar()](start)
+2 -2
View File
@@ -58,8 +58,8 @@ class DateParserFR(DateParser):
# Add common value
month_to_int[u"bluviose"] = 1
month_to_int[u"vendose"] = 2
month_to_int[u"bluviose"] = 5
month_to_int[u"vendose"] = 6
month_to_int[u"7bre"] = 9
month_to_int[u"8bre"] = 10
month_to_int[u"9bre"] = 11
+1 -1
View File
@@ -180,7 +180,7 @@ class DateParserHR(DateParser):
"""
DateParser.init_strings(self)
# match 'Day. MONTH year.' format with or without dots
self._text2 = re.compile('(\d+)?\.?\s+?%s\.?\s*((\d+)(/\d+)?)?\s*\.?$'
self._text2 = re.compile('(\d+)?\.?\s*?%s\.?\s*((\d+)(/\d+)?)?\s*\.?$'
% self._mon_str, re.IGNORECASE)
# match Day.Month.Year.
self._numeric = re.compile(
+393
View File
@@ -0,0 +1,393 @@
# -*- coding: utf-8 -*-
#
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2007 Donald N. Allingham
#
# 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
#
# Serbian version by Vlada Perić <vlada.peric@gmail.com>, 2009.
# Based on the Croatian DateHandler by Josip
"""
Serbian-specific classes for parsing and displaying dates.
"""
#-------------------------------------------------------------------------
#
# Python modules
#
#-------------------------------------------------------------------------
import re
#-------------------------------------------------------------------------
#
# GRAMPS modules
#
#-------------------------------------------------------------------------
from gen.lib import Date
from _DateParser import DateParser
from _DateDisplay import DateDisplay
from _DateHandler import register_datehandler
#-------------------------------------------------------------------------
#
# Serbian parser
#
#-------------------------------------------------------------------------
class DateParserSR(DateParser):
"""
Converts a text string into a Date object
"""
month_to_int = DateParser.month_to_int
month_to_int[u"januar"] = 1
month_to_int[u"januara"] = 1
month_to_int[u"jan"] = 1
month_to_int[u"јан"] = 1
month_to_int[u"јануара"] = 1
month_to_int[u"јануар"] = 1
month_to_int[u"i"] = 1
month_to_int[u"februar"] = 2
month_to_int[u"februara"] = 2
month_to_int[u"feb"] = 2
month_to_int[u"феб"] = 2
month_to_int[u"фебруар"] = 2
month_to_int[u"фебруара"] = 2
month_to_int[u"ii"] = 2
month_to_int[u"mart"] = 3
month_to_int[u"marta"] = 3
month_to_int[u"mar"] = 3
month_to_int[u"мар"] = 3
month_to_int[u"март"] = 3
month_to_int[u"марта"] = 3
month_to_int[u"iii"] = 3
month_to_int[u"april"] = 4
month_to_int[u"aprila"] = 4
month_to_int[u"apr"] = 4
month_to_int[u"апр"] = 4
month_to_int[u"април"] = 4
month_to_int[u"априла"] = 4
month_to_int[u"iv"] = 4
month_to_int[u"maj"] = 5
month_to_int[u"maja"] = 5
month_to_int[u"мај"] = 5
month_to_int[u"маја"] = 5
month_to_int[u"v"] = 5
month_to_int[u"jun"] = 6
month_to_int[u"juna"] = 6
month_to_int[u"јун"] = 6
month_to_int[u"јуна"] = 6
month_to_int[u"vi"] = 6
month_to_int[u"jul"] = 7
month_to_int[u"jula"] = 7
month_to_int[u"јул"] = 7
month_to_int[u"јула"] = 7
month_to_int[u"vii"] = 7
month_to_int[u"avgust"] = 8
month_to_int[u"avgusta"] = 8
month_to_int[u"avg"] = 8
month_to_int[u"авг"] = 8
month_to_int[u"август"] = 8
month_to_int[u"августа"] = 8
month_to_int[u"viii"] = 8
month_to_int[u"septembar"] = 9
month_to_int[u"septembra"] = 9
month_to_int[u"sep"] = 9
month_to_int[u"сеп"] = 9
month_to_int[u"септембар"] = 9
month_to_int[u"септембра"] = 9
month_to_int[u"ix"] = 9
month_to_int[u"oktobar"] = 10
month_to_int[u"oktobra"] = 10
month_to_int[u"okt"] = 10
month_to_int[u"окт"] = 10
month_to_int[u"октобар"] = 10
month_to_int[u"октобра"] = 10
month_to_int[u"x"] = 10
month_to_int[u"novembar"] = 11
month_to_int[u"novembra"] = 11
month_to_int[u"nov"] = 11
month_to_int[u"нов"] = 11
month_to_int[u"новембар"] = 11
month_to_int[u"новембра"] = 11
month_to_int[u"xi"] = 11
month_to_int[u"decembar"] = 12
month_to_int[u"decembra"] = 12
month_to_int[u"dec"] = 12
month_to_int[u"дец"] = 12
month_to_int[u"децембар"] = 12
month_to_int[u"децембра"] = 12
month_to_int[u"xii"] = 12
modifier_to_int = {
u'pre' : Date.MOD_BEFORE,
u'posle' : Date.MOD_AFTER,
u'oko' : Date.MOD_ABOUT,
u'cca' : Date.MOD_ABOUT,
u'пре' : Date.MOD_BEFORE,
u'после' : Date.MOD_AFTER,
u'око' : Date.MOD_ABOUT,
}
calendar_to_int = {
u'gregorijanski' : Date.CAL_GREGORIAN,
u'greg.' : Date.CAL_GREGORIAN,
u'julijanski' : Date.CAL_JULIAN,
u'jul.' : Date.CAL_JULIAN,
u'hebrejski' : Date.CAL_HEBREW,
u'hebr.' : Date.CAL_HEBREW,
u'islamski' : Date.CAL_ISLAMIC,
u'isl.' : Date.CAL_ISLAMIC,
u'francuski republikanski': Date.CAL_FRENCH,
u'franc.' : Date.CAL_FRENCH,
u'persijski' : Date.CAL_PERSIAN,
u'pers. ' : Date.CAL_PERSIAN,
u'švedski' : Date.CAL_SWEDISH,
u'šv.' : Date.CAL_SWEDISH,
u'грегоријански' : Date.CAL_GREGORIAN,
u'грег.' : Date.CAL_GREGORIAN,
u'јулијански' : Date.CAL_JULIAN,
u'јул.' : Date.CAL_JULIAN,
u'хебрејски' : Date.CAL_HEBREW,
u'хебр.' : Date.CAL_HEBREW,
u'исламски' : Date.CAL_ISLAMIC,
u'исл.' : Date.CAL_ISLAMIC,
u'француски републикански': Date.CAL_FRENCH,
u'франц.' : Date.CAL_FRENCH,
u'персијски' : Date.CAL_PERSIAN,
u'перс. ' : Date.CAL_PERSIAN,
u'шведски' : Date.CAL_SWEDISH,
u'шв' : Date.CAL_SWEDISH,
}
quality_to_int = {
u'procenjeno' : Date.QUAL_ESTIMATED,
u'pro.' : Date.QUAL_ESTIMATED,
u'izračunato' : Date.QUAL_CALCULATED,
u'izr.' : Date.QUAL_CALCULATED,
u'процењено' : Date.QUAL_ESTIMATED,
u'про.' : Date.QUAL_ESTIMATED,
u'израчунато' : Date.QUAL_CALCULATED,
u'изр.' : Date.QUAL_CALCULATED,
}
bce = [u"пре нове ере", u"пре Христа", u"п.н.е."
u"pre nove ere", u"pre Hrista", u"p.n.e."] + DateParser.bce
def init_strings(self):
"""
compiles regular expression strings for matching dates
"""
DateParser.init_strings(self)
# match 'Day. MONTH year.' format with or without dots
self._text2 = re.compile('(\d+)?\.?\s*?%s\s*((\d+)(/\d+)?)?\.?\s*$'
% self._mon_str, re.IGNORECASE)
# match Day.Month.Year.
self._numeric = re.compile("((\d+)[/\. ])?\s*((\d+)[/\.])?\s*(\d+)\.?$")
_span1 = [u'od', u'од']
_span2 = [u'do', u'до']
_range1 = [u'između', u'између']
_range2 = [u'i', u'и']
self._span = re.compile("(%s)\s+(?P<start>.+)\s+(%s)\s+(?P<stop>.+)" %
('|'.join(_span1),'|'.join(_span2)),
re.IGNORECASE)
self._range = re.compile("(%s)\s+(?P<start>.+)\s+(%s)\s+(?P<stop>.+)" %
('|'.join(_range1),'|'.join(_range2)),
re.IGNORECASE)
#-------------------------------------------------------------------------
#
# Serbian display
#
#-------------------------------------------------------------------------
class DateDisplaySR_latin(DateDisplay):
"""
Serbian (latin) date display class
"""
calendar = (
"", u" (julijanski)", u" (hebrejski)",
u" (francuski republikanski)", u" (persijski)", u" (islamski)",
u" (švedski)"
)
_mod_str = ("", "pre ", "posle ", "oko ", "", "", "")
_qual_str = ("", "procenjeno ", "izračunato ")
_bce_str = "%s p.n.e."
formats = (
"GGGG-MM-DD (ISO-8601)",
"Numerički (D.M.GGGG.)",
"D. MMM GGGG.",
"D. Mesec GGGG.",
"D. Rb GGGG."
)
roman_months = (
"",
"I",
"II",
"III",
"IV",
"V",
"VI",
"VII",
"VIII",
"IX",
"X",
"XI",
"XII"
)
sr_months = ("",
u"januara",
u"februara",
u"marta",
u"aprila",
u"maja",
u"juna",
u"jula",
u"avgusta",
u"septembra",
u"oktobra",
u"novembra",
u"decembra"
)
sr_months3 = ("",
u"jan",
u"feb",
u"mar",
u"apr",
u"maj",
u"jun",
u"jul",
u"avg",
u"sep",
u"okt",
u"nov",
u"dec"
)
def _display_gregorian(self, date_val):
"""
display gregorian calendar date in different format
"""
year = self._slash_year(date_val[2], date_val[3])
if self.format == 0:
return self.display_iso(date_val)
elif self.format == 1:
if date_val[3]:
return self.display_iso(date_val)
else:
if date_val[0] == 0 and date_val[1] == 0:
value = str(date_val[2])
else:
value = self._tformat.replace('%m', str(date_val[1]))
value = value.replace('%d', str(date_val[0]))
value = value.replace('%Y', str(abs(date_val[2])))
value = value.replace('-', '/')
elif self.format == 2:
# Day. MON Year.
if date_val[0] == 0:
if date_val[1] == 0:
value = u"%s." % year
else:
value = u"%s %s." % (self.sr_months3[date_val[1]], year)
else:
value = u"%d. %s %s." % (date_val[0],
self.sr_months3[date_val[1]], year)
elif self.format == 3:
# Day. MONTH Year.
if date_val[0] == 0:
if date_val[1] == 0:
value = u"%s." % year
else:
value = u"%s %s." % (self.sr_months[date_val[1]], year)
else:
value = u"%d. %s %s." % (date_val[0],
self.sr_months[date_val[1]], year)
else:
# Day RomanMon Year
if date_val[0] == 0:
if date_val[1] == 0:
value = u"%s." % year
else:
value = "%s %s." % (self.roman_months[date_val[1]], year)
else:
value = "%d. %s %s." % (date_val[0],
self.roman_months[date_val[1]], year)
if date_val[2] < 0:
return self._bce_str % value
else:
return value
def display(self, date):
"""
Return a text string representing the date.
"""
mod = date.get_modifier()
cal = date.get_calendar()
qual = date.get_quality()
start = date.get_start_date()
qual_str = self._qual_str[qual]
if mod == Date.MOD_TEXTONLY:
return date.get_text()
elif start == Date.EMPTY:
return ""
elif mod == Date.MOD_SPAN:
d_1 = self.display_cal[cal](start)
d_2 = self.display_cal[cal](date.get_stop_date())
return "%s%s %s %s %s%s" % (qual_str, u'od', d_1, u'do', d_2,
self.calendar[cal])
elif mod == Date.MOD_RANGE:
d_1 = self.display_cal[cal](start)
d_2 = self.display_cal[cal](date.get_stop_date())
return "%s%s %s %s %s%s" % (qual_str, u'između', d_1, u'i', d_2,
self.calendar[cal])
else:
text = self.display_cal[date.get_calendar()](start)
return "%s%s%s%s" % (qual_str, self._mod_str[mod], text,
self.calendar[cal])
#-------------------------------------------------------------------------
#
# Register classes
#
#-------------------------------------------------------------------------
register_datehandler(('sr', 'serbian', 'srpski', 'sr_RS'),
DateParserSR, DateDisplaySR_latin)
+4 -3
View File
@@ -29,11 +29,14 @@ from _DateHandler import (LANG, LANG_SHORT, LANG_TO_PARSER, LANG_TO_DISPLAY,
register_datehandler)
# Import all the localized handlers
import _Date_ca
import _Date_cs
import _Date_de
import _Date_es
import _Date_fi
import _Date_fr
import _Date_hr
import _Date_it
import _Date_lt
import _Date_nb
import _Date_nl
@@ -41,10 +44,8 @@ import _Date_pl
import _Date_pt
import _Date_ru
import _Date_sk
import _Date_sr
import _Date_sv
import _Date_hr
import _Date_ca
import _Date_it
# Initialize global parser
try:
+1 -1
View File
@@ -68,7 +68,7 @@ import Errors
# DbLoader class
#
#-------------------------------------------------------------------------
class DbLoader:
class DbLoader(object):
def __init__(self, dbstate, uistate):
self.dbstate = dbstate
self.uistate = uistate
+11 -4
View File
@@ -3,6 +3,7 @@
#
# Copyright (C) 2000-2007 Donald N. Allingham
# Copyright (C) 2009 Brian G. Matherly
# Copyright (C) 2009 Gary Burton
#
# 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
@@ -101,7 +102,7 @@ STOCK_COL = 6
RCS_BUTTON = { True : _('_Extract'), False : _('_Archive') }
class CLIDbManager:
class CLIDbManager(object):
"""
Database manager without GTK functionality, allows users to create and
open databases
@@ -568,10 +569,14 @@ class DbManager(CLIDbManager):
continue
if node:
self.top.destroy()
del self.selection
del self.name_renderer
return (store.get_value(node, PATH_COL),
store.get_value(node, NAME_COL))
else:
self.top.destroy()
del self.selection
del self.name_renderer
return None
def __ask_to_break_lock(self, store, node):
@@ -1063,15 +1068,17 @@ def find_revisions(name):
def find_locker_name(dirpath):
"""
Opens the lock file if it exists, reads the contexts and returns
the contents, which should be like "Locked by USERNAME".
Opens the lock file if it exists, reads the contexts which is "USERNAME"
and returns the contents, with correct string before "USERNAME",
so the message can be printed with correct locale.
If a file is encountered with errors, we return 'Unknown'
This data is displayed in the time column of the manager
"""
try:
fname = os.path.join(dirpath, "lock")
ifile = open(fname)
last = ifile.read().strip()
username = ifile.read().strip()
last = _("Locked by %s") % username
ifile.close()
except (OSError, IOError):
last = _("Unknown")
+1 -1
View File
@@ -46,7 +46,7 @@ import Config
# NodeMap
#
#-------------------------------------------------------------------------
class NodeMap:
class NodeMap(object):
"""
Provide the Path to Iter mappings for a TreeView model. The implementation
provides a list of nodes and a dictionary of handles. The datalist provides
+1 -1
View File
@@ -107,7 +107,7 @@ class EventModel(BaseModel):
return u''
def column_type(self,data):
return str(gen.lib.EventType(data[COLUMN_TYPE]))
return unicode(gen.lib.EventType(data[COLUMN_TYPE]))
def column_id(self,data):
return unicode(data[COLUMN_ID])
+4 -1
View File
@@ -46,6 +46,7 @@ import GrampsLocale
import DateHandler
from BasicUtils import name_displayer
import gen.lib
from gen.lib import EventRoleType
import gen.utils
from _BaseModel import BaseModel
@@ -126,10 +127,12 @@ class FamilyModel(BaseModel):
return u""
def column_type(self, data):
return str(gen.lib.FamilyRelType(data[5]))
return unicode(gen.lib.FamilyRelType(data[5]))
def column_marriage(self, data):
erlist = [ gen.lib.EventRef().unserialize(d) for d in data[6] ]
erlist = [x for x in erlist if x.get_role()==EventRoleType.FAMILY or
x.get_role()==EventRoleType.PRIMARY]
event = gen.utils.marriage_from_eventref_list(self.db, erlist)
if event:
return DateHandler.displayer.display(event.date)
+9 -3
View File
@@ -40,7 +40,7 @@ import locale
#
#-------------------------------------------------------------------------
import logging
log = logging.getLogger(".")
_LOG = logging.getLogger(".gui.peoplemodel")
#-------------------------------------------------------------------------
#
@@ -68,7 +68,7 @@ from Lru import LRU
_CACHE_SIZE = 250
invalid_date_format = Config.get(Config.INVALID_DATE_FORMAT)
class NodeTreeMap:
class NodeTreeMap(object):
def __init__(self):
@@ -243,6 +243,7 @@ class PeopleModel(gtk.GenericTreeModel):
"""
Initialize the model building the initial data
"""
cput = time.clock()
gtk.GenericTreeModel.__init__(self)
self.db = db
@@ -291,6 +292,8 @@ class PeopleModel(gtk.GenericTreeModel):
data_filter = None
self.current_filter = data_filter
self.rebuild_data(data_filter, skip)
_LOG.debug(self.__class__.__name__ + ' __init__ ' +
str(time.clock() - cput) + ' sec')
def update_todo(self,client,cnxn_id,entry,data):
self.todo_color = Config.get(Config.TODO_COLOR)
@@ -305,9 +308,12 @@ class PeopleModel(gtk.GenericTreeModel):
"""
Convience function that calculates the new data and assigns it.
"""
cput = time.clock()
self.calculate_data(data_filter, skip)
self.assign_data()
self.current_filter = data_filter
_LOG.debug(self.__class__.__name__ + ' rebuild_data ' +
str(time.clock() - cput) + ' sec')
def _build_search_sub(self,dfilter, skip):
@@ -521,7 +527,7 @@ class PeopleModel(gtk.GenericTreeModel):
GrampsLocale.codeset)
def column_gender(self, data, node):
return PeopleModel._GENDER[data[PeopleModel._GENDER_COL]]
return unicode(PeopleModel._GENDER[data[PeopleModel._GENDER_COL]])
def column_birth_day(self, data, node):
try:
+1 -1
View File
@@ -104,7 +104,7 @@ class RepositoryModel(BaseModel):
return unicode(data[1])
def column_type(self,data):
return str(gen.lib.RepositoryType(data[2]))
return unicode(gen.lib.RepositoryType(data[2]))
def column_name(self,data):
return unicode(data[3])
+1 -1
View File
@@ -192,7 +192,7 @@ _RCT_BTM = '</menu></menu></menubar></ui>'
import RecentFiles
import os
class RecentDocsMenu:
class RecentDocsMenu(object):
def __init__(self, uistate, state, fileopen):
self.action_group = gtk.ActionGroup('RecentFiles')
self.active = DISABLED
+1 -2
View File
@@ -87,8 +87,7 @@ class BackRefList(EmbeddedList):
Method has signature of, and overrides create_buttons from _ButtonTab.py
"""
self.edit_btn = SimpleButton(gtk.STOCK_EDIT, self.edit_button_clicked)
self.tooltips = gtk.Tooltips()
self.tooltips.set_tip(self.edit_btn, _('Edit reference'))
self.edit_btn.set_tooltip_text(_('Edit reference'))
hbox = gtk.HBox()
hbox.set_spacing(6)
+7 -8
View File
@@ -98,7 +98,6 @@ class ButtonTab(GrampsTab):
"""
self.dirty_selection = False
GrampsTab.__init__(self,dbstate, uistate, track, name)
self.tooltips = gtk.Tooltips()
self.create_buttons(share_button, move_buttons, jump_button)
def create_buttons(self, share_button, move_buttons, jump_button):
@@ -113,22 +112,22 @@ class ButtonTab(GrampsTab):
self.edit_btn = SimpleButton(gtk.STOCK_EDIT, self.edit_button_clicked)
self.del_btn = SimpleButton(gtk.STOCK_REMOVE, self.del_button_clicked)
self.tooltips.set_tip(self.add_btn, self._MSG['add'])
self.tooltips.set_tip(self.edit_btn, self._MSG['edit'])
self.tooltips.set_tip(self.del_btn, self._MSG['del'])
self.add_btn.set_tooltip_text(self._MSG['add'])
self.edit_btn.set_tooltip_text(self._MSG['edit'])
self.del_btn.set_tooltip_text(self._MSG['del'])
if share_button:
self.share_btn = SimpleButton(gtk.STOCK_INDEX, self.share_button_clicked)
self.tooltips.set_tip(self.share_btn, self._MSG['share'])
self.share_btn.set_tooltip_text(self._MSG['share'])
else:
self.share_btn = None
if move_buttons:
self.up_btn = SimpleButton(gtk.STOCK_GO_UP, self.up_button_clicked)
self.tooltips.set_tip(self.up_btn, self._MSG['up'])
self.up_btn.set_tooltip_text(self._MSG['up'])
self.down_btn = SimpleButton(gtk.STOCK_GO_DOWN,
self.down_button_clicked)
self.tooltips.set_tip(self.down_btn, self._MSG['down'])
self.down_btn.set_tooltip_text(self._MSG['down'])
else:
self.up_btn = None
self.down_btn = None
@@ -146,7 +145,7 @@ class ButtonTab(GrampsTab):
if jump_button:
self.jump_btn = SimpleButton(gtk.STOCK_JUMP_TO, self.jump_button_clicked)
self.tooltips.set_tip(self.jump_btn, self._MSG['jump'])
self.jump_btn.set_tooltip_text(self._MSG['jump'])
else:
self.jump_btn = None
+6 -2
View File
@@ -240,11 +240,15 @@ class EmbeddedList(ButtonTab):
pass
def _find_row(self, x, y):
row = self.tree.get_path_at_pos(x, y)
row = self.tree.get_dest_row_at_pos(x, y)
if row is None:
return len(self.get_data())
else:
return row[0][0]
if row[1] in (gtk.TREE_VIEW_DROP_BEFORE,
gtk.TREE_VIEW_DROP_INTO_OR_BEFORE):
return row[0][0]
else:
return row[0][0]+1
def _handle_drag(self, row, obj):
self.get_data().insert(row, obj)
+6 -5
View File
@@ -2,6 +2,7 @@
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2000-2006 Donald N. Allingham
# Copyright (C) 2009 Gary Burton
#
# 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
@@ -344,11 +345,11 @@ class GalleryTab(ButtonTab):
dnd_types = [ self._DND_TYPE.target(), self._DND_EXTRA.target(),
DdTargets.MEDIAOBJ.target()]
self.iconlist.drag_dest_set(gtk.DEST_DEFAULT_ALL, dnd_types,
gtk.gdk.ACTION_COPY)
self.iconlist.drag_source_set(gtk.gdk.BUTTON1_MASK,
[self._DND_TYPE.target()],
gtk.gdk.ACTION_COPY)
self.iconlist.enable_model_drag_dest(dnd_types,
gtk.gdk.ACTION_COPY)
self.iconlist.enable_model_drag_source(gtk.gdk.BUTTON1_MASK,
[self._DND_TYPE.target()],
gtk.gdk.ACTION_COPY)
self.iconlist.connect('drag_data_get', self.drag_data_get)
if not self.dbstate.db.readonly:
self.iconlist.connect('drag_data_received', self.drag_data_received)
+1 -1
View File
@@ -39,7 +39,7 @@ class NoteModel(gtk.ListStore):
self.db = db
for handle in note_list:
note = self.db.get_note_from_handle(handle)
text = note.get().replace('\n', ' ')
text = unicode(note.get().replace('\n', ' '))
if len(text) > 80:
text = text[:80]+"..."
self.append(row=[
+2 -2
View File
@@ -160,11 +160,11 @@ class AddMediaObject(ManagedWindow.ManagedWindow):
filename = Utils.get_unicode_path(self.file_text.get_filename())
full_file = filename
pname = Utils.media_path(self.dbase)
pname = unicode(Utils.media_path(self.dbase))
if self.relpath.get_active():
filename = Utils.relative_path(filename, pname)
if os.path.exists(pname) == 0:
if not os.path.exists(pname):
msgstr = _("Cannot import %s")
msgstr2 = _("The filename supplied could not be found.")
ErrorDialog(msgstr % filename, msgstr2)
+10 -9
View File
@@ -37,6 +37,7 @@ _LOG = logging.getLogger(".objectentries")
#
#-------------------------------------------------------------------------
import gtk
from pango import ELLIPSIZE_END
#-------------------------------------------------------------------------
#
@@ -52,7 +53,7 @@ from DdTargets import DdTargets
from Errors import WindowActiveError
from Selectors import selector_factory
class ObjEntry:
class ObjEntry(object):
"""
Handles the selection of a existing or new Object. Supports Drag and Drop
to select the object.
@@ -86,7 +87,6 @@ class ObjEntry:
self.set_val = set_val
self.uistate = uistate
self.track = track
self.tooltips = gtk.Tooltips()
#connect drag and drop
self._init_dnd()
@@ -129,6 +129,7 @@ class ObjEntry:
self.label.set_use_markup(True)
else:
self.label.set_text(name)
self.label.set_ellipsize(ELLIPSIZE_END)
def _init_dnd(self):
"""inheriting objects must set this
@@ -217,25 +218,25 @@ class ObjEntry:
image.set_from_stock(gtk.STOCK_REMOVE, gtk.ICON_SIZE_BUTTON)
image.show()
self.share.add(image)
self.tooltips.set_tip(self.share, self.DEL_STR)
self.share.set_tooltip_text(self.DEL_STR)
if self.add_edt is not None:
image = gtk.Image()
image.set_from_stock(gtk.STOCK_EDIT, gtk.ICON_SIZE_BUTTON)
image.show()
self.add_edt.add(image)
self.tooltips.set_tip(self.add_edt, self.EDIT_STR)
self.add_edt.set_tooltip_text(self.EDIT_STR)
else:
image = gtk.Image()
image.set_from_stock(gtk.STOCK_INDEX, gtk.ICON_SIZE_BUTTON)
image.show()
self.share.add(image)
self.tooltips.set_tip(self.share, self.SHARE_STR)
self.share.set_tooltip_text(self.SHARE_STR)
if self.add_edt is not None:
image = gtk.Image()
image.set_from_stock(gtk.STOCK_ADD, gtk.ICON_SIZE_BUTTON)
image.show()
self.add_edt.add(image)
self.tooltips.set_tip(self.add_edt, self.ADD_STR)
self.add_edt.set_tooltip_text(self.ADD_STR)
class PlaceEntry(ObjEntry):
"""
@@ -382,10 +383,10 @@ class NoteEntry(ObjEntry):
def get_label(self, note):
txt = " ".join(note.get().split())
#String must be unicode for truncation to work for non ascii characters
txt = unicode(txt)
if len(txt) > 35:
txt = txt[:35]+"..."
else:
txt = txt
txt = txt[:35] + "..."
return "%s [%s]" % (txt, note.gramps_id)
def call_editor(self, obj=None):
+2 -2
View File
@@ -58,7 +58,7 @@ from widgets import (MonitoredEntry, PrivacyButton,
# Constants
#
#-------------------------------------------------------------------------
WIKI_HELP_PAGE = 'Gramps_3.0_Wiki_Manual_-_Entering_and_Editing_Data:_Detailed'
WIKI_HELP_PAGE = '%s_-_Entering_and_Editing_Data:_Detailed_-_part_2' % const.URL_MANUAL_PAGE
WIKI_HELP_SEC = _('manual|Editing_Information_About_Events')
#-------------------------------------------------------------------------
#
@@ -292,7 +292,7 @@ class EditFamilyEvent(EditEvent):
# Delete Query class
#
#-------------------------------------------------------------------------
class DelEventQuery:
class DelEventQuery(object):
def __init__(self, dbstate, uistate, event, person_list, family_list):
self.event = event
self.db = dbstate.db
+10 -16
View File
@@ -380,7 +380,7 @@ class ChildEmbedList(EmbeddedList):
else:
return ("", "")
class FastMaleFilter:
class FastMaleFilter(object):
def __init__(self, db):
self.db = db
@@ -389,7 +389,7 @@ class FastMaleFilter:
value = self.db.get_raw_person_data(handle)
return value[2] == gen.lib.Person.MALE
class FastFemaleFilter:
class FastFemaleFilter(object):
def __init__(self, db):
self.db = db
@@ -409,7 +409,6 @@ class EditFamily(EditPrimary):
def __init__(self, dbstate, uistate, track, family):
self.tooltips = gtk.Tooltips()
EditPrimary.__init__(self, dbstate, uistate, track,
family, dbstate.db.get_family_from_handle,
dbstate.db.get_family_from_gramps_id)
@@ -543,12 +542,10 @@ class EditFamily(EditPrimary):
self.mbutton_del = self.top.get_widget('mbutton_del')
self.mbutton_edit = self.top.get_widget('mbutton_edit')
self.tooltips.set_tip(self.mbutton_index,
_("Select a person as the mother"))
self.tooltips.set_tip(self.mbutton_add,
_("Add a new person as the mother"))
self.tooltips.set_tip(self.mbutton_del,
_("Remove the person as the mother"))
self.mbutton_index.set_tooltip_text(_("Select a person as the mother"))
self.mbutton_add.set_tooltip_text(_("Add a new person as the mother"))
self.mbutton_del.set_tooltip_text(_("Remove the person as the mother"))
self.mbutton_edit.connect('button-press-event', self.edit_mother)
self.mbutton_edit.connect('key-press-event', self.edit_mother)
@@ -561,12 +558,9 @@ class EditFamily(EditPrimary):
self.fbutton_del = self.top.get_widget('fbutton_del')
self.fbutton_edit = self.top.get_widget('fbutton_edit')
self.tooltips.set_tip(self.fbutton_index,
_("Select a person as the father"))
self.tooltips.set_tip(self.fbutton_add,
_("Add a new person as the father"))
self.tooltips.set_tip(self.fbutton_del,
_("Remove the person as the father"))
self.fbutton_index.set_tooltip_text(_("Select a person as the father"))
self.fbutton_add.set_tooltip_text(_("Add a new person as the father"))
self.fbutton_del.set_tooltip_text(_("Remove the person as the father"))
self.fbutton_edit.connect('button-press-event', self.edit_father)
self.fbutton_edit.connect('key-press-event', self.edit_father)
@@ -856,7 +850,7 @@ class EditFamily(EditPrimary):
if death and death.get_type() == gen.lib.EventType.BURIAL:
death_label.set_label(_("Burial:"))
self.tooltips.set_tip(btn_edit, _('Edit %s') % name)
btn_edit.set_tooltip_text(_('Edit %s') % name)
btn_index.hide()
btn_add.hide()
btn_del.show()
+1 -1
View File
@@ -301,7 +301,7 @@ class EditMedia(EditPrimary):
return cmp(cmp_obj.serialize(True)[1:],
self.obj.serialize()[1:]) != 0
class DeleteMediaQuery:
class DeleteMediaQuery(object):
def __init__(self, dbstate, uistate, media_handle, the_lists):
self.db = dbstate.db
+1 -1
View File
@@ -315,7 +315,7 @@ class EditNote(EditPrimary):
self.callback(self.obj.get_handle())
self.close()
class DeleteNoteQuery:
class DeleteNoteQuery(object):
def __init__(self, dbstate, uistate, note, the_lists):
self.note = note
self.db = dbstate.db
+1 -1
View File
@@ -301,7 +301,7 @@ class EditPlace(EditPrimary):
# DeletePlaceQuery
#
#-------------------------------------------------------------------------
class DeletePlaceQuery:
class DeletePlaceQuery(object):
def __init__(self, dbstate, uistate, place, person_list, family_list,
event_list):
+1 -1
View File
@@ -176,7 +176,7 @@ class EditRepository(EditPrimary):
def _cleanup_on_exit(self):
self.backref_tab.close()
class DelRepositoryQuery:
class DelRepositoryQuery(object):
def __init__(self, dbstate, uistate, repository, sources):
self.obj = repository
self.db = dbstate.db
+1 -1
View File
@@ -193,7 +193,7 @@ class EditSource(EditPrimary):
def _cleanup_on_exit(self):
self.backref_tab.close()
class DelSrcQuery:
class DelSrcQuery(object):
def __init__(self, dbstate, uistate, source, the_lists):
self.source = source
self.db = dbstate.db
+11 -12
View File
@@ -2,7 +2,7 @@
# Gramps - a GTK+/GNOME based genealogy program
#
# Copyright (C) 2004-2007 Donald N. Allingham
# Copyright (C) 2008 Brian G. Matherly
# Copyright (C) 2008-2009 Brian G. Matherly
#
# 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
@@ -29,6 +29,7 @@
import os
import sys
from gettext import gettext as _
from xml.sax.saxutils import escape
#-------------------------------------------------------------------------
#
@@ -118,7 +119,9 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
self.top_title = _("Export Assistant")
ManagedWindow.ManagedWindow.__init__(self,uistate,[],
self.__class__)
self.set_window(self, None, self.top_title, isWindow=True)
#set_window is present in both parent classes
ManagedWindow.ManagedWindow.set_window(self, self, None,
self.top_title, isWindow=True)
#set up callback method for the export plugins
self.callback = self.pulse_progressbar
@@ -196,8 +199,6 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
table.set_row_spacings(6)
table.set_col_spacings(6)
tip = gtk.Tooltips()
group = None
recent_type = Config.get(Config.RECENT_EXPORT_TYPE)
@@ -206,11 +207,11 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
description= self.__exporters[ix].get_description()
button = gtk.RadioButton(group,title)
button.set_tooltip_text(description)
if not group:
group = button
self.format_buttons.append(button)
table.attach(button,0,2,2*ix,2*ix+1)
tip.set_tip(button,description)
if ix == recent_type :
button.set_active(True)
@@ -439,15 +440,14 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
#Allow for exotic error: file is still not correct
self.check_fileselect(self.chooser, show=False)
if self.get_page_complete(self.chooser) :
filename = unicode(self.chooser.get_filename(),
sys.getfilesystemencoding())
filename = Utils.get_unicode_path(self.chooser.get_filename())
name = os.path.split(filename)[1]
folder = os.path.split(filename)[0]
confirm_text = _(
'The data will be saved as follows:\n\n'
'Format:\t%s\nName:\t%s\nFolder:\t%s\n\n'
'Press Apply to proceed, Back to revisit '
'your options, or Cancel to abort') % (format, name, folder)
'your options, or Cancel to abort') % (format.replace("_",""), name, folder)
self.set_page_complete(page, True)
else :
confirm_text = _(
@@ -457,7 +457,7 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
)
self.set_page_complete(page, False)
page.set_label(confirm_text)
page.set_label(escape(confirm_text))
elif self.get_page_type(page) == gtk.ASSISTANT_PAGE_SUMMARY :
# The summary page
@@ -489,7 +489,7 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
'Note: your currently opened database is safe. '
'It was only '
'a copy of your data that failed to save.')
self.labelsum.set_label(conclusion_text)
self.labelsum.set_label(escape(conclusion_text))
self.set_page_title(page, conclusion_title)
self.set_page_complete(page, True)
else :
@@ -563,8 +563,7 @@ class ExportAssistant(gtk.Assistant, ManagedWindow.ManagedWindow) :
Depending on the success status, set the text for the final page.
"""
filename = unicode(self.chooser.get_filename(),
sys.getfilesystemencoding())
filename = Utils.get_unicode_path(self.chooser.get_filename())
Config.set(Config.RECENT_EXPORT_DIR, os.path.split(filename)[0])
ix = self.get_selected_format_index()
Config.set(Config.RECENT_EXPORT_TYPE, ix)
+1 -1
View File
@@ -46,7 +46,7 @@ from Filters import GenericFilter, Rules
# WriterOptionBox
#
#-------------------------------------------------------------------------
class WriterOptionBox:
class WriterOptionBox(object):
"""
Create a VBox with the option widgets and define methods to retrieve
the options.
+1 -1
View File
@@ -55,7 +55,7 @@ from TransUtils import sgettext as _
# Constants
#
#-------------------------------------------------------------------------
WIKI_HELP_PAGE = 'Gramps_3.0_Wiki_Manual_-_Filters'
WIKI_HELP_PAGE = WIKI_HELP_PAGE = '%s_-_Filters' % const.URL_MANUAL_PAGE
#-------------------------------------------------------------------------
#
+53 -48
View File
@@ -214,44 +214,6 @@ class MyLesserEqualGreater(gtk.ComboBox):
else:
self.set_active(self.clist.index('equal to'))
#-------------------------------------------------------------------------
#
# MySource - Combo box with list of sources with a standard interface
#
#-------------------------------------------------------------------------
class MySource(gtk.ComboBox):
def __init__(self, db):
gtk.ComboBox.__init__(self)
self.db = db
store = gtk.ListStore(gobject.TYPE_STRING)
self.set_model(store)
cell = gtk.CellRendererText()
self.pack_start(cell, True)
self.add_attribute(cell, 'text', 0)
self.slist = []
for src_handle in self.db.get_source_handles(sort_handles=True):
src = self.db.get_source_from_handle(src_handle)
self.slist.append(src.get_gramps_id())
title = src.get_title()
if len(title) > 44:
title = title[:40] + "..."
store.append(row=["%s [%s]" % (title, src.get_gramps_id())])
self.set_active(0)
self.show()
def get_text(self):
active = self.get_active()
if active < 0:
return ""
return self.slist[active]
def set_text(self, val):
if val in self.slist:
self.set_active(self.slist.index(val))
#-------------------------------------------------------------------------
#
# MyPlaces - AutoCombo text entry with list of places attached. Provides
@@ -272,6 +234,8 @@ class MyPlaces(gtk.Entry):
#
#-------------------------------------------------------------------------
class MyID(gtk.HBox):
_invalid_id_txt = _('Not a valid ID')
_empty_id_txt = _invalid_id_txt
obj_name = {
'Person' : _('Person'),
@@ -300,10 +264,8 @@ class MyID(gtk.HBox):
self.button.show()
self.pack_start(self.entry)
self.add(self.button)
self.tooltips = gtk.Tooltips()
self.tooltips.set_tip(self.button, _('Select %s from a list')
% self.obj_name[namespace])
self.tooltips.enable()
self.button.set_tooltip_text(_('Select %s from a list')
% self.obj_name[namespace])
self.show()
self.set_text('')
@@ -348,13 +310,30 @@ class MyID(gtk.HBox):
return name
def set_text(self, val):
try:
name = self.name_from_gramps_id(val)
self.tooltips.set_tip(self.entry, name)
except AttributeError:
self.tooltips.set_tip(self.entry, _('Not a valid ID'))
if not val:
self.entry.set_tooltip_text(self._empty_id_txt)
else:
try:
name = self.name_from_gramps_id(val)
self.entry.set_tooltip_text(name)
except AttributeError:
self.entry.set_tooltip_text(self._invalid_id_txt)
self.entry.set_text(val)
#-------------------------------------------------------------------------
#
# MySource - select ID of sources with a standard interface
#
#-------------------------------------------------------------------------
class MySource(MyID):
_empty_id_txt = _('Give or select a source ID, leave empty to find objects'
' with no source.')
def __init__(self, dbstate, uistate, track):
MyID.__init__(self, dbstate, uistate, track, namespace='Source')
self.entry.set_tooltip_text(self._empty_id_txt)
#-------------------------------------------------------------------------
#
#
@@ -486,7 +465,7 @@ class EditRule(ManagedWindow.ManagedWindow):
t = MyID(self.dbstate, self.uistate, self.track,
self.namespace)
elif v == _('Source ID:'):
t = MySource(self.db)
t = MySource(self.dbstate, self.uistate, self.track)
elif v == _('Filter name:'):
t = MyFilters(self.filterdb.get_filters(self.namespace),
self.filter_name)
@@ -578,12 +557,38 @@ class EditRule(ManagedWindow.ManagedWindow):
tlist[i].set_text(r[i])
self.selection.connect('changed', self.on_node_selected)
self.rname.connect('button-press-event', self._button_press)
self.rname.connect('key-press-event', self._key_press)
self.get_widget('ok').connect('clicked', self.rule_ok)
self.get_widget('cancel').connect('clicked', self.close_window)
self.get_widget('help').connect('clicked', self.on_help_clicked)
self.show()
def _button_press(self, obj, event):
if event.type == gtk.gdk._2BUTTON_PRESS and event.button == 1:
return self.expand_collapse()
def _key_press(self, obj, event):
if not event.state or event.state in (gtk.gdk.MOD2_MASK, ):
if event.keyval in (gtk.keysyms.Return, gtk.keysyms.KP_Enter):
return self.expand_collapse()
return False
def expand_collapse(self):
"""
Expand or collapse the selected parent name node.
Return True if change done, False otherwise
"""
store, paths = self.selection.get_selected_rows()
if paths and len(paths[0]) == 1 :
if self.rname.row_expanded(paths[0]):
self.rname.collapse_row(paths[0])
else:
self.rname.expand_row(paths[0], 0)
return True
return False
def on_help_clicked(self, obj):
"""
Display the relevant portion of GRAMPS manual.
+2
View File
@@ -133,6 +133,8 @@ class ShowResults(ManagedWindow.ManagedWindow):
elif self.namespace == 'Note':
note = self.db.get_note_from_handle(handle)
name = note.get().replace('\n', ' ')
#String must be unicode for truncation to work for non ascii characters
name = unicode(name)
if len(name) > 80:
name = name[:80]+"..."
gid = note.get_gramps_id()
+3 -3
View File
@@ -18,9 +18,9 @@ from Filters.Rules._ChangedSinceBase import ChangedSinceBase
#
#-------------------------------------------------------------------------
class ChangedSince(ChangedSinceBase):
"""Rule that checks for an event changed since a specific time."""
"""Rule that checks for an event changed after a specific time."""
name = _('Events changed before <date time>')
description = _("Matches event records changed before a specified "
name = _('Events changed after <date time>')
description = _("Matches event records changed after a specified "
"date/time (yyyy-mm-dd hh:mm:ss) or in the range, if a second "
"date/time is given")
+2 -2
View File
@@ -20,7 +20,7 @@ from Filters.Rules._ChangedSinceBase import ChangedSinceBase
class ChangedSince(ChangedSinceBase):
"""Rule that checks for families changed since a specific time."""
name = _('Families changed before <date time>')
description = _("Matches family records changed before a specified "
name = _('Families changed after <date time>')
description = _("Matches family records changed after a specified "
"date-time (yyyy-mm-dd hh:mm:ss) or in the range, if a second "
"date-time is given")

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