Hello community, here is the log from the commit of package cherrytree for openSUSE:Factory checked in at 2012-02-27 18:33:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cherrytree (Old) and /work/SRC/openSUSE:Factory/.cherrytree.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "cherrytree", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/cherrytree/cherrytree.changes 2012-02-06 15:54:35.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.cherrytree.new/cherrytree.changes 2012-02-27 18:34:29.000000000 +0100 @@ -1,0 +2,6 @@ +Fri Feb 24 12:27:46 UTC 2012 - vuntz@opensuse.org + +- Update to version 0.25.4: + + Bug fixes. + +------------------------------------------------------------------- @@ -5,6 +11 @@ - + The limit of undoable steps per node is now configurable. - + Implemented a dialog to iterate graphical way the find/replace. - + Implemented the insertion of timestamps. Format is configurable - through preferences dialog. - + Fixed some bugs/bad behaviors related to system tray, nodes - drag n drop, links to files dialog and others. + + Bug fixes. Old: ---- cherrytree-0.25.3.tar.gz New: ---- cherrytree-0.25.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cherrytree.spec ++++++ --- /var/tmp/diff_new_pack.fdTYQy/_old 2012-02-27 18:34:30.000000000 +0100 +++ /var/tmp/diff_new_pack.fdTYQy/_new 2012-02-27 18:34:30.000000000 +0100 @@ -17,8 +17,8 @@ Name: cherrytree -Version: 0.25.3 -Release: 1 +Version: 0.25.4 +Release: 0 Summary: A hierarchical note taking application License: GPL-2.0+ Group: Productivity/Office/Other ++++++ cherrytree-0.25.3.tar.gz -> cherrytree-0.25.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/debian/changelog new/cherrytree-0.25.4/debian/changelog --- old/cherrytree-0.25.3/debian/changelog 2012-02-03 13:39:01.000000000 +0100 +++ new/cherrytree-0.25.4/debian/changelog 2012-02-22 23:58:49.000000000 +0100 @@ -1,4 +1,4 @@ -cherrytree (0.25.3-1) stable; urgency=low +cherrytree (0.25.4-1) stable; urgency=low * Fellow upstream. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/debian/debhelper.log new/cherrytree-0.25.4/debian/debhelper.log --- old/cherrytree-0.25.3/debian/debhelper.log 2012-02-03 14:00:28.000000000 +0100 +++ new/cherrytree-0.25.4/debian/debhelper.log 2012-02-24 09:29:39.000000000 +0100 @@ -7,6 +7,67 @@ dh_link dh_compress dh_fixperms +dh_pycentral +dh_installdeb +dh_gencontrol +dh_md5sums +dh_builddeb +dh_prep +dh_installdirs +dh_installchangelogs +dh_installdocs +dh_installexamples +dh_installman +dh_link +dh_compress +dh_fixperms +dh_pycentral +dh_installdeb +dh_gencontrol +dh_md5sums +dh_builddeb +dh_prep +dh_installdirs +dh_installchangelogs +dh_installdocs +dh_installexamples +dh_installman +dh_link +dh_compress +dh_fixperms +dh_pycentral +dh_installdeb +dh_gencontrol +dh_md5sums +dh_builddeb +dh_prep +dh_installdirs +dh_installchangelogs +dh_installdocs +dh_installexamples +dh_installman +dh_link +dh_compress +dh_fixperms +dh_pycentral +dh_installdeb +dh_gencontrol +dh_md5sums +dh_builddeb +dh_prep +dh_installdirs +dh_installchangelogs +dh_installdocs +dh_installexamples +dh_installman +dh_link +dh_compress +dh_fixperms +dh_pycentral +dh_installdeb +dh_gencontrol +dh_md5sums +dh_builddeb dh_prep dh_installdirs dh_installchangelogs Files old/cherrytree-0.25.3/linux/cherrytree.1.gz and new/cherrytree-0.25.4/linux/cherrytree.1.gz differ Files old/cherrytree-0.25.3/locale/cs/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/cs/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/de/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/de/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/es/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/es/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/fr/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/fr/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/it/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/it/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/pl/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/pl/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/ru/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/ru/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/locale/uk/LC_MESSAGES/cherrytree.mo and new/cherrytree-0.25.4/locale/uk/LC_MESSAGES/cherrytree.mo differ Files old/cherrytree-0.25.3/modules/clipboard.pyc and new/cherrytree-0.25.4/modules/clipboard.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/codeboxes.py new/cherrytree-0.25.4/modules/codeboxes.py --- old/cherrytree-0.25.3/modules/codeboxes.py 2012-02-03 10:40:15.000000000 +0100 +++ new/cherrytree-0.25.4/modules/codeboxes.py 2012-02-22 23:58:49.000000000 +0100 @@ -167,7 +167,10 @@ def codebox_change_properties(self, action): """Change CodeBox Properties""" - self.dad.user_active = False + if self.dad.user_active: + self.dad.user_active = False + user_active_restore = True + else: user_active_restore = False self.dad.glade.spinbutton_codebox_width.set_value(self.curr_codebox_anchor.frame_width) self.dad.glade.spinbutton_codebox_height.set_value(self.curr_codebox_anchor.frame_height) self.dad.glade.radiobutton_codebox_pixels.set_active(self.curr_codebox_anchor.width_in_pixels) @@ -176,7 +179,7 @@ self.dad.glade.checkbutton_codebox_linenumbers.set_active(self.curr_codebox_anchor.show_line_numbers) self.dad.glade.combobox_prog_lang_codebox.set_active_iter(self.dad.get_combobox_prog_lang_iter(self.curr_codebox_anchor.syntax_highlighting)) self.dad.glade.codeboxhandledialog.set_title(_("Edit CodeBox")) - self.dad.user_active = True + if user_active_restore: self.dad.user_active = True response = self.dad.glade.codeboxhandledialog.run() self.dad.glade.codeboxhandledialog.hide() if response != 1: return # the user aborted the operation Files old/cherrytree-0.25.3/modules/codeboxes.pyc and new/cherrytree-0.25.4/modules/codeboxes.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/config.py new/cherrytree-0.25.4/modules/config.py --- old/cherrytree-0.25.3/modules/config.py 2012-01-16 12:05:22.000000000 +0100 +++ new/cherrytree-0.25.4/modules/config.py 2012-02-22 23:58:49.000000000 +0100 @@ -177,7 +177,10 @@ def config_file_apply(inst): """Apply the Preferences from Config File""" - inst.user_active = False + if inst.user_active: + inst.user_active = False + user_active_restore = True + else: user_active_restore = False # treeview inst.hpaned.set_property('position', inst.hpaned_pos) inst.header_node_name_label.set_property("visible", inst.show_node_name_label) @@ -244,7 +247,7 @@ inst.ui.get_widget("/ToolBar").set_style(gtk.TOOLBAR_ICONS) inst.ui.get_widget("/ToolBar").set_property("icon-size", ICONS_SIZE[inst.toolbar_icon_size]) if inst.autosave[0]: inst.autosave_timer_start() - inst.user_active = True + if user_active_restore: inst.user_active = True def config_file_save(inst): """Save the Preferences to Config File""" Files old/cherrytree-0.25.3/modules/config.pyc and new/cherrytree-0.25.4/modules/config.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/cons.py new/cherrytree-0.25.4/modules/cons.py --- old/cherrytree-0.25.3/modules/cons.py 2012-02-03 13:30:45.000000000 +0100 +++ new/cherrytree-0.25.4/modules/cons.py 2012-02-23 23:11:45.000000000 +0100 @@ -22,7 +22,7 @@ import os, sys -VERSION = "0.25.3" +VERSION = "0.25.4" APP_NAME = "cherrytree" NEWER_VERSION_URL = "http://www.giuspen.com/software/version_cherrytree" if sys.platform[0:3] == "win": @@ -735,3 +735,234 @@ ("gtk-go-down", _("Increase CodeBox Height"), "<control>comma", _("Increase the Height of the CodeBox"), inst.codebox_increase_height), ("gtk-go-up", _("Decrease CodeBox Height"), "<control><alt>comma", _("Decrease the Height of the CodeBox"), inst.codebox_decrease_height), ] + +# Original from Dieter Verfaillie https://github.com/dieterv/elib.intl/blob/master/lib/elib/intl/__init__.py +# List of ISO 639-1 and ISO 639-2 language codes: http://www.loc.gov/standards/iso639-2/ +# List of known lcid's: http://www.microsoft.com/globaldev/reference/lcid-all.mspx +# List of known MUI packs: http://www.microsoft.com/globaldev/reference/win2k/setup/Langid.mspx +MICROSOFT_WINDOWS_LCID_to_ISO_LANG =\ +{ + 1078: 'af', # Afrikaans - South Africa + 1052: 'sq', # Albanian - Albania + 1118: 'am', # Amharic - Ethiopia + 1025: 'ar', # Arabic - Saudi Arabia + 5121: 'ar', # Arabic - Algeria + 15361: 'ar', # Arabic - Bahrain + 3073: 'ar', # Arabic - Egypt + 2049: 'ar', # Arabic - Iraq + 11265: 'ar', # Arabic - Jordan + 13313: 'ar', # Arabic - Kuwait + 12289: 'ar', # Arabic - Lebanon + 4097: 'ar', # Arabic - Libya + 6145: 'ar', # Arabic - Morocco + 8193: 'ar', # Arabic - Oman + 16385: 'ar', # Arabic - Qatar + 10241: 'ar', # Arabic - Syria + 7169: 'ar', # Arabic - Tunisia + 14337: 'ar', # Arabic - U.A.E. + 9217: 'ar', # Arabic - Yemen + 1067: 'hy', # Armenian - Armenia + 1101: 'as', # Assamese + 2092: 'az', # Azeri (Cyrillic) + 1068: 'az', # Azeri (Latin) + 1069: 'eu', # Basque + 1059: 'be', # Belarusian + 1093: 'bn', # Bengali (India) + 2117: 'bn', # Bengali (Bangladesh) + 5146: 'bs', # Bosnian (Bosnia/Herzegovina) + 1026: 'bg', # Bulgarian + 1109: 'my', # Burmese + 1027: 'ca', # Catalan + 1116: 'chr', # Cherokee - United States + 2052: 'zh', # Chinese - People's Republic of China + 4100: 'zh', # Chinese - Singapore + 1028: 'zh', # Chinese - Taiwan + 3076: 'zh', # Chinese - Hong Kong SAR + 5124: 'zh', # Chinese - Macao SAR + 1050: 'hr', # Croatian + 4122: 'hr', # Croatian (Bosnia/Herzegovina) + 1029: 'cs', # Czech + 1030: 'da', # Danish + 1125: 'dv', # Divehi + 1043: 'nl', # Dutch - Netherlands + 2067: 'nl', # Dutch - Belgium + 1126: 'bin', # Edo + 1033: 'en', # English - United States + 2057: 'en', # English - United Kingdom + 3081: 'en', # English - Australia + 10249: 'en', # English - Belize + 4105: 'en', # English - Canada + 9225: 'en', # English - Caribbean + 15369: 'en', # English - Hong Kong SAR + 16393: 'en', # English - India + 14345: 'en', # English - Indonesia + 6153: 'en', # English - Ireland + 8201: 'en', # English - Jamaica + 17417: 'en', # English - Malaysia + 5129: 'en', # English - New Zealand + 13321: 'en', # English - Philippines + 18441: 'en', # English - Singapore + 7177: 'en', # English - South Africa + 11273: 'en', # English - Trinidad + 12297: 'en', # English - Zimbabwe + 1061: 'et', # Estonian + 1080: 'fo', # Faroese + 1065: None, # TODO: Farsi + 1124: 'fil', # Filipino + 1035: 'fi', # Finnish + 1036: 'fr', # French - France + 2060: 'fr', # French - Belgium + 11276: 'fr', # French - Cameroon + 3084: 'fr', # French - Canada + 9228: 'fr', # French - Democratic Rep. of Congo + 12300: 'fr', # French - Cote d'Ivoire + 15372: 'fr', # French - Haiti + 5132: 'fr', # French - Luxembourg + 13324: 'fr', # French - Mali + 6156: 'fr', # French - Monaco + 14348: 'fr', # French - Morocco + 58380: 'fr', # French - North Africa + 8204: 'fr', # French - Reunion + 10252: 'fr', # French - Senegal + 4108: 'fr', # French - Switzerland + 7180: 'fr', # French - West Indies + 1122: 'fy', # Frisian - Netherlands + 1127: None, # TODO: Fulfulde - Nigeria + 1071: 'mk', # FYRO Macedonian + 2108: 'ga', # Gaelic (Ireland) + 1084: 'gd', # Gaelic (Scotland) + 1110: 'gl', # Galician + 1079: 'ka', # Georgian + 1031: 'de', # German - Germany + 3079: 'de', # German - Austria + 5127: 'de', # German - Liechtenstein + 4103: 'de', # German - Luxembourg + 2055: 'de', # German - Switzerland + 1032: 'el', # Greek + 1140: 'gn', # Guarani - Paraguay + 1095: 'gu', # Gujarati + 1128: 'ha', # Hausa - Nigeria + 1141: 'haw', # Hawaiian - United States + 1037: 'he', # Hebrew + 1081: 'hi', # Hindi + 1038: 'hu', # Hungarian + 1129: None, # TODO: Ibibio - Nigeria + 1039: 'is', # Icelandic + 1136: 'ig', # Igbo - Nigeria + 1057: 'id', # Indonesian + 1117: 'iu', # Inuktitut + 1040: 'it', # Italian - Italy + 2064: 'it', # Italian - Switzerland + 1041: 'ja', # Japanese + 1099: 'kn', # Kannada + 1137: 'kr', # Kanuri - Nigeria + 2144: 'ks', # Kashmiri + 1120: 'ks', # Kashmiri (Arabic) + 1087: 'kk', # Kazakh + 1107: 'km', # Khmer + 1111: 'kok', # Konkani + 1042: 'ko', # Korean + 1088: 'ky', # Kyrgyz (Cyrillic) + 1108: 'lo', # Lao + 1142: 'la', # Latin + 1062: 'lv', # Latvian + 1063: 'lt', # Lithuanian + 1086: 'ms', # Malay - Malaysia + 2110: 'ms', # Malay - Brunei Darussalam + 1100: 'ml', # Malayalam + 1082: 'mt', # Maltese + 1112: 'mni', # Manipuri + 1153: 'mi', # Maori - New Zealand + 1102: 'mr', # Marathi + 1104: 'mn', # Mongolian (Cyrillic) + 2128: 'mn', # Mongolian (Mongolian) + 1121: 'ne', # Nepali + 2145: 'ne', # Nepali - India + 1044: 'no', # Norwegian (Bokmal) + 2068: 'no', # Norwegian (Nynorsk) + 1096: 'or', # Oriya + 1138: 'om', # Oromo + 1145: 'pap', # Papiamentu + 1123: 'ps', # Pashto + 1045: 'pl', # Polish + 1046: 'pt', # Portuguese - Brazil + 2070: 'pt', # Portuguese - Portugal + 1094: 'pa', # Punjabi + 2118: 'pa', # Punjabi (Pakistan) + 1131: 'qu', # Quecha - Bolivia + 2155: 'qu', # Quecha - Ecuador + 3179: 'qu', # Quecha - Peru + 1047: 'rm', # Rhaeto-Romanic + 1048: 'ro', # Romanian + 2072: 'ro', # Romanian - Moldava + 1049: 'ru', # Russian + 2073: 'ru', # Russian - Moldava + 1083: 'se', # Sami (Lappish) + 1103: 'sa', # Sanskrit + 1132: 'nso', # Sepedi + 3098: 'sr', # Serbian (Cyrillic) + 2074: 'sr', # Serbian (Latin) + 1113: 'sd', # Sindhi - India + 2137: 'sd', # Sindhi - Pakistan + 1115: 'si', # Sinhalese - Sri Lanka + 1051: 'sk', # Slovak + 1060: 'sl', # Slovenian + 1143: 'so', # Somali + 1070: 'wen', # Sorbian + 3082: 'es', # Spanish - Spain (Modern Sort) + 1034: 'es', # Spanish - Spain (Traditional Sort) + 11274: 'es', # Spanish - Argentina + 16394: 'es', # Spanish - Bolivia + 13322: 'es', # Spanish - Chile + 9226: 'es', # Spanish - Colombia + 5130: 'es', # Spanish - Costa Rica + 7178: 'es', # Spanish - Dominican Republic + 12298: 'es', # Spanish - Ecuador + 17418: 'es', # Spanish - El Salvador + 4106: 'es', # Spanish - Guatemala + 18442: 'es', # Spanish - Honduras + 58378: 'es', # Spanish - Latin America + 2058: 'es', # Spanish - Mexico + 19466: 'es', # Spanish - Nicaragua + 6154: 'es', # Spanish - Panama + 15370: 'es', # Spanish - Paraguay + 10250: 'es', # Spanish - Peru + 20490: 'es', # Spanish - Puerto Rico + 21514: 'es', # Spanish - United States + 14346: 'es', # Spanish - Uruguay + 8202: 'es', # Spanish - Venezuela + 1072: None, # TODO: Sutu + 1089: 'sw', # Swahili + 1053: 'sv', # Swedish + 2077: 'sv', # Swedish - Finland + 1114: 'syr', # Syriac + 1064: 'tg', # Tajik + 1119: None, # TODO: Tamazight (Arabic) + 2143: None, # TODO: Tamazight (Latin) + 1097: 'ta', # Tamil + 1092: 'tt', # Tatar + 1098: 'te', # Telugu + 1054: 'th', # Thai + 2129: 'bo', # Tibetan - Bhutan + 1105: 'bo', # Tibetan - People's Republic of China + 2163: 'ti', # Tigrigna - Eritrea + 1139: 'ti', # Tigrigna - Ethiopia + 1073: 'ts', # Tsonga + 1074: 'tn', # Tswana + 1055: 'tr', # Turkish + 1090: 'tk', # Turkmen + 1152: 'ug', # Uighur - China + 1058: 'uk', # Ukrainian + 1056: 'ur', # Urdu + 2080: 'ur', # Urdu - India + 2115: 'uz', # Uzbek (Cyrillic) + 1091: 'uz', # Uzbek (Latin) + 1075: 've', # Venda + 1066: 'vi', # Vietnamese + 1106: 'cy', # Welsh + 1076: 'xh', # Xhosa + 1144: 'ii', # Yi + 1085: 'yi', # Yiddish + 1130: 'yo', # Yoruba + 1077: 'zu' # Zulu +} Files old/cherrytree-0.25.3/modules/cons.pyc and new/cherrytree-0.25.4/modules/cons.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/core.py new/cherrytree-0.25.4/modules/core.py --- old/cherrytree-0.25.3/modules/core.py 2012-02-03 13:37:32.000000000 +0100 +++ new/cherrytree-0.25.4/modules/core.py 2012-02-22 23:58:49.000000000 +0100 @@ -715,7 +715,10 @@ def nodes_add_from_cherrytree_data(self, cherrytree_string, cherrytree_db=None): """Adds Nodes to the Tree Parsing a CherryTree XML String / CherryTree DB""" - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False file_loaded = False former_node = self.curr_tree_iter # we'll restore after the import tree_father = None # init the value of the imported nodes father @@ -743,7 +746,7 @@ if radiobutton_curr_node.get_active(): tree_father = self.curr_tree_iter dialog.destroy() if response != gtk.RESPONSE_ACCEPT: - self.user_active = True + if user_active_restore: self.user_active = True return try: if not cherrytree_db: @@ -783,7 +786,7 @@ self.curr_buffer.place_cursor(self.curr_buffer.get_iter_at_offset(self.nodes_cursor_pos[self.treestore[former_node][3]])) self.sourceview.scroll_to_mark(self.curr_buffer.get_insert(), 0.3) else: support.dialog_error('Error Parsing the CherryTree File', self.window) - self.user_active = True + if user_active_restore: self.user_active = True def nodes_expand_all(self, action): """Expand all Tree Nodes""" @@ -867,6 +870,8 @@ self.autosave[1] = new_autosave_value if self.autosave_timer_id != None: self.autosave_timer_stop() if self.autosave[0] and self.autosave_timer_id == None: self.autosave_timer_start() + # update config file (for people that do not close the app but just logout/shutdown) + config.config_file_save(self) def autosave_timer_start(self): """Start Autosave Timer""" @@ -1348,7 +1353,10 @@ elif self.db == None: return # no error exit if document_loaded_ok: document_loaded_ok = False - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False file_loaded = False if self.filetype in ["d", "z"]: # xml @@ -1365,7 +1373,7 @@ support.add_recent_document(self, filepath) support.set_bookmarks_menu_items(self) self.update_window_save_not_needed() - self.user_active = True + if user_active_restore: self.user_active = True if not document_loaded_ok: support.dialog_error(_('"%s" is Not a CherryTree Document') % filepath, self.window) self.file_name = "" @@ -2284,14 +2292,17 @@ def switch_buffer_text_source(self, text_buffer, tree_iter, new_syntax_highl): """Switch TextBuffer -> SourceBuffer or SourceBuffer -> TextBuffer""" - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False node_text = text_buffer.get_text(*text_buffer.get_bounds()) self.treestore[tree_iter][2] = self.buffer_create(new_syntax_highl) self.treestore[tree_iter][2].set_text(node_text) self.sourceview.set_buffer(self.treestore[tree_iter][2]) self.treestore[tree_iter][2].connect('modified-changed', self.on_modified_changed) self.sourceview_set_properties(tree_iter, new_syntax_highl) - self.user_active = True + if user_active_restore: self.user_active = True self.ctdb_handler.pending_edit_db_node_buff(self.treestore[tree_iter][3]) def on_node_changed(self, *args): @@ -2300,9 +2311,10 @@ if new_iter == None: return # no node selected elif self.curr_tree_iter != None and model[new_iter][3] == model[self.curr_tree_iter][3]: return # if i click on an already selected node - if self.curr_tree_iter != None: - self.nodes_cursor_pos[model[self.curr_tree_iter][3]] = self.curr_buffer.get_property('cursor-position') - if self.curr_buffer.get_modified() == True: + if self.curr_tree_iter: + if self.user_active: + self.nodes_cursor_pos[model[self.curr_tree_iter][3]] = self.curr_buffer.get_property('cursor-position') + if self.curr_buffer.get_modified(): self.file_update = True self.curr_buffer.set_modified(False) self.state_machine.update_state(self.treestore[self.curr_tree_iter][3]) @@ -2485,7 +2497,10 @@ step_back = self.state_machine.requested_previous_state(self.treestore[self.curr_tree_iter][3]) # step_back is [ [rich_text, pixbuf_table_vector, cursor_position],... ] if step_back != None: - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False self.xml_handler.dom_to_buffer(self.curr_buffer, step_back[0]) pixbuf_table_vector = step_back[1] # pixbuf_table_vector is [ [ "pixbuf"/"table"/"codebox", [offset, pixbuf, alignment] ],... ] @@ -2498,7 +2513,7 @@ self.objects_buffer_refresh() self.curr_buffer.place_cursor(self.curr_buffer.get_iter_at_offset(step_back[2])) self.sourceview.scroll_to_mark(self.curr_buffer.get_insert(), 0.3) - self.user_active = True + if user_active_restore: self.user_active = True self.update_window_save_needed("nbuf") elif self.curr_buffer.can_undo(): self.curr_buffer.undo() @@ -2512,7 +2527,10 @@ step_ahead = self.state_machine.requested_subsequent_state(self.treestore[self.curr_tree_iter][3]) # step_ahead is [ [rich_text, pixbuf_table_vector, cursor_position],... ] if step_ahead != None: - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False self.xml_handler.dom_to_buffer(self.curr_buffer, step_ahead[0]) pixbuf_table_vector = step_ahead[1] # pixbuf_table_vector is [ [ "pixbuf"/"table", [offset, pixbuf, alignment] ],... ] @@ -2525,7 +2543,7 @@ self.objects_buffer_refresh() self.curr_buffer.place_cursor(self.curr_buffer.get_iter_at_offset(step_ahead[2])) self.sourceview.scroll_to_mark(self.curr_buffer.get_insert(), 0.3) - self.user_active = True + if user_active_restore: self.user_active = True self.update_window_save_needed("nbuf") elif self.curr_buffer.can_redo(): self.curr_buffer.redo() @@ -2538,7 +2556,10 @@ # refresh is [ [rich_text, pixbuf_table_vector, cursor_position],... ] pixbuf_table_vector = refresh[1] if len(pixbuf_table_vector) > 0: - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False self.curr_buffer.set_text("") self.xml_handler.dom_to_buffer(self.curr_buffer, refresh[0]) for element in pixbuf_table_vector: @@ -2546,7 +2567,7 @@ elif element[0] == "table": self.state_machine.load_embedded_table_element(self.curr_buffer, element[1]) elif element[0] == "codebox": self.state_machine.load_embedded_codebox_element(self.curr_buffer, element[1]) self.curr_buffer.set_modified(False) - self.user_active = True + if user_active_restore: self.user_active = True def on_text_insertion(self, sourcebuffer, text_iter, text_inserted, length): """Text insertion callback""" @@ -2943,7 +2964,10 @@ def image_load_into_dialog(self): """Load/Reload the Image Under Editing""" - self.user_active = False + if self.user_active: + self.user_active = False + user_active_restore = True + else: user_active_restore = False self.glade.spinbutton_image_width.set_value(self.temp_image_width) self.glade.spinbutton_image_height.set_value(self.temp_image_height) if self.temp_image_width <= 900 and self.temp_image_height <= 600: @@ -2963,7 +2987,7 @@ int(temp_image_height), gtk.gdk.INTERP_BILINEAR) self.glade.image_under_editing.set_from_pixbuf(pixbuf) - self.user_active = True + if user_active_restore: self.user_active = True def on_button_rotate_90_cw_clicked(self, *args): """Image Edit - Rotate 90 ClockWise""" Files old/cherrytree-0.25.3/modules/core.pyc and new/cherrytree-0.25.4/modules/core.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/ctdb.py new/cherrytree-0.25.4/modules/ctdb.py --- old/cherrytree-0.25.3/modules/ctdb.py 2012-01-24 09:04:06.000000000 +0100 +++ new/cherrytree-0.25.4/modules/ctdb.py 2012-02-22 23:58:49.000000000 +0100 @@ -404,8 +404,8 @@ """Read a node content from DB""" if self.dad.user_active: self.dad.user_active = False - back_to_user_active = True - else: back_to_user_active = False + user_active_restore = True + else: user_active_restore = False syntax_highlighting = self.dad.treestore[tree_iter][4] if original_id: node_id = original_id else: node_id = self.dad.treestore[tree_iter][3] @@ -467,7 +467,7 @@ else: self.add_node_image(images_rows[obj_idx[1]], curr_buffer) self.dad.sourceview.set_buffer(self.dad.curr_buffer) curr_buffer.set_modified(False) - if back_to_user_active: self.dad.user_active = True + if user_active_restore: self.dad.user_active = True def get_children_rows_from_father_id(self, db, father_id): """Returns the children rows given the father_id""" Files old/cherrytree-0.25.3/modules/ctdb.pyc and new/cherrytree-0.25.4/modules/ctdb.pyc differ Files old/cherrytree-0.25.3/modules/exports.pyc and new/cherrytree-0.25.4/modules/exports.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/findreplace.py new/cherrytree-0.25.4/modules/findreplace.py --- old/cherrytree-0.25.3/modules/findreplace.py 2012-01-16 12:05:22.000000000 +0100 +++ new/cherrytree-0.25.4/modules/findreplace.py 2012-02-22 23:58:49.000000000 +0100 @@ -31,6 +31,7 @@ """Lists Handler boot""" self.dad = dad self.replace_active = False + self.replace_subsequent = False self.curr_find = [None, ""] # [latest find type, latest find pattern] self.from_find_iterated = False self.from_find_back = False @@ -54,7 +55,9 @@ elif response == 2: # replace self.replace_active = True + self.replace_subsequent = True self.find_again() + self.replace_subsequent = False elif response == 3: # undo replace self.dad.requested_step_back() @@ -146,6 +149,10 @@ if all_matches: self.liststore_create_or_clean() config.get_tree_expanded_collapsed_string(self.dad) # searching start + if self.dad.user_active: + self.dad.user_active = False + user_active_restore = True + else: user_active_restore = False while node_iter: self.all_matches_first_in_node = True while self.parse_given_node_content(node_iter, pattern, forward, first_fromsel, all_matches): @@ -183,6 +190,7 @@ self.dad.sourceview.scroll_to_mark(self.dad.curr_buffer.get_insert(), 0.3) if self.dad.glade.checkbutton_iterated_find_dialog.get_active(): self.iterated_find_dialog() + if user_active_restore: self.dad.user_active = True def find_a_node(self, *args): """Search for a pattern between all the Node's Names""" @@ -314,7 +322,7 @@ self.dad.set_selection_at_offset_n_delta(match_offsets[0] + num_objs, len(replacer_text)) self.dad.state_machine.update_state(self.dad.treestore[self.dad.curr_tree_iter][3]) - self.ctdb_handler.pending_edit_db_node_buff(self.dad.treestore[self.dad.curr_tree_iter][3]) + self.dad.ctdb_handler.pending_edit_db_node_buff(self.dad.treestore[self.dad.curr_tree_iter][3]) return True else: return False @@ -368,8 +376,8 @@ or (all_matches and not self.all_matches_first_in_node): iter_insert = self.dad.curr_buffer.get_iter_at_mark(self.dad.curr_buffer.get_insert()) iter_bound = self.dad.curr_buffer.get_iter_at_mark(self.dad.curr_buffer.get_selection_bound()) - if not self.replace_active: - # it's a find, so we want, given a selected word, to find for the subsequent one + if not self.replace_active or self.replace_subsequent: + # it's a find or subsequent replace, so we want, given a selected word, to find for the subsequent one if forward: if iter_bound != None and iter_insert.compare(iter_bound) < 0: start_iter = iter_bound else: start_iter = iter_insert @@ -377,7 +385,7 @@ if iter_bound != None and iter_insert.compare(iter_bound) > 0: start_iter = iter_bound else: start_iter = iter_insert else: - # it's a replace, so we want, given a selected word, to replace starting from this one + # it's a first replace, so we want, given a selected word, to replace starting from this one if forward: if iter_bound != None and iter_insert.compare(iter_bound) > 0: start_iter = iter_bound else: start_iter = iter_insert @@ -484,8 +492,10 @@ def replace_again(self): """Continue the previous replace (a_node/in_selected_node/in_all_nodes)""" self.replace_active = True + self.replace_subsequent = True self.find_again() self.replace_active = False + self.replace_subsequent = False def get_line_content(self, text_iter): """Returns the Line Content Given the Text Iter""" Files old/cherrytree-0.25.3/modules/findreplace.pyc and new/cherrytree-0.25.4/modules/findreplace.pyc differ Files old/cherrytree-0.25.3/modules/imports.pyc and new/cherrytree-0.25.4/modules/imports.pyc differ Files old/cherrytree-0.25.3/modules/lists.pyc and new/cherrytree-0.25.4/modules/lists.pyc differ Files old/cherrytree-0.25.3/modules/machines.pyc and new/cherrytree-0.25.4/modules/machines.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cherrytree-0.25.3/modules/main.py new/cherrytree-0.25.4/modules/main.py --- old/cherrytree-0.25.3/modules/main.py 2012-01-16 12:05:22.000000000 +0100 +++ new/cherrytree-0.25.4/modules/main.py 2012-02-23 23:11:45.000000000 +0100 @@ -133,12 +133,25 @@ import ctypes, ctypes.util libc = ctypes.cdll.LoadLibrary(ctypes.util.find_library("libc")) libc.prctl(15, cons.APP_NAME, 0, 0, 0) - except: print "libc.prctl not available, the process name will be python and not cherrytree" + except: + print "libc.prctl not available, the process name will be python and not cherrytree" try: # change locale text domain import locale locale.bindtextdomain(cons.APP_NAME, cons.LOCALE_PATH) - except: print "locale.bindtextdomain not available, the glade i18n may not work properly" + except: + try: + from ctypes import cdll + libintl = cdll.intl + libintl.bindtextdomain(cons.APP_NAME, cons.LOCALE_PATH) + except: + print "ctypes.cdll.intl.bindtextdomain not available, the glade i18n will not work properly" + try: + from ctypes import windll + lcid = windll.kernel32.GetUserDefaultUILanguage() + os.environ["LANGUAGE"] = cons.MICROSOFT_WINDOWS_LCID_to_ISO_LANG[lcid] + except: + print "ctypes.windll.kernel32.GetUserDefaultUILanguage, the i18n may not work properly" # language installation if os.path.isfile(cons.LANG_PATH): lang_file_descriptor = file(cons.LANG_PATH, 'r') Files old/cherrytree-0.25.3/modules/main.pyc and new/cherrytree-0.25.4/modules/main.pyc differ Files old/cherrytree-0.25.3/modules/printing.pyc and new/cherrytree-0.25.4/modules/printing.pyc differ Files old/cherrytree-0.25.3/modules/support.pyc and new/cherrytree-0.25.4/modules/support.pyc differ Files old/cherrytree-0.25.3/modules/tablez.pyc and new/cherrytree-0.25.4/modules/tablez.pyc differ -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org