Possibility to choose a replacement when delete accounts and categories

This commit is contained in:
Grégory Soutadé 2011-02-08 21:17:35 +01:00
parent 1b03559b2b
commit 2b07cb0b30
9 changed files with 299 additions and 240 deletions

View File

@ -5,6 +5,7 @@ v0.2_dev (29/01/2011)
No further problems with scrollbar in AccountPanel/SearchPanel/PreferencesPanel when there is a lot of operations
Better fit of interface when displaying grouped operations
Show stats for current month even if next month has not been generated
Possibility to choose a replacement when deleting accounts and categories
** Dev **
Use a factory to create panels (prepare for plug-in)

Binary file not shown.

View File

@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-12-02 19:11+0100\n"
"POT-Creation-Date: 2011-02-08 21:12+0100\n"
"PO-Revision-Date: \n"
"Last-Translator: Soutadé <soutade@gmail.com>\n"
"Language-Team: \n"
@ -19,21 +19,21 @@ msgstr ""
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#: src/view/StatsPanel.cpp:327
#: src/view/PreferencesPanel.cpp:775
#: src/view/StatsPanel.cpp:358
#: src/view/PreferencesPanel.cpp:817
msgid " - "
msgstr " - "
#: src/view/UsersDialog.cpp:118
#: src/view/PreferencesPanel.cpp:456
#: src/view/PreferencesPanel.cpp:476
#: src/view/PreferencesPanel.cpp:677
#: src/view/PreferencesPanel.cpp:696
#: src/view/UsersDialog.cpp:120
#: src/view/PreferencesPanel.cpp:485
#: src/view/PreferencesPanel.cpp:505
#: src/view/PreferencesPanel.cpp:714
#: src/view/PreferencesPanel.cpp:733
#: src/view/PreferencesPanel.cpp:775
msgid " already exists"
msgstr " existe déjà"
#: src/view/SearchPanel.cpp:226
#: src/view/SearchPanel.cpp:243
msgid " entries found"
msgstr " entrées trouvées"
@ -41,11 +41,11 @@ msgstr " entrées trouvées"
msgid " not found, aborting"
msgstr " non trouvé, arrêt"
#: src/view/AccountPanel.cpp:742
#: src/view/AccountPanel.cpp:757
msgid " operations ?"
msgstr " opérations ?"
#: src/view/PreferencesPanel.cpp:782
#: src/view/PreferencesPanel.cpp:824
msgid " profil ?"
msgstr " profil ?"
@ -53,25 +53,21 @@ msgstr " profil ?"
msgid "!! Warning !! If there was a bug, the old database will be suppressed !"
msgstr "!! Attention !! S'il y a eu un bug, l'ancienne base de donnée va être supprimée !"
#: src/view/SearchPanel.cpp:228
#: src/view/SearchPanel.cpp:245
msgid "1 entry found"
msgstr "1 entrée trouvée"
#: src/view/ButtonPanel.cpp:74
msgid "About"
msgstr "A propos"
#: src/view/SearchPanel.cpp:90
#: src/view/grid/GridAccount.cpp:64
#: src/view/grid/GridAccount.cpp:67
msgid "Account"
msgstr "Compte"
#: src/view/PreferencesPanel.cpp:456
#: src/view/PreferencesPanel.cpp:476
#: src/view/PreferencesPanel.cpp:485
#: src/view/PreferencesPanel.cpp:505
msgid "Account "
msgstr "Le compte "
#: src/controller/KissCount.cpp:343
#: src/controller/KissCount.cpp:363
msgid "Account 1"
msgstr "Compte 1"
@ -83,77 +79,75 @@ msgstr "Nom du compte"
msgid "Account number"
msgstr "Numéro de compte"
#: src/view/StatsPanel.cpp:292
#: src/view/PreferencesPanel.cpp:59
#: src/view/StatsPanel.cpp:323
#: src/view/PreferencesPanel.cpp:60
msgid "Accounts"
msgstr "Comptes"
#: src/view/SearchPanel.cpp:87
#: src/view/SearchPanel.cpp:86
msgid "Amount from"
msgstr "Montant min"
#: src/view/SearchPanel.cpp:88
#: src/view/SearchPanel.cpp:87
msgid "Amount to"
msgstr "Montant max"
#: src/view/PreferencesPanel.cpp:408
#: src/view/PreferencesPanel.cpp:782
#: src/view/AccountPanel.cpp:737
#: src/view/PreferencesPanel.cpp:824
#: src/view/AccountPanel.cpp:752
msgid "Are you sure want to delete "
msgstr "Etes vous sûr de vouloir supprimer "
#: src/view/PreferencesPanel.cpp:657
#: src/view/grid/GridAccount.cpp:814
#: src/view/grid/GridAccount.cpp:829
msgid "Are you sure want to delete : \n"
msgstr "Etes vous sûr de vouloir supprimer : \n"
#: src/view/PreferencesPanel.cpp:343
#: src/view/PreferencesPanel.cpp:361
msgid "Ascending"
msgstr "Croissant"
#: src/view/PreferencesPanel.cpp:267
#: src/view/PreferencesPanel.cpp:285
msgid "Background color"
msgstr "Couleur d'arrière plan"
#: src/view/PreferencesPanel.cpp:187
#: src/view/PreferencesPanel.cpp:199
msgid "Blocked"
msgstr "Bloqué"
#: src/view/UsersDialog.cpp:51
#: src/view/GenerateDialog.cpp:60
#: src/view/UsersDialog.cpp:52
#: src/view/GenerateDialog.cpp:61
#: src/view/PasswordDialog.cpp:56
msgid "Cancel"
msgstr "Annuler"
#: src/view/grid/GridAccount.cpp:1245
#: src/view/grid/GridAccount.cpp:1252
#: src/view/grid/GridAccount.cpp:1263
#: src/view/grid/GridAccount.cpp:1270
msgid "Cannot group these operations"
msgstr "Impossible de grouper ces opérations"
#: src/view/grid/GridAccount.cpp:1371
#: src/view/grid/GridAccount.cpp:1377
#: src/view/grid/GridAccount.cpp:1389
#: src/view/grid/GridAccount.cpp:1395
msgid "Cannot ungroup these operations"
msgstr "Impossible de dégrouper ces opérations"
#: src/view/PreferencesPanel.cpp:60
#: src/view/PreferencesPanel.cpp:61
msgid "Categories"
msgstr "Catégories"
#: src/view/SearchPanel.cpp:89
#: src/view/grid/GridAccount.cpp:64
#: src/view/SearchPanel.cpp:88
#: src/view/grid/GridAccount.cpp:67
msgid "Category"
msgstr "Catégorie"
#: src/view/PreferencesPanel.cpp:677
#: src/view/PreferencesPanel.cpp:696
#: src/view/PreferencesPanel.cpp:714
#: src/view/PreferencesPanel.cpp:733
msgid "Category "
msgstr "La catégorie "
#: src/view/PreferencesPanel.cpp:77
#: src/view/PreferencesPanel.cpp:78
msgid "Change Name"
msgstr "Changer de nom"
#: src/view/PreferencesPanel.cpp:78
#: src/view/PreferencesPanel.cpp:79
msgid "Change Password"
msgstr "Changer le mot de passe"
@ -161,10 +155,6 @@ msgstr "Changer le mot de passe"
msgid "Change password"
msgstr "Changer le mot de passe"
#: src/view/ButtonPanel.cpp:73
msgid "Change user"
msgstr "Changer d'utilisateur"
#: src/view/AccountPanel.cpp:122
msgid "Check mode"
msgstr "Mode rapprochement"
@ -177,20 +167,20 @@ msgstr "Rapprochée"
msgid "Confirm password "
msgstr "Confirmer le mot de passe "
#: src/view/StatsPanel.cpp:130
#: src/view/StatsPanel.cpp:128
#: src/view/AccountPanel.cpp:116
msgid "Cost repartition"
msgstr "Répartition des coûts"
#: src/view/grid/GridAccount.cpp:64
#: src/view/grid/GridAccount.cpp:67
msgid "Credit"
msgstr "Crédit"
#: src/view/AccountPanel.cpp:202
#: src/view/AccountPanel.cpp:215
msgid "Cur Credit"
msgstr "Cur Crédit"
#: src/view/AccountPanel.cpp:203
#: src/view/AccountPanel.cpp:216
msgid "Cur Debit"
msgstr "Cur Débit"
@ -198,7 +188,7 @@ msgstr "Cur Débit"
msgid "Current value"
msgstr "Valeur courante"
#: src/view/grid/GridAccount.cpp:64
#: src/view/grid/GridAccount.cpp:67
msgid "Date"
msgstr "Date"
@ -210,49 +200,49 @@ msgstr "Date min"
msgid "Date to"
msgstr "Date max"
#: src/view/grid/GridAccount.cpp:64
#: src/view/grid/GridAccount.cpp:67
msgid "Debit"
msgstr "Débit"
#: src/view/PreferencesPanel.cpp:186
#: src/view/PreferencesPanel.cpp:198
msgid "Default"
msgstr "Défaut"
#: src/view/PreferencesPanel.cpp:188
#: src/view/PreferencesPanel.cpp:270
#: src/view/AccountPanel.cpp:596
#: src/view/PreferencesPanel.cpp:200
#: src/view/PreferencesPanel.cpp:288
#: src/view/AccountPanel.cpp:611
msgid "Delete"
msgstr "Supprimer"
#: src/view/PreferencesPanel.cpp:344
#: src/view/PreferencesPanel.cpp:362
msgid "Descending"
msgstr "Décroissant"
#: src/view/SearchPanel.cpp:86
#: src/view/grid/GridAccount.cpp:64
#: src/view/SearchPanel.cpp:85
#: src/view/grid/GridAccount.cpp:67
msgid "Description"
msgstr "Description"
#: src/view/UsersDialog.cpp:88
#: src/view/UsersDialog.cpp:118
#: src/view/SearchPanel.cpp:141
#: src/view/SearchPanel.cpp:151
#: src/view/SearchPanel.cpp:165
#: src/view/SearchPanel.cpp:176
#: src/view/PreferencesPanel.cpp:404
#: src/view/PreferencesPanel.cpp:456
#: src/view/PreferencesPanel.cpp:476
#: src/view/PreferencesPanel.cpp:677
#: src/view/PreferencesPanel.cpp:696
#: src/view/PreferencesPanel.cpp:727
#: src/view/UsersDialog.cpp:90
#: src/view/UsersDialog.cpp:120
#: src/view/SearchPanel.cpp:158
#: src/view/SearchPanel.cpp:168
#: src/view/SearchPanel.cpp:182
#: src/view/SearchPanel.cpp:193
#: src/view/PreferencesPanel.cpp:422
#: src/view/PreferencesPanel.cpp:485
#: src/view/PreferencesPanel.cpp:505
#: src/view/PreferencesPanel.cpp:714
#: src/view/PreferencesPanel.cpp:733
#: src/view/PreferencesPanel.cpp:769
#: src/view/PreferencesPanel.cpp:775
#: src/view/PasswordDialog.cpp:72
#: src/view/PasswordDialog.cpp:78
#: src/view/AccountPanel.cpp:733
#: src/view/grid/GridAccount.cpp:1245
#: src/view/grid/GridAccount.cpp:1252
#: src/view/grid/GridAccount.cpp:1371
#: src/view/grid/GridAccount.cpp:1377
#: src/view/AccountPanel.cpp:748
#: src/view/grid/GridAccount.cpp:1263
#: src/view/grid/GridAccount.cpp:1270
#: src/view/grid/GridAccount.cpp:1389
#: src/view/grid/GridAccount.cpp:1395
#: src/view/grid/wxGridCellFormulaEditor.cpp:69
#: src/model/Database.cpp:38
#: src/model/Database.cpp:55
@ -274,34 +264,34 @@ msgid "Final value"
msgstr "Valeur finale"
#: src/view/SearchPanel.cpp:76
#: src/view/grid/GridAccount.cpp:323
#: src/view/grid/GridAccount.cpp:326
#: src/model/Database.cpp:331
#: src/controller/KissCount.cpp:359
#: src/controller/KissCount.cpp:379
msgid "Fix"
msgstr "Fixe"
#: src/view/PreferencesPanel.cpp:269
#: src/view/PreferencesPanel.cpp:287
msgid "Font"
msgstr "Police"
#: src/view/PreferencesPanel.cpp:268
#: src/view/PreferencesPanel.cpp:286
msgid "Foreground color"
msgstr "Couleur d'avant plan"
#: src/view/StatsPanel.cpp:62
#: src/view/StatsPanel.cpp:64
msgid "From"
msgstr "De"
#: src/view/GenerateDialog.cpp:45
#: src/view/GenerateDialog.cpp:46
msgid "From "
msgstr "A partir de "
#: src/view/GenerateDialog.cpp:31
#: src/view/AccountPanel.cpp:593
#: src/view/AccountPanel.cpp:608
msgid "Generate month"
msgstr "Générer mois"
#: src/controller/KissCount.cpp:361
#: src/controller/KissCount.cpp:381
msgid "Groceries"
msgstr "Courses"
@ -309,7 +299,7 @@ msgstr "Courses"
msgid "Group"
msgstr "Grouper"
#: src/controller/KissCount.cpp:363
#: src/controller/KissCount.cpp:383
msgid "Hobbies"
msgstr "Loisirs"
@ -317,19 +307,19 @@ msgstr "Loisirs"
msgid "Initial value"
msgstr "Valeur initiale"
#: src/view/SearchPanel.cpp:151
#: src/view/SearchPanel.cpp:168
msgid "Invalid amount from"
msgstr "Montant min invalide"
#: src/view/SearchPanel.cpp:176
#: src/view/SearchPanel.cpp:193
msgid "Invalid amount range"
msgstr "Intervalle des montants invalide"
#: src/view/SearchPanel.cpp:165
#: src/view/SearchPanel.cpp:182
msgid "Invalid amount to"
msgstr "Montant max invalide"
#: src/view/SearchPanel.cpp:141
#: src/view/SearchPanel.cpp:158
msgid "Invalid date range"
msgstr "Intervalle de temps invalide"
@ -337,7 +327,7 @@ msgstr "Intervalle de temps invalide"
msgid "Invalid formula !"
msgstr "Formule invalide !"
#: src/view/PreferencesPanel.cpp:727
#: src/view/PreferencesPanel.cpp:769
msgid "Invalid name"
msgstr "Nom invalide"
@ -345,56 +335,56 @@ msgstr "Nom invalide"
msgid "Invalid old password"
msgstr "Ancien mot de passe invalide"
#: src/view/UsersDialog.cpp:88
#: src/view/UsersDialog.cpp:90
msgid "Invalid password"
msgstr "Mot de passe invalide"
#: src/view/StatsPanel.cpp:346
#: src/view/StatsPanel.cpp:377
msgid "Invalide date range"
msgstr "Intervalle de temps invalide"
#: src/view/PreferencesPanel.cpp:404
#: src/view/PreferencesPanel.cpp:422
msgid "It must be at least one account !"
msgstr "Il doit y avoir au moins un compte !"
#: src/view/AccountPanel.cpp:733
#: src/view/AccountPanel.cpp:748
msgid "It must be at least one month !"
msgstr "Il doit rester au moins un mois"
#: src/view/PreferencesPanel.cpp:79
#: src/view/PreferencesPanel.cpp:80
msgid "Kill me"
msgstr "Kill me"
#: src/view/StatsPanel.cpp:346
#: src/view/PreferencesPanel.cpp:767
#: src/view/PreferencesPanel.cpp:770
#: src/view/StatsPanel.cpp:377
#: src/view/PreferencesPanel.cpp:809
#: src/view/PreferencesPanel.cpp:812
msgid "KissCount"
msgstr "KissCount"
#: src/view/PreferencesPanel.cpp:61
#: src/view/PreferencesPanel.cpp:62
msgid "Language"
msgstr "Langue"
#: src/view/PreferencesPanel.cpp:770
#: src/view/PreferencesPanel.cpp:812
msgid "Language not changed"
msgstr "Langue non changée"
#: src/view/PreferencesPanel.cpp:767
#: src/view/PreferencesPanel.cpp:809
msgid "Language successfully changed, please go to another panel"
msgstr "Langue changée, allez sur un autre panneau pour rendre le changement effectif"
#: src/view/PreferencesPanel.cpp:71
#: src/view/PreferencesPanel.cpp:184
#: src/view/PreferencesPanel.cpp:266
#: src/view/PreferencesPanel.cpp:72
#: src/view/PreferencesPanel.cpp:196
#: src/view/PreferencesPanel.cpp:284
msgid "Name"
msgstr "Nom"
#: src/view/PreferencesPanel.cpp:739
#: src/view/PreferencesPanel.cpp:781
msgid "Name changed"
msgstr "Nom changé"
#: src/view/UsersDialog.cpp:52
#: src/view/UsersDialog.cpp:107
#: src/view/UsersDialog.cpp:53
#: src/view/UsersDialog.cpp:109
msgid "New User"
msgstr "Nouvel utilisateur"
@ -410,7 +400,7 @@ msgstr ""
"Aucune base de données trouvée, voulez vous en créer une nouvelle ?\n"
"\n"
#: src/view/SearchPanel.cpp:231
#: src/view/SearchPanel.cpp:248
msgid "No entry found"
msgstr "Pas d'entrée trouvée"
@ -418,16 +408,21 @@ msgstr "Pas d'entrée trouvée"
msgid "Non fix"
msgstr "Courantes"
#: src/view/PreferencesPanel.cpp:429
#: src/view/PreferencesPanel.cpp:689
msgid "None"
msgstr "Aucun"
#: src/view/SearchPanel.cpp:76
msgid "Not checked"
msgstr "Non rapprochée"
#: src/view/PreferencesPanel.cpp:185
#: src/view/PreferencesPanel.cpp:197
msgid "Number"
msgstr "Numéro de compte"
#: src/view/UsersDialog.cpp:50
#: src/view/GenerateDialog.cpp:59
#: src/view/UsersDialog.cpp:51
#: src/view/GenerateDialog.cpp:60
#: src/view/PasswordDialog.cpp:55
msgid "OK"
msgstr "OK"
@ -436,23 +431,24 @@ msgstr "OK"
msgid "Old password "
msgstr "Ancien mot de passe "
#: src/controller/KissCount.cpp:365
#: src/controller/KissCount.cpp:385
msgid "Operating exepense"
msgstr "Fonctionnement"
#: src/view/PreferencesPanel.cpp:62
#: src/view/PreferencesPanel.cpp:63
msgid "Operation order"
msgstr "Ordre des opérations"
#: src/view/ButtonPanel.cpp:69
#: src/view/SearchPanel.cpp:89
#: src/view/AccountPanel.cpp:175
msgid "Operations"
msgstr "Opérations"
#: src/controller/KissCount.cpp:369
#: src/controller/KissCount.cpp:389
msgid "Other"
msgstr "Autres"
#: src/view/UsersDialog.cpp:43
#: src/view/UsersDialog.cpp:44
msgid "Password "
msgstr "Mot de passe "
@ -460,7 +456,7 @@ msgstr "Mot de passe "
msgid "Password changed"
msgstr "Mot de passe changé"
#: src/view/ButtonPanel.cpp:105
#: src/view/wxUI.cpp:245
msgid ""
"Personal accounting software\n"
"\n"
@ -468,7 +464,7 @@ msgid ""
"\n"
"Licenced under GNU GPL v3\n"
"\n"
"Copyright (C) 2010 Grégory Soutadé"
"Copyright (C) 2010-2011 Grégory Soutadé"
msgstr ""
"Logiciel de comptabilité personnelle\n"
"\n"
@ -476,15 +472,15 @@ msgstr ""
"\n"
"Licence GNU GPL v3\n"
"\n"
"Copyright (C) 2010 Grégory Soutadé"
"Copyright (C) 2010-2011 Grégory Soutadé"
#: src/view/PasswordDialog.cpp:78
msgid "Please retype new password"
msgstr "Re entrez le mot de passe"
#: src/view/PreferencesPanel.cpp:741
#: src/view/PreferencesPanel.cpp:775
#: src/view/ButtonPanel.cpp:72
#: src/view/PreferencesPanel.cpp:184
#: src/view/PreferencesPanel.cpp:783
#: src/view/PreferencesPanel.cpp:817
msgid "Preferences"
msgstr "Préférences"
@ -492,35 +488,31 @@ msgstr "Préférences"
msgid "Query failed !\n"
msgstr "La requête a échouée !\n"
#: src/view/ButtonPanel.cpp:75
msgid "Quit"
msgstr "Quitter"
#: src/view/ButtonPanel.cpp:112
#: src/view/wxUI.cpp:252
msgid "Quit KissCount ?"
msgstr "Quitter KissCount ?"
#: src/view/AccountPanel.cpp:204
#: src/view/AccountPanel.cpp:217
msgid "Remains"
msgstr "Restant"
#: src/view/SearchPanel.cpp:84
#: src/view/SearchPanel.cpp:242
#: src/view/ButtonPanel.cpp:71
#: src/view/SearchPanel.cpp:83
#: src/view/SearchPanel.cpp:143
#: src/view/SearchPanel.cpp:259
msgid "Search"
msgstr "Chercher"
#: src/view/StatsPanel.cpp:122
#: src/view/StatsPanel.cpp:120
#: src/view/AccountPanel.cpp:90
msgid "Serie 1"
msgstr "Série 1"
#: src/view/PreferencesPanel.cpp:63
#: src/view/PreferencesPanel.cpp:64
msgid "Shared with"
msgstr "Partagé avec"
#: src/view/StatsPanel.cpp:327
#: src/view/ButtonPanel.cpp:70
#: src/view/StatsPanel.cpp:160
#: src/view/StatsPanel.cpp:358
msgid "Statistics"
msgstr "Statistiques"
@ -528,15 +520,15 @@ msgstr "Statistiques"
msgid "To"
msgstr "A"
#: src/view/GenerateDialog.cpp:52
#: src/view/GenerateDialog.cpp:53
msgid "To "
msgstr "Vers "
#: src/view/AccountPanel.cpp:186
#: src/view/AccountPanel.cpp:199
msgid "Total Credit"
msgstr "Total Crédit"
#: src/view/AccountPanel.cpp:187
#: src/view/AccountPanel.cpp:200
msgid "Total Debit"
msgstr "Total Débit"
@ -551,7 +543,7 @@ msgstr "Dégrouper"
msgid "Unable to open Database"
msgstr "Impossible d'ouvrir la base de données"
#: src/controller/KissCount.cpp:367
#: src/controller/KissCount.cpp:387
msgid "Unexpected"
msgstr "Exceptionnel"
@ -565,13 +557,13 @@ msgstr "Inconnu"
msgid "Update failed !\n"
msgstr "La mise à jour à échouée !\n"
#: src/view/PreferencesPanel.cpp:58
#: src/view/PreferencesPanel.cpp:59
msgid "User"
msgstr "Utilisateur"
#: src/view/UsersDialog.cpp:38
#: src/view/UsersDialog.cpp:118
#: src/view/PreferencesPanel.cpp:733
#: src/view/UsersDialog.cpp:39
#: src/view/UsersDialog.cpp:120
#: src/view/PreferencesPanel.cpp:775
msgid "User "
msgstr "Utilisateur "
@ -579,62 +571,76 @@ msgstr "Utilisateur "
msgid "Users"
msgstr "Utilisateurs"
#: src/view/grid/GridAccount.cpp:1022
#: src/view/grid/GridAccount.cpp:1037
msgid "Warning"
msgstr "Attention"
#: src/view/grid/GridAccount.cpp:1022
#: src/view/PreferencesPanel.cpp:434
msgid "Wich account will replace this one ?"
msgstr "Quel compte va remplacer celui-ci ?"
#: src/view/PreferencesPanel.cpp:694
msgid "Wich category will replace this one ?"
msgstr "Quelle catégorie va remplacer celle-ci"
#: src/view/grid/GridAccount.cpp:1037
msgid "You made a debit on a blocked account"
msgstr "Vous avez effectué une opération de débit sur un compte bloqué"
#: src/view/wxUI.cpp:110
#: src/view/wxUI.cpp:125
msgid "april"
msgstr "avril"
#: src/view/wxUI.cpp:114
#: src/view/wxUI.cpp:129
msgid "august"
msgstr "août"
#: src/view/wxUI.cpp:118
#: src/view/wxUI.cpp:133
msgid "december"
msgstr "décembre"
#: src/view/wxUI.cpp:108
#: src/view/wxUI.cpp:123
msgid "february"
msgstr "février"
#: src/view/wxUI.cpp:107
#: src/view/wxUI.cpp:122
msgid "january"
msgstr "janvier"
#: src/view/wxUI.cpp:113
#: src/view/wxUI.cpp:128
msgid "july"
msgstr "juillet"
#: src/view/wxUI.cpp:112
#: src/view/wxUI.cpp:127
msgid "june"
msgstr "juin"
#: src/view/wxUI.cpp:109
#: src/view/wxUI.cpp:124
msgid "march"
msgstr "mars"
#: src/view/wxUI.cpp:111
#: src/view/wxUI.cpp:126
msgid "may"
msgstr "mai"
#: src/view/wxUI.cpp:117
#: src/view/wxUI.cpp:132
msgid "november"
msgstr "novembre"
#: src/view/wxUI.cpp:116
#: src/view/wxUI.cpp:131
msgid "october"
msgstr "octobre"
#: src/view/wxUI.cpp:115
#: src/view/wxUI.cpp:130
msgid "september"
msgstr "septembre"
#~ msgid "About"
#~ msgstr "A propos"
#~ msgid "Change user"
#~ msgstr "Changer d'utilisateur"
#~ msgid "Quit"
#~ msgstr "Quitter"
#~ msgid "Both"
#~ msgstr "Les deux"
#~ msgid "Color"

View File

@ -8,21 +8,22 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-02-05 20:46+0100\n"
"POT-Creation-Date: 2011-02-08 21:12+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/view/StatsPanel.cpp:358 src/view/PreferencesPanel.cpp:799
#: src/view/StatsPanel.cpp:358 src/view/PreferencesPanel.cpp:817
msgid " - "
msgstr ""
#: src/view/PreferencesPanel.cpp:474 src/view/PreferencesPanel.cpp:494
#: src/view/PreferencesPanel.cpp:696 src/view/PreferencesPanel.cpp:715
#: src/view/PreferencesPanel.cpp:757 src/view/UsersDialog.cpp:120
#: src/view/UsersDialog.cpp:120 src/view/PreferencesPanel.cpp:485
#: src/view/PreferencesPanel.cpp:505 src/view/PreferencesPanel.cpp:714
#: src/view/PreferencesPanel.cpp:733 src/view/PreferencesPanel.cpp:775
msgid " already exists"
msgstr ""
@ -38,7 +39,7 @@ msgstr ""
msgid " operations ?"
msgstr ""
#: src/view/PreferencesPanel.cpp:806
#: src/view/PreferencesPanel.cpp:824
msgid " profil ?"
msgstr ""
@ -54,11 +55,11 @@ msgstr ""
msgid "Account"
msgstr ""
#: src/view/PreferencesPanel.cpp:474 src/view/PreferencesPanel.cpp:494
#: src/view/PreferencesPanel.cpp:485 src/view/PreferencesPanel.cpp:505
msgid "Account "
msgstr ""
#: src/controller/KissCount.cpp:350
#: src/controller/KissCount.cpp:363
msgid "Account 1"
msgstr ""
@ -82,12 +83,11 @@ msgstr ""
msgid "Amount to"
msgstr ""
#: src/view/AccountPanel.cpp:752 src/view/PreferencesPanel.cpp:426
#: src/view/PreferencesPanel.cpp:806
#: src/view/PreferencesPanel.cpp:824 src/view/AccountPanel.cpp:752
msgid "Are you sure want to delete "
msgstr ""
#: src/view/PreferencesPanel.cpp:676 src/view/grid/GridAccount.cpp:829
#: src/view/grid/GridAccount.cpp:829
msgid "Are you sure want to delete : \n"
msgstr ""
@ -103,16 +103,16 @@ msgstr ""
msgid "Blocked"
msgstr ""
#: src/view/GenerateDialog.cpp:61 src/view/PasswordDialog.cpp:56
#: src/view/UsersDialog.cpp:52
#: src/view/UsersDialog.cpp:52 src/view/GenerateDialog.cpp:61
#: src/view/PasswordDialog.cpp:56
msgid "Cancel"
msgstr ""
#: src/view/grid/GridAccount.cpp:1260 src/view/grid/GridAccount.cpp:1267
#: src/view/grid/GridAccount.cpp:1263 src/view/grid/GridAccount.cpp:1270
msgid "Cannot group these operations"
msgstr ""
#: src/view/grid/GridAccount.cpp:1386 src/view/grid/GridAccount.cpp:1392
#: src/view/grid/GridAccount.cpp:1389 src/view/grid/GridAccount.cpp:1395
msgid "Cannot ungroup these operations"
msgstr ""
@ -124,7 +124,7 @@ msgstr ""
msgid "Category"
msgstr ""
#: src/view/PreferencesPanel.cpp:696 src/view/PreferencesPanel.cpp:715
#: src/view/PreferencesPanel.cpp:714 src/view/PreferencesPanel.cpp:733
msgid "Category "
msgstr ""
@ -152,7 +152,7 @@ msgstr ""
msgid "Confirm password "
msgstr ""
#: src/view/AccountPanel.cpp:116 src/view/StatsPanel.cpp:128
#: src/view/StatsPanel.cpp:128 src/view/AccountPanel.cpp:116
msgid "Cost repartition"
msgstr ""
@ -192,8 +192,8 @@ msgstr ""
msgid "Default"
msgstr ""
#: src/view/AccountPanel.cpp:611 src/view/PreferencesPanel.cpp:200
#: src/view/PreferencesPanel.cpp:288
#: src/view/PreferencesPanel.cpp:200 src/view/PreferencesPanel.cpp:288
#: src/view/AccountPanel.cpp:611
msgid "Delete"
msgstr ""
@ -205,21 +205,21 @@ msgstr ""
msgid "Description"
msgstr ""
#: src/model/Database.cpp:38 src/model/Database.cpp:55
#: src/model/Database.cpp:95 src/model/Database.cpp:102
#: src/model/Database.cpp:120 src/model/Database.cpp:147
#: src/model/Database.cpp:155 src/model/Database.cpp:176
#: src/view/AccountPanel.cpp:748 src/view/PasswordDialog.cpp:72
#: src/view/PasswordDialog.cpp:78 src/view/PreferencesPanel.cpp:422
#: src/view/PreferencesPanel.cpp:474 src/view/PreferencesPanel.cpp:494
#: src/view/PreferencesPanel.cpp:696 src/view/PreferencesPanel.cpp:715
#: src/view/PreferencesPanel.cpp:751 src/view/PreferencesPanel.cpp:757
#: src/view/UsersDialog.cpp:90 src/view/UsersDialog.cpp:120
#: src/view/SearchPanel.cpp:158 src/view/SearchPanel.cpp:168
#: src/view/SearchPanel.cpp:182 src/view/SearchPanel.cpp:193
#: src/view/UsersDialog.cpp:90 src/view/UsersDialog.cpp:120
#: src/view/grid/GridAccount.cpp:1260 src/view/grid/GridAccount.cpp:1267
#: src/view/grid/GridAccount.cpp:1386 src/view/grid/GridAccount.cpp:1392
#: src/view/grid/wxGridCellFormulaEditor.cpp:69
#: src/view/PreferencesPanel.cpp:422 src/view/PreferencesPanel.cpp:485
#: src/view/PreferencesPanel.cpp:505 src/view/PreferencesPanel.cpp:714
#: src/view/PreferencesPanel.cpp:733 src/view/PreferencesPanel.cpp:769
#: src/view/PreferencesPanel.cpp:775 src/view/PasswordDialog.cpp:72
#: src/view/PasswordDialog.cpp:78 src/view/AccountPanel.cpp:748
#: src/view/grid/GridAccount.cpp:1263 src/view/grid/GridAccount.cpp:1270
#: src/view/grid/GridAccount.cpp:1389 src/view/grid/GridAccount.cpp:1395
#: src/view/grid/wxGridCellFormulaEditor.cpp:69 src/model/Database.cpp:38
#: src/model/Database.cpp:55 src/model/Database.cpp:95
#: src/model/Database.cpp:102 src/model/Database.cpp:120
#: src/model/Database.cpp:147 src/model/Database.cpp:155
#: src/model/Database.cpp:176
msgid "Error"
msgstr ""
@ -231,8 +231,8 @@ msgstr ""
msgid "Final value"
msgstr ""
#: src/controller/KissCount.cpp:366 src/model/Database.cpp:331
#: src/view/SearchPanel.cpp:76 src/view/grid/GridAccount.cpp:326
#: src/model/Database.cpp:331 src/controller/KissCount.cpp:379
msgid "Fix"
msgstr ""
@ -252,11 +252,11 @@ msgstr ""
msgid "From "
msgstr ""
#: src/view/AccountPanel.cpp:608 src/view/GenerateDialog.cpp:31
#: src/view/GenerateDialog.cpp:31 src/view/AccountPanel.cpp:608
msgid "Generate month"
msgstr ""
#: src/controller/KissCount.cpp:368
#: src/controller/KissCount.cpp:381
msgid "Groceries"
msgstr ""
@ -264,7 +264,7 @@ msgstr ""
msgid "Group"
msgstr ""
#: src/controller/KissCount.cpp:370
#: src/controller/KissCount.cpp:383
msgid "Hobbies"
msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Invalid formula !"
msgstr ""
#: src/view/PreferencesPanel.cpp:751
#: src/view/PreferencesPanel.cpp:769
msgid "Invalid name"
msgstr ""
@ -320,8 +320,8 @@ msgstr ""
msgid "Kill me"
msgstr ""
#: src/view/StatsPanel.cpp:377 src/view/PreferencesPanel.cpp:791
#: src/view/PreferencesPanel.cpp:794
#: src/view/StatsPanel.cpp:377 src/view/PreferencesPanel.cpp:809
#: src/view/PreferencesPanel.cpp:812
msgid "KissCount"
msgstr ""
@ -329,11 +329,11 @@ msgstr ""
msgid "Language"
msgstr ""
#: src/view/PreferencesPanel.cpp:794
#: src/view/PreferencesPanel.cpp:812
msgid "Language not changed"
msgstr ""
#: src/view/PreferencesPanel.cpp:791
#: src/view/PreferencesPanel.cpp:809
msgid "Language successfully changed, please go to another panel"
msgstr ""
@ -342,7 +342,7 @@ msgstr ""
msgid "Name"
msgstr ""
#: src/view/PreferencesPanel.cpp:763
#: src/view/PreferencesPanel.cpp:781
msgid "Name changed"
msgstr ""
@ -368,6 +368,10 @@ msgstr ""
msgid "Non fix"
msgstr ""
#: src/view/PreferencesPanel.cpp:429 src/view/PreferencesPanel.cpp:689
msgid "None"
msgstr ""
#: src/view/SearchPanel.cpp:76
msgid "Not checked"
msgstr ""
@ -376,8 +380,8 @@ msgstr ""
msgid "Number"
msgstr ""
#: src/view/GenerateDialog.cpp:60 src/view/PasswordDialog.cpp:55
#: src/view/UsersDialog.cpp:51
#: src/view/UsersDialog.cpp:51 src/view/GenerateDialog.cpp:60
#: src/view/PasswordDialog.cpp:55
msgid "OK"
msgstr ""
@ -385,7 +389,7 @@ msgstr ""
msgid "Old password "
msgstr ""
#: src/controller/KissCount.cpp:372
#: src/controller/KissCount.cpp:385
msgid "Operating exepense"
msgstr ""
@ -393,11 +397,11 @@ msgstr ""
msgid "Operation order"
msgstr ""
#: src/view/AccountPanel.cpp:175 src/view/SearchPanel.cpp:89
#: src/view/SearchPanel.cpp:89 src/view/AccountPanel.cpp:175
msgid "Operations"
msgstr ""
#: src/controller/KissCount.cpp:376
#: src/controller/KissCount.cpp:389
msgid "Other"
msgstr ""
@ -424,8 +428,8 @@ msgstr ""
msgid "Please retype new password"
msgstr ""
#: src/view/PreferencesPanel.cpp:184 src/view/PreferencesPanel.cpp:765
#: src/view/PreferencesPanel.cpp:799
#: src/view/PreferencesPanel.cpp:184 src/view/PreferencesPanel.cpp:783
#: src/view/PreferencesPanel.cpp:817
msgid "Preferences"
msgstr ""
@ -446,7 +450,7 @@ msgstr ""
msgid "Search"
msgstr ""
#: src/view/AccountPanel.cpp:90 src/view/StatsPanel.cpp:120
#: src/view/StatsPanel.cpp:120 src/view/AccountPanel.cpp:90
msgid "Serie 1"
msgstr ""
@ -483,7 +487,7 @@ msgstr ""
msgid "Unable to open Database"
msgstr ""
#: src/controller/KissCount.cpp:374
#: src/controller/KissCount.cpp:387
msgid "Unexpected"
msgstr ""
@ -499,8 +503,8 @@ msgstr ""
msgid "User"
msgstr ""
#: src/view/PreferencesPanel.cpp:757 src/view/UsersDialog.cpp:39
#: src/view/UsersDialog.cpp:120
#: src/view/UsersDialog.cpp:39 src/view/UsersDialog.cpp:120
#: src/view/PreferencesPanel.cpp:775
msgid "User "
msgstr ""
@ -512,6 +516,14 @@ msgstr ""
msgid "Warning"
msgstr ""
#: src/view/PreferencesPanel.cpp:434
msgid "Wich account will replace this one ?"
msgstr ""
#: src/view/PreferencesPanel.cpp:694
msgid "Wich category will replace this one ?"
msgstr ""
#: src/view/grid/GridAccount.cpp:1037
msgid "You made a debit on a blocked account"
msgstr ""

View File

@ -194,18 +194,24 @@ void KissCount::UpdateAccount(Account& ac)
std::sort(_user->_accounts.begin(), _user->_accounts.end(), sortAccounts);
}
void KissCount::DeleteAccount(Account& ac)
void KissCount::DeleteAccount(Account& ac, const wxString& replacement)
{
std::vector<Account>::iterator it;
int i;
std::map<unsigned int, std::map<unsigned int, std::vector<Operation> >* >::iterator it2;
_db->DeleteAccount(_user, ac);
_db->DeleteAccount(_user, ac, replacement);
for (i=0, it=_user->_accounts.begin(); it !=_user->_accounts.end(); it++, i++)
if (it->id == ac.id)
{
_user->_accounts.erase(_user->_accounts.begin()+i);
break;
}
for (it2= _user->_operations.begin();
it2 != _user->_operations.end();
it2++)
LoadYear(it2->first, true);
}
void KissCount::AddSharedAccount(Account& ac, const wxString& granted)
@ -253,9 +259,11 @@ void KissCount::UpdateCategory(Category& category)
}
}
void KissCount::DeleteCategory(Category& category)
void KissCount::DeleteCategory(Category& category, const wxString& replacement)
{
_db->DeleteCategory(_user, category);
std::map<unsigned int, std::map<unsigned int, std::vector<Operation> >* >::iterator it;
_db->DeleteCategory(_user, category, replacement);
for (int i=0; i<_user->GetCategoriesNumber();i++)
if (_user->_categories[i].id == category.id)
@ -264,6 +272,11 @@ void KissCount::DeleteCategory(Category& category)
_user->_categoriesFonts.erase(_user->_categoriesFonts.begin()+i);
break;
}
for (it= _user->_operations.begin();
it != _user->_operations.end();
it++)
LoadYear(it->first, true);
}
std::map<int, std::vector<int> > KissCount::GetAllOperations()

View File

@ -64,7 +64,7 @@ public:
wxString AddAccount(Account& ac);
void UpdateAccount(Account& ac);
void DeleteAccount(Account& ac);
void DeleteAccount(Account& ac, const wxString& replacement);
void AddSharedAccount(Account& ac, const wxString& granted);
void RemoveSharedAccount(Account& ac, const wxString& granted);
std::map<wxString, wxString> getSharedAccountOwners(const wxString& account);
@ -72,7 +72,7 @@ public:
wxString AddCategory(Category& category);
void UpdateCategory(Category& category);
void DeleteCategory(Category& category);
void DeleteCategory(Category& category, const wxString& replacement);
std::map<int, std::vector<int> > GetAllOperations();

View File

@ -853,7 +853,7 @@ void Database::UpdateAccount(Account& ac)
}
}
void Database::DeleteAccount(User* user, Account& ac)
void Database::DeleteAccount(User* user, Account& ac, const wxString& replacement)
{
wxString req;
@ -872,6 +872,12 @@ void Database::DeleteAccount(User* user, Account& ac)
req = wxT("DELETE FROM account_amount WHERE account='") + ac.id + wxT("'");
EXECUTE_SQL_UPDATE(req, );
req = wxT("UPDATE operation SET account='") + replacement + wxT("'");
// req += wxT(", transfert='0'");
req += wxT(" WHERE account='") + ac.id + wxT("'");
EXECUTE_SQL_UPDATE(req, );
}
else
RemoveSharedAccount(ac, user->_id);
@ -973,7 +979,7 @@ void Database::UpdateCategory(Category& category)
EXECUTE_SQL_UPDATE(req, );
}
void Database::DeleteCategory(User* user, Category& category)
void Database::DeleteCategory(User* user, Category& category, const wxString& replacement)
{
wxString req;
@ -986,6 +992,12 @@ void Database::DeleteCategory(User* user, Category& category)
req += wxT(" WHERE parent='") + category.id + wxT("'");
EXECUTE_SQL_UPDATE(req, );
req = wxT("UPDATE operation SET category='") + replacement + wxT("'");
req += wxT(" WHERE category='") + category.id + wxT("'");
req += wxT(" AND user='") + user->_id + wxT("'");
EXECUTE_SQL_UPDATE(req, );
}
bool Database::LoadCategory(const wxString& id, const wxString& name, Category& category)
@ -1217,7 +1229,7 @@ void Database::KillMe(User* user)
if (!user->_accounts.empty())
{
for (it = user->_accounts.begin(); it != user->_accounts.end(); it++)
DeleteAccount(user, *it);
DeleteAccount(user, *it, wxT("0"));
it = user->_accounts.begin();
if (it->is_owner)

View File

@ -66,13 +66,13 @@ public:
wxString AddAccount(User* user, Account& ac);
void UpdateAccount(Account& ac);
void DeleteAccount(User* user, Account& ac);
void DeleteAccount(User* user, Account& ac, const wxString& replacement);
void AddSharedAccount(Account& ac, const wxString& granted);
void RemoveSharedAccount(Account& ac, const wxString& granted);
wxString AddCategory(User* user, Category& category);
void UpdateCategory(Category& category);
void DeleteCategory(User* user, Category& category);
void DeleteCategory(User* user, Category& category, const wxString& replacement);
bool LoadCategory(const wxString& id, const wxString& name, Category& category);
std::map<int, std::vector<int> > GetAllOperations(User* user);

View File

@ -376,7 +376,7 @@ void PreferencesPanel::OnAccountModified(wxGridEvent& event)
int row = event.GetRow();
int col = event.GetCol();
static bool inModification = false ;
int i;
int i, a;
if (inModification) return;
@ -423,15 +423,23 @@ void PreferencesPanel::OnAccountModified(wxGridEvent& event)
_accountsGrid->SetCellValue(row, col, wxT("0"));
return;
}
wxMessageDialog dialog(_wxUI, _("Are you sure want to delete ")+new_account.name, wxT("KissCount"), wxYES_NO);
if (dialog.ShowModal() == wxID_NO)
wxString *accounts = new wxString[user->GetAccountsNumber()];
accounts[0] = _("None");
a = 0;
for(i=0; i < user->GetAccountsNumber(); i++)
if (user->_accounts[i].id != new_account.id)
accounts[++a] = user->_accounts[i].name;
wxSingleChoiceDialog dialog(_wxUI, _("Wich account will replace this one ?"), wxT("KissCount"), user->GetAccountsNumber(), accounts);
if (dialog.ShowModal() == wxID_CANCEL)
{
_accountsGrid->SetCellValue(row, col, wxT("0"));
_accountsGrid->SetCellValue(row, col, wxT("0"));
}
else
else
{
_accountsGrid->DeleteRows(row, 1);
_kiss->DeleteAccount(new_account);
_accountsGrid->DeleteRows(row, 1);
i = dialog.GetSelection();
_kiss->DeleteAccount(new_account, (!i) ? wxT("0") : user->_accounts[i].id);
}
if (user->_accounts.size() == 1)
@ -591,6 +599,7 @@ void PreferencesPanel::OnCategoryModified(wxGridEvent& event)
int col = event.GetCol();
static bool inModification = false ;
Category new_cat, cat_tmp;
int i, a;
if (inModification) return;
@ -673,19 +682,25 @@ void PreferencesPanel::OnCategoryModified(wxGridEvent& event)
new_cat.id = user->_categories[row].id;
if (col == CATEGORY_DELETE)
{
wxMessageDialog dialog(_wxUI, _("Are you sure want to delete : \n")+new_cat.name, wxT("KissCount"), wxYES_NO);
if (dialog.ShowModal() == wxID_NO)
wxString *categories = new wxString[user->GetCategoriesNumber()];
categories[0] = _("None");
a = 0;
for(i=0; i < user->GetCategoriesNumber(); i++)
if (user->_categories[i].id != new_cat.id)
categories[++a] = user->_categories[i].name;
wxSingleChoiceDialog dialog(_wxUI, _("Wich category will replace this one ?"), wxT("KissCount"), user->GetCategoriesNumber(), categories);
if (dialog.ShowModal() == wxID_CANCEL)
{
_categoriesGrid->SetCellValue(row, col, wxT("0"));
_categoriesGrid->SetCellValue(row, col, wxT("0"));
}
else
else
{
_categoriesGrid->DeleteRows(row, 1);
_kiss->DeleteCategory(user->_categories[row]);
_categoriesGrid->DeleteRows(row, 1);
i = dialog.GetSelection();
_kiss->DeleteCategory(user->_categories[row], (!i) ? wxT("0") : user->_accounts[i].id);
Fit();
_wxUI->NeedReload();
}
Fit();
_wxUI->NeedReload();
inModification = false;
return;
}