[grisbi-cvs] [SCM] grisbi branch, grisbi-gtk3, updated. grisbi_gtk3_1_3_0-143-gcf36ba6

Pierre Biava nobody at users.sourceforge.net
Sun Feb 12 21:58:49 CET 2012


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "grisbi".

The branch, grisbi-gtk3 has been updated
       via  cf36ba632f7f7acce6f11f8812ab55f04061b313 (commit)
       via  bcbbd0b0d27b4ea65e3072069f78f270280619a1 (commit)
       via  b44c29b854f252dbe864f1312e71955549613d80 (commit)
       via  816273e97a318548a3298af7f44bf462cb4522ed (commit)
       via  910d08ee95a7cac9af699cc22e74f7d8ff212072 (commit)
       via  73d1a728bb926b14930633ba919bc6d8fdeebc5a (commit)
       via  c74b5177f654127407d1d377398a7bf3d80dd606 (commit)
       via  b5f846117a4c4007fd9839ffa931bc76caa243f6 (commit)
       via  a63f6ed41c5b2b4ec7bc3f40a8bf818ab51271c7 (commit)
       via  3be27308d65c86e3355c970d50299e59b2ca47c6 (commit)
       via  9f4b1012cf7ba10203c2d065ba6a8caa88285def (commit)
       via  c60fa0cad54a5ae77a4339dedd4936cc6eebfbec (commit)
       via  ab8a4d84158579491315a982b2a23b5c3799a7fa (commit)
       via  e3793838e7a6aadbcbfa5322b29b91455ac819d2 (commit)
       via  37c0486cdcf1bbb8e480f903e80136d25336e1f4 (commit)
       via  8147b9945d469554a1b05c02fe4def69c4337480 (commit)
       via  9d8bcf69f6965faaf07892ab4e9cfcacdfe6324a (commit)
       via  6843939646161886b3c8a00385e0d5b794ab9cd8 (commit)
       via  885e5f37688d18e0f05dbf7a2f16fde842fd3608 (commit)
       via  bed46ff1803a45529e56700d0d257cb4e48d3aa0 (commit)
       via  68255986bf6f06c987698fa44a285f847f8c8cab (commit)
       via  0475e0e047435e3465f25a338188405113c2030c (commit)
       via  15362b2674bdbef253b88b2fc53774f0279da56c (commit)
       via  e1874e67567cdb2bb66bf292d54dd66b2e73efe5 (commit)
       via  c3bc3078e35f7a178e0c6c8948fa55658dd6cef9 (commit)
       via  7b4c693254e29638a1c077237c155a7fb56610f5 (commit)
       via  73ac2937d35cb43e0db642bf64942c3d25aad0d7 (commit)
       via  47cfcf45c8579c020d044b8de0d53e70eddcf275 (commit)
       via  b3ec074bc5678e99f8d06e13a9b2e6151dedc30e (commit)
       via  b0b9f74a5036f95d7695b7ffa241b437979e5853 (commit)
       via  e62c4fb50787bfb02eee92c5efedcff56bc34a70 (commit)
       via  4e82adb8fe934f72daceb8c6a751d30a221e90e4 (commit)
       via  5bd54b076ce22e4056c43bc32b270f72647a3eb1 (commit)
       via  f5e83fd84763e05dcb860b805e1374ecc1bd9165 (commit)
       via  acc3a5004bfbedda0ca39c1b565071b6a0ef3a2e (commit)
       via  e4cf8638dc409c53375b734cd3d6999f1c4abad7 (commit)
       via  4b22c9078d2c595b4606e790b60a4219570134dd (commit)
       via  23b8c09a6c899f8f596aeceaeeeb47a8770b8232 (commit)
       via  1b7bc4a046eacf849e1934a54e12bdbc9a18d8fd (commit)
       via  e8e487d7f5e009a95bcd30f37388665c6f84bd15 (commit)
       via  3a6058300efd43b99bda498c8873b901599f4aee (commit)
       via  7b123b419b5e6e38ec8641b7d1f55fdfaf506a69 (commit)
       via  a68179ba1ceb04356ea1caaf56dc5fd20217ea54 (commit)
       via  e180abb9b32f7e48449be79536083debf2529544 (commit)
       via  895ca4de5850b83df7867ffb44efc25b1a603504 (commit)
       via  5963b1b5e410396b8ba0cbb07a446ee3600a76a7 (commit)
       via  fb59df3962eb1dba63ac402ccaac2f0a9ee756a8 (commit)
       via  3ea29c97478681a7eb8484f190fa69050491818f (commit)
       via  f0aeeeff45418f4b80fd2e23156570a7a7a5401a (commit)
       via  d30f161ff8a47467ebf7de7d1f98596e49c02707 (commit)
       via  faf9e5434b11e04aaeb7a9d45d08ce14cf67943e (commit)
       via  e87492c90b44e566267dc2b845b5a6abd9516641 (commit)
       via  f2dfb7336754bb1722620eb9459574d5ead90c36 (commit)
       via  24c68a2a2492d14ca3a85ae210fad4e14488b8bd (commit)
       via  edabd54d7a76a395b7f77632921007e86569af3f (commit)
       via  26f52436c63b20ea8cd31bd4a2d38555386ba91a (commit)
       via  2c83a2a577a54bb9f552c7ff528963d8481183cd (commit)
       via  18a83ecd09dacdd7b26eb146a2e24de9a8dc2e9c (commit)
       via  0e3623f979e6c4cc43d7415057b29b556b032c73 (commit)
       via  8e4bba2ce8915e6615397a185915162a1a71cd92 (commit)
       via  6a60dc09341ef59b01f218dd0a97a90258aa12b7 (commit)
       via  820a7cafcd18b9dabc3d62e8fa07e68d52c353f7 (commit)
       via  3be7ddf5fc77163615f1d71889a01f263b6a75ab (commit)
       via  3f0a4607c1a466d7a36525bb35cd9865e50eaa0e (commit)
       via  cf7310cdc5c3005be2599974957d4a1db120dc6f (commit)
       via  f4548b432785df02c34e2a9be4feb54b9db553c1 (commit)
       via  b72adeaaba0adaab6310fc4681eba6d5060704f0 (commit)
       via  0bd043cbe938cecf30b5703a2b792f6b80b6174e (commit)
       via  1cb1f659475df3aa7ec78be489ebf495d81354ff (commit)
       via  31de52f93a8550ed463a4596b4839417123e40de (commit)
       via  fa6d3a6e9451de87e7e5d5f19f2b8de34cd96f91 (commit)
      from  e5e01c7a9dc665896fe3675c73751d4ef8e31956 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit cf36ba632f7f7acce6f11f8812ab55f04061b313
Merge: bcbbd0b e5e01c7
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 12 21:57:39 2012 +0100

    Fin de merge avec origin

commit bcbbd0b0d27b4ea65e3072069f78f270280619a1
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 12 21:55:35 2012 +0100

    merge with origin

commit b44c29b854f252dbe864f1312e71955549613d80
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 12 20:32:48 2012 +0100

    structure.h: minor change

commit 816273e97a318548a3298af7f44bf462cb4522ed
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 12 20:30:38 2012 +0100

    add parse_cmdline object

commit 910d08ee95a7cac9af699cc22e74f7d8ff212072
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 12 20:29:14 2012 +0100

    fixes crash

commit 73d1a728bb926b14930633ba919bc6d8fdeebc5a
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 12 20:05:44 2012 +0100

    minor changes

commit c74b5177f654127407d1d377398a7bf3d80dd606
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 23:03:25 2012 +0100

    etats_config_ui.h: minor change

commit b5f846117a4c4007fd9839ffa931bc76caa243f6
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 22:54:45 2012 +0100

    add parametres_ui.c and parametres_ui.h files

commit a63f6ed41c5b2b4ec7bc3f40a8bf818ab51271c7
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 22:45:41 2012 +0100

    add grisbi_prefs.ui

commit 3be27308d65c86e3355c970d50299e59b2ca47c6
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 22:24:49 2012 +0100

    main.c: minor change

commit 9f4b1012cf7ba10203c2d065ba6a8caa88285def
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 22:24:14 2012 +0100

    deletion of the global variable account_page

commit c60fa0cad54a5ae77a4339dedd4936cc6eebfbec
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 16:18:25 2012 +0100

    deleting spaces at end the line

commit ab8a4d84158579491315a982b2a23b5c3799a7fa
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 10:20:57 2012 +0100

    add navigation left panel in grisbi.ui

commit e3793838e7a6aadbcbfa5322b29b91455ac819d2
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 09:14:19 2012 +0100

    formatting of code

commit 37c0486cdcf1bbb8e480f903e80136d25336e1f4
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 08:50:10 2012 +0100

    grisbi_window.c: minor change

commit 8147b9945d469554a1b05c02fe4def69c4337480
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 08:40:37 2012 +0100

    add notebook_general in grisbi.ui

commit 9d8bcf69f6965faaf07892ab4e9cfcacdfe6324a
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 11 08:39:36 2012 +0100

    clean up code

commit 6843939646161886b3c8a00385e0d5b794ab9cd8
Author: pbiava <pierre.biava at nerim.net>
Date:   Fri Feb 10 22:29:33 2012 +0100

    gsb_form.c: minor change

commit 885e5f37688d18e0f05dbf7a2f16fde842fd3608
Author: pbiava <pierre.biava at nerim.net>
Date:   Fri Feb 10 22:29:10 2012 +0100

    gsb_file.c: minor change

commit bed46ff1803a45529e56700d0d257cb4e48d3aa0
Author: pbiava <pierre.biava at nerim.net>
Date:   Fri Feb 10 22:27:37 2012 +0100

    modification of hpaned

commit 68255986bf6f06c987698fa44a285f847f8c8cab
Author: pbiava <pierre.biava at nerim.net>
Date:   Thu Feb 9 20:42:47 2012 +0100

    clean up of code

commit 0475e0e047435e3465f25a338188405113c2030c
Author: pbiava <pierre.biava at nerim.net>
Date:   Wed Feb 8 22:24:29 2012 +0100

    Creating headings_eb

commit 15362b2674bdbef253b88b2fc53774f0279da56c
Author: pbiava <pierre.biava at nerim.net>
Date:   Tue Feb 7 22:21:48 2012 +0100

    deleting run.window variable

commit e1874e67567cdb2bb66bf292d54dd66b2e73efe5
Author: pbiava <pierre.biava at nerim.net>
Date:   Tue Feb 7 21:38:15 2012 +0100

    minor change

commit c3bc3078e35f7a178e0c6c8948fa55658dd6cef9
Author: pbiava <pierre.biava at nerim.net>
Date:   Tue Feb 7 21:38:00 2012 +0100

    Working on the menu, the states of the main window and adding the status bar

commit 7b4c693254e29638a1c077237c155a7fb56610f5
Author: pbiava <pierre.biava at nerim.net>
Date:   Tue Feb 7 06:28:49 2012 +0100

    Transfer of creation of statusbar in grisbi_window.c

commit 73ac2937d35cb43e0db642bf64942c3d25aad0d7
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:55:56 2012 +0100

    Minor change

commit 47cfcf45c8579c020d044b8de0d53e70eddcf275
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:55:43 2012 +0100

    New GtkWindow GrisbiWindow

commit b3ec074bc5678e99f8d06e13a9b2e6151dedc30e
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:54:44 2012 +0100

    New object GrisbiApp

commit b0b9f74a5036f95d7695b7ffa241b437979e5853
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:53:07 2012 +0100

    new version of main.c. WARNING this version of Grisbi is not functional

commit e62c4fb50787bfb02eee92c5efedcff56bc34a70
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:48:47 2012 +0100

    new interface for menus

commit 4e82adb8fe934f72daceb8c6a751d30a221e90e4
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:32:09 2012 +0100

    Changes requested by the change in the gsb_conf_t structure and minor changes

commit 5bd54b076ce22e4056c43bc32b270f72647a3eb1
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Feb 5 16:27:19 2012 +0100

    erreur.c: add signals SIGTERM SIGINT

commit f5e83fd84763e05dcb860b805e1374ecc1bd9165
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:33:39 2012 +0100

    gsb_data_print_config.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit acc3a5004bfbedda0ca39c1b565071b6a0ef3a2e
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:31:13 2012 +0100

    gsb_file_load.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit e4cf8638dc409c53375b734cd3d6999f1c4abad7
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:27:25 2012 +0100

    gsb_form.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 4b22c9078d2c595b4606e790b60a4219570134dd
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:22:15 2012 +0100

    gsb_form_transaction.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 23b8c09a6c899f8f596aeceaeeeb47a8770b8232
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:17:10 2012 +0100

    gsb_reconcile.c: gsb_menu_get_ui_manager ( ) by grisbi_window_get_ui_manager ( )

commit 1b7bc4a046eacf849e1934a54e12bdbc9a18d8fd
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:15:25 2012 +0100

    gsb_form_widget.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit e8e487d7f5e009a95bcd30f37388665c6f84bd15
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:08:31 2012 +0100

    gsb_scheduler_list.c: Changes requested by the change in the gsb_conf_t structure

commit 3a6058300efd43b99bda498c8873b901599f4aee
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 22:06:00 2012 +0100

    gsb_transactions_list.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 7b123b419b5e6e38ec8641b7d1f55fdfaf506a69
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:58:16 2012 +0100

    gsb_transactions_list_sort.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit a68179ba1ceb04356ea1caaf56dc5fd20217ea54
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:53:42 2012 +0100

    import.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit e180abb9b32f7e48449be79536083debf2529544
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:46:05 2012 +0100

    imputation_budgetaire.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 895ca4de5850b83df7867ffb44efc25b1a603504
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:42:52 2012 +0100

    gsb_file.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 5963b1b5e410396b8ba0cbb07a446ee3600a76a7
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:26:36 2012 +0100

    navigation.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit fb59df3962eb1dba63ac402ccaac2f0a9ee756a8
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:23:57 2012 +0100

    parametres.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 3ea29c97478681a7eb8484f190fa69050491818f
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:15:21 2012 +0100

    tiers_onglet.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit f0aeeeff45418f4b80fd2e23156570a7a7a5401a
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:14:52 2012 +0100

    transaction_list.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit d30f161ff8a47467ebf7de7d1f98596e49c02707
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:09:55 2012 +0100

    utils.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit faf9e5434b11e04aaeb7a9d45d08ce14cf67943e
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 21:04:58 2012 +0100

    gsb_assistant_first.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit e87492c90b44e566267dc2b845b5a6abd9516641
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 20:54:37 2012 +0100

    gsb_assistant_archive_export.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit f2dfb7336754bb1722620eb9459574d5ead90c36
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 20:47:40 2012 +0100

    gsb_assistant_archive.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 24c68a2a2492d14ca3a85ae210fad4e14488b8bd
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 20:37:52 2012 +0100

    gsb_archive_config.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit edabd54d7a76a395b7f77632921007e86569af3f
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 20:17:15 2012 +0100

    erreur.c: Changes requested by the change in the gsb_conf_t structure and menu change

commit 26f52436c63b20ea8cd31bd4a2d38555386ba91a
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 20:15:15 2012 +0100

    categories_onglet.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 2c83a2a577a54bb9f552c7ff528963d8481183cd
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 20:14:45 2012 +0100

    bet_tab.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 18a83ecd09dacdd7b26eb146a2e24de9a8dc2e9c
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 18:59:04 2012 +0100

    bet_future.c : Changes requested by the change in the gsb_conf_t structure and minor changes

commit 0e3623f979e6c4cc43d7415057b29b556b032c73
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 18:54:55 2012 +0100

    affichage_list.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 8e4bba2ce8915e6615397a185915162a1a71cd92
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 18:54:09 2012 +0100

    affichage.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 6a60dc09341ef59b01f218dd0a97a90258aa12b7
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Feb 4 18:25:54 2012 +0100

    accueil.c: Changes requested by the change in the gsb_conf_t structure and minor changes

commit 820a7cafcd18b9dabc3d62e8fa07e68d52c353f7
Author: pbiava <pierre.biava at nerim.net>
Date:   Mon Jan 30 20:25:50 2012 +0100

    update string

commit 3be7ddf5fc77163615f1d71889a01f263b6a75ab
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Jan 29 12:39:05 2012 +0100

    update all strings

commit 3f0a4607c1a466d7a36525bb35cd9865e50eaa0e
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Jan 29 12:03:14 2012 +0100

    fr.po: update strings

commit cf7310cdc5c3005be2599974957d4a1db120dc6f
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Jan 29 11:13:23 2012 +0100

    bet_tab.c: deleting sub-menu "Delete selection" for the planned transactions

commit f4548b432785df02c34e2a9be4feb54b9db553c1
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Jan 28 19:18:05 2012 +0100

    transaction_list.c: fixes a crash when the Credit or Debit columns do not exist

commit b72adeaaba0adaab6310fc4681eba6d5060704f0
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Jan 28 17:43:06 2012 +0100

    bet_tab.c: Add a label for check button

commit 0bd043cbe938cecf30b5703a2b792f6b80b6174e
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Jan 28 12:41:48 2012 +0100

    partial commit for grisbi_app and grisbi_window

commit 1cb1f659475df3aa7ec78be489ebf495d81354ff
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Jan 28 12:40:37 2012 +0100

    deleting largeur_auto_colonnes variable

commit 31de52f93a8550ed463a4596b4839417123e40de
Author: pbiava <pierre.biava at nerim.net>
Date:   Sat Jan 28 12:38:04 2012 +0100

    add grisbi_ui.h and ui/grisbi_ui.xml

commit fa6d3a6e9451de87e7e5d5f19f2b8de34cd96f91
Author: pbiava <pierre.biava at nerim.net>
Date:   Sun Jan 22 22:39:16 2012 +0100

    adding grisbi_app.c grisbi_app.h grisbi_window.c grisbi_window.h

-----------------------------------------------------------------------

Changes:
diff --git a/po/POTFILES.in b/po/POTFILES.in
index d68e62a..c446170 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -30,6 +30,7 @@ src/fenetre_principale.c
 src/file_obfuscate.c
 src/file_obfuscate_qif.c
 src/grisbi_osx.c
+src/grisbi_ui.h
 src/gsb_account.c
 src/gsb_account_property.c
 src/gsb_archive_config.c
@@ -139,6 +140,7 @@ src/utils_file_selection.c
 src/utils_font.c
 src/utils_operations.c
 src/utils_str.c
+src/ui/grisbi_ui.xml
 [type: gettext/glade]src/ui/bet_graph.ui
 [type: gettext/glade]src/ui/etats_config.ui
 [type: gettext/glade]src/ui/grisbi.ui
diff --git a/po/cs.po b/po/cs.po
index 0a6db49..04798dc 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: cs\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2011-02-19 01:39+0100\n"
 "Last-Translator: Markus7cz <markus7cz at gmail.com>\n"
 "Language-Team: \n"
@@ -211,7 +211,7 @@ msgstr "Druh účtu"
 msgid "Currency"
 msgstr "Měna"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Písma a loga"
 
@@ -251,7 +251,7 @@ msgstr "Výběr barvy"
 msgid "Back to default"
 msgstr "Zpět k výchozím"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adresy a názvy"
 
@@ -476,7 +476,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr "Maximum položek v rozbalovacích seznamech (0 bez limitu): "
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "Chování seznamu transakcí"
@@ -501,7 +501,7 @@ msgstr "Měsíc"
 msgid "Year"
 msgstr "Rok"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr "Obecné volby"
 
@@ -535,7 +535,7 @@ msgstr "dnešní datum"
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr "Poznámka: toto nastavení platí pro prognózy bez počátečního data"
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr "Detaily účtu"
 
@@ -815,13 +815,13 @@ msgstr "Zobrazit rozpis amortizace od začátku"
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 msgid "Print the array"
 msgstr "Vytisknout tabulku"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 msgid "Export the array"
 msgstr "Exportovat tabulku"
 
@@ -880,12 +880,12 @@ msgstr "Amortizace"
 msgid "Credits"
 msgstr "Půjčky"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Tisk"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -895,7 +895,7 @@ msgstr "Export"
 msgid "credit.csv"
 msgstr "pujcka.csv"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Nelze uložit soubor."
@@ -1256,6 +1256,11 @@ msgstr "zůstatek na začátku období"
 msgid "Start date: "
 msgstr "Počáteční datum: "
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automaticky"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr "Zaškrtněte pro automatickou změnu počátečního data"
@@ -1273,7 +1278,7 @@ msgid "Balance"
 msgstr "Zůstatek"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1295,70 +1300,70 @@ msgstr "Připočíst k zůstatku"
 msgid "Insert Row"
 msgstr "Vložit řádek"
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr "Odstranit výběr"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr "Změnit výběr"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr "Odstranit všechny výskyty výběru"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr "Změnit výběr na plánovanou transakci"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr "Vložte saldo hotovostního účtu"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr "Vynulovat data"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr " (stále k dispozici)"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr " (rozpočet překročen)"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr " (zbývá k příjmu)"
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr "Žádná výchozí data"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Žádná kategorie"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Žádný rozpočet"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr "Exportovat tabulku prognózy"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 msgid "Balance at "
 msgstr "Zůstatek k "
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr "prognoza.csv"
 
@@ -1446,7 +1451,7 @@ msgstr "Vytvořit novou podkategorii"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Import"
 
@@ -2111,7 +2116,7 @@ msgstr "Fiskální rok"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Metoda platby"
 
@@ -2529,13 +2534,13 @@ msgid "Generalities"
 msgstr "Hlavní"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Transakce"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Měny"
 
@@ -2574,7 +2579,7 @@ msgstr "Obsah seznamu transakcí"
 msgid "Transactions display"
 msgstr "Přehled transakcí"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Měny pro součty"
 
@@ -2991,7 +2996,7 @@ msgstr "Podrozpočet"
 msgid "Reconciliation number"
 msgstr "Číslo odsouhlasení"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Přehled"
 
@@ -3008,7 +3013,7 @@ msgid "Amortization array"
 msgstr "Tabulka amortizace"
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Plánovač"
 
@@ -3219,6 +3224,39 @@ msgstr "Soubor '%s' byl úspěšně uložen"
 msgid "File '%s' could not be saved"
 msgstr "Nepodařilo se uložit soubor '%s'"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Soubor"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Nový soubor účtů..."
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Otevřít..."
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Naposledy otvřené soubory"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "_Importovat soubor..."
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "_Uložit"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "_Uložit jako..."
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3377,7 +3415,7 @@ msgid "Report name"
 msgstr "Název sestavy"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Archivy"
 
@@ -3971,7 +4009,7 @@ msgstr "Název souboru: "
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Zašifrovat soubor Grisbi"
 
@@ -4080,11 +4118,11 @@ msgid "General configuration of Grisbi"
 msgstr "Základní nastavení Grisbi"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Web"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 msgid "Web browser command: "
 msgstr "Příkaz webového prohlížeče: "
 
@@ -4093,43 +4131,43 @@ msgstr "Příkaz webového prohlížeče: "
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr "Můžete použít %s na určení URL např.: 'firefox -remote %s'"
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Operace se soubory"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Při startu automaticky načíst poslední soubor"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Automaticky uložit při ukončení"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Vytvořit záložní kopii před otevřením souboru"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Vytvořit záložní kopii každých "
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr " minut"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 msgid "Backup directory: "
 msgstr "Složka zálohy: "
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Vyberte/vytvořte složku pro zálohy"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Odsouhlasení"
 
@@ -4402,7 +4440,7 @@ msgstr "Přidat novou banku"
 msgid "Contact name"
 msgstr "Jméno kontaktu"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banky"
 
@@ -6637,7 +6675,7 @@ msgstr ""
 "pod jiným názvem, nebo povolte volbu \"%s\" v Možnostech."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Vynutit uložení uzamčených souborů"
 
@@ -6670,7 +6708,7 @@ msgstr ""
 "zrušit tuto akci a uložit jej pod jiným jménem, nebo v Možnostech aktivovat "
 "volbu \"%s\"."
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "nepojmenovaný"
 
@@ -6729,7 +6767,7 @@ msgstr ""
 "<b>Skutečně chcete odstranit soubor:\n"
 "%s ?</b>"
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Nelze uložit konfigurační soubor '%s': %s"
@@ -7085,57 +7123,57 @@ msgstr ""
 "Jste si jist(a)?"
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr "Nastavit formulář"
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Formulář transakcí"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Ukázka struktury formuláře"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Obsah struktury formuláře"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Sl. 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Sl. 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Sl. 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Sl. 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Sl. 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Sl. 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "řádky"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "sloupce"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7143,11 +7181,11 @@ msgstr ""
 "Element nelze kvůli nedostatku místa umístit. Pro přidání elementu musíte "
 "zvýšit počet řádků nebo sloupců."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "Tabulka je plná"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7168,10 +7206,6 @@ msgstr ""
 "Funkce změní velikost tabulky na správné hodnoty, ale je potřeb ověřit toto "
 "varování."
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automaticky"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Zvolte účet"
@@ -7216,7 +7250,7 @@ msgstr "Číslo transakce"
 msgid "Automatic/Manual"
 msgstr "Automaticky / Ručně"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Fiskální roky"
 
@@ -7521,7 +7555,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Odstranit odsouhlasení"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Řadit pro odsouhlasení"
 
@@ -7731,7 +7765,7 @@ msgid "Execute transaction"
 msgstr "Provést transakci"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Součet: %s (odchylka: %s)"
@@ -8515,7 +8549,7 @@ msgstr "Podle data pohybu (při neúspěchu zkusit datum transakce)"
 msgid "Manage import associations"
 msgstr "Nastavit párování při importu"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr "Párování při importu"
 
@@ -8845,72 +8879,43 @@ msgstr "Spravovat podrozpočet"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Přesunout všechny transakce do jiného podrozpočtu"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Zobrazit _tři řádky na transakci"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Režim ladění"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Chyba sigaction: SIGSEGV nebude zachycen\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr "Verze Grisbi %s, %s\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 #, fuzzy
 msgid "- Personnal finances manager"
 msgstr "Osobní správce financí"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Soubor"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Nový soubor účtů..."
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Otevřít..."
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Naposledy otvřené soubory"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "_Uložit"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "_Uložit jako..."
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "_Importovat soubor..."
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "_Exportovat účty jako soubor QIF/CSV..."
@@ -9324,134 +9329,134 @@ msgid "Remove this report"
 msgstr "Odstranit pravidlo"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Možnosti Grisbi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Hlavní"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Soubory"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programy"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 msgid "Localization"
 msgstr "Lokalizace"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Zobrazení"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Zprávy a varování"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr "Plátci/příjemci, kategorie a rozpočty"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Chování seznamu"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr "Dotazy před odstraněním"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Obsah"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Chování"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Dokončování"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Zdroje"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Směnné kurzy"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Odhadovaný zůstatek"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Tip dne"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Zobrazit tip dne"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Zobrazit následující varovné zprávy"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Zpráva"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr "Zobrazit následující zprávy"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Komprimovat soubor Grisbi"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr "Pamatovat si poslední otevřené soubory: "
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Zálohování"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr "Vytvořit jeden záložní soubor"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Komprimovat zálohu Grisbi"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Vytvořit záložní kopii po otevření souboru"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 msgid "Config file"
 msgstr "Konfigurační soubor"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr "Použít konfigurační soubor stabilní verze jako předlohu"
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
@@ -9460,75 +9465,75 @@ msgstr ""
 "Můžete použít %s na určení URL např.:\n"
 "'firefox -remote %s'"
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Oznámení plánovače při spuštění Grisbi"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Oznámit / provést plánované transakce k datu splatnosti"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Oznámit / provést plánované transakce pro měsíc"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr "Počet dní před oznámením nebo provedením: "
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr "Možnosti řazení transakcí"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr "podle čísla"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr "vzestupně dle data"
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr "sestupně dle data"
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 msgid "Expand the line"
 msgstr "Zobrazit detail"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 msgid "Edit the line"
 msgstr "Upravovat řádek"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 msgid "Manage the line"
 msgstr "Změnit řádek"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 msgid "Choose the date format"
 msgstr "Zvolte formát data"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 msgid "Date format"
 msgstr "Formát data"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr "Oddělovač desetin: "
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr "Oddělovač tisíců: "
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr "Zvolte oddělovače desetin a tisíců"
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr "Oddělovače desetin a tisíců"
 
@@ -10308,7 +10313,7 @@ msgstr "Zobrazit tipy při příštím startu"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
@@ -10316,7 +10321,7 @@ msgstr ""
 "Zkuste změnit viditelné řádky pomocí transaction_list_set. Neměly by se "
 "připojit! Zkuste to."
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/da.po b/po/da.po
index 58cafcd..fad91e3 100644
--- a/po/da.po
+++ b/po/da.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: da\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2006-03-25 13:23+0100\n"
 "Last-Translator: Dmitri Popov <dmpop at openoffice.org>\n"
 "Language-Team: \n"
@@ -218,7 +218,7 @@ msgstr "Kontonavn"
 msgid "Currency"
 msgstr "Valuta"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Skrifttyper & logoer"
 
@@ -261,7 +261,7 @@ msgstr ""
 msgid "Back to default"
 msgstr ""
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adresser og overskrifter"
 
@@ -504,7 +504,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "Overførselsformular"
@@ -530,7 +530,7 @@ msgstr "MÃ¥neder"
 msgid "Year"
 msgstr ""
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Generelt"
@@ -570,7 +570,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Kontooplysninger"
@@ -869,14 +869,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Printer"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Printer"
@@ -942,12 +942,12 @@ msgstr "Eksportér kategorier"
 msgid "Credits"
 msgstr "Kredit"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -958,7 +958,7 @@ msgstr "Eksportér"
 msgid "credit.csv"
 msgstr "Kredit"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr ""
@@ -1330,6 +1330,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Start:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automatisk"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1347,7 +1352,7 @@ msgid "Balance"
 msgstr "Balance"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1368,75 +1373,75 @@ msgstr "Balancer"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Lukkede planlagte transaktioner"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Lukkede planlagte transaktioner"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Lukkede planlagte transaktioner"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Opret en planlagt transaktion"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr ""
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr ""
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr ""
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr ""
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Ingen kategori"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr ""
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr ""
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Balance"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1520,7 +1525,7 @@ msgstr "Giv den nye underkategori et navn"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importér"
 
@@ -2174,7 +2179,7 @@ msgstr "Regnskabsår"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr ""
 
@@ -2590,13 +2595,13 @@ msgid "Generalities"
 msgstr ""
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr ""
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Valutaer"
 
@@ -2640,7 +2645,7 @@ msgstr "Transaktionsnummer"
 msgid "Transactions display"
 msgstr "Overførselsformular"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 #, fuzzy
 msgid "Totals currencies"
 msgstr "Kendte valutaer"
@@ -3043,7 +3048,7 @@ msgstr "Budgetlinje"
 msgid "Reconciliation number"
 msgstr "Transaktionsnummer"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Hovedside"
 
@@ -3061,7 +3066,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr ""
 
@@ -3243,6 +3248,45 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr ""
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "Fil"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "Ny kontofil"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "Åbn"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr ""
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "Eksportér QIF-fil"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "Gem"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "Gem som"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3408,7 +3452,7 @@ msgid "Report name"
 msgstr ""
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr ""
 
@@ -3921,7 +3965,7 @@ msgstr "Indehaver:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4008,12 +4052,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "Website"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Webbrowser:"
@@ -4023,45 +4067,45 @@ msgstr "Webbrowser:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr ""
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr ""
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr ""
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "Noter"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Backup-fil:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr ""
 
@@ -4303,7 +4347,7 @@ msgstr "Ny bank"
 msgid "Contact name"
 msgstr "Kontaktpersonens navn"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banker"
 
@@ -6534,7 +6578,7 @@ msgid ""
 msgstr ""
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr ""
 
@@ -6565,7 +6609,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "unavngivet"
 
@@ -6617,7 +6661,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr ""
@@ -6944,67 +6988,67 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Overførselsformular"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Vis formularstruktur"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Kol 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Kol 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Kol 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Kol 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Kol 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Kol 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "rækker"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "kolonner"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "Tabellen er fuld"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7019,10 +7063,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automatisk"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Vælg konto"
@@ -7069,7 +7109,7 @@ msgstr "Transaktionsnummer"
 msgid "Automatic/Manual"
 msgstr "Automatisk/Manuelt"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr ""
 
@@ -7366,7 +7406,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Vis afstemte transaktioner"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "Vis afstemte transaktioner"
@@ -7586,7 +7626,7 @@ msgid "Execute transaction"
 msgstr "Kontotransaktioner"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Total %s: %s (%d transaktioner)"
@@ -8327,7 +8367,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Yderligere info"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Eksportér kategorier"
@@ -8664,76 +8704,41 @@ msgstr "Budgetlinje"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Fly transaktioner til kategori"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Vis 3 linjer per transaktion"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 msgid "Debug mode: level 0-5"
 msgstr ""
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr ""
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "Fil"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "Ny kontofil"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "Åbn"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr ""
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "Gem"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "Gem som"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "Eksportér QIF-fil"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9174,226 +9179,226 @@ msgid "Remove this report"
 msgstr "Fjern kategori"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr ""
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Symbol"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Filer"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programmer"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Eksportér kategorier"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr ""
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Beskeder og advarsler"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr ""
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Beskeder og advarsler"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "Kontaktperson"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Ressourcer"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "Valutaer"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "Balance"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "Advarsler"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr ""
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Advarsler"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr ""
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Backup"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr ""
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr ""
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Gem fil"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr ""
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Opret en planlagt transaktion"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr ""
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "4 linjer per transaktion"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "Check/Øverførselsnr."
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Lukkede planlagte transaktioner"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Balancer"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Lukkede planlagte transaktioner"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Vælg konto"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Eksportér"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr ""
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10079,13 +10084,13 @@ msgstr "Vis transaktioner"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/de.po b/po/de.po
index 5323bbf..ce04d2a 100644
--- a/po/de.po
+++ b/po/de.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: de\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2011-12-25 18:16+0100\n"
 "Last-Translator: Martin Stromberger <mstromberger at aon.at>\n"
 "Language-Team: deutsch <de at li.org>\n"
@@ -213,7 +213,7 @@ msgstr "Kontoart"
 msgid "Currency"
 msgstr "Währung"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Schrift & Farben"
 
@@ -253,7 +253,7 @@ msgstr "Farbe auswählen - Grisbi"
 msgid "Back to default"
 msgstr "Voreinstellung"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Bezeichnung & Adressen"
 
@@ -478,7 +478,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr "Maximale Einträge in der Auswahlliste [0 für kein Limit]: "
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Buchungsübersicht Zellen"
 
@@ -500,7 +500,7 @@ msgstr "Monat"
 msgid "Year"
 msgstr "Jahr"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr "Allgemein"
 
@@ -536,7 +536,7 @@ msgstr ""
 "Bemerkung: Diese Einstellung wird herangezogen wenn kein Beginndatum für die "
 "Prognose vorhanden ist."
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr "Konten Einstellungen"
 
@@ -818,13 +818,13 @@ msgstr "Tilgungen geplant vom Anfang anzeigen"
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 msgid "Print the array"
 msgstr "Auflistung Drucken"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 msgid "Export the array"
 msgstr "Auflistung Exportieren"
 
@@ -883,12 +883,12 @@ msgstr "Rückzahlung"
 msgid "Credits"
 msgstr "Einnahmen"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Drucken"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -898,7 +898,7 @@ msgstr "Export"
 msgid "credit.csv"
 msgstr "credit.csv"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Datei kann nicht gespeichert werden."
@@ -1256,6 +1256,11 @@ msgstr "Saldo Anfangsperiode"
 msgid "Start date: "
 msgstr "Beginndatum: "
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "automatisch"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1274,7 +1279,7 @@ msgid "Balance"
 msgstr "Saldo"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1294,70 +1299,70 @@ msgstr "Zum Saldo hinzufügen"
 msgid "Insert Row"
 msgstr "Zeile einfügen"
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr "Auswahl löschen"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr "Auswahl ändern"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr "Ein oder alle Vorkommen von der Auswahl löschen"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr "Buchung regelmäßig ausführen"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr "Den Saldo von einem Bargeldkonto eingeben"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr "Daten zurücksetzen"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr " (weiterhin verfügbar)"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr " (Budget überschritten)"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr " (noch nicht verfügbar)"
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr "Keine Daten per Voreinstellung"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Keine Kategorie"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Kein Budgeteintrag"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr "Prognose exportieren - Grisbi"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 msgid "Balance at "
 msgstr "Bilanz am "
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr "forecast.csv"
 
@@ -1447,7 +1452,7 @@ msgstr "Eine neue Unterkategorie erstellen"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Import"
 
@@ -2116,7 +2121,7 @@ msgstr "Geschäftsjahr"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Zahlungsweisen"
 
@@ -2534,13 +2539,13 @@ msgid "Generalities"
 msgstr "Allgemein"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Buchungen"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Währungen"
 
@@ -2579,7 +2584,7 @@ msgstr "Buchung Text"
 msgid "Transactions display"
 msgstr "Buchungen auflisten"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Währungen"
 
@@ -2998,7 +3003,7 @@ msgstr "Teil-Budgeteinträge"
 msgid "Reconciliation number"
 msgstr "Abstimmung Nr."
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Startseite"
 
@@ -3015,7 +3020,7 @@ msgid "Amortization array"
 msgstr "Rückzahlung Auflistung"
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Planer"
 
@@ -3234,6 +3239,39 @@ msgstr "Die Datei '%s' wurde erfolgreich gespeichert"
 msgid "File '%s' could not be saved"
 msgstr "Die Datei '%s' konnte nicht gespeichert werden"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Datei"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Neue Datei"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Öffnen ..."
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Zuletzt geöffnete Dateien"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "Datei _importieren ..."
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "_Speichern"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "_Speichern unter ..."
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3393,7 +3431,7 @@ msgid "Report name"
 msgstr "Bericht Name"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Archive"
 
@@ -3997,7 +4035,7 @@ msgstr "Dateiname: "
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Datei verschlüsseln"
 
@@ -4110,11 +4148,11 @@ msgid "General configuration of Grisbi"
 msgstr "Allgemeine Einstellungen"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Internet"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 msgid "Web browser command: "
 msgstr "Webbrowser: "
 
@@ -4123,43 +4161,43 @@ msgstr "Webbrowser: "
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr "Mit %s die URL übergeben - z.B.: 'firefox -remote %s' "
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Dateien"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Die letzte Datei automatisch öffnen"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Beim Beenden automatisch speichern"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Vor dem Speichern eine Sicherung erstellen"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Eine Sicherung alle "
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr " Minuten"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 msgid "Backup directory: "
 msgstr "Verzeichnis für Sicherungen: "
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Verzeichnis für Sicherungen - Grisbi"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Abstimmung"
 
@@ -4441,7 +4479,7 @@ msgstr "Eine neue Bank hinzufügen"
 msgid "Contact name"
 msgstr "Ansprechperson"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banken"
 
@@ -6701,7 +6739,7 @@ msgstr ""
 "Option \"%s\" in den Einstellungen."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Das Speichern von gesperrten Dateien erzwingen"
 
@@ -6734,7 +6772,7 @@ msgstr ""
 "speichern wollen, müssen Sie den Vorgang abbrechen und die Datei unter einem "
 "anderen Namen speichern oder die Option \"%s\" in den Einstellungen setzen."
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "Unbenannt"
 
@@ -6792,7 +6830,7 @@ msgstr ""
 "<b>>Soll diese Datei gelöscht werden:\n"
 "%s ?</b>"
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Die Konfiguration kann nicht gespeichert werden '%s': %s"
@@ -7158,57 +7196,57 @@ msgstr ""
 "Soll der Vorgang fortgesetzt werden?"
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr "Buchungsformular Einstellungen"
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Buchungsformular"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Buchungsformular Vorschau"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Inhalt Buchungsformular"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Spalte 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Spalte 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Spalte 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Spalte 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Spalte 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Spalte 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "Zeilen"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "Spalten"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7217,11 +7255,11 @@ msgstr ""
 "die Anzahl der Spalten oder Zeilen erhöhen, damit alle Elemente angezeigt "
 "werden können."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "Die Tabelle ist voll"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7244,10 +7282,6 @@ msgstr ""
 "Diese Funktion wird die Tabelle automatisch anpassen, jedoch sollten Sie "
 "weitere Warnungen beachten."
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "automatisch"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Konto auswählen"
@@ -7292,7 +7326,7 @@ msgstr "Buchungsnummer"
 msgid "Automatic/Manual"
 msgstr "Automatisch/Manuell"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Geschäftsjahre"
 
@@ -7599,7 +7633,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Abstimmung löschen"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Abstimmung sortieren"
 
@@ -7810,7 +7844,7 @@ msgid "Execute transaction"
 msgstr "Buchung ausführen"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Gesamt : %s (variiert : %s)"
@@ -8619,7 +8653,7 @@ msgstr "entsprechend Datum der Durchführung"
 msgid "Manage import associations"
 msgstr "Zuordnungen verwalten"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr "Zuordnungen"
 
@@ -8952,72 +8986,43 @@ msgstr "Teil-Budgeteintrag verwalten"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Alle Buchungen einem anderen Teil-Budgeteintrag zuordnen"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "_3 Zeilen pro Buchung"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Debug-Modus starten"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Fehler bei der Sigaktion. SIGSEGV wird nicht eingeschlossen\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr "Grisbi Version %s, %s\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 #, fuzzy
 msgid "- Personnal finances manager"
 msgstr "Finanzprogramm für Privatpersonen"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Datei"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Neue Datei"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Öffnen ..."
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Zuletzt geöffnete Dateien"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "_Speichern"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "_Speichern unter ..."
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "Datei _importieren ..."
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "Datei _exportieren ..."
@@ -9422,214 +9427,214 @@ msgid "Remove this report"
 msgstr "Bericht entfernen"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Einstellungen - Grisbi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Allgemein"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Dateien"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programme"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 msgid "Localization"
 msgstr "Datum & Beträge"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Anzeigeoptionen"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Tipps & Warnungen"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr "Währungen & Sortierung"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr "Werkzeugleisten & Navigation"
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Einstellungen"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr "Löschrückfragen"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Darstellung"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Einstellungen"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Vervollständigung"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Finanzdaten"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Währungsvergleich"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Prognosen"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Tipp des Tages"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Den Tipp des Tages anzeigen"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Folgende Warnungen anzeigen"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Meldung"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr "Folgende Meldungen anzeigen"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Datei komprimieren"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr "Dateihistorie Anzahl: "
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Sicherungen"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr "Für Sicherungen nur eine Datei anlegen"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Sicherung komprimieren"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Nach dem Öffnen eine Sicherung erstellen"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 msgid "Config file"
 msgstr "Konfigurationsdatei"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 "Die Konfigurationsdatei von einer älteren Grisbi-Version als Vorlage "
 "verwenden"
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr "Mit %s die URL übergeben - z.B.: 'firefox -remote %s'"
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Planer Meldungen"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 "am Fälligkeitsdatum einen Hin d transactions arriving at expiration date"       : "  )"      ges  s   s  anges      r	|ã‘+  PÁmrÿ         ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 weis anzeigen und die geplante Buchung ausführen"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr ""
 "für geplante Buchungen vom Monat einen Hinweis anzeigen und die Buchungen "
 "ausführen"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr "Hinweis für eine geplante Buchung in Tagen davor anzeigen: "
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr "Sortierung"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr "nach Nummer"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr "nach Datum aufsteigend"
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr "nach Datum absteigend"
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 msgid "Expand the line"
 msgstr "Zeile expandieren"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 msgid "Edit the line"
 msgstr "Zeile bearbeiten"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 msgid "Manage the line"
 msgstr "Zeile verwalten"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 msgid "Choose the date format"
 msgstr "Datumsformat auswählen"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 msgid "Date format"
 msgstr "Datumsformat"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr "Dezimal-Zeichen: "
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr "Tausender-Zeichen: "
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr "Dezimal und Tausender-Zeichen auswählen"
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr "Dezimal und Tausender-Zeichen"
 
@@ -10442,7 +10447,7 @@ msgstr "Tipps beim nächsten Start anzeigen"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
@@ -10450,7 +10455,7 @@ msgstr ""
 "Es wurde versucht eine sichtbare Linie in der Buchungsliste zu ändern. Diese "
 "Funktionalität sollte im Regelfall nicht möglich sein."
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/el.po b/po/el.po
index 588c0e6..8cad71f 100644
--- a/po/el.po
+++ b/po/el.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Grisbi 0.5.9\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2009-04-13 14:53+0200\n"
 "Last-Translator: \n"
 "Language-Team: KASKAS <ttnfy17 at yahoo.gr>\n"
@@ -227,7 +227,7 @@ msgstr "Όνομα λογαριασμού"
 msgid "Currency"
 msgstr "Νόμισμα"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Πηγές & λογότυπο"
 
@@ -268,7 +268,7 @@ msgstr "Επιλογή του χρώματος"
 msgid "Back to default"
 msgstr "Πίσω στην προεπιλογή"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Διευθύνσεις & τίτλοι"
 
@@ -511,7 +511,7 @@ msgstr ""
 "για κανένα όριο):"
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "Συμπεριφορά καταλόγων συναλλαγής"
@@ -536,7 +536,7 @@ msgstr "Μήνας"
 msgid "Year"
 msgstr "Χρόνος"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Γενικότητες"
@@ -576,7 +576,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Λεπτομέρειες λογαριασμού"
@@ -877,14 +877,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Εκτυπωτής"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Εκτυπωτής"
@@ -950,12 +950,12 @@ msgstr "Σειρά εκτίμησης"
 msgid "Credits"
 msgstr "Πίστωση"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Εκτύπωση"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -966,7 +966,7 @@ msgstr "Εξαγωγή"
 msgid "credit.csv"
 msgstr "Πίστωση"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Αδύνατη η αποθήκευση αρχείου"
@@ -1335,6 +1335,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Έναρξη:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Αυτόματος"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1352,7 +1357,7 @@ msgid "Balance"
 msgstr "Ισορροπία"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1373,80 +1378,80 @@ msgstr "Αρχική ισορροπία"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Επιλογή ημερομηνίας"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Επιλογή ημερομηνίας"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Διαγράψτε την επιλεγμένη σχεδιασμένη συναλλαγή"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Μετατρέψτε τη συναλλαγή στη σχεδιασμένη συναλλαγή"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Αδύνατη η εκροή της μεταφοράς σε έναν κλειστό λογαριασμό"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr ""
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 #, fuzzy
 msgid " (still available)"
 msgstr "Καμία περιγραφή διαθέσιμη"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "Δεν καθορίζεται κανένας προϋπολογισμός."
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Πίσω στην προεπιλογή"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Καμία κατηγορία"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Καμία δημοσιονομική γραμμή"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Εξάγετε τις δημοσιονομικές γραμμές"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Ισορροπία"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1535,7 +1540,7 @@ msgstr "Δημιουργήστε μια νέα υποκατηγορία"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Εισαγωγή"
 
@@ -2228,7 +2233,7 @@ msgstr "Οικονομικό έτος"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Μέθοδοι πληρωμής"
 
@@ -2652,13 +2657,13 @@ msgid "Generalities"
 msgstr "Γενικότητες"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Συναλλαγές"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Νομίσματα"
 
@@ -2697,7 +2702,7 @@ msgstr "Περιεχόμενο συναλλαγής"
 msgid "Transactions display"
 msgstr "Εμφάνιση συναλλαγών"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Σύνολα νομισμάτων"
 
@@ -3123,7 +3128,7 @@ msgstr "Υπο--δημοσιονομικές γραμμές"
 msgid "Reconciliation number"
 msgstr "Αριθμός συμφωνίας"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Κύρια σελίδα"
 
@@ -3142,7 +3147,7 @@ msgid "Amortization array"
 msgstr "Σειρά εκτίμησης"
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Χρονοπρογραμματιστής"
 
@@ -3355,6 +3360,39 @@ msgstr "Αρχείο '%s' επιτυχώς σωζόμενο"
 msgid "File '%s' could not be saved"
 msgstr "Το αρχείο '%s' δεν  μπορούσε να σωθεί"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Αρχείο"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Αρχείο νέου λογαριασμού"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Άνοιγμα"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Πρόσφατα ανοιγμένα αρχεία"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "_Εισαγωγή αρχείου..."
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "_Αποθήκευση"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "_Αποθήκευση ως..."
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3529,7 +3567,7 @@ msgid "Report name"
 msgstr "Όνομα εκθέσεων"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Αρχεία"
 
@@ -4172,7 +4210,7 @@ msgstr "Όνομα αρχείου:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Κρυπτογραφήστε το αρχείο Grisbi"
 
@@ -4284,11 +4322,11 @@ msgid "General configuration of Grisbi"
 msgstr "Γενική διαμόρφωση Grisbi"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Ιστός"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Εντολή μηχανών αναζήτησης Ιστού:"
@@ -4300,44 +4338,44 @@ msgstr ""
 "Μπορείτε να χρησιμοποιήσετε το %s για να επεκτείνετε το URL - I.e: 'firefox -"
 "remote %s' "
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Χειρισμός αρχείων λογαριασμού"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Αυτόματη φόρτωση τελευταίου αρχείου στο ξεκίνημα"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Αυτόματη αποθήκευση κατά την έξοδο"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Κάντε ένα εφεδρικό αντίγραφο πρίν αποθηκεύσετε τα αρχεία"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Κάντε ένα εφεδρικό αντίγραφο κάθε"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr "Λεπτά"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Εφεδρικός κατάλογος:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Επιλογή/Δημιουργία εφεδρικού καταλόγου"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Συμφωνία"
 
@@ -4627,7 +4665,7 @@ msgstr "Προσθέστε νέα τράπεζα"
 msgid "Contact name"
 msgstr "Όνομα επικοινωνίας"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Τράπεζες"
 
@@ -6942,7 +6980,7 @@ msgstr ""
 "προτιμήσεις."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Αναγκαστική αποθήκευση κλειδωμένων αρχείων"
 
@@ -6975,7 +7013,7 @@ msgstr ""
 "πρέπει να το ακυρώσετε και το σώζετε με ένα άλλο όνομα ή ενεργοποιείτε την "
 "επιλογή \"%s\" στην οργάνωση."
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "απροσδιόριστος"
 
@@ -7032,7 +7070,7 @@ msgstr ""
 "\n"
 "<b>Θέλετε να συνεχίσετε;</b>"
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Αδύνατη η αποθήκευση του αρχείου διαμόρφωσης '%s': %s"
@@ -7402,57 +7440,57 @@ msgstr ""
 "Είστε βέβαιοι;"
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr "Διαμορφώστε τη μορφή"
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Μορφή συναλλαγής"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Πρόβλεψη δομών μορφής"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Περιεχόμενο δομών μορφής"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Col 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Col 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Col 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Col 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Col 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Col 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "σειρές"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "στήλες"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7460,11 +7498,11 @@ msgstr ""
 "Δεν υπάρχει καμία  θέση να μπεί το στοιχείο. Πρέπει να αυξήσετε τον αριθμό "
 "σειρών ή στηλών για να προσθέσετε ένα στοιχείο."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "Ο πίνακας είναι πλήρης"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7486,10 +7524,6 @@ msgstr ""
 "Η λειτουργία θα επαναταξινομήσει τον πίνακα στις σωστές τιμές αλλά πρέπει να "
 "ελέγξετε εκείνη την προειδοποίηση."
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Αυτόματος"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Επιλέξτε τον λογαριασμό"
@@ -7534,7 +7568,7 @@ msgstr "Αριθμός συναλλαγής"
 msgid "Automatic/Manual"
 msgstr "Αυτόματος/εγχειρίδιο"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Οικονομικά έτη"
 
@@ -7854,7 +7888,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Δημιουργήστε την νέα συμφωνία"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Κατηγοριοποίηση για συμφωνία"
 
@@ -8073,7 +8107,7 @@ msgid "Execute transaction"
 msgstr "Διαγραφή της συναλλαγής"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Σύνολο: %s (διαφορά: %s)"
@@ -8893,7 +8927,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Αυτόματη ένωση έναρξης"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Εισαγωγή κατηγοριών"
@@ -9232,72 +9266,43 @@ msgstr "υπο--δημοσιονομική γραμμή"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Συναλλαγές μεταφοράς %s"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Παρουσιάστε _τρεις γραμμές  ανά συναλλαγή"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Εκκινήστε την διαδικασία διόρθωσης"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Λάθος στο sigaction: SIGSEGV δεν  είναι παγιδευμένο\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr "Έκδοση Grisbi %s, %s\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 #, fuzzy
 msgid "- Personnal finances manager"
 msgstr "Προσωπικός διευθυντής χρηματοδότησης για τον καθέναν\n"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Αρχείο"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Αρχείο νέου λογαριασμού"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Άνοιγμα"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Πρόσφατα ανοιγμένα αρχεία"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "_Αποθήκευση"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "_Αποθήκευση ως..."
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "_Εισαγωγή αρχείου..."
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "_Εξαγωγή λογαριασμών ως αρχείο QIF/CSV..."
@@ -9714,141 +9719,141 @@ msgid "Remove this report"
 msgstr "Διαγράψτε τον κανόνα"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Προτιμήσεις Grisbi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Κύριος"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Αρχεία"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Προγράμματα"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Συμφωνία"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Εμφάνιση"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Μηνύματα & προειδοποιήσεις"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "Απόκρυψη ονομάτων κατηγοριών"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Συμπεριφορά καταλόγων"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Μηνύματα & προειδοποιήσεις"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Περιεχόμενο"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Συμπεριφορά"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Ολοκλήρωση"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Πόροι"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Συνδέσεις νομισμάτων"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Εκτίμηση ισορροπίας"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Συμβουλή της ημέρας"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Εμφάνιση συμβουλής της ημέρας"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Εμφάνιση των ακόλουθων μηνυμάτων προειδοποίησης"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Μήνυμα"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Εμφάνιση των ακόλουθων μηνυμάτων προειδοποίησης"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Συμπίεση αρχείου Grisbi"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Απομνημονεύστε τα τελευταία ανοιγμένα αρχεία:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Αντίγραφα"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Κάντε ένα εφεδρικό αντίγραφο κάθε"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Συμπίεση αντιγράφων Grisbi"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Κάνετε ένα εφεδρικό αντίγραφο μετά το άνοιγμα των αρχείων"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Σώζοντας το αρχείο"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, fuzzy, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
@@ -9857,87 +9862,87 @@ msgstr ""
 "Μπορείτε να χρησιμοποιήσετε το %s για να επεκτείνετε το URL - I.e: 'firefox -"
 "remote %s' "
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Προειδοποιήσεις χρονοπρογραμματιστών στο άνοιγμα Grisbi"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 "Προειδοποιείστε/εκτελέστε τις σχεδιασμένες συναλλαγές φθάνοντας στην "
 "ημερομηνία λήξης"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Προειδοποιήστε/εκτελέστε τις σχεδιασμένες συναλλαγές του μήνα"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "Αριθμός ημερών πριν από την προειδοποίηση ή την εκτέλεση:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "Επιβεβαίωση της εισαγωγής των συναλλαγών"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "Αριθμός δικαιούχων πληρωμής"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Επιλογή ημερομηνίας"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Αρχική ισορροπία"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Επιλογή ημερομηνίας"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Επιλέξτε τον λογαριασμό"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Τύπος αρχείου"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Χωρισμός στοιχείων:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 #, fuzzy
 msgid "Thousands separator: "
 msgstr "Επιλέξτε το διαχωριστή CSV:"
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10660,7 +10665,7 @@ msgstr "Εμφάνιση συμβουλών στην επόμενη εκκίνη
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
@@ -10668,7 +10673,7 @@ msgstr ""
 "Προσπαθήστε να αλλάξετε μια ορατή γραμμή από το transaction_list_set. Δεν "
 "πρέπει να επισυναφθεί! Ελέγξτε το."
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/eo.po b/po/eo.po
index 5437ebc..f7df3b8 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: eo\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2009-06-28 20:04+0200\n"
 "Last-Translator: Cyril Castelbou <cyril.castelbou at free.fr>\n"
 "Language-Team: esperanto <eo at li.org>\n"
@@ -203,7 +203,7 @@ msgstr ""
 msgid "Currency"
 msgstr ""
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr ""
 
@@ -243,7 +243,7 @@ msgstr ""
 msgid "Back to default"
 msgstr ""
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr ""
 
@@ -467,7 +467,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr ""
 
@@ -489,7 +489,7 @@ msgstr ""
 msgid "Year"
 msgstr ""
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr ""
 
@@ -523,7 +523,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr ""
 
@@ -795,13 +795,13 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 msgid "Print the array"
 msgstr ""
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 msgid "Export the array"
 msgstr ""
 
@@ -860,12 +860,12 @@ msgstr ""
 msgid "Credits"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -875,7 +875,7 @@ msgstr ""
 msgid "credit.csv"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr ""
@@ -1226,6 +1226,11 @@ msgstr ""
 msgid "Start date: "
 msgstr ""
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr ""
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1243,7 +1248,7 @@ msgid "Balance"
 msgstr ""
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1263,70 +1268,70 @@ msgstr ""
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr ""
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr ""
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr ""
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr ""
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr ""
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr ""
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr ""
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr ""
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr ""
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr ""
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr ""
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 msgid "Balance at "
 msgstr ""
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1404,7 +1409,7 @@ msgstr ""
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr ""
 
@@ -2028,7 +2033,7 @@ msgstr ""
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr ""
 
@@ -2431,13 +2436,13 @@ msgid "Generalities"
 msgstr ""
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr ""
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr ""
 
@@ -2476,7 +2481,7 @@ msgstr ""
 msgid "Transactions display"
 msgstr ""
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr ""
 
@@ -2865,7 +2870,7 @@ msgstr ""
 msgid "Reconciliation number"
 msgstr ""
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr ""
 
@@ -2882,7 +2887,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr ""
 
@@ -3051,6 +3056,39 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr ""
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr ""
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr ""
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr ""
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr ""
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3202,7 +3240,7 @@ msgid "Report name"
 msgstr ""
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr ""
 
@@ -3691,7 +3729,7 @@ msgstr ""
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -3773,11 +3811,11 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 msgid "Web browser command: "
 msgstr ""
 
@@ -3786,43 +3824,43 @@ msgstr ""
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr ""
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr ""
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr ""
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 msgid "Backup directory: "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr ""
 
@@ -4053,7 +4091,7 @@ msgstr ""
 msgid "Contact name"
 msgstr ""
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr ""
 
@@ -6211,7 +6249,7 @@ msgid ""
 msgstr ""
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr ""
 
@@ -6241,7 +6279,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr ""
 
@@ -6293,7 +6331,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr ""
@@ -6611,67 +6649,67 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr ""
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr ""
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr ""
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr ""
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr ""
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr ""
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr ""
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr ""
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr ""
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -6686,10 +6724,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr ""
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr ""
@@ -6734,7 +6768,7 @@ msgstr ""
 msgid "Automatic/Manual"
 msgstr ""
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr ""
 
@@ -7010,7 +7044,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr ""
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr ""
 
@@ -7213,7 +7247,7 @@ msgid "Execute transaction"
 msgstr ""
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr ""
@@ -7909,7 +7943,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr ""
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr ""
 
@@ -8215,69 +8249,40 @@ msgstr ""
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr ""
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 msgid "Show the application's version"
 msgstr ""
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 msgid "Debug mode: level 0-5"
 msgstr ""
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr ""
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr ""
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr ""
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr ""
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr ""
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr ""
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr ""
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr ""
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr ""
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr ""
@@ -8671,209 +8676,209 @@ msgid "Remove this report"
 msgstr ""
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr ""
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr ""
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr ""
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr ""
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 msgid "Localization"
 msgstr ""
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr ""
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr ""
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr ""
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr ""
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr ""
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr ""
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr ""
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr ""
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr ""
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr ""
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr ""
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr ""
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr ""
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr ""
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr ""
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 msgid "Config file"
 msgstr ""
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr ""
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr ""
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr ""
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr ""
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr ""
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 msgid "Expand the line"
 msgstr ""
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 msgid "Edit the line"
 msgstr ""
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 msgid "Manage the line"
 msgstr ""
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 msgid "Choose the date format"
 msgstr ""
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 msgid "Date format"
 msgstr ""
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr ""
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -9523,13 +9528,13 @@ msgstr ""
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/es.po b/po/es.po
index caa02f1..f4862dd 100644
--- a/po/es.po
+++ b/po/es.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: es\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2010-05-09 11:48+0100\n"
 "Last-Translator: Carlos M. Cámara Mora <cmcamara at gmail.com>\n"
 "Language-Team: Spanish <es at li.org>\n"
@@ -212,7 +212,7 @@ msgstr "Tipo de cuenta"
 msgid "Currency"
 msgstr "Moneda"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Fuentes y logotipo"
 
@@ -253,7 +253,7 @@ msgstr "Escogiendo un color"
 msgid "Back to default"
 msgstr "Volver a los valores por defecto"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Direcciones y títulos"
 
@@ -486,7 +486,7 @@ msgstr ""
 "ilimitado): "
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "Comportamiento de la lista de transacciones"
@@ -511,7 +511,7 @@ msgstr "Mes"
 msgid "Year"
 msgstr "Año"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr "Opciones Generales"
 
@@ -548,7 +548,7 @@ msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 "Nota: Esta opción se usa si no hay una fecha de inicio para las predicciones."
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr "Datos de la cuenta"
 
@@ -839,14 +839,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Impresora"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Impresora"
@@ -912,12 +912,12 @@ msgstr "Estimar tabla"
 msgid "Credits"
 msgstr "Crédito"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Imprimir"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -928,7 +928,7 @@ msgstr "Exportar"
 msgid "credit.csv"
 msgstr "Crédito"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "No puedo guardar el archivo."
@@ -1292,6 +1292,11 @@ msgstr "Balance al comienzo del periodo"
 msgid "Start date: "
 msgstr "Fecha de comienzo:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automático"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr "Marque la casilla para cambiar automáticamente la fecha de comienzo"
@@ -1309,7 +1314,7 @@ msgid "Balance"
 msgstr "Balance"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1331,72 +1336,72 @@ msgstr "Añadiendo al balance"
 msgid "Insert Row"
 msgstr "Insertar una Fila"
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr "Borrar selección"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr "Cambiar selección"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr "Borrar todas las ocurrencias de la selección"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr "Convertir la selección en un transacción programada"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr "Inserte el balance de una cuenta de efectivo"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr "Reiniciar datos"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr "(aun disponible)"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr "(presupuesto excedido)"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr "(sí a recibir)"
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr "Sin valores por defecto"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Sin categoría"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Sin línea presupuestaria"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Exportar las líneas presupuestarias"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Balance "
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 #, fuzzy
 msgid "forecast.csv"
 msgstr "Predicción"
@@ -1486,7 +1491,7 @@ msgstr "Crear una nueva subcategoría"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importar"
 
@@ -2164,7 +2169,7 @@ msgstr "Año financiero"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Formas de pago"
 
@@ -2585,13 +2590,13 @@ msgid "Generalities"
 msgstr "Generalidades"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Transacciones"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Monedas"
 
@@ -2630,7 +2635,7 @@ msgstr "Contenido de las transacciones"
 msgid "Transactions display"
 msgstr "Formato de las transacciones"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Monedas totales"
 
@@ -3053,7 +3058,7 @@ msgstr "Líneas subpresupuestarias"
 msgid "Reconciliation number"
 msgstr "Número reconciliación"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Página principal"
 
@@ -3071,7 +3076,7 @@ msgid "Amortization array"
 msgstr "Estimar tabla"
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Planificador"
 
@@ -3284,6 +3289,39 @@ msgstr "El fichero '%s' se ha guardado con éxito"
 msgid "File '%s' could not be saved"
 msgstr "El fichero '%s' no pudo ser guardado"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Archivo"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Nuevo archivo de cuentas..."
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Abrir..."
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Archivos abiertos recientemente"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "_Importar archivo"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "_Guardar"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "_Guardar como..."
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3444,7 +3482,7 @@ msgid "Report name"
 msgstr "Nombre del informe"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Archivos"
 
@@ -4046,7 +4084,7 @@ msgstr "Nombre del fichero: "
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Encriptar el archivo de Grisbi"
 
@@ -4160,11 +4198,11 @@ msgid "General configuration of Grisbi"
 msgstr "Configuración general de Grisbi"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Web"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 msgid "Web browser command: "
 msgstr "Comando para el navegador web: "
 
@@ -4173,43 +4211,43 @@ msgstr "Comando para el navegador web: "
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr "Podrá usar %s para cargar la URL. EJ: 'firefox -remote %s' "
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Manejo de los archivos de cuentas"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Cargar automáticamente el último archivo abierto al inicio"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Guardar automáticamente al salir"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Hacer una copia de seguridad antes de guardar los archivos"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Hacer una copia de seguridad cada "
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr "minutos"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 msgid "Backup directory: "
 msgstr "Directorio de copias de seguridad: "
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Seleccionar/Crear un directorio de copias de seguridad"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Reconciliación"
 
@@ -4497,7 +4535,7 @@ msgstr "Añadir un nuevo banco"
 msgid "Contact name"
 msgstr "Nombre de contacto"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Bancos"
 
@@ -6763,7 +6801,7 @@ msgstr ""
 "guárdelo con otro nombre o active la opción \"%s\" en la configuración."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Forzar guardar en los fichero bloqueados"
 
@@ -6796,7 +6834,7 @@ msgstr ""
 "debe cancelar y guardarlo con otro nombre o activar la  opción \"%s\" en la "
 "configuración."
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "Sin nombre"
 
@@ -6853,7 +6891,7 @@ msgstr ""
 "<b>¿ Quiere borrar este fichero:\n"
 "%s ?</b>"
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "No se puede guardar el fichero de configuración '%s': %s"
@@ -7216,57 +7254,57 @@ msgstr ""
 "¿ Está seguro ?"
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr "Configurar el formulario"
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Formulario de transacción"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Vista previa de la estructura del formulario"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Contenido de la estructura del formulario"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Col 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Col 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Col 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Col 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Col 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Col 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "Filas"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "columnas"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7274,11 +7312,11 @@ msgstr ""
 "No hay sitio suficiente para poner el elemento. Necesita aumentar el número "
 "de filas o columnas para añadir un elemento."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "La tabla está llena"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7300,10 +7338,6 @@ msgstr ""
 "La función cambiará el tamaño de la tabla a los valores correctos pero "
 "debería comprobar esta advertencia."
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automático"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Elegir la cuenta"
@@ -7348,7 +7382,7 @@ msgstr "Número de transacción"
 msgid "Automatic/Manual"
 msgstr "Automático/Manual"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Años financieros"
 
@@ -7661,7 +7695,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Borrar reconciliación"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Orden para la reconciliación"
 
@@ -7877,7 +7911,7 @@ msgid "Execute transaction"
 msgstr "Ejecutar la transacción"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Total : %s (variación : %s)"
@@ -8681,7 +8715,7 @@ msgstr "De acuerdo con la fecha valor (si fall, intentar con la fecha)"
 msgid "Manage import associations"
 msgstr "Administrar la importación de asociaciones"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr "Importar asociaciones"
 
@@ -9019,72 +9053,43 @@ msgstr "línea subpresupuestaria"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Transferir las transacciones a %s"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Muestra _tres líneas por transacción"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Mode de depuración"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Error en sigaction: SIGSEGV no será interrumpido\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr "Grisbi versión %s, %s\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 #, fuzzy
 msgid "- Personnal finances manager"
 msgstr "Gestor de finanzas personal para todo el mundo\n"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Archivo"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Nuevo archivo de cuentas..."
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Abrir..."
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Archivos abiertos recientemente"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "_Guardar"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "_Guardar como..."
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "_Importar archivo"
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "_Exportar Cuentas como archivo QIF/CSV ..."
@@ -9496,138 +9501,138 @@ msgid "Remove this report"
 msgstr "Eliminar la regla"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Preferencias de grisbi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Principal"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Archivos"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programas"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Reconciliación"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Mostrar"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Mensajes y Avisos"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr "Terceros, categorías y presupuestos"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Comportamiento de la lista"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr "Mensajes antes del borrado"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Contenido"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Comportamiento"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Autocompletado"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Recursos"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Tasas de cambio entre monedas"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Balance estimado"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Consejo del día"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Mostrar el consejo del día"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Mostrar los siguientes mensajes de advertencia"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Mensaje"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr "Mostrar los siguientes mensajes"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Comprimir el fichero de Grisbi"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Recordar los últimos archivos abiertos:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Copias de seguridad"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr "Hacer un único fichero de respaldo"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Comprimir la copia de seguridad de Grisbi"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Hacer una copia de seguridad antes de abrir los archivos"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Guardando archivo"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 #, fuzzy
 msgid "Use the config file of version stable as model"
 msgstr "Borrar el fichero de configuración de una versión anterior"
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the U figuración de una versión anterior"  n."  r con la fecha)"  action_list_set. Δεν "  ½Î±"  ην "  ι να "  ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 RL I.e:\n"
@@ -9636,84 +9641,84 @@ msgstr ""
 "Podrá usar %s para cargar la URL. EJ:\n"
 "'firefox -remote %s' "
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Avisos del programador de tareas al iniciar Grisbi"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 "Aviso/Ejecutar la transacción programada actual si está en la fecha de "
 "vencimiento"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Aviso/Ejecutar las transacciones programadas del mes"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr "Número de días antes del mensaje de aviso o de la ejecución: "
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr "Opción para ordenar las transacciones"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr "por número"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 #, fuzzy
 msgid "by increasing date"
 msgstr "No se encuentran los datos"
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Cambiar selección"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Añadiendo al balance"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Cambiar selección"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Elegir la cuenta"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Formato de archivo"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr "Separación de datos: "
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 #, fuzzy
 msgid "Thousands separator: "
 msgstr "Elija un separador CSV: "
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10496,7 +10501,7 @@ msgstr "Mostrar consejos al iniciar la próxima vez"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
@@ -10504,7 +10509,7 @@ msgstr ""
 "Intente cambiar una línea visible por transaction_list_set ¡ Debería "
 "añadirlo !Comprobar eso."
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/fa.po b/po/fa.po
index e6372bf..0ee0dfb 100644
--- a/po/fa.po
+++ b/po/fa.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: girisbi VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2008-10-02 10:07+0330\n"
 "Last-Translator: hadi <hadi60 at gmail.com>\n"
 "Language-Team: farsi <en at li.org>\n"
@@ -214,7 +214,7 @@ msgstr "حساب ها"
 msgid "Currency"
 msgstr "واحد"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr ""
 
@@ -258,7 +258,7 @@ msgstr ""
 msgid "Back to default"
 msgstr ""
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "آدرس و عنوان"
 
@@ -495,7 +495,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "تراکنش"
@@ -521,7 +521,7 @@ msgstr "ماه ها"
 msgid "Year"
 msgstr "سال"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "عمومی"
@@ -558,7 +558,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "حسابها"
@@ -851,14 +851,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "پرینتر"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "پرینتر"
@@ -924,12 +924,12 @@ msgstr "توضیحات"
 msgid "Credits"
 msgstr "ماه جاری"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "پرینت"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -940,7 +940,7 @@ msgstr "صادر"
 msgid "credit.csv"
 msgstr "ماه جاری"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "فایل ذخیره نشد."
@@ -1304,6 +1304,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "شروع:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "اتوماتیک"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1321,7 +1326,7 @@ msgid "Balance"
 msgstr ""
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1342,74 +1347,74 @@ msgstr "جزئیات بانک"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "توضیحات"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "توضیحات"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "جستجوی تراکنش"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "جستجوی تراکنش"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr ""
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr ""
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr ""
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr ""
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr ""
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr ""
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr ""
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 msgid "Balance at "
 msgstr ""
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1489,7 +1494,7 @@ msgstr ""
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr ""
 
@@ -2129,7 +2134,7 @@ msgstr ""
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr ""
 
@@ -2537,13 +2542,13 @@ msgid "Generalities"
 msgstr ""
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr ""
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr ""
 
@@ -2586,7 +2591,7 @@ msgstr "تراکنش"
 msgid "Transactions display"
 msgstr "تراکنش"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr ""
 
@@ -2985,7 +2990,7 @@ msgstr ""
 msgid "Reconciliation number"
 msgstr ""
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr ""
 
@@ -3002,7 +3007,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr ""
 
@@ -3178,6 +3183,39 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr ""
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "فایل"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr ""
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "ذخیره"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr ""
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3339,7 +3377,7 @@ msgid "Report name"
 msgstr ""
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "فعال سازی"
@@ -3850,7 +3888,7 @@ msgstr "نام فایل:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -3934,12 +3972,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "وب سایت"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "مرورگر:"
@@ -3949,45 +3987,45 @@ msgstr "مرورگر:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr ""
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr ""
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr ""
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "درآمد ها"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "فایل پشتیبان:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr ""
 
@@ -4221,7 +4259,7 @@ msgstr ""
 msgid "Contact name"
 msgstr "نام"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "بانک ها"
 
@@ -6450,7 +6488,7 @@ msgid ""
 msgstr ""
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr ""
 
@@ -6481,7 +6519,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "بی نام"
 
@@ -6533,7 +6571,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr ""
@@ -6857,67 +6895,67 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr ""
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr ""
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr ""
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr ""
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr ""
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr ""
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr ""
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr ""
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr ""
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -6932,10 +6970,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "اتوماتیک"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr ""
@@ -6982,7 +7016,7 @@ msgstr ""
 msgid "Automatic/Manual"
 msgstr ""
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr ""
 
@@ -7271,7 +7305,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "حساب حذف شده"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr ""
 
@@ -7481,7 +7515,7 @@ msgid "Execute transaction"
 msgstr "جستجوی تراکنش"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr ""
@@ -8206,7 +8240,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "جستجوی تراکنش"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "توضیحات"
@@ -8529,69 +8563,40 @@ msgstr "بخش های درآمد"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "جستجوی تراکنش"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 msgid "Show the application's version"
 msgstr ""
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 msgid "Debug mode: level 0-5"
 msgstr ""
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr ""
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr ""
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "فایل"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr ""
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr ""
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr ""
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "ذخیره"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr ""
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr ""
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr ""
@@ -8997,223 +9002,223 @@ msgid "Remove this report"
 msgstr "حذف گزارش"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr ""
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "ایمیل"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "فایل ها"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr ""
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "توضیحات"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "نمایش"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr ""
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "بخش های درآمد"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr ""
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "ارتباط"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr ""
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "نام واحد"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr ""
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "پیغام هشدار"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr ""
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "پیغام هشدار"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr ""
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "پشتیبان ها"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr ""
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr ""
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "فایل CSV"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr ""
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "جستجوی تراکنش"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr ""
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "حذف تراکنش"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr ""
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "توضیحات"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "جزئیات بانک"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "توضیحات"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 msgid "Choose the date format"
 msgstr ""
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "نام فایل"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr ""
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -9878,13 +9883,13 @@ msgstr ""
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/fr.po b/po/fr.po
index 9dd86f2..1aba441 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -14,7 +14,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: fr\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2012-01-01 22:48+0100\n"
 "Last-Translator: Pierre Biava <pierre at pierre.biava.name>\n"
 "Language-Team: GNOME French Team <gnomefr at traduc.org>\n"
@@ -218,7 +218,7 @@ msgstr "Type de compte"
 msgid "Currency"
 msgstr "Devise"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Polices et logo"
 
@@ -258,7 +258,7 @@ msgstr "Choisissez une couleur"
 msgid "Back to default"
 msgstr "Restaurer les réglages par défaut"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adresses et titres"
 
@@ -484,7 +484,7 @@ msgstr ""
 "Nombre maximum de lignes dans les menus déroulants (0 pas de limite) : "
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Cellules de la liste des opérations"
 
@@ -506,7 +506,7 @@ msgstr "Mois"
 msgid "Year"
 msgstr "Année"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr "Généralités"
 
@@ -542,7 +542,7 @@ msgstr ""
 "Note : cette option est utilisée en l'absence d'une date de début pour les "
 "prévisions."
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr "Données des comptes"
 
@@ -824,13 +824,13 @@ msgstr "Afficher le tableau d'amortissement depuis le début"
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 msgid "Print the array"
 msgstr "Imprimer le tableau"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 msgid "Export the array"
 msgstr "Exporter le tableau"
 
@@ -889,12 +889,12 @@ msgstr "Amortissement"
 msgid "Credits"
 msgstr "Crédits"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Imprimer"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -904,7 +904,7 @@ msgstr "Exporter"
 msgid "credit.csv"
 msgstr "crédit.csv"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Impossible d'enregistrer le fichier."
@@ -1261,6 +1261,11 @@ msgstr "Solde initial de la période"
 msgid "Start date: "
 msgstr "Date de départ : "
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automatique"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr "Cochez la case pour changer automatiquement de date de début"
@@ -1278,7 +1283,7 @@ msgid "Balance"
 msgstr "Solde"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1300,70 +1305,70 @@ msgstr "Ajouter au solde"
 msgid "Insert Row"
 msgstr "Insérer une ligne"
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr "Supprimer la ligne"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr "Modifier la ligne"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr "Supprimer toutes les occurences de la ligne"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr "Convertir la ligne en opération planifiée"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr "Insérer le solde d'un compte de caisse"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr "Réinitialiser les données"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr " (reste à utiliser)"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr " (budget dépassé)"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr " (reste à recevoir)"
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr "Pas de donnée disponible par défaut"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Pas de catégorie"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Pas d'imputation budgétaire"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr "Exporter les prévisions"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 msgid "Balance at "
 msgstr "Solde au "
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr "prévisions.csv"
 
@@ -1452,7 +1457,7 @@ msgstr "Créer une nouvelle sous-catégorie"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importer"
 
@@ -2126,7 +2131,7 @@ msgstr "Exercice"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Modes de règlement"
 
@@ -2545,13 +2550,13 @@ msgid "Generalities"
 msgstr "Généralités"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Opérations"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Devises"
 
@@ -2590,7 +2595,7 @@ msgstr "Contenu de l'opération"
 msgid "Transactions display"
 msgstr "Afficher les opérations"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Devises des totaux"
 
@@ -3009,7 +3014,7 @@ msgstr "Sous-imputations budgétaires"
 msgid "Reconciliation number"
 msgstr "N° de rapprochement"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Accueil"
 
@@ -3026,7 +3031,7 @@ msgid "Amortization array"
 msgstr "Tableau d'amortissement"
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Échéancier"
 
@@ -3244,6 +3249,39 @@ msgstr "Le fichier %s a été enregistré avec succès"
 msgid "File '%s' could not be saved"
 msgstr "Le fichier %s ne peut pas être sauvegardé"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Fichier"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Nouveau fichier de compte"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Ouvrir..."
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Derniers fichiers"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "_Importer un fichier..."
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "_Enregistrer"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "Enregistrer _sous..."
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3404,7 +3442,7 @@ msgid "Report name"
 msgstr "Nom de l'état"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Archives"
 
@@ -4001,7 +4039,7 @@ msgstr "Nom du fichier : "
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Chiffrer le fichier Grisbi"
 
@@ -4109,11 +4147,11 @@ msgid "General configuration of Grisbi"
 msgstr "Généralités"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Web"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 msgid "Web browser command: "
 msgstr "Navigateur Web : "
 
@@ -4124,43 +4162,43 @@ msgstr ""
 "En cas de non fonctionnement vous pouvez essayer de mettre %s\n"
 "Exemple : 'firefox -remote %s'"
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Gestion des fichiers de comptes"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Chargement automatique du dernier fichier consulté"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Enregistrer automatiquement en fermant"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Effectuer une copie de sauvegarde avant d'enregistrer les fichiers"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Effectuer une copie de sauvegarde toutes les "
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr " minutes"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 msgid "Backup directory: "
 msgstr "Répertoire de sauvegarde : "
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Sélectionner/Créer un répertoire de sauvegarde"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Rapprochement"
 
@@ -4444,7 +4482,7 @@ msgstr "Ajouter une nouvelle banque"
 msgid "Contact name"
 msgstr "Correspondant"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banques"
 
@@ -6704,7 +6742,7 @@ msgstr ""
 "les préférences."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Forcer l'enregistrement des fichiers verrouillés"
 
@@ -6737,7 +6775,7 @@ msgstr ""
 "l'enregistrer, vous devez annuler et le sauvegarder sous un autre nom ou "
 "alors activer l'option « %s » dans les préférences."
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "sans nom"
 
@@ -6796,7 +6834,7 @@ msgstr ""
 "<b>Voulez-vous supprimer ce fichier :\n"
 "%s ?</b>"
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Impossible d'enregistrer le fichier de configuration « %s » : %s"
@@ -7166,57 +7204,57 @@ msgstr ""
 "Etes vous certain ?"
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr "Configurer le formulaire"
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Formulaire des opérations"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Prévisualisation de la structure du formulaire"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Contenu de la structure du formulaire"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Col 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Col 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Col 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Col 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Col 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Col 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "lignes"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "colonnes"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7224,11 +7262,11 @@ msgstr ""
 "Il n'y a pas assez de place pour mettre l'élément.  Vous devez augmenter le "
 "nombre de lignes ou de colonnes pour ajouter un élément supplémentaire."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "La table est pleine"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7250,10 +7288,6 @@ msgstr ""
 "La fonction redimensionne la table avec les valeurs correctes, mais vérifiez "
 "le résultat."
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automatique"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Choix du compte affecté"
@@ -7298,7 +7332,7 @@ msgstr "N° opération"
 msgid "Automatic/Manual"
 msgstr "Auto/Manuel"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Exercices"
 
@@ -7604,7 +7638,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Supprimer un rapprochement"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Options de tri pour les rapprochements"
 
@@ -7816,7 +7850,7 @@ msgid "Execute transaction"
 msgstr "Exécuter l'opération"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Total : %s (écart : %s)"
@@ -8606,7 +8640,7 @@ msgstr "Utiliser la date de valeur ou la date de l'opération si non présente"
 msgid "Manage import associations"
 msgstr "Gérer les associations pour l'import"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr "Associations pour l'import"
 
@@ -8930,7 +8964,7 @@ msgstr "Nouvelle sous-imputation"
 
 #: ../src/imputation_budgetaire.c:1114
 msgid "Edit selected sub-budgetary line"
-msgstr "Éditer l'imputation sélectionnée"
+msgstr "Éditer la sous-imputation sélectionnée"
 
 #: ../src/imputation_budgetaire.c:1136
 msgid "Manage sub-budgetary line"
@@ -8938,74 +8972,45 @@ msgstr "Gérer les sous-imputations"
 
 #: ../src/imputation_budgetaire.c:1139
 msgid "Transfer all transactions in another sub-budgetary line"
-msgstr "Transférer les opérations dans une autre sous-catégorie"
+msgstr "Transférer les opérations dans une autre sous-imputation"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 msgid "Show the application's version"
 msgstr "Afficher la version de l'application"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 msgid "Debug mode: level 0-5"
 msgstr "Mode de débogage : niveau de 1 à 5"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr "[FICHIER]"
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Erreur sur sigaction, le signal SIGSEGV ne sera pas détourné\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 "Grisbi version %s, %s\n"
 "\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr "- Gestionnaire de finances personnelles"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 "Grisbi peut gérer les comptes d'une famille ou d'une petite association."
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Fichier"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Nouveau fichier de compte"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Ouvrir..."
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Derniers fichiers"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "_Enregistrer"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "Enregistrer _sous"
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "_Importer un fichier..."
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "_Exporter vers un fichier QIF/CSV..."
@@ -9410,134 +9415,134 @@ msgid "Remove this report"
 msgstr "Supprimer cet état"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Paramètres de Grisbi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Généralités"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Fichiers"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programmes"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 msgid "Localization"
 msgstr "Paramètres régionaux"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Affichage"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Messages et alertes"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr "Tiers, catégories imputations budgétaires"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr "Barres d'outils - Panneau de navigation"
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Comportement de la liste"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr "Messages avant suppression"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Contenu"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Comportement"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Aide à la saisie"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Ressources"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Liens entre devises"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Budget prévisionnel"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Astuce du jour"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Afficher l'astuce du jour"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Afficher les messages ou alertes suivants"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Message"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr "Afficher les messages suivants"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Compresser le fichier Grisbi"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr "Mémorisation des derniers fichiers ouverts : "
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Sauvegardes"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr "Créer un fichier de sauvegarde unique"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Compresser le fichier de sauvegarde"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Effectuer une copie de sauvegarde après avoir ouvert les fichiers"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 msgid "Config file"
 msgstr "Fichier de configuration"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr "Utiliser le fichier de configuration de la version stable comme modèle"
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
@@ -9546,75 +9551,75 @@ msgstr ""
 "Eventuellement vous pouvez essayer de mettre %s.\n"
 "Exemple 'firefox -remote %s'"
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Alertes de l'échéancier"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Alerter/Exécuter les opérations planifiées arrivées à terme"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Alerter/Exécuter les opérations planifiées du mois"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr "Nombre de jours avant l'alerte ou l'exécution des opérations : "
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr "Options de tri pour les opérations"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr "Par numéro"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr "par date croissante"
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr "par date décroissante"
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr "Action associée au double clic sur une sous-catégorie ou sous-IB : "
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 msgid "Expand the line"
 msgstr "Développer la ligne"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 msgid "Edit the line"
 msgstr "Editer la ligne"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 msgid "Manage the line"
 msgstr "Gérer la ligne"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 msgid "Choose the date format"
 msgstr "Choisir le format de la date"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 msgid "Date format"
 msgstr "Format de la date"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr "Séparateur décimal : "
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr "Séparateur de milliers : "
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr "Choisir le séparateur décimal et le séparateur de milliers"
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr "Séparateur décimal et séparateur de milliers"
 
@@ -10420,7 +10425,7 @@ msgstr "Afficher l'astuce lors du prochain démarrage"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
@@ -10428,7 +10433,7 @@ msgstr ""
 "Essai de changer une ligne visible par la fonction transaction_list_set. "
 "Cela ne devrait pas arriver ! On recherche pourquoi"
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/he.po b/po/he.po
index 598e873..2653b5e 100644
--- a/po/he.po
+++ b/po/he.po
@@ -283,7 +283,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: he\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2006-02-11 16:08+0200\n"
 "Last-Translator: dotan\n"
 "Language-Team: <en at li.org>\n"
@@ -497,7 +497,7 @@ msgstr "שם חשבון"
 msgid "Currency"
 msgstr "מטבע"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "גופנים ולוגו"
 
@@ -543,7 +543,7 @@ msgstr "בדיקה"
 msgid "Back to default"
 msgstr "חזרה אל הגדרות ברירת המחדל"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "כתובות וכותרות"
 
@@ -789,7 +789,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "תאי רשימת העיסקאות"
 
@@ -814,7 +814,7 @@ msgstr "חודשים"
 msgid "Year"
 msgstr "שנה"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "כללי"
@@ -854,7 +854,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "פרטי חשבון"
@@ -1156,14 +1156,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "מדפסת"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "מדפסת"
@@ -1229,12 +1229,12 @@ msgstr "פעולה"
 msgid "Credits"
 msgstr "זכות"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "הדפסה"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -1245,7 +1245,7 @@ msgstr "ייצוא"
 msgid "credit.csv"
 msgstr "זכות"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "לא ניתן לשמור את הקובץ."
@@ -1623,6 +1623,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "התחלה:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "אוטומטי"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1640,7 +1645,7 @@ msgid "Balance"
 msgstr "מאזן"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1661,80 +1666,80 @@ msgstr "יתרת פתיחה"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "בחירת מידע"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "בחירת מידע"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "מחיקת עיסקה מתוכננת"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "המרת העיסקה לעיסקה מתוזמנת"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "לא ניתן לבצע העברה בחשבון סגור."
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "תאריך אחרון"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "אין קו תקציב"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "חזרה אל הגדרות ברירת המחדל"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "אין קטגוריה"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "ללא קו תקציב"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "ייצוא קווי התקציב"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "מאזן"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1821,7 +1826,7 @@ msgstr "נא להזין שם עבור תת-הקטגוריה החדשה"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "ייבוא"
 
@@ -2493,7 +2498,7 @@ msgstr "שנת הכספים"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "דרכי תשלום"
 
@@ -2927,13 +2932,13 @@ msgid "Generalities"
 msgstr "כללי"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "עיסקאות"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "מטבעות"
 
@@ -2977,7 +2982,7 @@ msgstr "תכולת רשימת העיסקאות"
 msgid "Transactions display"
 msgstr "רשימת העיסקאות"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "סך כל המטבעות"
 
@@ -3401,7 +3406,7 @@ msgstr "תתי-קוי תקציב"
 msgid "Reconciliation number"
 msgstr "מספר תיאום"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "עמוד ראשי"
 
@@ -3419,7 +3424,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "תיזמון עיסקאות"
 
@@ -3610,6 +3615,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "לא ניתן לייבא את הקובץ \"%s\" "
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "קובץ"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "קובץ חשבונות חדש"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "_פתיחה"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "קבצים שנפתחו לאחרונה"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "ייצוא קבצים"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "שמירה"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "שמירה בשם"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3779,7 +3824,7 @@ msgid "Report name"
 msgstr "שם דו\"ח"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "הפעלה"
@@ -4309,7 +4354,7 @@ msgstr "שם המיקום:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4397,12 +4442,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "אתר אינטרנט"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "דפדפן:"
@@ -4412,46 +4457,46 @@ msgstr "דפדפן:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "טיפול בקבצי חשבונות"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "לטעון את הקובץ האחרון שהיה בעבודה עם עליית התוכנה"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "שמירת הקובץ אוטומטית עם היציאה"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "יצירת עותק גיבוי לפני שמירת קבצים"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "יצירת עותק גיבוי לפני שמירת קבצים"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "הערה"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "קובץ גיבוי:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "התאמה"
 
@@ -4697,7 +4742,7 @@ msgstr "בנק חדש"
 msgid "Contact name"
 msgstr "שם הקשר"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "בנקים"
 
@@ -6965,7 +7010,7 @@ msgstr ""
 "\"%s\" אשר נמצאת מתחת."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "שמירה בכוח של קבצים נעולים"
 
@@ -6997,7 +7042,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "ללא שם"
 
@@ -7049,7 +7094,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "לא ניתן לשמור את הקובץ '%s': %s"
@@ -7394,75 +7439,75 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "טופס העברה"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "טור1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "טור2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "טור3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "טור4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "טור5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "טור6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "עיון"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "חשבונות"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7477,10 +7522,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "אוטומטי"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "בחירת החשבון"
@@ -7529,7 +7570,7 @@ msgstr "מספר עיסקה"
 msgid "Automatic/Manual"
 msgstr "אוטומטי"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "שנות כספים"
 
@@ -7841,7 +7882,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "יצירת חשבון חדש"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "התאמה"
@@ -8066,7 +8107,7 @@ msgid "Execute transaction"
 msgstr "מחיקת עיסקה"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "סך הכל %s: %s (%d עיסקאות)"
@@ -8829,7 +8870,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "פירוט קטגוריות"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "פעולה"
@@ -9176,78 +9217,42 @@ msgstr "ללא תת-קו תקציב"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "להעביר את העיסקאות אל"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "3 שורות לכל עיסקה"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Debug file"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Error on sigaction: SIGSEGV won't be trapped\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "גריסבי"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "קובץ"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "קובץ חשבונות חדש"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "_פתיחה"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "קבצים שנפתחו לאחרונה"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "שמירה"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "שמירה בשם"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "ייצוא קבצים"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9695,235 +9700,235 @@ msgid "Remove this report"
 msgstr "הסרת דו\"ח"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "העדפות"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "ספרד"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "קבצים"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "תוכנות"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "התאמה"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "תצוגה"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "הודעות ואזהרות"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "נא להזין קו תקציב!"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "הודעות ואזהרות"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "קשר"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "מקורות"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "מטבעות"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "יתרות"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "הודעות אזהרה"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "רישום ההודעה ליומן"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "הודעות אזהרה"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "זכירת הקבצים האחרונים שנפתחו:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "גיבויים"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "יצירת עותק גיבוי לפני שמירת קבצים"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "יצירת עותק גיבוי לאחר פתיחת קבצים"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "שמירת קובץ"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "התראות המתזמן"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "העברות שנקבעו ידנית בתאריך יעד"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "העברות שנקבעו ידנית בתאריך יעד"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "מספר הימים להודיע לפני עיסקה מתוזמנת:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "פורמט עיסקאות"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "מספר ההמחאה"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a doubl ×¢ לפני עיסקה מתוזמנת:"    ית התוכנה"   ist_set. Δεν "  ½Î±"  ην "  ι να "  ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 e click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "בחירת מידע"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "יתרת פתיחה"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "בחירת מידע"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "בחירת החשבון"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "ייצוא דו\"ח"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "בחירת מידע:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10629,13 +10634,13 @@ msgstr "הצגת עיסקאות"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/it.po b/po/it.po
index a937f3b..ee6c04e 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: it\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2007-04-05 00:03+0000\n"
 "Last-Translator: Fabio Erculiani <fabio.erculiani at gmail.com>\n"
 "Language-Team: Italian <LL at li.org>\n"
@@ -220,7 +220,7 @@ msgstr "Nome conto"
 msgid "Currency"
 msgstr "Moneta"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Caratteri & logo"
 
@@ -266,7 +266,7 @@ msgstr "Controllo"
 msgid "Back to default"
 msgstr "Ripristina i valori predefiniti"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Indirizzi & titoli"
 
@@ -512,7 +512,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Lista delle celle di registrazione"
 
@@ -537,7 +537,7 @@ msgstr "Mesi"
 msgid "Year"
 msgstr "Anno"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Generalità"
@@ -577,7 +577,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Dettagli conto"
@@ -879,14 +879,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Stampante"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Stampante"
@@ -952,12 +952,12 @@ msgstr "Azione"
 msgid "Credits"
 msgstr "Credito"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Stampa"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -968,7 +968,7 @@ msgstr "Esporta"
 msgid "credit.csv"
 msgstr "Credito"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Impossibile salvare il file."
@@ -1346,6 +1346,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "inizio:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automatico"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1363,7 +1368,7 @@ msgid "Balance"
 msgstr "Saldo"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1384,80 +1389,80 @@ msgstr "Bilancio iniziale"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Selezione informazioni"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Selezione informazioni"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Inserisci una transazione pianificata"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Converti la transazione in una transazione schedulata"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Impossible effettuare un trasferimento su un conto chiuso."
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "Ultima data"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "Nessuna linea budget"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Ripristina i valori predefiniti"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Nessuna categoria"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Nessuna linea budget"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Esporta le linee budget"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Saldo"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1544,7 +1549,7 @@ msgstr "Inserire nome per nuova sottocategoria"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importa"
 
@@ -2217,7 +2222,7 @@ msgstr "Esercizio amministrativo"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Metodi di pagamento"
 
@@ -2654,13 +2659,13 @@ msgid "Generalities"
 msgstr "Generalità"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Transazioni"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Monete"
 
@@ -2704,7 +2709,7 @@ msgstr "Lista dei contenuti delle registrazioni"
 msgid "Transactions display"
 msgstr "Lista delle registrazioni"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Monete totali"
 
@@ -3140,7 +3145,7 @@ msgstr "Sotto-budget linee totali"
 msgid "Reconciliation number"
 msgstr "Rif. di riconciliazione"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Pagina principale"
 
@@ -3158,7 +3163,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Schedulatore"
 
@@ -3347,6 +3352,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "Il file \"%s\" non può essere importato."
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "File"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "Nuovo Documenti conti"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "_Apri"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "Documenti recenti"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "Esporta file"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "Salva"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "Salva come"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3516,7 +3561,7 @@ msgid "Report name"
 msgstr "Nome rapporto"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "Attiva"
@@ -4045,7 +4090,7 @@ msgstr "Nome possessore:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4133,12 +4178,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "Indirizzo Internet"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Browser Web:"
@@ -4148,46 +4193,46 @@ msgstr "Browser Web:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Gestione file dei conti"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Carica l'ultimo file aperto all'avvio"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Salva automaticamente all'uscita"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Fai una copia di backup prima di salvare il file"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "Fai una copia di backup prima di salvare il file"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "note"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "File di backup:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Riconciliazione"
 
@@ -4435,7 +4480,7 @@ msgstr "Nuova banca"
 msgid "Contact name"
 msgstr "Corrispondente"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banche"
 
@@ -6687,7 +6732,7 @@ msgstr ""
 "alternativa, scegli un'opzione \"%s\" qui sotto."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Forza il salvataggio dei file bloccati"
 
@@ -6719,7 +6764,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "Senza nome"
 
@@ -6772,7 +6817,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Impossibile salvare il gile '%s': %s"
@@ -7117,75 +7162,75 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Tabella di registrazione"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "Col1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "Col2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "Col3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "Col4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "Col5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "Col6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "Sfoglia"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "Conti"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7200,10 +7245,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automatico"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Scegli conto"
@@ -7252,7 +7293,7 @@ msgstr "Numero di registrazione"
 msgid "Automatic/Manual"
 msgstr "Automatico"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Anni finanziari"
 
@@ -7570,7 +7611,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Crea un nuovo conto"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "Riconciliazione"
@@ -7795,7 +7836,7 @@ msgid "Execute transaction"
 msgstr "Elimina transazione"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Totale %s: %s (%d transazioni)"
@@ -8560,7 +8601,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Dettagli categorie"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Azione"
@@ -8910,77 +8951,41 @@ msgstr "Nessuna linea sotto-budget"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Trasferire la transazione a"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Tre linee per registrazione"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 msgid "Debug mode: level 0-5"
 msgstr ""
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Erorre su sigaction: SIGSEGV non sarà catturato \n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr ""
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "File"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "Nuovo Documenti conti"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "_Apri"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "Documenti recenti"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "Salva"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "Salva come"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "Esporta file"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9427,235 +9432,235 @@ msgid "Remove this report"
 msgstr "Rimuovi rapporto"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "Preferenze"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Spagna"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "File"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programmi"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Riconciliazione"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Visualizza"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Messaggi & segnalazioni"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "Inserisci una linea budget!"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Messaggi & segnalazioni"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "Contatto"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Risorse"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "Monete"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "Bilanci"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "Messaggi di avviso"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "Messaggio registro eventi"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Messaggi di avviso"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Ricorda gli ultimi file aperti:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Backup"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Fai una copia di backup prima di salvare il file"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Fai una copia di backup dopo aver aperto il file"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Salva il File"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Avvisi Schedulatore"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Transazioni manuali pianificate"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Transazioni manuali pianificate"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "Numero di giorni prima che venga avvisata una transazione schedulata:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "Formattazione transazioni"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "il numero dell'assegno"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Selezione informazioni"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Bilancio iniziale"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Selezione informazioni"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Scegli conto"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Esporta rapporto."
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Selezione informazioni:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10366,13 +10371,13 @@ msgstr "Mostra registrazioni"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/lv.po b/po/lv.po
index c77acf0..8d6f145 100644
--- a/po/lv.po
+++ b/po/lv.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: 1.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2010-11-08 20:02+0300\n"
 "Last-Translator: Valdis Vītoliņš <valdis.vitolins at odo.lv>\n"
 "Language-Team: LATVIAN <info at odo.lv>\n"
@@ -215,7 +215,7 @@ msgstr "Konta veids"
 msgid "Currency"
 msgstr "Valūta"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Fonti un logo"
 
@@ -256,7 +256,7 @@ msgstr "Izvēlēties krāsas"
 msgid "Back to default"
 msgstr "Atpakaļ uz noklusēto"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adreses un nosaukumi"
 
@@ -491,7 +491,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr "Maksimālos ierakstus parāda nolaižamajā izvēlnē (0 bez ierobežojuma):"
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "Darījumu saraksta darbība"
@@ -516,7 +516,7 @@ msgstr "Mēnesis"
 msgid "Year"
 msgstr "Gads"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr "Vispārīgas opcijas"
 
@@ -552,7 +552,7 @@ msgstr "Å odienas datums"
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr "Piezīme: Šī iespēja tiek izmantota, ja nav paredzēts sākuma datums."
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr "Kontu dati"
 
@@ -845,14 +845,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Printēt"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Eksportēt budžeta sarakstus"
@@ -918,12 +918,12 @@ msgstr "Importa apvienības"
 msgid "Credits"
 msgstr "Kredīts (ieņēmumi)"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Drukāt"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -934,7 +934,7 @@ msgstr "Eksports"
 msgid "credit.csv"
 msgstr "Kredīts (ieņēmumi)"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Nevar saglabāt failu"
@@ -1300,6 +1300,11 @@ msgstr "Bilance perioda sākumā"
 msgid "Start date: "
 msgstr "Sākuma datums:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automātisks"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr "Atzīmējiet rūtiņu, lai automātiski mainītu datumu"
@@ -1317,7 +1322,7 @@ msgid "Balance"
 msgstr "Bilance"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1339,73 +1344,73 @@ msgstr "Pievienot bilanci"
 msgid "Insert Row"
 msgstr "Ievietot rindas"
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr "Dzēst atlasi"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr "Mainīt atlasi"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr "Dzēst visu atlasi"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr "Pārvērst atlasi uz plānoto darījumu"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Nevar izdot darījumu uz slēgtā konta."
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr "Atiestatīt datumu"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr "(joprojām pieejams)"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr "(pārsniegts budžets)"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr "(vēl jāsaņem)"
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr "Nav datu pēc noklusējuma"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Nav kategorijas"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Nav budžet pozīcijas"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Eksportēt budžeta sarakstus"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Bilance"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 #, fuzzy
 msgid "forecast.csv"
 msgstr "Prognoze"
@@ -1493,7 +1498,7 @@ msgstr "Izveidot jaunu apakškategoriju"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Imports"
 
@@ -2161,7 +2166,7 @@ msgstr "Finanšu gads"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Apmaksas metodes"
 
@@ -2581,13 +2586,13 @@ msgid "Generalities"
 msgstr "Vispārīgi"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Darījumi"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Valūtas"
 
@@ -2626,7 +2631,7 @@ msgstr "Darījuma saturs"
 msgid "Transactions display"
 msgstr "Darījumu darbvirsma"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Kopsumma valūtā"
 
@@ -3046,7 +3051,7 @@ msgstr "Apakšbudžeta ieraksti"
 msgid "Reconciliation number"
 msgstr "Saskaņošanas numurs"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Galvenā lapa"
 
@@ -3063,7 +3068,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Plānotājs"
 
@@ -3268,6 +3273,39 @@ msgstr "Fails '%s' ir veiksmīgi saglabāts"
 msgid "File '%s' could not be saved"
 msgstr "Failu '%s' nevar saglabāt"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Fails"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Jauns konta fails..."
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Atvērt..."
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Nesen atvērtie faili"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "_Importēt failu..."
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "_Saglabāt"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "_Saglabāt kā..."
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3440,7 +3478,7 @@ msgid "Report name"
 msgstr "Pārskata nosaukums"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Arhīvs"
 
@@ -4033,7 +4071,7 @@ msgstr "Faila nosaukums:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Grisbi šifrēti faili"
 
@@ -4142,11 +4180,11 @@ msgid "General configuration of Grisbi"
 msgstr "Grisbi galvenā konfigurācija"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Web"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Web pārlūka komandas:"
@@ -4158,44 +4196,44 @@ msgstr ""
 "Jūs varat izmantot % s, lai izvērstu URL. Piemēram:  'Firefox - tālvadības "
 "%s'"
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Konta failu apstrāde"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Startējot automātiski ielādēt pēdējo failu"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Aizverot automātiski saglabāt"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Izveidot faila dublējuma kopiju pirms saglabāšanas"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Izveidot dublējuma kopiju ik minūti"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr "minūtes"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Dublējuma direktorijs:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Atlasīt/Izveidot dublējumu direktorijs"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Saskaņošana"
 
@@ -4464,7 +4502,7 @@ msgstr "Pievienot jaunu banku"
 msgid "Contact name"
 msgstr "Kontakta vārds"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Bankas"
 
@@ -6719,7 +6757,7 @@ msgstr ""
 "citu nosaukumu vai aktivizējiet \"%s \" opciju preferencēs."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Spēkā bloķēto failu saglabāšana"
 
@@ -6752,7 +6790,7 @@ msgstr ""
 "jāatceļ izmaiņas un jāsaglabā ar citu nosaukumu vai jāaktivizē \"% s \" "
 "opciju iestatīšana."
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "nenosaukts"
 
@@ -6809,7 +6847,7 @@ msgstr ""
 "<b>Vai vēlaties dzēst šo failu:\n"
 "%s ?</b>"
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Nevar saglabāt konfigurācijas failu '%s': %s"
@@ -7161,57 +7199,57 @@ msgstr ""
 "Vai turpināt?"
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr "Konfigurēt veidlapas"
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Darījumu veidlapa"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Veidlapas struktūras priekšskatījums"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Veidlapas struktūras saturs"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Col 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Col 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Col 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Col 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Col 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Col 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "rindas"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "kolonas"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7219,11 +7257,11 @@ msgstr ""
 "Nav vietas lai pievienotu elementu. Jums nepieciešams palielināt rindu vai "
 "kolonu skaitu."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "Tabula ir pilna"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7245,10 +7283,6 @@ msgstr ""
 "Funkcija ir tabulas izmēru mainīšana uz pareizajām vērtībām, bet būtu "
 "jāpārbauda brīdinājums."
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automātisks"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Izvēlēties kontu"
@@ -7293,7 +7327,7 @@ msgstr "Darījuma numurs"
 msgid "Automatic/Manual"
 msgstr "Automātisks/manuāls"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Finanšu gads"
 
@@ -7604,7 +7638,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Dzēst saskaņošnu"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Šķirot pēc saskaņošanas"
 
@@ -7816,7 +7850,7 @@ msgid "Execute transaction"
 msgstr "Izpildīt darījumu"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Kopā : %s (neatbilstības : %s)"
@@ -8604,7 +8638,7 @@ msgstr "Atbilstoši vērtībai/datumam (ja neizdodas, mēģiniet ar datumu)"
 msgid "Manage import associations"
 msgstr "Pārvaldīt importa apvienības"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr "Importa apvienības"
 
@@ -8936,72 +8970,43 @@ msgstr "apakšbudžeta pozīcija"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Pārsūtīt darījumus uz %s"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Rādīt _trīs rindās katru darījumu"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Atkļūdošanas režīms"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Kļūda par (sig) darbību: SIGSEGV netiek artasts\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr "Grisbi versija %s, %s\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 #, fuzzy
 msgid "- Personnal finances manager"
 msgstr "Personālais finanšu vadītājs\n"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Fails"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Jauns konta fails..."
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Atvērt..."
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Nesen atvērtie faili"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "_Saglabāt"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "_Saglabāt kā..."
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "_Importēt failu..."
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "_Eksportēt kontu kā QIF/CSV failu..."
@@ -9414,137 +9419,137 @@ msgid "Remove this report"
 msgstr "Noņemt noteikumus"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Grisbi iestatījumi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Galvenais"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Faili"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programmas"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Saskaņošana"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Displejs"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Ziņojumi un brīdinājumi"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr "Darījuma partneri, kategorijas un budžeti"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Darba režīma saraksts"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr "Ziņas pirms dzēšanas"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Saturs"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Darba režīms"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Pabeigšana"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Resursi"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Valūtas saites"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Bilances aprēķins"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Dienas padoms"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Parādīt dienas padomus"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Parādīt šādus brīdinājuma ziņojumus"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Ziņojums"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr "Parādīt šādus ziņojumus"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Saspiest Grisbi failu"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Iegaumēt pēdējos atvērtos failus:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Dublējums"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr "Izveidot vienotu dublējuma failu"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Saspiest Grisbi dublējumus"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Izveidot dublējuma kopiju pēc failu atvēršanas"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Faila saglabāšana"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
@@ -9553,83 +9558,83 @@ msgstr ""
 "Jūs varat izmantot %s lai izvērstu URL, t.i.:\n"
 "'firefox-tālvadība %s'"
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Plānotāja brīdinājumi pie Grisbi atvēršanas"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Brīdināt/Izpildīt, kad plānotajam darījumam pienāk beigu datums"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Brīdināt/Izpildīt plānotos darījumus par mēnesi"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "Dienu skaits pirms brīdinājuma vai izpildes:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr "Šķirot darījumus"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr "pēc numura"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Mainīt atlasi"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Pievienot bilanci"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Mainīt atlasi"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Izvēlēties kontu"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Faila formāts"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Depozīts:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 #, fuzzy
 msgid "Thousands separator: "
 msgstr "Izvēlieties CSV atdalītāju:"
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10335,7 +10340,7 @@ msgstr "Rādīt padomus, nākamreiz startējot"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
@@ -10343,7 +10348,7 @@ msgstr ""
 "Mēģiniet mainīt redzamo rindu, darījumi_saraksts_novietot. Tam nevajadzētu "
 "pievienot ! Tik pārbaudiet."
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/nl.po b/po/nl.po
index 58f8e15..bd34467 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: nl\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2007-02-11 22:04+0100\n"
 "Last-Translator: E.Huijsing <lighthous at users.sourceforge.net>\n"
 "Language-Team: Dutch <en at li.org>\n"
@@ -227,7 +227,7 @@ msgstr "Rekening naam"
 msgid "Currency"
 msgstr "Valuta"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Lettertypen & logo"
 
@@ -274,7 +274,7 @@ msgstr "Controleren"
 msgid "Back to default"
 msgstr "Herstel standaard"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adressen & titels"
 
@@ -525,7 +525,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Cellen transactielijst"
 
@@ -551,7 +551,7 @@ msgid "Year"
 msgstr "Jaar"
 
 # tablad header raport bewerken>toon data>algemeen
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Algemeen"
@@ -591,7 +591,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Rekening details"
@@ -894,14 +894,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Printer"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Printer"
@@ -967,13 +967,13 @@ msgstr "Actie"
 msgid "Credits"
 msgstr "Credit(bij)"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Print"
 
 # knop in menu > bestand
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -984,7 +984,7 @@ msgstr "Exporteren"
 msgid "credit.csv"
 msgstr "Credit(bij)"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Kan het bestand niet opslaan."
@@ -1362,6 +1362,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Start:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automatisch"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1379,7 +1384,7 @@ msgid "Balance"
 msgstr "Saldo"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1400,80 +1405,80 @@ msgstr "Begin saldo"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Selecteer data"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Selecteer data"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Verwijder geplande transactie"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Transactie omzetten naar een geplande transactie"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Kan geen transactie uitvoeren op/naar een gesloten rekening."
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "Laatste datum"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "Geen budgetregel"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Herstel standaard"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Geen categorie"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Geen budgetregel"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Exporteer de budgetregels"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Saldo"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1562,7 +1567,7 @@ msgstr "Vul een naam in voor de sub-categorie"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importeren"
 
@@ -2239,7 +2244,7 @@ msgstr "Financieel jaar"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Betaalmethodes"
 
@@ -2676,13 +2681,13 @@ msgid "Generalities"
 msgstr "Algemeen"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Boekingen"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Valuta's"
 
@@ -2726,7 +2731,7 @@ msgstr "Onderdelen transactielijst"
 msgid "Transactions display"
 msgstr "Transactielijst"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Gebruikte valuta"
 
@@ -3156,7 +3161,7 @@ msgstr "Sub-budgetregel"
 msgid "Reconciliation number"
 msgstr "Controlenummer"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Hoofdpagina"
 
@@ -3174,7 +3179,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Planner"
 
@@ -3367,6 +3372,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "Bestand \"%s\" kan niet worden geladen"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "Bestand"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "Nieuw bestand"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "_Open"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "Recent geopend"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "Exporteer bestand"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "Opslaan"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "Opslaan als"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3536,7 +3581,7 @@ msgid "Report name"
 msgstr "Rapport naam"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "Activeer"
@@ -4070,7 +4115,7 @@ msgstr "Naam:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4158,12 +4203,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "Website"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Web browser:"
@@ -4174,46 +4219,46 @@ msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
 # Kop tekst in voorkeurenscherm
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Rekening bestanden"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Bestand automatisch laden bij het opstarten"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Automatisch opslaan bij het afsluiten"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Maak een reserve kopie van het bestand voor het opslaan"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "Maak een reserve kopie van het bestand voor het opslaan"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "aantekening"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Reserve bestand:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Controleer"
 
@@ -4468,7 +4513,7 @@ msgstr "Nieuwe bank"
 msgid "Contact name"
 msgstr "Naam van contactpersoon"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banken"
 
@@ -6755,7 +6800,7 @@ msgstr ""
 "het voorkeuren menu.  Een alternatief is de \"%s\" optie hier onder."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Forceren om geblokkeerde bestanden op te slaan"
 
@@ -6787,7 +6832,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "Niet benoemd"
 
@@ -6842,7 +6887,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Kan het bestand '%s': %s niet opslaan."
@@ -7191,75 +7236,75 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Transactie formulier"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "Kol1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "Kol2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "Kol3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "Kol4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "Kol5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "Kol6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "Browse"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "Rekeningen"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7274,10 +7319,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automatisch"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Kies een rekening"
@@ -7326,7 +7367,7 @@ msgstr "Transactie nummer"
 msgid "Automatic/Manual"
 msgstr "Automatisch"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Financiële jaren"
 
@@ -7656,7 +7697,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Nieuwe rekening maken"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "Controleer"
@@ -7884,7 +7925,7 @@ msgid "Execute transaction"
 msgstr "Verwijder transactie"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Totaal: %s %s (%d transacties)"
@@ -8661,7 +8702,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Gebruik categorieën."
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Actie"
@@ -9016,78 +9057,42 @@ msgstr "Geen sub-budgetregel"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Transacties overschrijven naar "
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Drie regels per transactie"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Debug bestand"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Er is een sigaction fout: het programma sluit zich af\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "Bestand"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "Nieuw bestand"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "_Open"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "Recent geopend"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "Opslaan"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "Opslaan als"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "Exporteer bestand"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9539,237 +9544,237 @@ msgid "Remove this report"
 msgstr "Verwijder rapport"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "Voorkeuren"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Spanje"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Bestanden"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programma's"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Controleer"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Toon"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Berichten & Waarschuwingen"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "Vul aub een budgetregel in!"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Berichten & Waarschuwingen"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "Contact"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Bron"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "Valuta's"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "Saldo's"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "Waarschuwingsberichten"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "Log berichten"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Waarschuwingsberichten"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Recent geopende bestanden onthouden:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Reserve bestanden"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Maak een reserve kopie van het bestand voor het opslaan"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Maak een reserve kopie na het openen van een bestand."
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Bestand opslaan"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Waarschuwing voor geplande transacties"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Geplande transacties die over of bijna aan de vervaldatum zijn :"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Geplande transacties die over of bijna aan de vervaldatum zijn :"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr ""
 "Het aantal dagen dat een waarschuwingsbericht van te \n"
 "voren gegeven moet worden bij een geplande transactie:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "Transactie formaat wordt aangepast"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "het cheque nummer"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Selecteer data"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Begin saldo"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Selecteer data"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Kies een rekening"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Exporteer rapport"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Selecteer data:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10480,13 +10485,13 @@ msgstr "Toon transacties"
 
 #. this value should not be changed here, check later if i'm right,
 #. * fo value should not be changed here, check later if i'm right,  n :"     "  emote %s' "  u)"     ist_set. Δεν "  ½Î±"  ην "  ι να "  ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 r now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/pl.po b/po/pl.po
index 4b84964..d86d7e8 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pl\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2006-05-15 12:44+0200\n"
 "Last-Translator: Ryszard Jeziorski <r.jeziorski at dart.kielce.pl>\n"
 "Language-Team: Polish\n"
@@ -221,7 +221,7 @@ msgstr "Nazwa konta"
 msgid "Currency"
 msgstr "Waluta"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Czcionki i logo"
 
@@ -267,7 +267,7 @@ msgstr "Sprawdzenie"
 msgid "Back to default"
 msgstr "Przywróć ustawienia domyślne"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adresy i nazwy"
 
@@ -513,7 +513,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Lista transakcji"
 
@@ -538,7 +538,7 @@ msgstr "Miesiące"
 msgid "Year"
 msgstr "Rok"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Ogólne"
@@ -578,7 +578,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Opis konta"
@@ -880,14 +880,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Drukarka"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Drukarka"
@@ -953,12 +953,12 @@ msgstr "Akcja"
 msgid "Credits"
 msgstr "Wpływy"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Drukuj"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -969,7 +969,7 @@ msgstr "Eksport"
 msgid "credit.csv"
 msgstr "Wpływy"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Nie można zapisać pliku."
@@ -1347,6 +1347,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Początek:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automatyczny"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1364,7 +1369,7 @@ msgid "Balance"
 msgstr "Saldo"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1385,80 +1390,80 @@ msgstr "Saldo początkowe"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Wybór danych"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Wybór danych"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Kasowanie zaplanowanej transakcji"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Przekształć transakcję w zaplanowaną transakcję"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Nie można wykonać transferu do zamkniętego konta "
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "Data końcowa"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "Nieokreślona linia budżetowa"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Przywróć ustawienia domyślne"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Brak kategorii"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Pusta linia budżetowa"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Eksport linii budżetowych"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Saldo"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1546,7 +1551,7 @@ msgstr "Podaj nazwę nowej podkategorii"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Import"
 
@@ -2217,7 +2222,7 @@ msgstr "Rok finansowy"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Metody płatności"
 
@@ -2651,13 +2656,13 @@ msgid "Generalities"
 msgstr "Ogólne"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Transakcje"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Waluty"
 
@@ -2701,7 +2706,7 @@ msgstr "Zawartość listy transakcji"
 msgid "Transactions display"
 msgstr "Lista transakcji"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Waluty"
 
@@ -3128,7 +3133,7 @@ msgstr "Podgrupa linii budżetowej"
 msgid "Reconciliation number"
 msgstr "Numer potwierdzenia"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Strona główna"
 
@@ -3146,7 +3151,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Terminarz"
 
@@ -3335,6 +3340,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "Plik \"%s\" nie został zaimportowany."
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "Plik"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "Nowy plik kont"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "_Otwórz"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "Ostatnio otwierane pliki"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "Eksport plików"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "Zapisz"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "Zapisz jako"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3504,7 +3549,7 @@ msgid "Report name"
 msgstr "Nazwa raportu"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "Włącz"
@@ -4033,7 +4078,7 @@ msgstr "Nazwa właściciela:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4121,12 +4166,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "Strona www"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Przeglądarka www:"
@@ -4136,46 +4181,46 @@ msgstr "Przeglądarka www:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Ustawienia dla plików kont"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Automatycznie wczytuj ostatnio otwarty plik"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Automatycznie zapisuj przy wyjściu"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Utwórz kopię bezpieczeństwa przed zapisaniem pliku"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "Utwórz kopię bezpieczeństwa przed zapisaniem pliku"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "opisie"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Kopia bezpieczeństwa:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Metody płatności"
 
@@ -4421,7 +4466,7 @@ msgstr "Nowy bank"
 msgid "Contact name"
 msgstr "Nazwisko osoby kontaktowej"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Banki"
 
@@ -6690,7 +6735,7 @@ msgstr ""
 "\" opcję poniżej."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Wymuszaj zapis zablokowanych plików"
 
@@ -6722,7 +6767,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "bez nazwy"
 
@@ -6775,7 +6820,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Nie można zapisać pliku '%s': %s"
@@ -7118,75 +7163,75 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Formularz transakcji"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "Kol1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "Kol2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "Kol3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "Kol4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "Kol5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "Kol6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "Przeglądaj"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "Konta"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7201,10 +7246,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automatyczny"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Wybierz konto"
@@ -7253,7 +7294,7 @@ msgstr "Numer transakcji"
 msgid "Automatic/Manual"
 msgstr "Automatyczny"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Lata finansowe"
 
@@ -7570,7 +7611,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Twórz nowe konto"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "Metody płatności"
@@ -7796,7 +7837,7 @@ msgid "Execute transaction"
 msgstr "Usuń transakcję"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Razem %s: %s (%d transakcje)"
@@ -8563,7 +8604,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Pokaż kategorie"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Akcja"
@@ -8912,79 +8953,43 @@ msgstr "Pusta podgrupa linii budżetowej"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Przenieś transakcje do"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Transakcja w trzech wierszach"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Napraw plik"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr ""
 "Błąd podczas przechwytywania sygnału: SIGSEGV nie będzie przechwycony\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "Plik"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "Nowy plik kont"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "_Otwórz"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "Ostatnio otwierane pliki"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "Zapisz"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "Zapisz jako"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "Eksport plików"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9432,237 +9437,237 @@ msgid "Remove this report"
 msgstr "Usuń raport"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "Ustawienia"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Hiszpania"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Pliki"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programy"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Metody płatności"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Wyświetl"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Wiadomości i ostrzeżenia"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "Proszę podać nazwę linii budżetowej"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Wiadomości i ostrzeżenia"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "Kontakt"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Zasoby"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "Waluty"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "Salda"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "Komunikaty ostrzeżeń"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "Logowanie wiadomości"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Komunikaty ostrzeżeń"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Zapamiętuj ostatnio otwarte pliki:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Kopie bezpieczeństwa"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Utwórz kopię bezpieczeństwa przed zapisaniem pliku"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Utwórz kopię bezpieczeństwa po otwarciu pliku"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Zapis pliku"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Ostrzeżenia terminarza"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Najbliższe ręczne zaplanowane transakcje "
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Najbliższe ręczne zaplanowane transakcje "
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr ""
 "Ile dni przed terminem zaplanowanej transakcji wyświetlić odpowiedni "
 "komunikat:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "Formatowanie transakcji"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "numer czeku"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Wybór danych"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Saldo początkowe"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Wybór danych"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Wybierz konto"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Eksportuj raport"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Wybór danych:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10371,13 +10376,13 @@ msgstr "Pokaż transakcje"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 6af21e1..2dcf93f 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pt_BR\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2005-12-19 09:07-0200\n"
 "Last-Translator: \n"
 "Language-Team: <pt at li.org>\n"
@@ -222,7 +222,7 @@ msgstr "Nome da conta"
 msgid "Currency"
 msgstr "Moeda"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Fontes & Logotipo"
 
@@ -268,7 +268,7 @@ msgstr "Verificando"
 msgid "Back to default"
 msgstr "Voltar para padrões"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Endereços & Títulos"
 
@@ -514,7 +514,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 #, fuzzy
 msgid "Transactions list cells"
 msgstr "Prévia da lista de lançamentos"
@@ -540,7 +540,7 @@ msgstr "Meses"
 msgid "Year"
 msgstr "Ano"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Gerais"
@@ -580,7 +580,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Detalhes da conta"
@@ -880,14 +880,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Impressora"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Impressora"
@@ -953,12 +953,12 @@ msgstr "Ação"
 msgid "Credits"
 msgstr "Crédito"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Imprimir"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -969,7 +969,7 @@ msgstr "Exportar"
 msgid "credit.csv"
 msgstr "Crédito"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Não posso salvar arquivo."
@@ -1346,6 +1346,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Inicio:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automática"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1363,7 +1368,7 @@ msgid "Balance"
 msgstr "Saldo"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1384,82 +1389,82 @@ msgstr "Saldo inicial"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Seleção por data"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Seleção por data"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr ""
 "Apagar lançamento\n"
 "selecionado da agenda"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Converter lançamento para lançamentos agendados"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Não é possível efetuar uma transferência em uma conta fechada."
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "Última data"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "Nenhum orçamento"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Voltar para padrões"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Nenhuma categoria"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Nenhum orçamento"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Exportar orçamento"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Saldo"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1547,7 +1552,7 @@ msgstr "Informe um nome para a nova sub-categoria"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importar"
 
@@ -2219,7 +2224,7 @@ msgstr "Ano Contábil"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Formas de pagamento"
 
@@ -2658,13 +2663,13 @@ msgid "Generalities"
 msgstr "Gerais"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Lançamentos"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Moedas"
 
@@ -2708,7 +2713,7 @@ msgstr "Conteúdo da lista de lançamentos"
 msgid "Transactions display"
 msgstr "Lista de lançamentos"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Total das moedas"
 
@@ -3138,7 +3143,7 @@ msgstr "Sub-orçamentos"
 msgid "Reconciliation number"
 msgstr "Reconciliação número"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Página inicial"
 
@@ -3156,7 +3161,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Agenda"
 
@@ -3347,6 +3352,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "Arquivo \"%s\" não pode ser importado."
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "Arquivo"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "Novo arquivo de conta"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "_Abrir"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "Arquivos abertos recentemente"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "Exportar para arquivos QIF"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "Salvar"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "Salvar como"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3516,7 +3561,7 @@ msgid "Report name"
 msgstr "Nome do relatório"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "Ativado"
@@ -4045,7 +4090,7 @@ msgstr "Nome do titular:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4133,12 +4178,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "Website"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Navegador Internet:"
@@ -4148,46 +4193,46 @@ msgstr "Navegador Internet:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Manipulação dos arquivos de contas"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Abrir último arquivo automaticamente ao iniciar"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Salvar automaticamente ao sair"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Fazer uma cópia de backup antes de salvar os arquivos"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "Fazer uma cópia de backup antes de salvar os arquivos"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "nota"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Arquivo de backup:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Reconciliação"
 
@@ -4434,7 +4479,7 @@ msgstr "Novo banco"
 msgid "Contact name"
 msgstr "Pessoa de contato"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Bancos"
 
@@ -6715,7 +6760,7 @@ msgstr ""
 "Posteriormente mude  \"%s\" opção abaixo."
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Forçar salvando arquivos bloqueados"
 
@@ -6747,7 +6792,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "sem nome"
 
@@ -6799,7 +6844,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Não posso salvar arquivo '%s': %s"
@@ -7143,65 +7188,65 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Formulário de lançamentos"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Prévia da estrutura do formulário"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "Col 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "Col 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "Col 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "Col 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "Col 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "Col 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "Navegador"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "Contas"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
@@ -7209,11 +7254,11 @@ msgstr ""
 "Não é possível colocar um elemento aqui. Você precisa informar um número de "
 "linhas ou colunas para adicionar um elemento."
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr "A tabela está cheia"
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7228,10 +7273,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automática"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Alterar a conta"
@@ -7280,7 +7321,7 @@ msgstr "Número da lançamento"
 msgid "Automatic/Manual"
 msgstr "Automática"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Anos contábeis"
 
@@ -7596,7 +7637,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Criar uma nova conta"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "Reconciliação"
@@ -7829,7 +7870,7 @@ msgid "Execute transaction"
 msgstr "Apagar lançamento"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Total %s: %s (%d lançamentos)"
@@ -8601,7 +8642,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Detalhes das categorias"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Ação"
@@ -8949,78 +8990,42 @@ msgstr "Nenhum sub-orçamento"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Transferir os lançamentos para"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Três linhas por lançamento"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Depurar arquivo"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Erro em sigaction: SIGSEGV não será prendido\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "Arquivo"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "Novo arquivo de conta"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "_Abrir"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "Arquivos abertos recentemente"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "Salvar"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "Salvar como"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "Exportar para arquivos QIF"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9470,235 +9475,235 @@ msgid "Remove this report"
 msgstr "Nome do arquivo de contas"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "Preferências"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Spain"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Arquivos"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programas"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Reconciliação"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Exibir"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Mensagens & Avisos"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "Por favor, informe um orçamento!"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Mensagens & Avisos"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "Contato"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Recursos"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "Moedas"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "Saldos"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "Mensagens de atenção"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "Histórico da menssagens"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Mensagens de atenção"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Memorizar últimos arquivos abertos:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Backups"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Fazer uma cópia de backup antes de salvar os arquivos"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Fazer uma cópia de backup após abrir arquivos"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Salvar arquivo"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Mensagens da agenda"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Lançamentos manuais agendados até a data atual"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Lançamentos manuais agendados até a data atual"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "Número de dias antes de exibir mensagens de lançamentos agendados:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "Formatando lançamentos"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "o cheque número"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Seleção por data"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Saldo inicial"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Seleção por data"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Alterar a conta"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Exportar relatório"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Seleção por data:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10404,13 +10409,13 @@ msgstr "Exibir lançamentos"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/ro.po b/po/ro.po
index 41bc58f..570e3a5 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -38,7 +38,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ro\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2005-12-19 11:24+0100\n"
 "Last-Translator: Mircea Aronovici <bucuresti at free.fr>\n"
 "Language-Team: <bucuresti at free.fr>\n"
@@ -252,7 +252,7 @@ msgstr "Numele contului"
 msgid "Currency"
 msgstr "Deviză"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Poliţă & logo"
 
@@ -299,7 +299,7 @@ msgstr "Pontare"
 msgid "Back to default"
 msgstr "Restabilirea reglajelor de origine"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Adrese şi titluri"
 
@@ -545,7 +545,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Celule de la lista de tranzacţiuni"
 
@@ -570,7 +570,7 @@ msgstr "Luni"
 msgid "Year"
 msgstr "Anul"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Generalităţi"
@@ -610,7 +610,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Detalii a contului"
@@ -912,14 +912,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Imprimantă"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Imprimantă"
@@ -985,12 +985,12 @@ msgstr "Acţiune"
 msgid "Credits"
 msgstr "Credit"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Imprimaţi"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -1001,7 +1001,7 @@ msgstr "Exportare"
 msgid "credit.csv"
 msgstr "Credit"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Imposibil de a înregistra fişierul."
@@ -1379,6 +1379,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Început:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Automatic"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1396,7 +1401,7 @@ msgid "Balance"
 msgstr "Sold"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1417,80 +1422,80 @@ msgstr "Sold iniţial"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Selecţia datelor"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Selecţia datelor"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Şterge o operaţie planificată"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Convertirea operaţiunii în operaţiune planificată"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "Imposibil de a efectua un virament pe un cont închis"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "Ultima dată"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "Nici'o imputaţie"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Restabilirea reglajelor de origine"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "Nici o categorie"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "Nici o imputaţie bugetara"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Exporta imputaţiile bugetare"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Sold"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1579,7 +1584,7 @@ msgstr "Intraţi numele noii sub-categorii."
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Importare"
 
@@ -2249,7 +2254,7 @@ msgstr "Exerciţiu  "
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Moduri de plată"
 
@@ -2684,13 +2689,13 @@ msgid "Generalities"
 msgstr "Generalităţi"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Tranzacţiuni"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Devize"
 
@@ -2734,7 +2739,7 @@ msgstr "Conţinutul listei de tranzacţiuni"
 msgid "Transactions display"
 msgstr "Liste de tranzacţii"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Devize de totaluri"
 
@@ -3164,7 +3169,7 @@ msgstr "Sub-imputaţii bugetare"
 msgid "Reconciliation number"
 msgstr "Număr de apropiere"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Pagina de primire"
 
@@ -3182,7 +3187,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Scadenţă"
 
@@ -3371,6 +3376,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "Fişierul \"%s\" nu poate fi importat"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "Fişier"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "Nou fişier de cont"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "Deschide"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "Ultimile fişiere"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "Exporta fişiere"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "Înregistraţi"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "Înregistraţi sub"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3540,7 +3585,7 @@ msgid "Report name"
 msgstr "Numele de stare"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "A activa"
@@ -4069,7 +4114,7 @@ msgstr "Numele titularului:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4157,12 +4202,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "Situl Web"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Navigator web:"
@@ -4172,46 +4217,46 @@ msgstr "Navigator web:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Gestiunea fişierelor de conturi"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Încăcarea automatică a ultimului fişier consultat"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Înregistra automatic închizând"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Efectua o copie de salvare înainte de a înregistra fişierele"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "Efectua o copie de salvare înainte de a înregistra fişierele"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 #, fuzzy
 msgid " minutes"
 msgstr "notă"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Fişier de salvare:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Apropiere"
 
@@ -4460,7 +4505,7 @@ msgstr "O nouă bancă"
 msgid "Contact name"
 msgstr "Corespondent"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Bănci"
 
@@ -6746,7 +6791,7 @@ msgstr ""
 "Alternativ, alegeţi opţiunea \"%s\"dedesupt. "
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Forţaţi înregistrarea fişierilor zăvorite"
 
@@ -6778,7 +6823,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "făra nume"
 
@@ -6832,7 +6877,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "Imposibil de a salva fişierul '%s': %s"
@@ -7179,75 +7224,75 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Formular de tranzacţie"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "Col1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "Col2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "Col3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "Col4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "Col5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "Col6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "A parcurge"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "Conturi"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7262,10 +7307,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Automatic"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "Alegerea contului afectat"
@@ -7314,7 +7355,7 @@ msgstr "Numărul tranzacţiei"
 msgid "Automatic/Manual"
 msgstr "Automatic"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Exerciţiu"
 
@@ -7630,7 +7671,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Creaţi un nou cont"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "Apropiere"
@@ -7862,7 +7903,7 @@ msgid "Execute transaction"
 msgstr "Suprima operaţiunea"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Total %s : %s (%d operaţiuni)"
@@ -8630,7 +8671,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Detailaţi categoriile utilizate"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "Acţiune"
@@ -8979,78 +9020,42 @@ msgstr "Nici o sub-inputaţie"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Transfera operaţiunile pe terţi"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "Trei linii pe tranzacţie"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Debogaţi fişierul"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "Eroare pe sigaction, semnalul SIGSEGV nu va fi deturnat\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "Fişier"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "Nou fişier de cont"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "Deschide"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "Ultimile fişiere"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "Înregistraţi"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "Înregistraţi sub"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "Exporta fişiere"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9498,235 +9503,235 @@ msgid "Remove this report"
 msgstr "Stergeţi starea"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "Preferinţe"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Spania"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Fişiere"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Programe"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Apropiere"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Afişare"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Mesaje şi alarme"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "Vă rugăm intraţi o imputaţie"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "Mesaje şi alarme"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "Corespondent"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Resurse"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "Devize"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "Solduri"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "Mesaj de alarmă"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "Mesaj de log"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "Mesaj de alarmă"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Memorizarea ultimielor fişiere deschise:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Salvări"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Efectua o copie de salvare înainte de a înregistra fişierele"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "A efectua o copie de salvare după ce fişierele au fost deschise"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Înregistraţi fişierul."
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Alarmă a scadenţei"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "Operaţiunele planificate manual au ajuns la termen"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Exe tres.c:1120  cate manual au ajuns la termen"  iration date"   "  ): "  %s' "  u)"     ist_set. Δεν "  ½Î±"  ην "  ι να "  ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 cute the scheduled transactions of the month"
 msgstr "Operaţiunele planificate manual au ajuns la termen"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "Numărul de zile precedând rapelul unei operaţiuni planificate:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "Punerea în formă de operaţiuni"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "numărul de cec"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Selecţia datelor"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Sold iniţial"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Selecţia datelor"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Alegerea contului afectat"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Exporta o stare"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Selecţia datelor:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10434,13 +10439,13 @@ msgstr "Afişarea tranzacţiilor"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/ru.po b/po/ru.po
index a80121f..6458f38 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: ru\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2010-02-11 19:06+0300\n"
 "Last-Translator: Alexandre Prokoudine <alexandre.prokoudine at gmail.com>\n"
 "Language-Team: Russian <ru at li.org>\n"
@@ -210,7 +210,7 @@ msgstr "Тип счёта"
 msgid "Currency"
 msgstr "Валюта"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "Шрифты и логотип"
 
@@ -251,7 +251,7 @@ msgstr ""
 msgid "Back to default"
 msgstr "Сбросить до исходных"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "Адреса и названия"
 
@@ -487,7 +487,7 @@ msgstr ""
 "Максимальное число элементов в раскрывающихся списках (ноль — бесконечное):"
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "Ячейки списка транзакций"
 
@@ -511,7 +511,7 @@ msgstr "Месяц"
 msgid "Year"
 msgstr "Год"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "Основные параметры"
@@ -549,7 +549,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "Подробнее о счёте"
@@ -848,14 +848,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "Принтер"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "Принтер"
@@ -921,12 +921,12 @@ msgstr "Связывание при импорте"
 msgid "Credits"
 msgstr "Приход"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "Печать"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -937,7 +937,7 @@ msgstr "Экспортировать"
 msgid "credit.csv"
 msgstr "Приход"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "Невозможно сохранить файл"
@@ -1306,6 +1306,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "Начало:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "Автоматически"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1323,7 +1328,7 @@ msgid "Balance"
 msgstr "Баланс"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1344,78 +1349,78 @@ msgstr "Дополнительный баланс"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "Выбор дат"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "Выбор дат"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "Удаление одной или более попавшихся запланированных проводок"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "Преобразовать транзакцию в _запланированную"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr ""
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr ""
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 #, fuzzy
 msgid " (still available)"
 msgstr "Описание недоступно"
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr ""
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "Сбросить до исходных"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr ""
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr ""
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "Имя файла со счетами"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "Баланс"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1498,7 +1503,7 @@ msgstr "Создать новую подкатегорию"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "Импортировать"
 
@@ -2137,7 +2142,7 @@ msgstr "Финансовый год"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "Способы платежа"
 
@@ -2545,13 +2550,13 @@ msgid "Generalities"
 msgstr "Обобщения"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "Проводки"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "Валюты"
 
@@ -2590,7 +2595,7 @@ msgstr "Содержимое проводки"
 msgid "Transactions display"
 msgstr "Отображение проводок"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "Валюты для итоговых сумм"
 
@@ -3002,7 +3007,7 @@ msgstr "Суббюджетные линии"
 msgid "Reconciliation number"
 msgstr "Номер выверки счетов"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "Резюме"
 
@@ -3020,7 +3025,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "Расписание"
 
@@ -3193,6 +3198,39 @@ msgstr "Файл «%s» успешно сохранён"
 msgid "File '%s' could not be saved"
 msgstr "Не удалось сохранить файл «%s»."
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr "_Файл"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr "_Создать файл счёта..."
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr "_Открыть"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr "_Недавние файлы"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr "_Импортировать файл..."
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr "Со_хранить"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr "Сохранить _как"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3358,7 +3396,7 @@ msgid "Report name"
 msgstr "Название отчёта"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr "Архивы"
 
@@ -3915,7 +3953,7 @@ msgstr "Имя файла:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr "Шифровать файл Grisbi"
 
@@ -4011,11 +4049,11 @@ msgid "General configuration of Grisbi"
 msgstr "Общая настройка Grisbi"
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr "Интернет"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Команда вызова браузера:"
@@ -4026,44 +4064,44 @@ msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 "Вы можете использовать %s для расширения URL, например: 'firefox -remote %s'"
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "Обращение с файлами счетов"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "Автоматически загружать последний файл при запуске"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "Автоматически сохранять открытый файл при выходе"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "Создавать резервную копию перед сохранением файлов"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr "Создавать резервную копию каждые"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr " минут"
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "Каталог для резервных копий:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr "Выбрать или создать каталог резервных копий"
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "Выверка счетов"
 
@@ -4300,7 +4338,7 @@ msgstr "Добавить новый банк"
 msgid "Contact name"
 msgstr "Контактное лицо"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "Банки"
 
@@ -6496,7 +6534,7 @@ msgid ""
 msgstr ""
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "Принудительно сохранять заблокированные файлы"
 
@@ -6526,7 +6564,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr ""
 
@@ -6579,7 +6617,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr ""
@@ -6903,67 +6941,67 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "Формуляр транзакции"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr "Предпросмотр структуры формуляра"
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr "Содержимое формуляра"
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr "Столбец 1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr "Столбец 2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr "Столбец 3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr "Столбец 4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr "Столбец 5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr "Столбец 6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr "строки"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr "столбцы"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -6978,10 +7016,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "Автоматически"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr ""
@@ -7028,7 +7062,7 @@ msgstr "Номер транзакции"
 msgid "Automatic/Manual"
 msgstr "Автоматически/Вручную"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "Финансовые года"
 
@@ -7316,7 +7350,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "Создать новую выверку"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr "Сортировка для выверки"
 
@@ -7522,7 +7556,7 @@ msgid "Execute transaction"
 msgstr "Выполнить проводку"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "Итого: %s (колебание: %s)"
@@ -8241,7 +8275,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "Управлением связыванием при импорте"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr "Связывание при импорте"
 
@@ -8570,72 +8604,43 @@ msgstr "Суббюджетная линия"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "Три линии на транзакцию"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "_Три строки на проводку"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "Режим отладки"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr ""
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr "Версия Grisbi %s, %s\n"
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 #, fuzzy
 msgid "- Personnal finances manager"
 msgstr "Общедоступное управление личными финансовыми средствами\n"
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr "_Файл"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr "_Создать файл счёта..."
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr "_Открыть"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr "_Недавние файлы"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr "Со_хранить"
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr "Сохранить _как"
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr "_Импортировать файл..."
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr "_Экспортировать счета в файл QIF/CSV..."
@@ -9047,138 +9052,138 @@ msgid "Remove this report"
 msgstr "Удалить отчёт"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr "Параметры Grisbi"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr "Основные"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "Файлы"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "Программы"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "Выверка счетов"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "Вид"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "Сообщения и предупреждения"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr "Получатели, категории и бюджеты"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr "Поведение списка"
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr "Сообщения перед удалением"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr "Содержимое"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr "Поведение"
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr "Заполнение"
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "Ресурсы"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr "Курсы обмена валют"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr "Оценка баланса"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr "Совет дня"
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr "Показывать совет дня"
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr "Показывать следующие предупредительные сообщения"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr "Сообщение"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr "Показывать следующие сообщения"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr "Сжимать файл Grisbi"
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "Как много последних файлов помнить:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "Резервные копии"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "Создавать резервную копию каждые"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr "Сжимать резервную копию Grisbi"
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "Создавать резервную копию после открытия файлов"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "Файл CSV"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, fuzzy, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
@@ -9186,85 +9191,85 @@ msgid ""
 msgstr ""
 "Вы можете использовать %s для расширения URL, например: 'firefox -remote %s'"
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "Предупреждения о расписании при запуске Grisbi"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 "Предупреждать о/Исполнять запланированные проводки с надвигающимся сроком "
 "истечения"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "Предупреждать о/Исполнять запланированные на месяц проводки"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "Количество дней перед предупреждением или выполнением:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr "Критерий сортировки проводок"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr "Номер"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "Выбор дат"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "Дополнительный баланс"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "Выбор дат"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "Выбрать шаблон для нового отчёта"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "Формат файла"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "Разделение данных:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 #, fuzzy
 msgid "Thousands separator: "
 msgstr "Выберите разделитель CSV:"
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -9950,13 +9955,13 @@ msgstr "Показывать советы при следующем запуск
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/sv.po b/po/sv.po
index 652a17d..84fd0c5 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: sv\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -204,7 +204,7 @@ msgstr ""
 msgid "Currency"
 msgstr ""
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr ""
 
@@ -244,7 +244,7 @@ msgstr ""
 msgid "Back to default"
 msgstr ""
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr ""
 
@@ -468,7 +468,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr ""
 
@@ -490,7 +490,7 @@ msgstr ""
 msgid "Year"
 msgstr ""
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 msgid "General Options"
 msgstr ""
 
@@ -524,7 +524,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 msgid "Accounts data"
 msgstr ""
 
@@ -796,13 +796,13 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 msgid "Print the array"
 msgstr ""
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 msgid "Export the array"
 msgstr ""
 
@@ -861,12 +861,12 @@ msgstr ""
 msgid "Credits"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -876,7 +876,7 @@ msgstr ""
 msgid "credit.csv"
 msgstr ""
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr ""
@@ -1227,6 +1227,11 @@ msgstr ""
 msgid "Start date: "
 msgstr ""
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr ""
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1244,7 +1249,7 @@ msgid "Balance"
 msgstr ""
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1264,70 +1269,70 @@ msgstr ""
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 msgid "Delete selection"
 msgstr ""
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 msgid "Change selection"
 msgstr ""
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 msgid "Delete all occurences of the selection"
 msgstr ""
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 msgid "Convert selection to scheduled transaction"
 msgstr ""
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 msgid "Insert the balance of a cash account"
 msgstr ""
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 msgid "Reset data"
 msgstr ""
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 msgid " (budget exceeded)"
 msgstr ""
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 msgid "No data by default"
 msgstr ""
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr ""
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr ""
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 msgid "Export the array of forecast"
 msgstr ""
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 msgid "Balance at "
 msgstr ""
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1405,7 +1410,7 @@ msgstr ""
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr ""
 
@@ -2029,7 +2034,7 @@ msgstr ""
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr ""
 
@@ -2432,13 +2437,13 @@ msgid "Generalities"
 msgstr ""
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr ""
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr ""
 
@@ -2477,7 +2482,7 @@ msgstr ""
 msgid "Transactions display"
 msgstr ""
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr ""
 
@@ -2866,7 +2871,7 @@ msgstr ""
 msgid "Reconciliation number"
 msgstr ""
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr ""
 
@@ -2883,7 +2888,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr ""
 
@@ -3052,6 +3057,39 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr ""
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+msgid "_File"
+msgstr ""
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+msgid "_New account file..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+msgid "_Open..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+msgid "_Recently opened files"
+msgstr ""
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+msgid "_Import file..."
+msgstr ""
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+msgid "_Save"
+msgstr ""
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+msgid "_Save as..."
+msgstr ""
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3203,7 +3241,7 @@ msgid "Report name"
 msgstr ""
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 msgid "Archives"
 msgstr ""
 
@@ -3692,7 +3730,7 @@ msgstr ""
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -3774,11 +3812,11 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 msgid "Web"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 msgid "Web browser command: "
 msgstr ""
 
@@ -3787,43 +3825,43 @@ msgstr ""
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr ""
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr ""
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr ""
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 msgid "Make a backup copy every "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 msgid "Backup directory: "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr ""
 
@@ -4054,7 +4092,7 @@ msgstr ""
 msgid "Contact name"
 msgstr ""
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr ""
 
@@ -6212,7 +6250,7 @@ msgid ""
 msgstr ""
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr ""
 
@@ -6242,7 +6280,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr ""
 
@@ -6294,7 +6332,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr ""
@@ -6612,67 +6650,67 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr ""
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 msgid "Col 1"
 msgstr ""
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 msgid "Col 2"
 msgstr ""
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 msgid "Col 3"
 msgstr ""
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 msgid "Col 4"
 msgstr ""
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 msgid "Col 5"
 msgstr ""
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 msgid "Col 6"
 msgstr ""
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 msgid "rows"
 msgstr ""
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 msgid "columns"
 msgstr ""
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -6687,10 +6725,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr ""
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr ""
@@ -6735,7 +6769,7 @@ msgstr ""
 msgid "Automatic/Manual"
 msgstr ""
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr ""
 
@@ -7011,7 +7045,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr ""
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 msgid "Sort for reconciliation"
 msgstr ""
 
@@ -7214,7 +7248,7 @@ msgid "Execute transaction"
 msgstr ""
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, c-format
 msgid "Total : %s (variance : %s)"
 msgstr ""
@@ -7910,7 +7944,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr ""
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 msgid "Import associations"
 msgstr ""
 
@@ -8216,69 +8250,40 @@ msgstr ""
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr ""
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 msgid "Show the application's version"
 msgstr ""
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 msgid "Debug mode: level 0-5"
 msgstr ""
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr ""
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr ""
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-msgid "_File"
-msgstr ""
-
-#: ../src/menu.c:171 ../src/menu.c:179
-msgid "_New account file..."
-msgstr ""
-
-#: ../src/menu.c:173 ../src/menu.c:181
-msgid "_Open..."
-msgstr ""
-
-#: ../src/menu.c:175 ../src/menu.c:183
-msgid "_Recently opened files"
-msgstr ""
-
-#: ../src/menu.c:176 ../src/menu.c:184
-msgid "_Save"
-msgstr ""
-
-#: ../src/menu.c:187
-msgid "_Save as..."
-msgstr ""
-
-#: ../src/menu.c:189
-msgid "_Import file..."
-msgstr ""
-
 #: ../src/menu.c:191
 msgid "_Export accounts as QIF/CSV file..."
 msgstr ""
@@ -8671,209 +8676,209 @@ msgid "Remove this report"
 msgstr ""
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 msgid "Grisbi preferences"
 msgstr ""
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 msgid "Main"
 msgstr ""
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr ""
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr ""
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 msgid "Localization"
 msgstr ""
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr ""
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr ""
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 msgid "Payees, categories and budgetaries"
 msgstr ""
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 msgid "Messages before deleting"
 msgstr ""
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 msgid "Content"
 msgstr ""
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr ""
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 msgid "Currencies links"
 msgstr ""
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 msgid "Balance estimate"
 msgstr ""
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 msgid "Display following warnings messages"
 msgstr ""
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 msgid "Message"
 msgstr ""
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 msgid "Display following messages"
 msgstr ""
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 msgid "Memorise last opened files: "
 msgstr ""
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr ""
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 msgid "Make a single backup file"
 msgstr ""
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr ""
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 msgid "Config file"
 msgstr ""
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr ""
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr ""
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr ""
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 msgid "Number of days before the warning or the execution: "
 msgstr ""
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 msgid "Sort option for transactions"
 msgstr ""
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 msgid "by number"
 msgstr ""
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 msgid "Expand the line"
 msgstr ""
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 msgid "Edit the line"
 msgstr ""
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 msgid "Manage the line"
 msgstr ""
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 msgid "Choose the date format"
 msgstr ""
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 msgid "Date format"
 msgstr ""
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 msgid "Decimal point: "
 msgstr ""
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -9523,13 +9528,13 @@ msgstr ""
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 13c99ae..1dfb0a9 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: zh_CN\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-01-16 23:22+0100\n"
+"POT-Creation-Date: 2012-01-29 12:38+0100\n"
 "PO-Revision-Date: 2005-12-19 11:25+0100\n"
 "Last-Translator: Jianyu Tang <jianyunet at gmail.com>\n"
 "Language-Team: zh_CN <LL at li.org>\n"
@@ -220,7 +220,7 @@ msgstr "账户名称"
 msgid "Currency"
 msgstr "货币"
 
-#: ../src/affichage.c:119 ../src/parametres.c:386
+#: ../src/affichage.c:119 ../src/parametres.c:389
 msgid "Fonts & logo"
 msgstr "字体和标志"
 
@@ -265,7 +265,7 @@ msgstr ""
 msgid "Back to default"
 msgstr "恢复默认值"
 
-#: ../src/affichage.c:363 ../src/parametres.c:404
+#: ../src/affichage.c:363 ../src/parametres.c:407
 msgid "Addresses & titles"
 msgstr "地址和名称抬头"
 
@@ -511,7 +511,7 @@ msgid "Maximum items showed in drop down lists (0 for no limit): "
 msgstr ""
 
 #. à la base, on met une vbox
-#: ../src/affichage_liste.c:804 ../src/parametres.c:450
+#: ../src/affichage_liste.c:804 ../src/parametres.c:453
 msgid "Transactions list cells"
 msgstr "交易清单单元格"
 
@@ -536,7 +536,7 @@ msgstr "月"
 msgid "Year"
 msgstr "å¹´"
 
-#: ../src/bet_config.c:116 ../src/parametres.c:591
+#: ../src/bet_config.c:116 ../src/parametres.c:594
 #, fuzzy
 msgid "General Options"
 msgstr "普遍性"
@@ -576,7 +576,7 @@ msgstr ""
 msgid "Note: This option is used if no starting date for forecasts."
 msgstr ""
 
-#: ../src/bet_config.c:258 ../src/parametres.c:600
+#: ../src/bet_config.c:258 ../src/parametres.c:603
 #, fuzzy
 msgid "Accounts data"
 msgstr "账户明细"
@@ -878,14 +878,14 @@ msgstr ""
 
 #. Print list
 #: ../src/bet_finance_ui.c:1035 ../src/bet_finance_ui.c:1850
-#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1529 ../src/bet_tab.c:2885
+#: ../src/bet_hist.c:1935 ../src/bet_tab.c:1530 ../src/bet_tab.c:2886
 #, fuzzy
 msgid "Print the array"
 msgstr "打印机"
 
 #. Export list
 #: ../src/bet_finance_ui.c:1045 ../src/bet_finance_ui.c:1863
-#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1539
+#: ../src/bet_finance_ui.c:1889 ../src/bet_hist.c:1948 ../src/bet_tab.c:1540
 #, fuzzy
 msgid "Export the array"
 msgstr "打印机"
@@ -951,12 +951,12 @@ msgstr "动作"
 msgid "Credits"
 msgstr "贷方"
 
-#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2882
+#: ../src/bet_finance_ui.c:1847 ../src/bet_hist.c:1932 ../src/bet_tab.c:2883
 #: ../src/etats_onglet.c:177 ../src/gsb_transactions_list.c:381
 msgid "Print"
 msgstr "打印"
 
-#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2895
+#: ../src/bet_finance_ui.c:1860 ../src/bet_hist.c:1945 ../src/bet_tab.c:2896
 #: ../src/categories_onglet.c:562 ../src/etats_onglet.c:167
 #: ../src/export.c:204 ../src/imputation_budgetaire.c:599
 msgid "Export"
@@ -967,7 +967,7 @@ msgstr "导出"
 msgid "credit.csv"
 msgstr "贷方"
 
-#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3019
+#: ../src/bet_finance_ui.c:1913 ../src/bet_hist.c:2040 ../src/bet_tab.c:3020
 #: ../src/imputation_budgetaire.c:439
 msgid "Cannot save file."
 msgstr "不能保存文件"
@@ -1345,6 +1345,11 @@ msgstr ""
 msgid "Start date: "
 msgstr "开始:"
 
+#: ../src/bet_tab.c:556 ../src/gsb_form_scheduler.c:152
+#: ../src/gsb_scheduler_list.c:1285
+msgid "Automatic"
+msgstr "自动"
+
 #: ../src/bet_tab.c:559
 msgid "Check the box to automatically change start date"
 msgstr ""
@@ -1362,7 +1367,7 @@ msgid "Balance"
 msgstr "余额"
 
 #: ../src/bet_tab.c:823 ../src/bet_tab.c:836 ../src/bet_tab.c:1028
-#: ../src/bet_tab.c:2497 ../src/bet_tab.c:2502
+#: ../src/bet_tab.c:2498 ../src/bet_tab.c:2503
 #, fuzzy, c-format
 msgid ""
 "Transfer between account: %s\n"
@@ -1383,80 +1388,80 @@ msgstr "初始余额"
 msgid "Insert Row"
 msgstr ""
 
-#: ../src/bet_tab.c:1407 ../src/bet_tab.c:1419 ../src/bet_tab.c:1440
-#: ../src/bet_tab.c:1499
+#: ../src/bet_tab.c:1406 ../src/bet_tab.c:1420 ../src/bet_tab.c:1441
+#: ../src/bet_tab.c:1500
 #, fuzzy
 msgid "Delete selection"
 msgstr "数据选择"
 
-#: ../src/bet_tab.c:1430
+#: ../src/bet_tab.c:1431
 #, fuzzy
 msgid "Change selection"
 msgstr "数据选择"
 
-#: ../src/bet_tab.c:1451
+#: ../src/bet_tab.c:1452
 #, fuzzy
 msgid "Delete all occurences of the selection"
 msgstr "删除一条定期交易"
 
-#: ../src/bet_tab.c:1466
+#: ../src/bet_tab.c:1467
 #, fuzzy
 msgid "Convert selection to scheduled transaction"
 msgstr "转换交易为计划交易"
 
-#: ../src/bet_tab.c:1489
+#: ../src/bet_tab.c:1490
 #, fuzzy
 msgid "Insert the balance of a cash account"
 msgstr "不能在结算账户上产生交易。"
 
 #. redo item
-#: ../src/bet_tab.c:1515
+#: ../src/bet_tab.c:1516
 #, fuzzy
 msgid "Reset data"
 msgstr "最后日期"
 
-#: ../src/bet_tab.c:1858
+#: ../src/bet_tab.c:1859
 msgid " (still available)"
 msgstr ""
 
-#: ../src/bet_tab.c:1867 ../src/bet_tab.c:1889
+#: ../src/bet_tab.c:1868 ../src/bet_tab.c:1890
 #, fuzzy
 msgid " (budget exceeded)"
 msgstr "没有预算行"
 
-#: ../src/bet_tab.c:1880
+#: ../src/bet_tab.c:1881
 msgid " (yet to receive)"
 msgstr ""
 
-#: ../src/bet_tab.c:2420 ../src/bet_tab.c:2470 ../src/bet_tab.c:2530
+#: ../src/bet_tab.c:2421 ../src/bet_tab.c:2471 ../src/bet_tab.c:2531
 #, fuzzy
 msgid "No data by default"
 msgstr "恢复默认值"
 
-#: ../src/bet_tab.c:2428 ../src/bet_tab.c:2478 ../src/bet_tab.c:2536
+#: ../src/bet_tab.c:2429 ../src/bet_tab.c:2479 ../src/bet_tab.c:2537
 #: ../src/etats_affiche.c:1864 ../src/etats_config.c:1340
 #: ../src/etats_config.c:1475 ../src/gsb_data_category.c:161
 #: ../src/meta_categories.c:70
 msgid "No category"
 msgstr "未分类"
 
-#: ../src/bet_tab.c:2436 ../src/bet_tab.c:2486 ../src/bet_tab.c:2542
+#: ../src/bet_tab.c:2437 ../src/bet_tab.c:2487 ../src/bet_tab.c:2543
 #: ../src/etats_affiche.c:2034 ../src/etats_config.c:1348
 #: ../src/etats_config.c:1480 ../src/meta_budgetary.c:68
 msgid "No budgetary line"
 msgstr "没有预算行"
 
-#: ../src/bet_tab.c:2898 ../src/bet_tab.c:2995
+#: ../src/bet_tab.c:2899 ../src/bet_tab.c:2996
 #, fuzzy
 msgid "Export the array of forecast"
 msgstr "导出预算行"
 
-#: ../src/bet_tab.c:2953
+#: ../src/bet_tab.c:2954
 #, fuzzy
 msgid "Balance at "
 msgstr "余额"
 
-#: ../src/bet_tab.c:3002
+#: ../src/bet_tab.c:3003
 msgid "forecast.csv"
 msgstr ""
 
@@ -1543,7 +1548,7 @@ msgstr "请输入新增子类的名称"
 
 #: ../src/categories_onglet.c:552 ../src/etats_onglet.c:158
 #: ../src/import.c:442 ../src/import.c:3644 ../src/imputation_budgetaire.c:587
-#: ../src/parametres.c:322 ../src/utils_files.c:542
+#: ../src/parametres.c:325 ../src/utils_files.c:542
 msgid "Import"
 msgstr "导入"
 
@@ -2211,7 +2216,7 @@ msgstr "财年"
 #. Now we have a model, create view
 #: ../src/etats_affiche.c:2458 ../src/etats_config_ui.c:437
 #: ../src/etats_config_ui.c:2088 ../src/gsb_payment_method_config.c:132
-#: ../src/parametres.c:568
+#: ../src/parametres.c:571
 msgid "Payment methods"
 msgstr "支付方式"
 
@@ -2645,13 +2650,13 @@ msgid "Generalities"
 msgstr "普遍性"
 
 #: ../src/etats_config_ui.c:473 ../src/export_csv.c:775
-#: ../src/fenetre_principale.c:253 ../src/parametres.c:432
+#: ../src/fenetre_principale.c:253 ../src/parametres.c:435
 msgid "Transactions"
 msgstr "交易"
 
 #. echange line label
 #: ../src/etats_config_ui.c:478 ../src/gsb_currency.c:560
-#: ../src/gsb_currency_config.c:300 ../src/parametres.c:532
+#: ../src/gsb_currency_config.c:300 ../src/parametres.c:535
 msgid "Currencies"
 msgstr "货币"
 
@@ -2695,7 +2700,7 @@ msgstr "交易清单内容"
 msgid "Transactions display"
 msgstr "交易清单"
 
-#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1152
+#: ../src/etats_config_ui.c:2952 ../src/parametres.c:1155
 msgid "Totals currencies"
 msgstr "所有货币"
 
@@ -3115,7 +3120,7 @@ msgstr "子类别行"
 msgid "Reconciliation number"
 msgstr "调整数量"
 
-#: ../src/fenetre_principale.c:239 ../src/parametres.c:368
+#: ../src/fenetre_principale.c:239 ../src/parametres.c:371
 msgid "Main page"
 msgstr "首页"
 
@@ -3133,7 +3138,7 @@ msgid "Amortization array"
 msgstr ""
 
 #: ../src/fenetre_principale.c:281 ../src/navigation.c:1952
-#: ../src/parametres.c:350 ../src/parametres.c:1110
+#: ../src/parametres.c:353 ../src/parametres.c:1113
 msgid "Scheduler"
 msgstr "日程"
 
@@ -3319,6 +3324,46 @@ msgstr ""
 msgid "File '%s' could not be saved"
 msgstr "文件 \"%s\" 不能导入"
 
+#. File menu
+#: ../src/grisbi_ui.h:21 ../src/menu.c:169
+#, fuzzy
+msgid "_File"
+msgstr "文件"
+
+#: ../src/grisbi_ui.h:23 ../src/grisbi_ui.h:30 ../src/menu.c:171
+#: ../src/menu.c:179
+#, fuzzy
+msgid "_New account file..."
+msgstr "新账户文件"
+
+#: ../src/grisbi_ui.h:25 ../src/grisbi_ui.h:32 ../src/menu.c:173
+#: ../src/menu.c:181
+#, fuzzy
+msgid "_Open..."
+msgstr "_打开"
+
+#: ../src/grisbi_ui.h:27 ../src/grisbi_ui.h:34 ../src/menu.c:175
+#: ../src/menu.c:183
+#, fuzzy
+msgid "_Recently opened files"
+msgstr "最近打开的文件"
+
+#: ../src/grisbi_ui.h:36 ../src/menu.c:189
+#, fuzzy
+msgid "_Import file..."
+msgstr "导出文件"
+
+#: ../src/grisbi_ui.h:134 ../src/grisbi_ui.h:137 ../src/menu.c:176
+#: ../src/menu.c:184
+#, fuzzy
+msgid "_Save"
+msgstr "保存"
+
+#: ../src/grisbi_ui.h:140 ../src/menu.c:187
+#, fuzzy
+msgid "_Save as..."
+msgstr "另存为"
+
 #: ../src/gsb_account.c:168
 #, c-format
 msgid "Delete account \"%s\"?"
@@ -3486,7 +3531,7 @@ msgid "Report name"
 msgstr "报表名"
 
 #. create the page
-#: ../src/gsb_archive_config.c:115 ../src/parametres.c:313
+#: ../src/gsb_archive_config.c:115 ../src/parametres.c:316
 #, fuzzy
 msgid "Archives"
 msgstr "活动"
@@ -4015,7 +4060,7 @@ msgstr "文件:"
 
 #. crypt the grisbi file
 #: ../src/gsb_assistant_file.c:333 ../src/gsb_assistant_first.c:256
-#: ../src/parametres.c:890
+#: ../src/parametres.c:893
 msgid "Encrypt Grisbi file"
 msgstr ""
 
@@ -4102,12 +4147,12 @@ msgid "General configuration of Grisbi"
 msgstr ""
 
 #. configure the browser
-#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1058
+#: ../src/gsb_assistant_first.c:214 ../src/parametres.c:1061
 #, fuzzy
 msgid "Web"
 msgstr "网站"
 
-#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1065
+#: ../src/gsb_assistant_first.c:221 ../src/parametres.c:1068
 #, fuzzy
 msgid "Web browser command: "
 msgstr "Web浏览器:"
@@ -4117,45 +4162,45 @@ msgstr "Web浏览器:"
 msgid "You may use %s to expand the URL - I.e: 'firefox -remote %s' "
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:873
+#: ../src/gsb_assistant_first.c:239 ../src/parametres.c:876
 msgid "Account files handling"
 msgstr "账户文件处理选项"
 
 #. Automatically load last file on startup?
-#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:876
+#: ../src/gsb_assistant_first.c:242 ../src/parametres.c:879
 msgid "Automatically load last file on startup"
 msgstr "启动时自动载入最后一次使用的文件"
 
 #. automatically save file at closing
-#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:880
+#: ../src/gsb_assistant_first.c:248 ../src/parametres.c:883
 msgid "Automatically save on exit"
 msgstr "退出时自动保存"
 
 #. Automatic backup ?
-#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:930
+#: ../src/gsb_assistant_first.c:270 ../src/parametres.c:933
 msgid "Make a backup copy before saving files"
 msgstr "保存文件时制作一份备份"
 
-#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:938
+#: ../src/gsb_assistant_first.c:280 ../src/parametres.c:941
 #, fuzzy
 msgid "Make a backup copy every "
 msgstr "打开文件时保存一份备份文件"
 
-#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:948
+#: ../src/gsb_assistant_first.c:291 ../src/parametres.c:951
 msgid " minutes"
 msgstr ""
 
-#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:955
+#: ../src/gsb_assistant_first.c:300 ../src/parametres.c:958
 #, fuzzy
 msgid "Backup directory: "
 msgstr "备份文件:"
 
-#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:962
+#: ../src/gsb_assistant_first.c:305 ../src/parametres.c:965
 msgid "Select/Create backup directory"
 msgstr ""
 
 #: ../src/gsb_assistant_first.c:344 ../src/gsb_reconcile_config.c:112
-#: ../src/parametres.c:469
+#: ../src/parametres.c:472
 msgid "Reconciliation"
 msgstr "调整"
 
@@ -4401,7 +4446,7 @@ msgstr "新增银行"
 msgid "Contact name"
 msgstr "联系人"
 
-#: ../src/gsb_bank.c:461 ../src/parametres.c:550
+#: ../src/gsb_bank.c:461 ../src/parametres.c:553
 msgid "Banks"
 msgstr "银行"
 
@@ -6658,7 +6703,7 @@ msgstr ""
 "或者选择下面的 \"%s\" 选项。"
 
 #. Warn if file is used by someone else?
-#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:885
+#: ../src/gsb_file.c:561 ../src/gsb_file.c:815 ../src/parametres.c:888
 msgid "Force saving of locked files"
 msgstr "强制保存加锁的文件"
 
@@ -6690,7 +6735,7 @@ msgid ""
 "cancel and save it with another name or activate the \"%s\" option in setup."
 msgstr ""
 
-#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:821
+#: ../src/gsb_file.c:814 ../src/gsb_file.c:826 ../src/main.c:831
 msgid "unnamed"
 msgstr "未命名"
 
@@ -6742,7 +6787,7 @@ msgid ""
 "%s ?</b>"
 msgstr ""
 
-#: ../src/gsb_file_config.c:821
+#: ../src/gsb_file_config.c:816
 #, fuzzy, c-format
 msgid "Cannot save configuration file '%s': %s"
 msgstr "不能保存文件 '%s': %s"
@@ -7087,75 +7132,75 @@ msgid ""
 msgstr ""
 
 #. propose to configure the form
-#: ../src/gsb_form.c:3650
+#: ../src/gsb_form.c:3653
 msgid "Configure the form"
 msgstr ""
 
-#: ../src/gsb_form_config.c:116 ../src/parametres.c:488
+#: ../src/gsb_form_config.c:117 ../src/parametres.c:491
 msgid "Transaction form"
 msgstr "交易表格"
 
 #. create the paddingbox into the parent
-#: ../src/gsb_form_config.c:147
+#: ../src/gsb_form_config.c:148
 msgid "Form structure preview"
 msgstr ""
 
 #. set the box with the buttons
-#: ../src/gsb_form_config.c:177
+#: ../src/gsb_form_config.c:178
 msgid "Form structure content"
 msgstr ""
 
-#: ../src/gsb_form_config.c:224
+#: ../src/gsb_form_config.c:225
 #, fuzzy
 msgid "Col 1"
 msgstr "列1"
 
-#: ../src/gsb_form_config.c:225
+#: ../src/gsb_form_config.c:226
 #, fuzzy
 msgid "Col 2"
 msgstr "列2"
 
-#: ../src/gsb_form_config.c:226
+#: ../src/gsb_form_config.c:227
 #, fuzzy
 msgid "Col 3"
 msgstr "列3"
 
-#: ../src/gsb_form_config.c:227
+#: ../src/gsb_form_config.c:228
 #, fuzzy
 msgid "Col 4"
 msgstr "列4"
 
-#: ../src/gsb_form_config.c:228
+#: ../src/gsb_form_config.c:229
 #, fuzzy
 msgid "Col 5"
 msgstr "列5"
 
-#: ../src/gsb_form_config.c:229
+#: ../src/gsb_form_config.c:230
 #, fuzzy
 msgid "Col 6"
 msgstr "列6"
 
-#: ../src/gsb_form_config.c:341
+#: ../src/gsb_form_config.c:342
 #, fuzzy
 msgid "rows"
 msgstr "浏览"
 
-#: ../src/gsb_form_config.c:388
+#: ../src/gsb_form_config.c:389
 #, fuzzy
 msgid "columns"
 msgstr "账户"
 
-#: ../src/gsb_form_config.c:671
+#: ../src/gsb_form_config.c:672
 msgid ""
 "There is no place enough to put the element. You need to increase the number "
 "of rows or columns to add an element."
 msgstr ""
 
-#: ../src/gsb_form_config.c:673 ../src/gsb_form_config.c:678
+#: ../src/gsb_form_config.c:674 ../src/gsb_form_config.c:679
 msgid "The table is full"
 msgstr ""
 
-#: ../src/gsb_form_config.c:675
+#: ../src/gsb_form_config.c:676
 msgid ""
 "There is no place enough to put the two elements (you have clicked on an "
 "element which contains two). You need to increase the number of rows or "
@@ -7170,10 +7215,6 @@ msgid ""
 "that warning."
 msgstr ""
 
-#: ../src/gsb_form_scheduler.c:152 ../src/gsb_scheduler_list.c:1285
-msgid "Automatic"
-msgstr "自动"
-
 #: ../src/gsb_form_scheduler.c:165
 msgid "Choose the account"
 msgstr "选择账户"
@@ -7222,7 +7263,7 @@ msgstr "交易编号"
 msgid "Automatic/Manual"
 msgstr "自动"
 
-#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:559
+#: ../src/gsb_fyear_config.c:104 ../src/parametres.c:562
 msgid "Financial years"
 msgstr "财年"
 
@@ -7534,7 +7575,7 @@ msgstr ""
 msgid "Delete reconciliation"
 msgstr "新增账户"
 
-#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:478
+#: ../src/gsb_reconcile_sort_config.c:92 ../src/parametres.c:481
 #, fuzzy
 msgid "Sort for reconciliation"
 msgstr "调整"
@@ -7760,7 +7801,7 @@ msgid "Execute transaction"
 msgstr "删除交易"
 
 #: ../src/gsb_scheduler_list.c:2719 ../src/transaction_list.c:164
-#: ../src/transaction_list.c:1058 ../src/transaction_list.c:1968
+#: ../src/transaction_list.c:1059 ../src/transaction_list.c:1969
 #, fuzzy, c-format
 msgid "Total : %s (variance : %s)"
 msgstr "总计 %s: %s (%d 交易)"
@@ -8520,7 +8561,7 @@ msgstr ""
 msgid "Manage import associations"
 msgstr "类别详情"
 
-#: ../src/import.c:3738 ../src/parametres.c:331
+#: ../src/import.c:3738 ../src/parametres.c:334
 #, fuzzy
 msgid "Import associations"
 msgstr "动作"
@@ -8869,78 +8910,42 @@ msgstr "没有子预算行"
 msgid "Transfer all transactions in another sub-budgetary line"
 msgstr "转移这些交易到"
 
-#: ../src/main.c:124
+#: ../src/main.c:125
 #, fuzzy
 msgid "Show the application's version"
 msgstr "每笔交易显示3行"
 
-#: ../src/main.c:126
+#: ../src/main.c:127
 #, fuzzy
 msgid "Debug mode: level 0-5"
 msgstr "除错"
 
-#: ../src/main.c:128
+#: ../src/main.c:129
 msgid "[FILE]"
 msgstr ""
 
-#: ../src/main.c:641
+#: ../src/main.c:651
 #, c-format
 msgid "Error on sigaction: SIGSEGV won't be trapped\n"
 msgstr "信号错误:SIGSEGV不能捕捉\n"
 
-#: ../src/main.c:774 ../src/main.c:814 ../share/grisbi.desktop.in.h:1
+#: ../src/main.c:784 ../src/main.c:824 ../share/grisbi.desktop.in.h:1
 msgid "Grisbi"
 msgstr "Grisbi"
 
-#: ../src/main.c:945
+#: ../src/main.c:955
 #, c-format
 msgid "Grisbi version %s, %s\n"
 msgstr ""
 
-#: ../src/main.c:1011
+#: ../src/main.c:1021
 msgid "- Personnal finances manager"
 msgstr ""
 
-#: ../src/main.c:1014
+#: ../src/main.c:1024
 msgid "Grisbi can manage the accounts of a family or a small association."
 msgstr ""
 
-#. File menu
-#: ../src/menu.c:169
-#, fuzzy
-msgid "_File"
-msgstr "文件"
-
-#: ../src/menu.c:171 ../src/menu.c:179
-#, fuzzy
-msgid "_New account file..."
-msgstr "新账户文件"
-
-#: ../src/menu.c:173 ../src/menu.c:181
-#, fuzzy
-msgid "_Open..."
-msgstr "_打开"
-
-#: ../src/menu.c:175 ../src/menu.c:183
-#, fuzzy
-msgid "_Recently opened files"
-msgstr "最近打开的文件"
-
-#: ../src/menu.c:176 ../src/menu.c:184
-#, fuzzy
-msgid "_Save"
-msgstr "保存"
-
-#: ../src/menu.c:187
-#, fuzzy
-msgid "_Save as..."
-msgstr "另存为"
-
-#: ../src/menu.c:189
-#, fuzzy
-msgid "_Import file..."
-msgstr "导出文件"
-
 #: ../src/menu.c:191
 #, fuzzy
 msgid "_Export accounts as QIF/CSV file..."
@@ -9386,235 +9391,235 @@ msgid "Remove this report"
 msgstr "删除报表"
 
 #. Create dialog
-#: ../src/parametres.c:264
+#: ../src/parametres.c:267
 #, fuzzy
 msgid "Grisbi preferences"
 msgstr "选项"
 
-#: ../src/parametres.c:294
+#: ../src/parametres.c:297
 #, fuzzy
 msgid "Main"
 msgstr "Spain"
 
-#: ../src/parametres.c:303 ../src/parametres.c:869
+#: ../src/parametres.c:306 ../src/parametres.c:872
 msgid "Files"
 msgstr "文件"
 
-#: ../src/parametres.c:341 ../src/parametres.c:1056
+#: ../src/parametres.c:344 ../src/parametres.c:1059
 msgid "Programs"
 msgstr "程序"
 
-#: ../src/parametres.c:359 ../src/parametres.c:1267
+#: ../src/parametres.c:362 ../src/parametres.c:1296
 #, fuzzy
 msgid "Localization"
 msgstr "调整"
 
-#: ../src/parametres.c:378
+#: ../src/parametres.c:381
 msgid "Display"
 msgstr "显示"
 
-#: ../src/parametres.c:395 ../src/parametres.c:662
+#: ../src/parametres.c:398 ../src/parametres.c:665
 msgid "Messages & warnings"
 msgstr "消息和警告"
 
-#: ../src/parametres.c:413 ../src/parametres.c:1149
+#: ../src/parametres.c:416 ../src/parametres.c:1152
 #, fuzzy
 msgid "Payees, categories and budgetaries"
 msgstr "请输入一个预算行!"
 
-#: ../src/parametres.c:422
+#: ../src/parametres.c:425
 msgid "Toolbars - Navigation pane"
 msgstr ""
 
-#: ../src/parametres.c:440
+#: ../src/parametres.c:443
 msgid "List behavior"
 msgstr ""
 
-#: ../src/parametres.c:460 ../src/parametres.c:747
+#: ../src/parametres.c:463 ../src/parametres.c:750
 #, fuzzy
 msgid "Messages before deleting"
 msgstr "消息和警告"
 
-#: ../src/parametres.c:496
+#: ../src/parametres.c:499
 #, fuzzy
 msgid "Content"
 msgstr "联系方式"
 
-#: ../src/parametres.c:505
+#: ../src/parametres.c:508
 msgid "Behavior"
 msgstr ""
 
-#: ../src/parametres.c:514
+#: ../src/parametres.c:517
 msgid "Completion"
 msgstr ""
 
-#: ../src/parametres.c:524
+#: ../src/parametres.c:527
 msgid "Resources"
 msgstr "资源"
 
-#: ../src/parametres.c:541
+#: ../src/parametres.c:544
 #, fuzzy
 msgid "Currencies links"
 msgstr "货币"
 
-#: ../src/parametres.c:583
+#: ../src/parametres.c:586
 #, fuzzy
 msgid "Balance estimate"
 msgstr "结余"
 
 #. Tip of the day
-#: ../src/parametres.c:665
+#: ../src/parametres.c:668
 msgid "Tip of the day"
 msgstr ""
 
 #. Display or not tips
-#: ../src/parametres.c:668
+#: ../src/parametres.c:671
 msgid "Display tip of the day"
 msgstr ""
 
-#: ../src/parametres.c:675
+#: ../src/parametres.c:678
 #, fuzzy
 msgid "Display following warnings messages"
 msgstr "警告信息"
 
-#: ../src/parametres.c:696 ../src/parametres.c:775
+#: ../src/parametres.c:699 ../src/parametres.c:778
 #, fuzzy
 msgid "Message"
 msgstr "消息日志"
 
-#: ../src/parametres.c:751
+#: ../src/parametres.c:754
 #, fuzzy
 msgid "Display following messages"
 msgstr "警告信息"
 
 #. Compression level of files
-#: ../src/parametres.c:895
+#: ../src/parametres.c:898
 msgid "Compress Grisbi file"
 msgstr ""
 
-#: ../src/parametres.c:903
+#: ../src/parametres.c:906
 #, fuzzy
 msgid "Memorise last opened files: "
 msgstr "记住上次打开的文件:"
 
 #. Backups
-#: ../src/parametres.c:912
+#: ../src/parametres.c:915
 msgid "Backups"
 msgstr "备份"
 
 #. Single backup file
-#: ../src/parametres.c:915
+#: ../src/parametres.c:918
 #, fuzzy
 msgid "Make a single backup file"
 msgstr "打开文件时保存一份备份文件"
 
 #. Compression level of backups
-#: ../src/parametres.c:920
+#: ../src/parametres.c:923
 msgid "Compress Grisbi backup"
 msgstr ""
 
 #. Backup at each opening?
-#: ../src/parametres.c:925
+#: ../src/parametres.c:928
 msgid "Make a backup copy after opening files"
 msgstr "打开文件时保存一份备份文件"
 
-#: ../src/parametres.c:979
+#: ../src/parametres.c:982
 #, fuzzy
 msgid "Config file"
 msgstr "保存文件"
 
-#: ../src/parametres.c:984
+#: ../src/parametres.c:987
 msgid "Use the config file of version stable as model"
 msgstr ""
 
-#: ../src/parametres.c:1074
+#: ../src/parametres.c:1077
 #, c-format
 msgid ""
 "You  ""  t  ametres.c:1077   version stable as model"  mall association."    "  ): "  µÐ¼ запуск  ем:"  ¾Ð´ÐºÐ¸"  ся сроком "    ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                  may use %s to expand the URL I.e:\n"
 "'firefox -remote %s'"
 msgstr ""
 
-#: ../src/parametres.c:1115
+#: ../src/parametres.c:1118
 #, fuzzy
 msgid "Scheduler warnings at Grisbi's opening"
 msgstr "计划调度器警告"
 
-#: ../src/parametres.c:1116
+#: ../src/parametres.c:1119
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions arriving at expiration date"
 msgstr "手动预定的到期日交易"
 
-#: ../src/parametres.c:1117
+#: ../src/parametres.c:1120
 #, fuzzy
 msgid "Warn/Execute the scheduled transactions of the month"
 msgstr "录入自动预定的交易"
 
-#: ../src/parametres.c:1125
+#: ../src/parametres.c:1128
 #, fuzzy
 msgid "Number of days before the warning or the execution: "
 msgstr "计划交易的提醒将提前的天数:"
 
-#: ../src/parametres.c:1158
+#: ../src/parametres.c:1161
 #, fuzzy
 msgid "Sort option for transactions"
 msgstr "导入交易确认"
 
-#: ../src/parametres.c:1159
+#: ../src/parametres.c:1162
 #, fuzzy
 msgid "by number"
 msgstr "支票编号"
 
-#: ../src/parametres.c:1160
+#: ../src/parametres.c:1163
 msgid "by increasing date"
 msgstr ""
 
-#: ../src/parametres.c:1161
+#: ../src/parametres.c:1164
 msgid "by date descending"
 msgstr ""
 
-#: ../src/parametres.c:1168
+#: ../src/parametres.c:1171
 msgid "Action associated with a double click on a subdivision: "
 msgstr ""
 
-#: ../src/parametres.c:1169
+#: ../src/parametres.c:1172
 #, fuzzy
 msgid "Expand the line"
 msgstr "数据选择"
 
-#: ../src/parametres.c:1170
+#: ../src/parametres.c:1173
 #, fuzzy
 msgid "Edit the line"
 msgstr "初始余额"
 
-#: ../src/parametres.c:1171
+#: ../src/parametres.c:1174
 #, fuzzy
 msgid "Manage the line"
 msgstr "数据选择"
 
-#: ../src/parametres.c:1309
+#: ../src/parametres.c:1338
 #, fuzzy
 msgid "Choose the date format"
 msgstr "选择账户"
 
-#: ../src/parametres.c:1315
+#: ../src/parametres.c:1344
 #, fuzzy
 msgid "Date format"
 msgstr "导出报表"
 
-#: ../src/parametres.c:1381
+#: ../src/parametres.c:1410
 #, fuzzy
 msgid "Decimal point: "
 msgstr "数据选择:"
 
-#: ../src/parametres.c:1394
+#: ../src/parametres.c:1423
 msgid "Thousands separator: "
 msgstr ""
 
-#: ../src/parametres.c:1411
+#: ../src/parametres.c:1440
 msgid "Choose the decimal and thousands separator"
 msgstr ""
 
-#: ../src/parametres.c:1417
+#: ../src/parametres.c:1446
 msgid "Decimal and thousands separator"
 msgstr ""
 
@@ -10317,13 +10322,13 @@ msgstr "显示交易"
 
 #. this value should not be changed here, check later if i'm right,
 #. * for now just show a message
-#: ../src/transaction_list.c:1599
+#: ../src/transaction_list.c:1600
 msgid ""
 "Try to change a visible line by transaction_list_set. It shouldn't append ! "
 "Check that."
 msgstr ""
 
-#: ../src/transaction_list.c:1794
+#: ../src/transaction_list.c:1795
 #, c-format
 msgid ""
 "Trying to append the child number %d to the mother %d in the model, but no "
diff --git a/src/Makefile.am b/src/Makefile.am
index e081bd8..97d020e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,7 +42,10 @@ libgrisbi_la_SOURCES = \
 	fenetre_principale.c	\
 	file_obfuscate.c	\
 	file_obfuscate_qif.c	\
+	grisbi_app.c \
 	grisbi_osx.c \
+	grisbi_ui.h \
+	grisbi_window.c \
 	gsb_account.c		\
 	gsb_account_property.c	\
 	gsb_archive_config.c	\
@@ -130,6 +133,8 @@ libgrisbi_la_SOURCES = \
 	metatree.c		\
 	navigation.c		\
 	parametres.c		\
+	parse_cmdline.c		\
+	parametres_ui.c		\
 	print_dialog_config.c		\
 	print_report.c		\
 	print_transactions_list.c		\
@@ -182,7 +187,9 @@ libgrisbi_la_SOURCES = \
 	etats_html.h            \
 	export.h                \
 	export_csv.h            \
+	grisbi_app.h \
 	grisbi_osx.h \
+	grisbi_window.h \
 	gsb_account.h		\
 	gsb_account_property.h	\
 	gsb_archive_config.h	\
@@ -283,6 +290,8 @@ libgrisbi_la_SOURCES = \
 	mouse.h                 \
 	navigation.h		\
 	parametres.h		\
+	parse_cmdline.h		\
+	parametres_ui.h		\
 	print_dialog_config.h	\
 	print_report.h		\
 	print_transactions_list.h	\
diff --git a/src/accueil.c b/src/accueil.c
index 12d7032..f7add3a 100644
--- a/src/accueil.c
+++ b/src/accueil.c
@@ -32,6 +32,7 @@
 #include "classement_echeances.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
@@ -52,6 +53,7 @@
 #include "structures.h"
 #include "utils.h"
 #include "utils_dates.h"
+#include "utils_gtkbuilder.h"
 #include "utils_real.h"
 #include "utils_str.h"
 #include "erreur.h"
@@ -364,13 +366,16 @@ void update_liste_comptes_accueil ( gboolean force )
     gint nb_comptes_bancaires=0, nb_comptes_passif=0, nb_comptes_actif=0;
     gint new_comptes_bancaires=0, new_comptes_passif=0, new_comptes_actif=0;
     gint soldes_mixtes = 0;
+    GrisbiAppConf *conf;
 
     if ( !force
-	 &&
-	 !( mise_a_jour_liste_comptes_accueil
-	   &&
-	   gsb_data_account_get_accounts_amount ( ) ) )
-	return;
+     &&
+     !( mise_a_jour_liste_comptes_accueil
+     &&
+     gsb_data_account_get_accounts_amount ( ) ) )
+        return;
+
+    conf = grisbi_app_get_conf ( );
 
     mise_a_jour_liste_comptes_accueil = 0;
 
@@ -456,7 +461,7 @@ void update_liste_comptes_accueil ( gboolean force )
 
 
         /* Creating the table which will store accounts with their balances. */
-        if ( conf.balances_with_scheduled == FALSE )
+        if ( conf->balances_with_scheduled == FALSE )
             tmpstr = g_strdup_printf ( _("Account balances in %s at %s"),
                         gsb_data_currency_get_name ( currency_number ),
                         gsb_date_today ( ) );
@@ -537,7 +542,7 @@ void update_liste_comptes_accueil ( gboolean force )
             continue;
 
         /* Creating the table which will store accounts with their balances   */
-        if ( conf.balances_with_scheduled == FALSE )
+        if ( conf->balances_with_scheduled == FALSE )
             tmpstr = g_strdup_printf (_("Liabilities accounts balances in %s at %s"),
                         gsb_data_currency_get_name (currency_number),
                         gsb_date_today ( ) );
@@ -609,7 +614,7 @@ void update_liste_comptes_accueil ( gboolean force )
     {
         GSList *list_tmp;
         gint currency_number;
-		gchar* tmpstr;
+        gchar* tmpstr;
 
         currency_number = gsb_data_currency_get_no_currency (devise -> data);
 
@@ -617,7 +622,7 @@ void update_liste_comptes_accueil ( gboolean force )
             continue;
 
         /* Creating the table which will store accounts with their balances    */
-        if ( conf.balances_with_scheduled == FALSE )
+        if ( conf->balances_with_scheduled == FALSE )
             tmpstr = g_strdup_printf (_("Assets accounts balances in %s at %s"),
                         gsb_data_currency_get_name (currency_number),
                         gsb_date_today ( ) );
@@ -693,7 +698,7 @@ void update_liste_comptes_accueil ( gboolean force )
             tmp_str_2 = g_strdup ( _("Additional balance") );
         else
             tmp_str_2 = g_strdup ( _("Additional balances") );
-        if ( conf.balances_with_scheduled == FALSE )
+        if ( conf->balances_with_scheduled == FALSE )
         {
             tmpstr = g_strconcat ( tmp_str_2, _(" at "), gsb_date_today (), NULL );
             g_free ( tmp_str_2 );
@@ -1084,19 +1089,22 @@ void affiche_solde_des_comptes ( GtkWidget *table,
 {
     GtkWidget *label;
     gchar *tmpstr;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* on commence par une ligne vide */
     label = gtk_label_new ( chaine_espace );
     gtk_size_group_add_widget ( GTK_SIZE_GROUP ( size_group_accueil ), label );
     gtk_misc_set_alignment ( GTK_MISC ( label ), MISC_RIGHT, MISC_VERT_CENTER );
-	gtk_table_attach_defaults ( GTK_TABLE ( table ), label, 0, 1, i, i+1 );
-	gtk_widget_show ( label );
+    gtk_table_attach_defaults ( GTK_TABLE ( table ), label, 0, 1, i, i+1 );
+    gtk_widget_show ( label );
     i ++;
 
-	/* Première colonne */
+    /* Première colonne */
     if ( nb_comptes == 1 )
         label = gtk_label_new ( _("Global balance: ") );
-    else if ( conf.pluriel_final )
+    else if ( conf->pluriel_final )
         label = gtk_label_new ( ("Soldes finaux: ") );
     else
         label = gtk_label_new ( _("Global balances: ") );
@@ -1499,15 +1507,17 @@ void update_soldes_minimaux ( gboolean force )
     GSList *liste_voulu;
     GSList *liste_autorise_et_voulu;
     GSList *list_tmp;
-
+    GrisbiAppConf *conf;
 
     if ( !force
-	 &&
-	 !mise_a_jour_soldes_minimaux  )
-	return;
+     &&
+     !mise_a_jour_soldes_minimaux  )
+        return;
 
     devel_debug ( "update_soldes_minimaux" );
 
+    conf = grisbi_app_get_conf ( );
+
     mise_a_jour_soldes_minimaux = 0;
 
     liste_autorise = NULL;
@@ -1533,7 +1543,7 @@ void update_soldes_minimaux ( gboolean force )
 
         i = gsb_data_account_get_no_account ( list_tmp -> data );
 
-        if ( gsb_data_account_get_closed_account ( i ) && !etat.show_closed_accounts )
+        if ( gsb_data_account_get_closed_account ( i ) && !conf->show_closed_accounts )
         {
             list_tmp = list_tmp -> next;
             continue;
@@ -1801,20 +1811,23 @@ void update_fin_comptes_passifs ( gboolean force )
     GSList *liste_tmp;
     GSList *pointeur;
     GSList *list_tmp;
+    GrisbiAppConf *conf;
 
     if ( !force
-	 &&
-	 !mise_a_jour_fin_comptes_passifs )
-	return;
+     &&
+     !mise_a_jour_fin_comptes_passifs )
+        return;
 
     devel_debug (NULL);
 
+    conf = grisbi_app_get_conf ( );
+
     mise_a_jour_fin_comptes_passifs = 0;
 
     gtk_notebook_remove_page ( GTK_NOTEBOOK(frame_etat_fin_compte_passif), 0 );
     hide_paddingbox ( frame_etat_fin_compte_passif );
 
-    if ( !etat.show_closed_accounts )
+    if ( !conf->show_closed_accounts )
         return;
 
     list_tmp = gsb_data_account_get_list_accounts ();
@@ -1962,6 +1975,9 @@ GtkWidget *onglet_accueil (void)
     static GtkTargetEntry row_targets[] = {
     { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
     };
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Configuration of the main page"),
                         "title.png" );
@@ -1978,7 +1994,7 @@ GtkWidget *onglet_accueil (void)
         gtk_box_pack_start ( GTK_BOX ( paddingbox ),
                         gsb_automem_radiobutton_new ( "Soldes finals",
                         "Soldes finaux",
-                        &conf.pluriel_final,
+                        &conf->pluriel_final,
                         G_CALLBACK (gsb_gui_navigation_update_home_page), NULL ),
                         FALSE, FALSE, 0 );
     }
@@ -1992,7 +2008,7 @@ GtkWidget *onglet_accueil (void)
     button = gsb_automem_checkbutton_new (
                         _("Take into account the scheduled operations "
                           "in the calculation of balances"),
-                        &conf.balances_with_scheduled,
+                        &conf->balances_with_scheduled,
                         G_CALLBACK ( gsb_config_scheduler_switch_balances_with_scheduled ),
                         NULL );
 
diff --git a/src/affichage.c b/src/affichage.c
index 1090a3d..a9e6a83 100644
--- a/src/affichage.c
+++ b/src/affichage.c
@@ -33,6 +33,7 @@
 #include "accueil.h"
 #include "custom_list.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
@@ -115,6 +116,9 @@ GtkWidget * onglet_display_fonts ( void )
     GtkWidget *button;
     GtkWidget *color_combobox;
     GtkWidget *color_button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Fonts & logo"), "fonts.png" );
 
@@ -127,8 +131,7 @@ GtkWidget * onglet_display_fonts ( void )
     check_button = gtk_check_button_new_with_label ( _("Display a logo"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), check_button, FALSE, FALSE, 0 );
 
-    gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( check_button ),
-				   etat.utilise_logo );
+    gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( check_button ), etat.utilise_logo );
 
     hbox = gtk_hbox_new ( FALSE, 5 );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0 );
@@ -143,7 +146,7 @@ GtkWidget * onglet_display_fonts ( void )
     logo_button = gtk_button_new ();
     gtk_button_set_relief ( GTK_BUTTON ( logo_button ), GTK_RELIEF_NONE );
 
-	pixbuf = gsb_select_icon_get_logo_pixbuf ( );
+    pixbuf = gsb_select_icon_get_logo_pixbuf ( );
 
     if (!pixbuf)
     {
@@ -168,8 +171,10 @@ GtkWidget * onglet_display_fonts ( void )
     }
 
     gtk_container_add (GTK_CONTAINER(logo_button), preview);
-    g_signal_connect_swapped ( G_OBJECT ( logo_button ), "clicked",
-			       G_CALLBACK ( modification_logo_accueil ), NULL );
+    g_signal_connect_swapped ( G_OBJECT ( logo_button ),
+                        "clicked",
+                        G_CALLBACK ( modification_logo_accueil ),
+                        NULL );
     gtk_box_pack_start ( GTK_BOX ( hbox ), logo_button, FALSE, FALSE, 0 );
 
     label = gtk_label_new ( _("Click on preview to change logo") );
@@ -185,25 +190,26 @@ GtkWidget * onglet_display_fonts ( void )
                         _("Use a custom font for the transactions: "));
     gtk_box_pack_start ( GTK_BOX ( hbox ), check_button, FALSE, FALSE, 0 );
     gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( check_button ),
-				        conf.utilise_fonte_listes );
+                        conf->utilise_fonte_listes );
 
     /*     on crée la vbox qui contiendra la font button et le raz */
     vbox = gtk_vbox_new ( FALSE, 10 );
     gtk_box_pack_start ( GTK_BOX ( hbox ), vbox, FALSE, FALSE, 0 );
 
-    gtk_widget_set_sensitive ( vbox, conf.utilise_fonte_listes );
-    g_signal_connect ( G_OBJECT ( check_button ), "toggled",
-		       G_CALLBACK ( change_choix_utilise_fonte_liste ), vbox );
-
+    gtk_widget_set_sensitive ( vbox, conf->utilise_fonte_listes );
+    g_signal_connect ( G_OBJECT ( check_button ),
+                        "toggled",
+                        G_CALLBACK ( change_choix_utilise_fonte_liste ),
+                        vbox );
 
     /* Create font button */
-    font_button = utils_font_create_button ( &conf.font_string,
-					    G_CALLBACK (update_fonte_listes), NULL);
+    font_button = utils_font_create_button ( &conf->font_string,
+                        G_CALLBACK (update_fonte_listes), NULL );
     gtk_box_pack_start ( GTK_BOX (vbox), font_button, FALSE, FALSE, 0 );
 
-    if ( !gsb_data_account_get_accounts_amount () )
+    if ( !gsb_data_account_get_accounts_amount ( ) )
     {
-	gtk_widget_set_sensitive ( vbox_pref, FALSE );
+        gtk_widget_set_sensitive ( vbox_pref, FALSE );
     }
 
     /* change colors */
@@ -216,36 +222,30 @@ GtkWidget * onglet_display_fonts ( void )
     gtk_box_pack_start ( GTK_BOX ( vbox ), hbox, FALSE, FALSE, 10 );
 
     color_combobox = gsb_color_create_color_combobox ( );
-    gtk_box_pack_start ( GTK_BOX (hbox),
-			 color_combobox,
-			 FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( hbox ), color_combobox, FALSE, FALSE, 0 );
 
     color_button = gtk_color_button_new ();
-    gtk_color_button_set_title ( GTK_COLOR_BUTTON(color_button), _("Choosing color") );
-    g_signal_connect ( G_OBJECT (color_button),
-		       "color-set",
-		       G_CALLBACK (preferences_view_color_changed),
-		       G_OBJECT (color_combobox));
-    gtk_box_pack_start ( GTK_BOX (hbox),
-			 color_button,
-			 FALSE, FALSE, 0);
+    gtk_color_button_set_title ( GTK_COLOR_BUTTON ( color_button ), _("Choosing color") );
+    g_signal_connect ( G_OBJECT ( color_button ),
+                        "color-set",
+                        G_CALLBACK ( preferences_view_color_changed ),
+                        G_OBJECT ( color_combobox ) );
+    gtk_box_pack_start ( GTK_BOX (hbox), color_button, FALSE, FALSE, 0) ;
 
     /* connect the color button to the combobox if changed */
-    g_signal_connect ( G_OBJECT (color_combobox),
-		       "changed",
-		       G_CALLBACK (preferences_view_color_combobox_changed),
-		       G_OBJECT (color_button));
-
-    button = gtk_button_new_with_label (_("Back to default"));
-    g_signal_connect ( G_OBJECT (button),
-		       "clicked",
-		       G_CALLBACK (preferences_view_color_default),
-		       G_OBJECT (color_combobox));
-    gtk_box_pack_start ( GTK_BOX (vbox),
-			 button,
-			 FALSE, FALSE, 0);
-
-    gtk_combo_box_set_active ( GTK_COMBO_BOX (color_combobox), 0);
+    g_signal_connect ( G_OBJECT ( color_combobox ),
+                        "changed",
+                        G_CALLBACK ( preferences_view_color_combobox_changed ),
+                        G_OBJECT ( color_button ) );
+
+    button = gtk_button_new_with_label ( _("Back to default") );
+    g_signal_connect ( G_OBJECT ( button ),
+                        "clicked",
+                        G_CALLBACK ( preferences_view_color_default ),
+                        G_OBJECT ( color_combobox ) );
+    gtk_box_pack_start ( GTK_BOX (vbox), button, FALSE, FALSE, 0 );
+
+    gtk_combo_box_set_active ( GTK_COMBO_BOX ( color_combobox ), 0 );
 
     return vbox_pref;
 }
@@ -309,11 +309,14 @@ gboolean change_choix_utilise_logo ( GtkWidget *check_button,
 gboolean change_choix_utilise_fonte_liste ( GtkWidget *check_button,
                         GtkWidget *vbox )
 {
-    conf.utilise_fonte_listes = gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON ( check_button ));
-    gtk_widget_set_sensitive ( vbox,
-			       conf.utilise_fonte_listes );
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
-    update_fonte_listes ( conf.font_string, NULL );
+    conf->utilise_fonte_listes = gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON ( check_button ) );
+    gtk_widget_set_sensitive ( vbox, conf->utilise_fonte_listes );
+
+    update_fonte_listes ( conf->font_string, NULL );
 
     return ( FALSE );
 }
@@ -332,17 +335,20 @@ void update_fonte_listes ( gchar *fontname,
 {
     GValue value = {0,};
     gchar *font;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     devel_debug (NULL);
 
-    if ( conf.utilise_fonte_listes )
-	font = fontname;
+    if ( conf->utilise_fonte_listes )
+        font = fontname;
     else
-	font = NULL;
+        font = NULL;
 
-    g_value_init (&value, G_TYPE_STRING);
-    g_value_set_string (&value, font);
-    transaction_list_update_column (CUSTOM_MODEL_FONT, &value);
+    g_value_init ( &value, G_TYPE_STRING );
+    g_value_set_string ( &value, font );
+    transaction_list_update_column ( CUSTOM_MODEL_FONT, &value );
 }
 
 
@@ -359,9 +365,11 @@ GtkWidget *onglet_display_addresses ( void )
     GtkWidget *paddingbox;
     GtkWidget *entry;
     GtkWidget *radio, *radiogroup;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
-    vbox_pref = new_vbox_with_title_and_icon ( _("Addresses & titles"),
-					       "addresses.png" );
+    vbox_pref = new_vbox_with_title_and_icon ( _("Addresses & titles"), "addresses.png" );
 
     /* Account file title */
     paddingbox = new_paddingbox_with_title ( vbox_pref, FALSE, _("Titles") );
@@ -372,100 +380,91 @@ GtkWidget *onglet_display_addresses ( void )
 
     /* Choice of title type */
     hbox = gtk_hbox_new ( FALSE, 6 );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0 );
 
     radiogroup = gtk_radio_button_new_with_label ( NULL, _("Accounts file title") );
     g_object_set_data ( G_OBJECT ( radiogroup ), "display", GINT_TO_POINTER ( GSB_ACCOUNTS_TITLE ) );
-    if ( conf.display_grisbi_title == GSB_ACCOUNTS_TITLE )
+    if ( conf->display_grisbi_title == GSB_ACCOUNTS_TITLE )
         gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( radiogroup ), TRUE );
-    g_signal_connect ( G_OBJECT ( radiogroup ), 
+    g_signal_connect ( G_OBJECT ( radiogroup ),
                         "toggled",
-                        G_CALLBACK ( change_grisbi_title_type ), 
+                        G_CALLBACK ( change_grisbi_title_type ),
                         entry );
     gtk_box_pack_start ( GTK_BOX( hbox ), radiogroup, FALSE, FALSE, 0 );
 
-    radio = gtk_radio_button_new_with_label_from_widget ( 
+    radio = gtk_radio_button_new_with_label_from_widget (
                         GTK_RADIO_BUTTON ( radiogroup ),
                         _("Account owner name") );
     g_object_set_data ( G_OBJECT ( radio ), "display", GINT_TO_POINTER ( GSB_ACCOUNT_HOLDER ) );
-    if ( conf.display_grisbi_title == GSB_ACCOUNT_HOLDER )
+    if ( conf->display_grisbi_title == GSB_ACCOUNT_HOLDER )
             gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( radio ), TRUE );
-    g_signal_connect ( G_OBJECT ( radio ), 
-                    "toggled",
-                    G_CALLBACK ( change_grisbi_title_type ), 
-                    entry );
+    g_signal_connect ( G_OBJECT ( radio ),
+                        "toggled",
+                        G_CALLBACK ( change_grisbi_title_type ),
+                        entry );
     gtk_box_pack_start ( GTK_BOX( hbox ), radio, FALSE, FALSE, 0 );
 
-    radio = gtk_radio_button_new_with_label_from_widget ( 
+    radio = gtk_radio_button_new_with_label_from_widget (
                         GTK_RADIO_BUTTON ( radiogroup ),
                         _("Filename") );
     g_object_set_data ( G_OBJECT ( radio ), "display", GINT_TO_POINTER ( GSB_ACCOUNTS_FILE ) );
-    if ( conf.display_grisbi_title == GSB_ACCOUNTS_FILE )
+    if ( conf->display_grisbi_title == GSB_ACCOUNTS_FILE )
         gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( radio ), TRUE );
-    g_signal_connect ( G_OBJECT ( radio ), 
+    g_signal_connect ( G_OBJECT ( radio ),
                         "toggled",
-                        G_CALLBACK ( change_grisbi_title_type ), 
+                        G_CALLBACK ( change_grisbi_title_type ),
                         entry );
     gtk_box_pack_start ( GTK_BOX( hbox ), radio, FALSE, FALSE, 0 );
 
     hbox = gtk_hbox_new ( FALSE, 6 );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox,
-			 FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0 );
 
     label = gtk_label_new ( _("Accounts file title: ") );
-    gtk_box_pack_start ( GTK_BOX ( hbox ), label,
-			 FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( hbox ), label, FALSE, FALSE, 0 );
 
-    if ( conf.display_grisbi_title == GSB_ACCOUNTS_TITLE )
+    if ( conf->display_grisbi_title == GSB_ACCOUNTS_TITLE )
         gtk_widget_set_sensitive ( entry, TRUE);
     else
         gtk_widget_set_sensitive ( entry, FALSE);
-    gtk_box_pack_start ( GTK_BOX ( hbox ), entry,
-			 TRUE, TRUE, 0);
+    gtk_box_pack_start ( GTK_BOX ( hbox ), entry, TRUE, TRUE, 0 );
 
     /* Addresses */
-    paddingbox = new_paddingbox_with_title ( vbox_pref, FALSE,
-					     _("Addresses") );
+    paddingbox = new_paddingbox_with_title ( vbox_pref, FALSE, _("Addresses") );
 
     /* Common address */
     label = gtk_label_new ( _("Common address: ") );
     gtk_misc_set_alignment (GTK_MISC (label), 0, 1);
     gtk_label_set_justify ( GTK_LABEL(label), GTK_JUSTIFY_RIGHT );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), label,
-			 TRUE, TRUE, 0);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), label, TRUE, TRUE, 0 );
+
     scrolled_window = gtk_scrolled_window_new ( NULL, NULL );
     gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scrolled_window ),
-				     GTK_POLICY_AUTOMATIC,
-				     GTK_POLICY_AUTOMATIC );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), scrolled_window,
-			 FALSE, FALSE, 0);
-    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW(scrolled_window),
-					  GTK_SHADOW_IN );
+                        GTK_POLICY_AUTOMATIC,
+                        GTK_POLICY_AUTOMATIC );
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), scrolled_window, FALSE, FALSE, 0 );
+
+    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW ( scrolled_window ), GTK_SHADOW_IN );
     entry = gsb_automem_textview_new ( &adresse_commune, NULL, NULL );
-    gtk_container_add ( GTK_CONTAINER ( scrolled_window ),
-			entry );
+    gtk_container_add ( GTK_CONTAINER ( scrolled_window ), entry );
 
     /* Secondary address */
-    /** \note This is not implemented yet */
     label = gtk_label_new ( _("Secondary address: ") );
     gtk_misc_set_alignment (GTK_MISC (label), 0, 1);
     gtk_label_set_justify ( GTK_LABEL(label), GTK_JUSTIFY_RIGHT );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), label,
-			 TRUE, TRUE, 0);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), label, TRUE, TRUE, 0 );
+
     scrolled_window = gtk_scrolled_window_new ( NULL, NULL );
     gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scrolled_window ),
-				     GTK_POLICY_AUTOMATIC,
-				     GTK_POLICY_AUTOMATIC );
-    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW(scrolled_window),
-					  GTK_SHADOW_IN );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), scrolled_window,
-			 FALSE, FALSE, 0);
+                        GTK_POLICY_AUTOMATIC,
+                        GTK_POLICY_AUTOMATIC );
+    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW ( scrolled_window ), GTK_SHADOW_IN );
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), scrolled_window, FALSE, FALSE, 0 );
+
     entry = gsb_automem_textview_new ( &adresse_secondaire, NULL, NULL );
-    gtk_container_add ( GTK_CONTAINER ( scrolled_window ),
-			entry );
+    gtk_container_add ( GTK_CONTAINER ( scrolled_window ), entry );
 
     if ( !gsb_data_account_get_accounts_amount () )
-	gtk_widget_set_sensitive ( vbox_pref, FALSE );
+        gtk_widget_set_sensitive ( vbox_pref, FALSE );
 
     return ( vbox_pref );
 }
@@ -672,6 +671,9 @@ gboolean update_homepage_title (GtkEntry *entry, gchar *value,
  */
 gboolean change_toolbar_display_mode ( GtkRadioButton *button )
 {
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
     /* Do not execute this callback twice,
      * as it is triggered for both unselected button and newly selected one.
      * We keep the call for the newly selected radio button */
@@ -679,7 +681,7 @@ gboolean change_toolbar_display_mode ( GtkRadioButton *button )
         return FALSE;
 
     /* save the new parameter */
-    etat.display_toolbar = GPOINTER_TO_INT (g_object_get_data ( G_OBJECT(button), "display" ));
+    conf->display_toolbar = GPOINTER_TO_INT (g_object_get_data ( G_OBJECT(button), "display" ));
 
     /* update toolbars */
     gsb_gui_update_all_toolbars ( );
@@ -700,54 +702,61 @@ GtkWidget *tab_display_toolbar ( void )
     GtkWidget * vbox_pref, * paddingbox, * radio, * radiogroup;
     GtkWidget *vbox;
     GtkWidget *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Toolbars"), "toolbar.png" );
 
     paddingbox = new_paddingbox_with_title ( vbox_pref, FALSE,
-					     _("Display toolbar buttons as") );
+                        _("Display toolbar buttons as") );
 
     radiogroup = radio = gtk_radio_button_new_with_label ( NULL, _("Text") );
     g_object_set_data ( G_OBJECT(radio), "display", GINT_TO_POINTER(GSB_BUTTON_TEXT) );
     gtk_box_pack_start ( GTK_BOX(paddingbox), radio, FALSE, FALSE, 0 );
-    if ( etat.display_toolbar == GSB_BUTTON_TEXT )
-	gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (radio), TRUE );
-    g_signal_connect ( G_OBJECT(radio), "toggled",
-		       G_CALLBACK(change_toolbar_display_mode), NULL );
-
-    radio = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON(radiogroup),
-							  _("Icons") );
-    g_object_set_data ( G_OBJECT(radio), "display", GINT_TO_POINTER(GSB_BUTTON_ICON) );
+    if ( conf->display_toolbar == GSB_BUTTON_TEXT )
+        gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( radio ), TRUE );
+    g_signal_connect ( G_OBJECT(radio),
+                        "toggled",
+                        G_CALLBACK ( change_toolbar_display_mode ),
+                        NULL );
+
+    radio = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON ( radiogroup ), _("Icons") );
+    g_object_set_data ( G_OBJECT(radio), "display", GINT_TO_POINTER ( GSB_BUTTON_ICON ) );
     gtk_box_pack_start ( GTK_BOX(paddingbox), radio, FALSE, FALSE, 0 );
-    if ( etat.display_toolbar == GSB_BUTTON_ICON )
-	gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (radio), TRUE );
-    g_signal_connect ( G_OBJECT(radio), "toggled",
-		       G_CALLBACK(change_toolbar_display_mode), NULL );
-
-    radio = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON(radiogroup),
-							  _("Both") );
-    g_object_set_data ( G_OBJECT(radio), "display", GINT_TO_POINTER(GSB_BUTTON_BOTH) );
+    if ( conf->display_toolbar == GSB_BUTTON_ICON )
+        gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (radio), TRUE );
+    g_signal_connect ( G_OBJECT(radio),
+                        "toggled",
+                        G_CALLBACK ( change_toolbar_display_mode ),
+                        NULL );
+
+    radio = gtk_radio_button_new_with_label_from_widget ( GTK_RADIO_BUTTON ( radiogroup ), ("Both") );
+    g_object_set_data ( G_OBJECT(radio), "display", GINT_TO_POINTER ( GSB_BUTTON_BOTH ) );
     gtk_box_pack_start ( GTK_BOX(paddingbox), radio, FALSE, FALSE, 0 );
-    if ( etat.display_toolbar == GSB_BUTTON_BOTH )
-	gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (radio), TRUE );
-    g_signal_connect ( G_OBJECT(radio), "toggled",
-		       G_CALLBACK(change_toolbar_display_mode), NULL );
+    if ( conf->display_toolbar == GSB_BUTTON_BOTH )
+        gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (radio), TRUE );
+    g_signal_connect ( G_OBJECT(radio),
+                        "toggled",
+                        G_CALLBACK ( change_toolbar_display_mode ),
+                        NULL );
 
     gtk_widget_show_all ( vbox_pref );
 
     if ( !gsb_data_account_get_accounts_amount () )
-	gtk_widget_set_sensitive ( vbox_pref, FALSE );
+        gtk_widget_set_sensitive ( vbox_pref, FALSE );
 
-    gtk_box_pack_start ( GTK_BOX ( vbox_pref ),
-			 gsb_automem_checkbutton_new ( _("Display headings bar"),
-						       &(etat.show_headings_bar),
-						       G_CALLBACK (preferences_switch_headings_bar), NULL ),
-			 FALSE, FALSE, 0 );
+    button = gsb_automem_checkbutton_new ( _("Display headings bar"),
+                        &conf->show_headings_bar,
+                        G_CALLBACK (preferences_switch_headings_bar),
+                        NULL );
+    gtk_box_pack_start ( GTK_BOX ( vbox_pref ), button, FALSE, FALSE, 0 );
 
     vbox = new_vbox_with_title_and_icon ( _("Navigation pane"), "organization.png" );
     gtk_box_pack_start ( GTK_BOX ( vbox_pref ), vbox, TRUE, TRUE, 0 );
 
     button = gsb_automem_checkbutton_new (_("Add mouse scrolling support on the navigation pane"),
-                        &conf.active_scrolling_left_pane,
+                        &conf->active_scrolling_left_pane,
                         G_CALLBACK ( preferences_active_mouse_scrolling_left_pane ),
                         NULL);
     gtk_box_pack_start ( GTK_BOX ( vbox ), button, FALSE, FALSE, 5 );
@@ -786,7 +795,11 @@ gboolean preferences_switch_headings_bar ( GtkWidget *toggle_button,
 gboolean preferences_active_mouse_scrolling_left_pane ( GtkWidget *toggle_button,
                         gpointer null )
 {
-    if ( conf.active_scrolling_left_pane )
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
+    if ( conf->active_scrolling_left_pane )
         g_signal_handlers_unblock_by_func ( gsb_gui_navigation_get_tree_view ( ),
                         G_CALLBACK ( gsb_gui_navigation_check_scroll ),
                         NULL );
@@ -929,13 +942,17 @@ static gboolean preferences_view_color_default ( GtkWidget *button,
  */
 gboolean change_grisbi_title_type ( GtkRadioButton *button, GtkWidget *entry )
 {
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
     if ( gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON ( button ) ) )
     {
-        conf.display_grisbi_title = GPOINTER_TO_INT ( g_object_get_data 
+        conf->display_grisbi_title = GPOINTER_TO_INT ( g_object_get_data
                         ( G_OBJECT ( button ), "display" ) );
     }
 
-    switch ( conf.display_grisbi_title )
+    switch ( conf->display_grisbi_title )
     {
         case GSB_ACCOUNTS_TITLE:
             gtk_widget_set_sensitive ( entry, TRUE );
diff --git a/src/affichage_liste.c b/src/affichage_liste.c
index dc60cdb..8df554f 100644
--- a/src/affichage_liste.c
+++ b/src/affichage_liste.c
@@ -32,6 +32,7 @@
 #include "affichage_liste.h"
 #include "custom_list.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
@@ -148,6 +149,9 @@ GtkWidget *onglet_affichage_operations ( void )
     _("Sort by date and then by transaction number"),
     };
     gint i;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Transaction list behavior"),
                         "transaction-list.png" );
@@ -214,14 +218,14 @@ GtkWidget *onglet_affichage_operations ( void )
     gtk_box_pack_start ( GTK_BOX ( paddingbox ),
                         gsb_automem_checkbutton_new (
                         _("Use simple click to select transactions"),
-                        &conf.show_transaction_selected_in_form,
+                        &conf->show_transaction_selected_in_form,
                         NULL, NULL ),
                         FALSE, FALSE, 0 );
 
     gtk_box_pack_start ( GTK_BOX ( paddingbox ),
                         gsb_automem_checkbutton_new (
                         _("Highlights the transaction that gives the balance today"),
-                        &conf.show_transaction_gives_balance,
+                        &conf->show_transaction_gives_balance,
                         G_CALLBACK ( gsb_transactions_list_display_show_gives_balance ), NULL ),
                         FALSE, FALSE, 0 );
 
@@ -236,13 +240,13 @@ GtkWidget *onglet_affichage_operations ( void )
     g_signal_connect ( G_OBJECT ( button ),
                         "changed",
                         G_CALLBACK ( gsb_transactions_list_display_sort_changed ),
-                        &conf.transactions_list_primary_sorting );
+                        &conf->transactions_list_primary_sorting );
 
     for ( i = 0 ; i < 2 ; i++ )
     {
         gtk_combo_box_text_append_text ( GTK_COMBO_BOX_TEXT ( button ), options_tri_primaire[i] );
     }
-    gtk_combo_box_set_active ( GTK_COMBO_BOX ( button ), conf.transactions_list_primary_sorting );
+    gtk_combo_box_set_active ( GTK_COMBO_BOX ( button ), conf->transactions_list_primary_sorting );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
     /* Secondary sorting option for the transactions */
@@ -256,13 +260,13 @@ GtkWidget *onglet_affichage_operations ( void )
     g_signal_connect ( G_OBJECT ( button ),
                         "changed",
                         G_CALLBACK ( gsb_transactions_list_display_sort_changed ),
-                        &conf.transactions_list_secondary_sorting );
+                        &conf->transactions_list_secondary_sorting );
 
     for ( i = 0 ; i < 4 ; i++ )
     {
         gtk_combo_box_text_append_text ( GTK_COMBO_BOX_TEXT ( button ), options_tri_secondaire[i] );
     }
-    gtk_combo_box_set_active ( GTK_COMBO_BOX ( button ), conf.transactions_list_secondary_sorting );
+    gtk_combo_box_set_active ( GTK_COMBO_BOX ( button ), conf->transactions_list_secondary_sorting );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
     /* Account distinction */
@@ -513,23 +517,25 @@ void recuperation_noms_colonnes_et_tips ( void )
 GtkWidget *onglet_diverse_form_and_lists ( void )
 {
     GtkWidget *vbox_pref, *paddingbox, *radiogroup;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
-    vbox_pref = new_vbox_with_title_and_icon ( _("Form behavior"),
-					       "form.png" );
+    vbox_pref = new_vbox_with_title_and_icon ( _("Form behavior"), "form.png" );
 
     /* What to do if RETURN is pressed into transaction form */
     radiogroup = gsb_automem_radiobutton_new_with_title (vbox_pref,
 							 _("Pressing RETURN in transaction form"),
 							 _("selects next field"),
 							 _("terminates transaction"),
-							 &conf.entree, NULL, NULL);
+							 &conf->entree, NULL, NULL);
 
     /* How to display financial year */
     radiogroup = gsb_automem_radiobutton_new_with_title (vbox_pref,
 							 _("Automatic financial year is set"),
 							 _("according to transaction date"),
 							 _("according to transaction value date"),
-							 &etat.affichage_exercice_automatique, 
+							 &conf->affichage_exercice_automatique,
 							 NULL, NULL);
 
     /* automatic amount separatior fields */
@@ -560,14 +566,17 @@ GtkWidget *onglet_form_completion ( void )
     GtkWidget *vbox_pref;
     GtkWidget *hbox, *label, *entry;
     GtkWidget *button;
-	gchar* tmpstr;
+    gchar* tmpstr;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Form completion"), "form.png" );
 
     gtk_box_pack_start ( GTK_BOX ( vbox_pref ),
                         gsb_automem_checkbutton_new (
                         _("Automatic filling transactions from payee"),
-                        &conf.automatic_completion_payee,
+                        &conf->automatic_completion_payee,
                         G_CALLBACK ( gsb_transactions_list_display_update_auto_checkbutton ),
                         vbox_pref ),
                         FALSE, FALSE, 0 );
@@ -577,11 +586,11 @@ GtkWidget *onglet_form_completion ( void )
 
     button = gsb_automem_checkbutton_new (
                         _("Erase the credit and debit fields"),
-                        &conf.automatic_erase_credit_debit,
+                        &conf->automatic_erase_credit_debit,
                         NULL,
                         NULL );
     g_object_set_data ( G_OBJECT ( vbox_pref ), "button_3", button );
-    gtk_widget_set_sensitive ( button, conf.automatic_completion_payee );
+    gtk_widget_set_sensitive ( button, conf->automatic_completion_payee );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 20 );
 
     hbox = gtk_hbox_new ( FALSE, 5 );
@@ -589,11 +598,11 @@ GtkWidget *onglet_form_completion ( void )
 
     button = gsb_automem_checkbutton_new (
                         _("Automatically recover the children of the associated transaction"),
-                        &conf.automatic_recover_splits,
+                        &conf->automatic_recover_splits,
                         NULL,
                         NULL );
     g_object_set_data ( G_OBJECT ( vbox_pref ), "button_1", button );
-    gtk_widget_set_sensitive ( button, conf.automatic_completion_payee );
+    gtk_widget_set_sensitive ( button, conf->automatic_completion_payee );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 20 );
 
     hbox = gtk_hbox_new ( FALSE, 5 );
@@ -601,10 +610,10 @@ GtkWidget *onglet_form_completion ( void )
 
     button = gsb_automem_checkbutton_new (
                         _("Limit the filling with payees belonging to the current account"),
-                        &conf.limit_completion_to_current_account,
+                        &conf->limit_completion_to_current_account,
                         NULL, NULL);
     g_object_set_data ( G_OBJECT ( vbox_pref ), "button_2", button );
-    gtk_widget_set_sensitive ( button, conf.automatic_completion_payee );
+    gtk_widget_set_sensitive ( button, conf->automatic_completion_payee );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 20 );
 
     gtk_box_pack_start ( GTK_BOX (vbox_pref),
@@ -654,8 +663,8 @@ GtkWidget *onglet_form_completion ( void )
         gtk_widget_set_sensitive ( vbox_pref, FALSE );
     }
 
+    /* return */
     return vbox_pref;
-
 }
 
 
diff --git a/src/bet_config.c b/src/bet_config.c
index 4ea28ea..dbaed7c 100644
--- a/src/bet_config.c
+++ b/src/bet_config.c
@@ -36,6 +36,7 @@
 #include "bet_hist.h"
 #include "bet_tab.h"
 #include "dialog.h"
+#include "fenetre_principale.h"
 #include "gsb_account.h"
 #include "gsb_automem.h"
 #include "gsb_calendar_entry.h"
@@ -86,7 +87,6 @@ static void bet_config_initialise_select_historical_data ( gint account_number,
 /*END_STATIC*/
 
 /*START_EXTERN*/
-extern GtkWidget *account_page;
 extern GtkTreeModel *bet_fyear_model;
 extern GtkTreeModel *bet_fyear_model_filter;
 /*END_EXTERN*/
@@ -224,7 +224,7 @@ gboolean bet_config_general_cash_account_option_clicked ( GtkWidget *checkbutton
 {
     GtkWidget *combo;
     
-    combo = g_object_get_data ( G_OBJECT ( account_page ), "account_combo" );
+    combo = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "account_combo" );
     if ( combo )
     {
         gint account_number;
@@ -268,7 +268,7 @@ GtkWidget *bet_config_account_create_account_page ( void )
     gtk_notebook_set_show_tabs  ( GTK_NOTEBOOK ( notebook ), FALSE );
     gtk_notebook_set_scrollable ( GTK_NOTEBOOK ( notebook ), TRUE );
     gtk_box_pack_start ( GTK_BOX ( vbox_pref ), notebook, FALSE, FALSE, 0 );
-    g_object_set_data ( G_OBJECT ( account_page ), "config_notebook", notebook );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "config_notebook", notebook );
     gtk_widget_show ( notebook );
 
     /* Data for the account of type GSB_TYPE_BANK, GSB_TYPE_CASH */
@@ -278,12 +278,12 @@ GtkWidget *bet_config_account_create_account_page ( void )
 
     /* Data for the forecast */
     widget = bet_config_account_get_forecast_data ( _("Data for the forecast") );
-    g_object_set_data ( G_OBJECT ( account_page ), "Data_for_forecast", widget );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "Data_for_forecast", widget );
     gtk_box_pack_start ( GTK_BOX ( vbox ), widget, FALSE, FALSE, 0 );
 
     /* Sources of historical data */
     widget = bet_config_account_get_select_historical_data ( _("Sources of historical data") );
-    g_object_set_data ( G_OBJECT ( account_page ), "Data_for_historical", widget );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "Data_for_historical", widget );
     gtk_box_pack_start ( GTK_BOX ( vbox ), widget, FALSE, FALSE, 0 );
 
     /* Data for the account of type GSB_TYPE_LIABILITIES */
@@ -293,11 +293,11 @@ GtkWidget *bet_config_account_create_account_page ( void )
 
     /* Data for the credit */
     widget = bet_config_account_get_finance_data ( _("Credit Data") );
-    g_object_set_data ( G_OBJECT ( account_page ), "Data_for_credit", widget );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "Data_for_credit", widget );
     gtk_box_pack_start ( GTK_BOX ( vbox ), widget, FALSE, FALSE, 0 );
 
     /* mettre à jour les données du compte */
-    widget = g_object_get_data ( G_OBJECT ( account_page ), "account_combo" );
+    widget = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "account_combo" );
     bet_config_change_account ( widget );
 
     return vbox_pref;
@@ -335,7 +335,7 @@ GtkWidget *bet_config_account_get_select_account ( gchar *title )
 
 	combo = gsb_account_create_combo_list ( G_CALLBACK ( bet_config_change_account ),
                         NULL, FALSE );
-    g_object_set_data ( G_OBJECT ( account_page ), "account_combo", combo );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "account_combo", combo );
     if ( ( account_number = gsb_gui_navigation_get_current_account ( ) ) == -1 )
 	    gtk_combo_box_set_active ( GTK_COMBO_BOX ( combo ), 0 );
     else
@@ -396,6 +396,7 @@ GtkWidget *bet_config_get_duration_widget ( gint origin )
     GtkWidget *widget = NULL;
     GtkWidget *hbox;
     GtkWidget *previous = NULL;
+    GtkWidget *account_page;
     gpointer pointeur = NULL;
     gint iduration;
 
@@ -445,9 +446,10 @@ GtkWidget *bet_config_get_duration_widget ( gint origin )
                         spin_button );
     }
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     if ( origin == SPP_ORIGIN_CONFIG )
     {
-
         g_object_set_data ( G_OBJECT ( spin_button ), "bet_origin_signal", pointeur );
         g_object_set_data ( G_OBJECT ( account_page ), "bet_config_account_previous",
                         previous );
@@ -489,10 +491,13 @@ void bet_config_initialise_duration_widget ( gint account_number,
 {
     GtkWidget *widget = NULL;
     GtkWidget *button = NULL;
+    GtkWidget *account_page;
     gpointer ptr = NULL;
     gint param;
     gint months;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     param = gsb_data_account_get_bet_spin_range ( account_number );
     months = gsb_data_account_get_bet_months ( account_number );
     button = g_object_get_data ( G_OBJECT ( account_page ), "bet_config_account_spin_button" );
@@ -655,7 +660,7 @@ GtkWidget *bet_config_account_get_select_historical_data ( gchar *title )
     vbox = gtk_vbox_new ( FALSE, 0 );
 
     paddingbox = new_paddingbox_with_title ( vbox, FALSE, _(title) );
-    hbox = bet_config_get_select_historical_data ( paddingbox, account_page );
+    hbox = bet_config_get_select_historical_data ( paddingbox, gsb_gui_on_account_get_notebook ( ) );
 
     return vbox;
 }
@@ -899,6 +904,7 @@ gboolean bet_config_duration_number_changed ( GtkWidget *spin_button,
  * */
 void bet_config_origin_data_clicked ( GtkWidget *togglebutton, GdkEventButton *event, gpointer data )
 {
+    GtkWidget *account_page;
     GtkTreeViewColumn *column;
     const gchar *name;
     gchar *title;
@@ -912,6 +918,8 @@ void bet_config_origin_data_clicked ( GtkWidget *togglebutton, GdkEventButton *e
     else
         account_number = gsb_gui_navigation_get_current_account ( );
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     name = gtk_widget_get_name ( GTK_WIDGET ( togglebutton ) );
 
     if ( g_strcmp0 ( name, "bet_hist_button_1" ) == 0 )
@@ -989,6 +997,7 @@ void bet_config_fyear_clicked ( GtkWidget *combo, gpointer data )
  * */
 gboolean bet_config_change_account ( GtkWidget *combo )
 {
+    GtkWidget *account_page;
     GtkWidget *notebook;
     GtkWidget *widget = NULL;
     gint account_number;
@@ -1029,6 +1038,8 @@ gboolean bet_config_change_account ( GtkWidget *combo )
     if ( etat.bet_deb_cash_account_option == 1 &&  kind == GSB_TYPE_CASH )
         kind = GSB_TYPE_BANK;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     notebook = g_object_get_data ( G_OBJECT ( account_page ), "config_notebook" );
     switch ( kind )
     {
@@ -1067,7 +1078,7 @@ gint bet_config_get_account_from_combo ( void )
     GtkWidget *combo;
     gint account_number = -1;
 
-    combo = g_object_get_data ( G_OBJECT ( account_page ), "account_combo" );
+    combo = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "account_combo" );
     account_number = gsb_account_get_combo_account_number ( combo );
 
     return account_number;
@@ -1117,6 +1128,9 @@ gboolean bet_config_select_label_changed ( GtkWidget *checkbutton,
 void bet_config_sensitive_account_parameters ( gint account_number, gboolean sensitive )
 {
     GtkWidget *widget = NULL;
+    GtkWidget *account_page;
+
+    account_page = gsb_gui_on_account_get_notebook ( );
 
     if ( sensitive )
     {
@@ -1196,6 +1210,9 @@ void bet_config_use_budget_toggle ( GtkToggleButton *button, GtkWidget *combo )
     }
     else
     {
+        GtkWidget *account_page;
+
+        account_page = gsb_gui_on_account_get_notebook ( );
         bet_data_remove_all_bet_data ( account_number );
         gsb_data_account_set_bet_use_budget ( account_number, 0 );
         widget = g_object_get_data ( G_OBJECT ( account_page ), "Data_for_forecast" );
diff --git a/src/bet_data.c b/src/bet_data.c
index 03336a8..30b25d1 100644
--- a/src/bet_data.c
+++ b/src/bet_data.c
@@ -72,7 +72,6 @@ static SH *struct_initialise_bet_historical ( void );
 
 
 /*START_EXTERN*/
-extern GtkWidget *account_page;
 extern gsb_real null_real;
 /*END_EXTERN*/
 
@@ -102,6 +101,7 @@ static gint transfert_number;
  */
 void bet_data_select_bet_pages ( gint account_number )
 {
+    GtkWidget *account_page;
     GtkWidget *page;
     kind_account kind;
     gint current_page;
@@ -110,7 +110,10 @@ void bet_data_select_bet_pages ( gint account_number )
     devel_debug_int ( account_number );
 
     kind = gsb_data_account_get_kind ( account_number );
+
+    account_page = gsb_gui_on_account_get_notebook ( );
     current_page = gtk_notebook_get_current_page ( GTK_NOTEBOOK ( account_page ) );
+
     bet_use_budget = gsb_data_account_get_bet_use_budget ( account_number );
     if ( bet_use_budget <= 0 )
         kind = GSB_TYPE_ASSET;
@@ -197,7 +200,7 @@ void bet_data_update_bet_module ( gint account_number, guint page )
 
 
     if ( page == -1 && gsb_gui_navigation_get_current_page ( ) == GSB_ACCOUNT_PAGE )
-        page = gtk_notebook_get_current_page ( GTK_NOTEBOOK ( account_page ) );
+        page = gtk_notebook_get_current_page ( GTK_NOTEBOOK ( gsb_gui_on_account_get_notebook ( ) ) );
 
     switch ( page )
     {
diff --git a/src/bet_finance_ui.c b/src/bet_finance_ui.c
index 07e3a7b..1ee5466 100644
--- a/src/bet_finance_ui.c
+++ b/src/bet_finance_ui.c
@@ -34,6 +34,7 @@
 #include "dialog.h"
 #include "export_csv.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_color.h"
 #include "gsb_combo_box.h"
@@ -100,7 +101,6 @@ static void bet_finance_update_simulator_toolbar ( void );
 /*END_STATIC*/
 
 /*START_EXTERN*/
-extern GtkWidget *account_page;
 /*END_EXTERN*/
 
 /* notebook pour la simulation de crédits */
@@ -1513,9 +1513,12 @@ GtkWidget *bet_finance_create_account_page ( void )
     GtkWidget *label_title;
     GtkWidget *label;
     GtkWidget *tree_view;
+    GtkWidget *account_page;
 
     devel_debug (NULL);
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     page = gtk_vbox_new ( FALSE, 5 );
 
     /* titre de la page */
@@ -1523,7 +1526,9 @@ GtkWidget *bet_finance_create_account_page ( void )
     gtk_box_pack_start ( GTK_BOX ( page ), align, FALSE, FALSE, 5);
  
     label_title = gtk_label_new ( _("Amortization Table") );
-    g_object_set_data ( G_OBJECT ( account_page ), "bet_finance_amortization_title", label_title );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ),
+                        "bet_finance_amortization_title",
+                        label_title );
     gtk_container_add ( GTK_CONTAINER ( align ), label_title );
 
     /* Choix des données sources */
@@ -1600,6 +1605,7 @@ GtkWidget *bet_finance_create_account_page ( void )
  * */
 void bet_finance_ui_update_amortization_tab ( gint account_number )
 {
+    GtkWidget *account_page;
     GtkWidget *label;
     GtkWidget *tree_view;
     GtkTreeModel *store;
@@ -1625,6 +1631,7 @@ void bet_finance_ui_update_amortization_tab ( gint account_number )
     s_amortissement -> origin = SPP_ORIGIN_FINANCE;
 
     /* récupère le tableau d'amortissement */
+    account_page = gsb_gui_on_account_get_notebook ( );
     tree_view = g_object_get_data ( G_OBJECT ( account_page ), "bet_finance_tree_view" );
     amortization_initial_date = GPOINTER_TO_INT ( g_object_get_data (
                         G_OBJECT ( tree_view ), "amortization_initial_date" ) );
@@ -1770,6 +1777,9 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
     GtkWidget *hbox;
     GtkWidget *button;
     GtkTreeSelection *selection;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* Hbox */
     hbox = gtk_hbox_new ( FALSE, 0 );
@@ -1777,7 +1787,7 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
     if ( simulator )
     {
     /* création du bouton calculer */
-        button = gsb_automem_stock_button_new ( etat.display_toolbar,
+        button = gsb_automem_stock_button_new ( conf->display_toolbar,
                         GTK_STOCK_EXECUTE,
                         _("Calculate"),
                         NULL,
@@ -1792,7 +1802,7 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
 
         /* création du bouton afficher le tableau d'amortissement */
         selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( tree_view ) );
-        button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+        button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                         _("Amortization"),
                         "ac_liability_16.png",
                         NULL,
@@ -1807,7 +1817,7 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
     else if ( amortization )
     {
         /* création du bouton afficher le simulateur de crédits */
-        button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+        button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                         _("Credits"),
                         "ac_liability_16.png",
                         NULL,
@@ -1824,7 +1834,7 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
         gboolean amortization_initial_date = FALSE;
 
         /* création du bouton afficher le simulateur de crédits */
-        button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+        button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                         _("Amortization"),
                         "ac_liability_16.png",
                         NULL,
@@ -1842,7 +1852,7 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
     }
 
     /* création du bouton print */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                         GTK_STOCK_PRINT,
                         _("Print"),
                         NULL,
@@ -1855,7 +1865,7 @@ GtkWidget *bet_finance_create_simulator_toolbar ( GtkWidget *parent,
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 5 );
 
     /* Export button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_SAVE,
 					   _("Export"),
 					   NULL,
@@ -1887,7 +1897,7 @@ void bet_finance_ui_export_tab ( GtkWidget *menu_item, GtkTreeView *tree_view )
     gchar *filename;
 
     dialog = gtk_file_chooser_dialog_new ( _("Export the array"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
diff --git a/src/bet_future.c b/src/bet_future.c
index fadf321..76b29d9 100644
--- a/src/bet_future.c
+++ b/src/bet_future.c
@@ -37,30 +37,32 @@
 #include "bet_tab.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
-#include "utils_dates.h"
+#include "grisbi_app.h"
 #include "gsb_calendar_entry.h"
 #include "gsb_combo_box.h"
 #include "gsb_data_account.h"
 #include "gsb_data_budget.h"
 #include "gsb_data_category.h"
 #include "gsb_data_currency_link.h"
+#include "gsb_data_form.h"
 #include "gsb_data_partial_balance.h"
 #include "gsb_data_payee.h"
+#include "gsb_data_payment.h"
 #include "gsb_form.h"
 #include "gsb_form_scheduler.h"
 #include "gsb_form_widget.h"
 #include "gsb_fyear.h"
-#include "navigation.h"
 #include "gsb_payment_method.h"
 #include "gsb_real.h"
-#include "utils_editables.h"
 #include "gtk_combofix.h"
+#include "navigation.h"
+#include "structures.h"
 #include "utils.h"
+#include "utils_dates.h"
+#include "utils_editables.h"
+#include "utils_gtkbuilder.h"
 #include "utils_real.h"
 #include "utils_str.h"
-#include "structures.h"
-#include "gsb_data_payment.h"
-#include "gsb_data_form.h"
 #include "erreur.h"
 /*END_INCLUDE*/
 
@@ -253,7 +255,6 @@ dialog_return:
 GtkWidget *bet_future_create_dialog ( gint account_number )
 {
     GtkWidget *dialog;
-    GtkWidget *vbox;
     GtkWidget *table;
 
     static GtkBuilder *dialog_builder = NULL;
@@ -262,41 +263,18 @@ GtkWidget *bet_future_create_dialog ( gint account_number )
     dialog_builder = gtk_builder_new ( );
 
     if ( dialog_builder == NULL )
-    	return FALSE;
+        return FALSE;
 
     /* Chargement du XML dans etats_config_builder */
     if ( !utils_gtkbuilder_merge_ui_data_in_builder ( dialog_builder, "dlg_bet_future.ui" ) )
-    	return FALSE;
+        return FALSE;
 
     dialog = GTK_WIDGET ( gtk_builder_get_object ( dialog_builder, "dialog_bet_future_create" ) );
     table = GTK_WIDGET ( gtk_builder_get_object ( dialog_builder, "table" ) );
 
-    /*dialog = gtk_dialog_new_with_buttons ( _("Enter a budget line"),
-					   GTK_WINDOW ( run.window ),
-					   GTK_DIALOG_MODAL,
-					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-					   GTK_STOCK_OK, GTK_RESPONSE_OK,
-					   NULL );
-
-    gtk_window_set_position ( GTK_WINDOW ( dialog ), GTK_WIN_POS_CENTER_ON_PARENT );
-    gtk_window_set_resizable ( GTK_WINDOW ( dialog ), TRUE );
-    gtk_dialog_set_default_response ( GTK_DIALOG ( dialog ), GTK_RESPONSE_OK );
-
-	vbox = gtk_vbox_new ( FALSE, 0 );
-	gtk_box_pack_start ( GTK_BOX ( dialog_get_content_area ( dialog ) ), vbox, TRUE, TRUE, 0 );
-	gtk_container_set_border_width ( GTK_CONTAINER ( vbox ), 12 );
-
-
-    table = gtk_table_new ( BET_SCHEDULED_HEIGHT, BET_SCHEDULED_WIDTH, FALSE );
-    gtk_table_set_col_spacings ( GTK_TABLE ( table ), 6 );
-    gtk_widget_show ( table );
-    gtk_box_pack_start ( GTK_BOX ( vbox ), table, FALSE, FALSE, 5 );*/
-
     bet_form_create_scheduler_part ( dialog, table );
     bet_form_create_current_form ( dialog, table, account_number );
 
-	//gtk_widget_show ( vbox );
-
     return dialog;
  }
 
@@ -1209,12 +1187,15 @@ gboolean bet_form_key_press_event ( GtkWidget *widget,
     gint element_number;
     gint account_number;
     GtkWidget *widget_prov;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     element_number = GPOINTER_TO_INT (ptr_origin);
     account_number = gsb_form_get_account_number ();
 
-    /* if conf.entree = 1, entry finish the transaction, else does as tab */
-    if ( !conf.entree
+    /* if conf->entree = 1, entry finish the transaction, else does as tab */
+    if ( !conf->entree
      &&
      ( ev -> keyval == GDK_KEY_Return
      ||
@@ -1925,7 +1906,7 @@ GtkWidget *bet_transfert_create_dialog ( gint account_number )
 
     /* Create the dialog */
     dialog = gtk_dialog_new_with_buttons ( _("Select an account"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_DIALOG_MODAL,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_OK, GTK_RESPONSE_OK,
diff --git a/src/bet_graph.c b/src/bet_graph.c
index 65762c2..160e19f 100644
--- a/src/bet_graph.c
+++ b/src/bet_graph.c
@@ -35,6 +35,7 @@
 #include "bet_data.h"
 #include "bet_hist.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_data_account.h"
 #include "gsb_data_fyear.h"
@@ -394,7 +395,9 @@ void bet_graph_sectors_graph_new ( GtkWidget *button,
 
     /* Création de la fenêtre de dialogue pour le graph */
     dialog = GTK_WIDGET ( gtk_builder_get_object ( bet_graph_builder, "bet_graph_dialog" ) );
-    gtk_window_set_transient_for ( GTK_WINDOW ( dialog ), GTK_WINDOW ( run.window ) );
+    gtk_window_set_transient_for ( GTK_WINDOW ( dialog ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ) );
+
     gtk_widget_set_size_request ( dialog, PAGE_WIDTH+30, PAGE_HEIGHT+70 );
     g_signal_connect ( G_OBJECT ( dialog ),
                         "destroy",
@@ -634,7 +637,8 @@ void bet_graph_line_graph_new ( GtkWidget *button, GtkTreeView *tree_view )
 
     /* Création de la fenêtre de dialogue pour le graph */
     dialog = GTK_WIDGET ( gtk_builder_get_object ( bet_graph_builder, "bet_graph_dialog" ) );
-    gtk_window_set_transient_for ( GTK_WINDOW ( dialog ), GTK_WINDOW ( run.window ) );
+    gtk_window_set_transient_for ( GTK_WINDOW ( dialog ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ) );
     gtk_widget_set_size_request ( dialog, PAGE_WIDTH+30, PAGE_HEIGHT+70 );
     g_signal_connect ( G_OBJECT ( dialog ),
                         "destroy",
@@ -1113,6 +1117,9 @@ void bet_graph_popup_choix_graph_activate ( GtkMenuItem *menuitem,
 {
     GtkWidget *parent;
     GList *tmp_list;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     parent = gtk_widget_get_parent ( self->box );
     tmp_list = g_object_get_data ( G_OBJECT ( parent ), "button_list" );
@@ -1135,7 +1142,7 @@ void bet_graph_popup_choix_graph_activate ( GtkMenuItem *menuitem,
     gtk_container_foreach ( GTK_CONTAINER ( self->box ), ( GtkCallback ) gtk_widget_destroy, NULL );
 
     self->is_visible = TRUE;
-    self->button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    self->button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                         self->name,
                         self->filename,
                         NULL,
diff --git a/src/bet_hist.c b/src/bet_hist.c
index 4542901..7eb1938 100644
--- a/src/bet_hist.c
+++ b/src/bet_hist.c
@@ -37,6 +37,7 @@
 #include "dialog.h"
 #include "export_csv.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
@@ -150,6 +151,7 @@ GtkTreeModel *bet_fyear_model_filter = NULL;
  * */
 GtkWidget *bet_historical_create_page ( void )
 {
+    GtkWidget *account_page;
     GtkWidget *widget;
     GtkWidget *page;
     GtkWidget *hbox;
@@ -160,6 +162,9 @@ GtkWidget *bet_historical_create_page ( void )
     gpointer pointeur;
 
     devel_debug (NULL);
+
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     page = gtk_vbox_new ( FALSE, 5 );
     gtk_widget_set_name ( page, "historical_page" );
 
@@ -499,6 +504,7 @@ void bet_historical_div_cell_edited (GtkCellRendererText *cell,
  * */
 GtkWidget *bet_historical_get_data_tree_view ( GtkWidget *container )
 {
+    GtkWidget *account_page;
     GtkWidget *scrolled_window;
     GtkWidget *tree_view;
     GtkTreeStore *tree_model;
@@ -507,6 +513,8 @@ GtkWidget *bet_historical_get_data_tree_view ( GtkWidget *container )
     GtkTreeViewColumn *column;
     gchar *title;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     /* devel_debug (NULL); */
     tree_view = gtk_tree_view_new ( );
     gtk_tree_view_set_rules_hint ( GTK_TREE_VIEW (tree_view), FALSE );
@@ -706,7 +714,7 @@ void bet_historical_populate_data ( gint account_number )
     GHashTable  *list_div;
 
     devel_debug_int ( account_number );
-    tree_view = g_object_get_data (G_OBJECT ( account_page ), "bet_historical_treeview" );
+    tree_view = g_object_get_data (G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "bet_historical_treeview" );
     if ( GTK_IS_TREE_VIEW ( tree_view ) == FALSE )
         return;
 
@@ -1135,7 +1143,7 @@ void bet_historical_refresh_data ( GtkTreeModel *tab_model,
     GtkTreeIter fils_iter;
 
     devel_debug (NULL);
-    tree_view = g_object_get_data ( G_OBJECT ( account_page ), "bet_historical_treeview" );
+    tree_view = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "bet_historical_treeview" );
     model = gtk_tree_view_get_model ( GTK_TREE_VIEW ( tree_view ) );
 
     if ( gtk_tree_model_get_iter_first ( GTK_TREE_MODEL ( model ), &iter ) )
@@ -1268,7 +1276,7 @@ gboolean bet_historical_set_full_sub_div ( GtkTreeModel *model, GtkTreeIter *par
 
     if ( edited )
     {
-        tree_view = g_object_get_data ( G_OBJECT ( account_page ),
+        tree_view = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ),
                         "bet_historical_treeview" );
         gtk_tree_view_collapse_row ( tree_view,
                         gtk_tree_model_get_path ( model, parent ) );
@@ -1426,11 +1434,11 @@ void bet_historical_row_collapse_all ( GtkTreeView *tree_view,
                         GtkTreeModel *model )
 {
     if ( tree_view == NULL )
-        tree_view = g_object_get_data ( G_OBJECT ( account_page ), "bet_historical_treeview" );
+        tree_view = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ),
+                        "bet_historical_treeview" );
     gtk_tree_view_collapse_row ( tree_view,
-                gtk_tree_model_get_path ( model, iter ) );
-    gtk_tree_selection_select_iter ( gtk_tree_view_get_selection (
-                tree_view ), iter );
+                        gtk_tree_model_get_path ( model, iter ) );
+    gtk_tree_selection_select_iter ( gtk_tree_view_get_selection ( tree_view ), iter );
 }
 
 
@@ -1618,6 +1626,7 @@ void bet_historical_add_average_amount ( GtkWidget *menu_item,
  * */
 gboolean bet_historical_initializes_account_settings ( gint account_number )
 {
+    GtkWidget *account_page;
     GtkWidget *button = NULL;
     GtkWidget *combo = NULL;
     GtkTreeViewColumn *column;
@@ -1626,6 +1635,8 @@ gboolean bet_historical_initializes_account_settings ( gint account_number )
     gint origin;
     gpointer pointeur;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     /* set data origin */
     origin = gsb_data_account_get_bet_hist_data ( account_number );
     if ( origin )
@@ -1733,12 +1744,15 @@ gboolean bet_historical_set_background_color ( GtkWidget *tree_view )
  * */
 void bet_historical_g_signal_block_tree_view ( void )
 {
+    GtkWidget *account_page;
     GtkTreeView *tree_view;
     gpointer cell;
     GtkTreeModel *tree_model;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     hist_block_signal = TRUE;
-    tree_view = g_object_get_data ( G_OBJECT ( account_page ), "hist_tree_view" );
+    tree_view = g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "hist_tree_view" );
     tree_model = gtk_tree_view_get_model ( GTK_TREE_VIEW ( tree_view ) );
 
     cell = g_object_get_data ( G_OBJECT ( account_page ), "toggle_cell" );
@@ -1757,6 +1771,7 @@ void bet_historical_g_signal_block_tree_view ( void )
  * */
 void bet_historical_g_signal_unblock_tree_view ( void )
 {
+    GtkWidget *account_page;
     GtkTreeView *tree_view;
     gpointer cell;
     GtkTreeModel *tree_model;
@@ -1764,6 +1779,8 @@ void bet_historical_g_signal_unblock_tree_view ( void )
     if ( hist_block_signal == FALSE )
         return;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     hist_block_signal = FALSE;
     tree_view = g_object_get_data ( G_OBJECT ( account_page ), "hist_tree_view" );
     tree_model = gtk_tree_view_get_model ( GTK_TREE_VIEW ( tree_view ) );
@@ -1803,7 +1820,8 @@ void bet_historical_set_page_title ( gint account_number )
                     gsb_data_fyear_get_name ( result ),
                     gsb_data_account_get_name ( account_number ) );
 
-    widget = GTK_WIDGET ( g_object_get_data ( G_OBJECT ( account_page ), "bet_hist_title") );
+    widget = GTK_WIDGET ( g_object_get_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ),
+                    "bet_hist_title") );
     gtk_label_set_label ( GTK_LABEL ( widget ), title );
 
     g_free ( hist_srce_name );
@@ -1922,12 +1940,15 @@ GtkWidget *bet_historical_create_toolbar ( GtkWidget *parent,
 {
     GtkWidget *hbox;
     GtkWidget *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* Hbox */
     hbox = gtk_hbox_new ( FALSE, 0 );
 
     /* print button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                         GTK_STOCK_PRINT,
                         _("Print"),
                         NULL,
@@ -1940,7 +1961,7 @@ GtkWidget *bet_historical_create_toolbar ( GtkWidget *parent,
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 5 );
 
     /* Export button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_SAVE,
 					   _("Export"),
 					   NULL,
@@ -1953,7 +1974,7 @@ GtkWidget *bet_historical_create_toolbar ( GtkWidget *parent,
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 5 );
 
     /* graph button */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                         _("Data graph"),
                         "graph-sectors.png",
                         NULL,
@@ -2014,7 +2035,7 @@ void bet_historical_export_tab ( GtkWidget *menu_item,
     gchar *filename;
 
     dialog = gtk_file_chooser_dialog_new ( _("Export the historical data"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
diff --git a/src/bet_tab.c b/src/bet_tab.c
index c9ec8f2..f9a34e8 100644
--- a/src/bet_tab.c
+++ b/src/bet_tab.c
@@ -39,6 +39,7 @@
 #include "dialog.h"
 #include "export_csv.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_calendar_entry.h"
 #include "gsb_color.h"
@@ -355,6 +356,7 @@ static gboolean bet_array_update_average_column ( GtkTreeModel *model,
  */
 void bet_array_refresh_estimate_tab ( gint account_number )
 {
+    GtkWidget *account_page;
     GtkWidget *widget;
     GtkWidget *tree_view;
     GtkTreeIter iter;
@@ -376,6 +378,7 @@ void bet_array_refresh_estimate_tab ( gint account_number )
     gint currency_number;
 
     devel_debug (NULL);
+    account_page = gsb_gui_on_account_get_notebook ( );
 
     tmp_range = struct_initialise_bet_range ( );
 
@@ -516,8 +519,11 @@ GtkWidget *bet_array_create_page ( void )
     GtkWidget *label_title;
     GtkWidget *label;
     GtkWidget *tree_view;
+    GtkWidget *account_page;
 
     devel_debug (NULL);
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     page = gtk_vbox_new ( FALSE, 5 );
     gtk_widget_set_name ( page, "forecast_page" );
 
@@ -553,7 +559,7 @@ GtkWidget *bet_array_create_page ( void )
     g_object_set_data ( G_OBJECT ( account_page ), "bet_initial_date", initial_date );
     gtk_box_pack_start ( GTK_BOX (hbox), initial_date, FALSE, FALSE, 0 );
 
-    widget = gtk_check_button_new ( );
+    widget = gtk_check_button_new_with_label ( _("Automatic") );
     gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( widget ), FALSE );
     gtk_widget_set_tooltip_text ( GTK_WIDGET ( widget ),
                         _("Check the box to automatically change start date") );
@@ -600,155 +606,155 @@ GtkWidget *bet_array_create_tree_view ( GtkWidget *container )
     /* create the estimate treeview */
     tree_view = gtk_tree_view_new ( );
     gtk_tree_view_set_rules_hint ( GTK_TREE_VIEW ( tree_view ), FALSE );
-       g_object_set_data ( G_OBJECT ( account_page ), "bet_estimate_treeview", tree_view );
-       g_object_set_data ( G_OBJECT ( tree_view ), "origin_data_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_ORIGIN_DATA ) );
-       g_object_set_data ( G_OBJECT ( tree_view ), "color_data_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_COLOR_STRING ) );
-
-       /* set the color of selected row */
-       utils_set_tree_view_selection_and_text_color ( tree_view );
-
-       /* create the model */
-       tree_model = gtk_tree_store_new ( SPP_ESTIMATE_TREE_NUM_COLUMNS,
-                       G_TYPE_BOOLEAN,     /* SPP_ESTIMATE_TREE_SELECT_COLUMN */
-                       G_TYPE_INT,         /* SPP_ESTIMATE_TREE_ORIGIN_DATA */
-                       G_TYPE_INT,         /* SPP_ESTIMATE_TREE_DIVISION_COLUMN */
-                       G_TYPE_INT,         /* SPP_ESTIMATE_TREE_SUB_DIV_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_DATE_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_DESC_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_DEBIT_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_CREDIT_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_BALANCE_COLUMN */
-                       G_TYPE_DATE,        /* SPP_ESTIMATE_TREE_SORT_DATE_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_AMOUNT_COLUMN */
-                       G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_BALANCE_COLOR */
-                       GDK_TYPE_COLOR,     /* SPP_ESTIMATE_TREE_BACKGROUND_COLOR */
-                       G_TYPE_STRING );    /* SPP_ESTIMATE_TREE_COLOR_STRING */
-
-       gtk_tree_view_set_model ( GTK_TREE_VIEW ( tree_view ), GTK_TREE_MODEL ( tree_model ) );
-       g_object_unref ( G_OBJECT ( tree_model ) );
-
-       /* sort by date */
-       sortable = gtk_tree_model_sort_new_with_model ( GTK_TREE_MODEL ( tree_model ) );
-       gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE ( tree_model ),
-                           SPP_ESTIMATE_TREE_SORT_DATE_COLUMN,
-                           (GtkTreeIterCompareFunc) bet_array_date_sort_function,
-                           NULL,
-                           NULL );
-       gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE ( tree_model ),
-                           SPP_ESTIMATE_TREE_SORT_DATE_COLUMN,
-                           GTK_SORT_DESCENDING );
-
-       scrolled_window = gtk_scrolled_window_new ( NULL, NULL );
-       gtk_widget_show ( scrolled_window );
-       gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scrolled_window ),
-                           GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC );
-       gtk_container_add ( GTK_CONTAINER ( scrolled_window ), tree_view );
-       gtk_box_pack_start ( GTK_BOX ( container ), scrolled_window, TRUE, TRUE, 5 );
-
-       /* create columns */
-       i = 0;
-       /* Date column */
-       cell = gtk_cell_renderer_text_new ();
-       g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 0.5, NULL );
-
-       bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
-                           _("Date"), cell,
-                           "text", SPP_ESTIMATE_TREE_DATE_COLUMN,
-                           "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
-                           NULL);
-
-       gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 0.5 );
-       gtk_tree_view_append_column( GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
-       gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_FIXED );
-       gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
-       g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_DATE_COLUMN ) );
-
-       i++;
-       /* Description column */
-       cell = gtk_cell_renderer_text_new ();
-
-       bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
-   					    _("Description"), cell,
-   					    "text", SPP_ESTIMATE_TREE_DESC_COLUMN,
-                           "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
-   					    NULL);
-
-       gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
-       gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_FIXED );
-       gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
-       g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_DESC_COLUMN ) );
-
-       i++;
-       /* Debit column */
-       cell = gtk_cell_renderer_text_new ();
-       g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 1.0, NULL );
-
-       bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
-   						_("Debit"), cell,
-   					    "text", SPP_ESTIMATE_TREE_DEBIT_COLUMN,
-                           "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
-   					    NULL);
-
-       gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 1 );
-       gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
-       gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_GROW_ONLY );
-       gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
-       g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_DEBIT_COLUMN ) );
-
-       i++;
-       /* Credit column */
-       cell = gtk_cell_renderer_text_new ();
-       g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 1.0, NULL );
-
-       bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
-   					    _("Credit"), cell,
-   					    "text", SPP_ESTIMATE_TREE_CREDIT_COLUMN,
-                           "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
-   						NULL);
-
-       gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 1 );
-       gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
-       gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_GROW_ONLY );
-       gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
-       g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_CREDIT_COLUMN ) );
-
-       i++;
-       /* Balance column */
-       cell = gtk_cell_renderer_text_new ();
-       g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 1.0, NULL );
-
-       bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
-   					    _("Balance"), cell,
-   					    "text", SPP_ESTIMATE_TREE_BALANCE_COLUMN,
-                           "foreground", SPP_ESTIMATE_TREE_BALANCE_COLOR,
-                           "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
-   					    NULL);
-
-       gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 1 );
-       gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
-       gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_GROW_ONLY );
-       gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
-       g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
-                           GINT_TO_POINTER ( SPP_ESTIMATE_TREE_BALANCE_COLUMN ) );
-
-       /* signals of tree_view */
-       g_signal_connect ( G_OBJECT ( tree_view ),
-   		                "button-press-event",
-   		                G_CALLBACK ( bet_array_list_button_press ),
-   		                NULL );
-
-       g_signal_connect ( G_OBJECT ( tree_view ),
-   		                "size_allocate",
-   		                G_CALLBACK ( bet_array_list_size_allocate ),
-   		                NULL );
-
-       gtk_widget_show_all ( scrolled_window );
+    g_object_set_data ( G_OBJECT ( gsb_gui_on_account_get_notebook ( ) ), "bet_estimate_treeview", tree_view );
+    g_object_set_data ( G_OBJECT ( tree_view ), "origin_data_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_ORIGIN_DATA ) );
+    g_object_set_data ( G_OBJECT ( tree_view ), "color_data_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_COLOR_STRING ) );
+
+    /* set the color of selected row */
+    utils_set_tree_view_selection_and_text_color ( tree_view );
+
+    /* create the model */
+    tree_model = gtk_tree_store_new ( SPP_ESTIMATE_TREE_NUM_COLUMNS,
+                    G_TYPE_BOOLEAN,     /* SPP_ESTIMATE_TREE_SELECT_COLUMN */
+                    G_TYPE_INT,         /* SPP_ESTIMATE_TREE_ORIGIN_DATA */
+                    G_TYPE_INT,         /* SPP_ESTIMATE_TREE_DIVISION_COLUMN */
+                    G_TYPE_INT,         /* SPP_ESTIMATE_TREE_SUB_DIV_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_DATE_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_DESC_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_DEBIT_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_CREDIT_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_BALANCE_COLUMN */
+                    G_TYPE_DATE,        /* SPP_ESTIMATE_TREE_SORT_DATE_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_AMOUNT_COLUMN */
+                    G_TYPE_STRING,      /* SPP_ESTIMATE_TREE_BALANCE_COLOR */
+                    GDK_TYPE_COLOR,     /* SPP_ESTIMATE_TREE_BACKGROUND_COLOR */
+                    G_TYPE_STRING );    /* SPP_ESTIMATE_TREE_COLOR_STRING */
+
+    gtk_tree_view_set_model ( GTK_TREE_VIEW ( tree_view ), GTK_TREE_MODEL ( tree_model ) );
+    g_object_unref ( G_OBJECT ( tree_model ) );
+
+    /* sort by date */
+    sortable = gtk_tree_model_sort_new_with_model ( GTK_TREE_MODEL ( tree_model ) );
+    gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE ( tree_model ),
+                        SPP_ESTIMATE_TREE_SORT_DATE_COLUMN,
+                        (GtkTreeIterCompareFunc) bet_array_date_sort_function,
+                        NULL,
+                        NULL );
+    gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE ( tree_model ),
+                        SPP_ESTIMATE_TREE_SORT_DATE_COLUMN,
+                        GTK_SORT_DESCENDING );
+
+    scrolled_window = gtk_scrolled_window_new ( NULL, NULL );
+    gtk_widget_show ( scrolled_window );
+    gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scrolled_window ),
+                        GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC );
+    gtk_container_add ( GTK_CONTAINER ( scrolled_window ), tree_view );
+    gtk_box_pack_start ( GTK_BOX ( container ), scrolled_window, TRUE, TRUE, 5 );
+
+    /* create columns */
+    i = 0;
+    /* Date column */
+    cell = gtk_cell_renderer_text_new ();
+    g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 0.5, NULL );
+
+    bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
+                        _("Date"), cell,
+                        "text", SPP_ESTIMATE_TREE_DATE_COLUMN,
+                        "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
+                        NULL );
+
+    gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 0.5 );
+    gtk_tree_view_append_column( GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
+    gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_FIXED );
+    gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
+    g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_DATE_COLUMN ) );
+
+    i++;
+    /* Description column */
+    cell = gtk_cell_renderer_text_new ();
+
+    bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
+                        _("Description"), cell,
+                        "text", SPP_ESTIMATE_TREE_DESC_COLUMN,
+                        "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
+                        NULL );
+
+    gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
+    gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_FIXED );
+    gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
+    g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_DESC_COLUMN ) );
+
+    i++;
+    /* Debit column */
+    cell = gtk_cell_renderer_text_new ();
+    g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 1.0, NULL );
+
+    bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
+                        _("Debit"), cell,
+                        "text", SPP_ESTIMATE_TREE_DEBIT_COLUMN,
+                        "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
+                        NULL );
+
+    gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 1 );
+    gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
+    gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_GROW_ONLY );
+    gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
+    g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_DEBIT_COLUMN ) );
+
+    i++;
+    /* Credit column */
+    cell = gtk_cell_renderer_text_new ();
+    g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 1.0, NULL );
+
+    bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
+                        _("Credit"), cell,
+                        "text", SPP_ESTIMATE_TREE_CREDIT_COLUMN,
+                        "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
+                        NULL );
+
+    gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 1 );
+    gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
+    gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_GROW_ONLY );
+    gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
+    g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_CREDIT_COLUMN ) );
+
+    i++;
+    /* Balance column */
+    cell = gtk_cell_renderer_text_new ();
+    g_object_set ( G_OBJECT ( GTK_CELL_RENDERER ( cell ) ), "xalign", 1.0, NULL );
+
+    bet_array_tree_view_columns[i] = gtk_tree_view_column_new_with_attributes (
+                        _("Balance"), cell,
+                        "text", SPP_ESTIMATE_TREE_BALANCE_COLUMN,
+                        "foreground", SPP_ESTIMATE_TREE_BALANCE_COLOR,
+                        "cell-background-gdk", SPP_ESTIMATE_TREE_BACKGROUND_COLOR,
+                        NULL );
+
+    gtk_tree_view_column_set_alignment ( bet_array_tree_view_columns[i], 1 );
+    gtk_tree_view_append_column (GTK_TREE_VIEW ( tree_view ), bet_array_tree_view_columns[i] );
+    gtk_tree_view_column_set_sizing ( bet_array_tree_view_columns[i], GTK_TREE_VIEW_COLUMN_GROW_ONLY );
+    gtk_tree_view_column_set_resizable ( bet_array_tree_view_columns[i], TRUE );
+    g_object_set_data ( G_OBJECT ( bet_array_tree_view_columns[i] ), "num_col_model",
+                        GINT_TO_POINTER ( SPP_ESTIMATE_TREE_BALANCE_COLUMN ) );
+
+    /* signals of tree_view */
+    g_signal_connect ( G_OBJECT ( tree_view ),
+                        "button-press-event",
+                        G_CALLBACK ( bet_array_list_button_press ),
+                        NULL );
+
+    g_signal_connect ( G_OBJECT ( tree_view ),
+                        "size_allocate",
+                        G_CALLBACK ( bet_array_list_size_allocate ),
+                        NULL );
+
+    gtk_widget_show_all ( scrolled_window );
 
     return tree_view;
 }
@@ -1303,8 +1309,8 @@ gboolean bet_array_refresh_futur_data ( GtkTreeModel *tab_model,
 gboolean bet_array_list_button_press ( GtkWidget *tree_view,
                         GdkEventButton *ev )
 {
-	/* show the popup */
-	if ( ev -> button == RIGHT_BUTTON )
+    /* show the popup */
+    if ( ev -> button == RIGHT_BUTTON )
     {
         GtkTreePath *path = NULL;
 
@@ -1401,13 +1407,12 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
     switch ( origine )
     {
         case SPP_ORIGIN_TRANSACTION:
-        case SPP_ORIGIN_SCHEDULED:
             if ( g_date_compare ( date, date_jour ) > 0 )
             {
                 menu_item = gtk_image_menu_item_new_with_label ( _("Delete selection") );
                 gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_DELETE,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
                 g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_delete_menu ),
@@ -1415,11 +1420,13 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
                 gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
             }
             break;
+        case SPP_ORIGIN_SCHEDULED:
+            break;
         case SPP_ORIGIN_HISTORICAL:
             menu_item = gtk_image_menu_item_new_with_label ( _("Delete selection") );
             gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_DELETE,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
             g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_delete_menu ),
@@ -1430,7 +1437,7 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
             menu_item = gtk_image_menu_item_new_with_label ( _("Change selection") );
             gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_EDIT,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
             g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_change_menu ),
@@ -1440,7 +1447,7 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
             menu_item = gtk_image_menu_item_new_with_label ( _("Delete selection") );
             gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_DELETE,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
             g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_delete_menu ),
@@ -1451,7 +1458,7 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
                         _("Delete all occurences of the selection") );
             gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_DELETE,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
             g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_delete_all_menu ),
@@ -1499,7 +1506,7 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
             menu_item = gtk_image_menu_item_new_with_label ( _("Delete selection") );
             gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_DELETE,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
             g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_delete_menu ),
@@ -1515,7 +1522,7 @@ void bet_array_list_context_menu ( GtkWidget *tree_view,
     menu_item = gtk_image_menu_item_new_with_label ( _("Reset data") );
     gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
                         gtk_image_new_from_stock ( GTK_STOCK_REFRESH,
-						GTK_ICON_SIZE_MENU ) );
+                        GTK_ICON_SIZE_MENU ) );
     g_signal_connect ( G_OBJECT ( menu_item ),
                         "activate",
                         G_CALLBACK ( bet_array_list_redo_menu ),
@@ -1601,7 +1608,7 @@ void bet_array_list_change_menu ( GtkWidget *menu_item,
 
     if ( origine == SPP_ORIGIN_TRANSACTION )
     {
-        gtk_notebook_set_current_page ( GTK_NOTEBOOK ( account_page ), 0 );
+        gtk_notebook_set_current_page ( GTK_NOTEBOOK ( gsb_gui_on_account_get_notebook ( ) ), 0 );
         transaction_list_select ( number );
         gsb_transactions_list_edit_transaction ( number );
     }
@@ -2051,7 +2058,7 @@ gboolean bet_array_list_set_background_color ( GtkWidget *tree_view )
     gboolean absent = TRUE;
 
     if ( !tree_view )
-	    return FALSE;
+        return FALSE;
 
     model = gtk_tree_view_get_model ( GTK_TREE_VIEW ( tree_view ) );
 
@@ -2060,13 +2067,14 @@ gboolean bet_array_list_set_background_color ( GtkWidget *tree_view )
         GtkTreeIter *prev = NULL;
         gint origine;
         gint current_color = 0;
+        GrisbiAppConf *conf;
 
         do
         {
             gtk_tree_model_get ( GTK_TREE_MODEL ( model ),
-			            &iter,
-			            SPP_ESTIMATE_TREE_ORIGIN_DATA, &origine,
-			            -1 );
+                        &iter,
+                        SPP_ESTIMATE_TREE_ORIGIN_DATA, &origine,
+                        -1 );
 
             switch ( origine )
             {
@@ -2111,7 +2119,9 @@ gboolean bet_array_list_set_background_color ( GtkWidget *tree_view )
             }
 
             /* gestion de la date du jour */
-            if ( conf.show_transaction_gives_balance && absent )
+
+            conf = grisbi_app_get_conf ( );
+            if ( conf->show_transaction_gives_balance && absent )
             {
                 GValue date_value = {0,};
                 GDate* date;
@@ -2155,6 +2165,7 @@ gboolean bet_array_list_set_background_color ( GtkWidget *tree_view )
  * */
 gboolean bet_array_initializes_account_settings ( gint account_number )
 {
+    GtkWidget *account_page;
     GtkWidget *widget = NULL;
     GtkWidget *button = NULL;
     GtkWidget *toggled = NULL;
@@ -2162,6 +2173,8 @@ gboolean bet_array_initializes_account_settings ( gint account_number )
     gint param;
     gint months;
 
+    account_page = gsb_gui_on_account_get_notebook ( );
+
     /* devel_debug_int ( account_number ); */
     button = g_object_get_data ( G_OBJECT ( account_page ), "bet_account_spin_button" );
 
@@ -2873,12 +2886,15 @@ GtkWidget *bet_array_list_create_toolbar ( GtkWidget *parent, GtkWidget *tree_vi
 {
     GtkWidget *hbox;
     GtkWidget *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* Hbox */
     hbox = gtk_hbox_new ( FALSE, 0 );
 
     /* print button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                         GTK_STOCK_PRINT,
                         _("Print"),
                         NULL,
@@ -2891,7 +2907,7 @@ GtkWidget *bet_array_list_create_toolbar ( GtkWidget *parent, GtkWidget *tree_vi
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 5 );
 
     /* Export button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_SAVE,
 					   _("Export"),
 					   NULL,
@@ -2904,7 +2920,7 @@ GtkWidget *bet_array_list_create_toolbar ( GtkWidget *parent, GtkWidget *tree_vi
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 5 );
 
     /* graph button */
-    button = bet_graph_button_menu_new ( etat.display_toolbar,
+    button = bet_graph_button_menu_new ( conf->display_toolbar,
                         "forecast_graph",
                         G_CALLBACK ( bet_graph_line_graph_new ),
                         tree_view );
@@ -2994,7 +3010,7 @@ void bet_array_export_tab ( GtkWidget *menu_item, GtkTreeView *tree_view )
     gchar *filename;
 
     dialog = gtk_file_chooser_dialog_new ( _("Export the array of forecast"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
diff --git a/src/categories_onglet.c b/src/categories_onglet.c
index e4bb225..8da6a90 100644
--- a/src/categories_onglet.c
+++ b/src/categories_onglet.c
@@ -32,6 +32,7 @@
 #include "categories_onglet.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_autofunc.h"
 #include "gsb_automem.h"
 #include "gsb_data_category.h"
@@ -49,6 +50,7 @@
 #include "utils.h"
 #include "utils_buttons.h"
 #include "utils_file_selection.h"
+#include "utils_gtkbuilder.h"
 #include "utils_str.h"
 #include "erreur.h"
 /*END_INCLUDE*/
@@ -100,7 +102,7 @@ GtkWidget *categories_create_list ( void )
     GtkTreeDragDestIface * dst_iface;
     GtkTreeDragSourceIface * src_iface;
     static GtkTargetEntry row_targets[] = {
-	{ "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
+    { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
     };
     MetatreeInterface *category_interface;
 
@@ -388,7 +390,7 @@ void categories_exporter_list ( void )
     gchar *nom_categ;
 
     dialog = gtk_file_chooser_dialog_new ( _("Export categories"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
@@ -429,7 +431,7 @@ void categories_importer_list ( void )
     GtkFileFilter * filter;
 
     dialog = gtk_file_chooser_dialog_new ( _("Import categories"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_OPEN,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_OPEN, GTK_RESPONSE_OK,
@@ -495,17 +497,16 @@ void categories_importer_list ( void )
 	    if ( !last_transaction_number )
 		gsb_data_category_init_variables ();
 
-	case 1 :
-		if ( !gsb_file_others_load_category ( category_name ))
-		{
-			return;
-		}
-		break;
-
+        case 1 :
+	    if ( !gsb_file_others_load_category ( category_name ))
+	    {
+            return;
+	    }
+	    break;
 
 	default :
 	    return;
-	    break;
+        break;
     }
 }
 
@@ -521,11 +522,15 @@ void categories_importer_list ( void )
 GtkWidget *creation_barre_outils_categ ( void )
 {
     GtkWidget *hbox, *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
     /* hbox */
     hbox = gtk_hbox_new ( FALSE, 0 );
 
     /* New category button */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                                                 _("New\ncategory"),
                                                 "new-categ.png",
                                                 G_CALLBACK ( appui_sur_ajout_category ),
@@ -536,7 +541,7 @@ GtkWidget *creation_barre_outils_categ ( void )
     g_object_set_data ( G_OBJECT ( button ), "type", GINT_TO_POINTER (1) );
 
     /* New sub category button */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
                                                 _("New sub\ncategory"),
                                                 "new-sub-categ.png",
                                                 G_CALLBACK (appui_sur_ajout_category),
@@ -549,7 +554,7 @@ GtkWidget *creation_barre_outils_categ ( void )
     g_object_set_data ( G_OBJECT ( button ), "type", GINT_TO_POINTER (2) );
 
     /* Import button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                                             GTK_STOCK_OPEN,
                                             _("Import"),
                                             G_CALLBACK ( categories_importer_list ),
@@ -559,7 +564,7 @@ GtkWidget *creation_barre_outils_categ ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
     /* Export button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                                             GTK_STOCK_SAVE,
                                             _("Export"),
                                             G_CALLBACK ( categories_exporter_list ),
@@ -569,7 +574,7 @@ GtkWidget *creation_barre_outils_categ ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
     /* Delete button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                                             GTK_STOCK_DELETE, _("Delete"),
                                             G_CALLBACK ( supprimer_division ), arbre_categ );
     metatree_register_widget_as_linked ( GTK_TREE_MODEL ( categ_tree_model ), button, "selection" );
@@ -578,7 +583,7 @@ GtkWidget *creation_barre_outils_categ ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
     /* Properties button */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
                                             GTK_STOCK_EDIT, _("Edit"),
                                             G_CALLBACK ( edit_category ), arbre_categ );
     metatree_register_widget_as_linked ( GTK_TREE_MODEL ( categ_tree_model ), button, "selection" );
@@ -587,7 +592,7 @@ GtkWidget *creation_barre_outils_categ ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
     /* View button */
-    button = gsb_automem_stock_button_menu_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_menu_new ( conf->display_toolbar,
                                                  GTK_STOCK_SELECT_COLOR,
                                                  _("View"),
                                                  G_CALLBACK ( popup_category_view_mode_menu ),
@@ -654,15 +659,17 @@ gboolean popup_category_view_mode_menu ( GtkWidget *button )
     gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
 
     menu_item = gtk_image_menu_item_new_with_label ( _("Complete view") );
-    g_signal_connect ( G_OBJECT(menu_item), "activate",
-		       G_CALLBACK(expand_arbre_division), (gpointer) 2 );
+    g_signal_connect ( G_OBJECT(menu_item),
+                        "activate",
+                        G_CALLBACK(expand_arbre_division),
+                        (gpointer) 2 );
     g_object_set_data ( G_OBJECT(menu_item), "tree-view", arbre_categ );
     gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
 
     gtk_widget_show_all ( menu );
 
     gtk_menu_popup ( GTK_MENU(menu), NULL, button, set_popup_position, button, 1,
-		     gtk_get_current_event_time());
+                        gtk_get_current_event_time());
 
     return FALSE;
 }
@@ -691,134 +698,137 @@ gboolean edit_category ( GtkTreeView *tree_view )
     selection = gtk_tree_view_get_selection ( tree_view );
     if ( selection && gtk_tree_selection_get_selected ( selection, &model, &iter ) )
     {
-	gtk_tree_model_get ( model, &iter,
-			     META_TREE_NO_DIV_COLUMN, &category_number,
-			     META_TREE_NO_SUB_DIV_COLUMN, &sub_category_number,
-			     -1 );
+        gtk_tree_model_get ( model, &iter,
+                        META_TREE_NO_DIV_COLUMN, &category_number,
+                        META_TREE_NO_SUB_DIV_COLUMN, &sub_category_number,
+                        -1 );
     }
 
     if ( !selection || category_number <= 0 )
-	return FALSE;
+        return FALSE;
 
     if ( sub_category_number > 0 )
-	title = g_strdup_printf ( _("Properties for %s"), gsb_data_category_get_sub_category_name ( category_number,
-												    sub_category_number,
-												    _("No sub-category defined" )));
+        title = g_strdup_printf ( _("Properties for %s"),
+                        gsb_data_category_get_sub_category_name ( category_number,
+                        sub_category_number,
+                        _("No sub-category defined" )));
     else
-	title = g_strdup_printf ( _("Properties for %s"), gsb_data_category_get_name ( category_number,
-										       0,
-										       _("No category defined") ));
+        title = g_strdup_printf ( _("Properties for %s"),
+                        gsb_data_category_get_name ( category_number,
+                        0,
+                        _("No category defined") ));
 
     /* New GtkBuilder Creation*/
     widget_builder = gtk_builder_new ( );
 
     if ( widget_builder == NULL )
-    	return NULL;
-
+        return FALSE;
 
     if ( sub_category_number > 0 )
     {
-    	/* widget paddingbox XML loading */
-    	if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "dlg_edit_without_radio.ui" ) )
-    		return NULL;
+        /* widget paddingbox XML loading */
+        if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "dlg_edit_without_radio.ui" ) )
+            return FALSE;
 
-    	entry = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "entry" ));
+        entry = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "entry" ) );
 
-    	gtk_entry_set_text ( GTK_ENTRY ( entry ),
-    				     gsb_data_category_get_sub_category_name ( category_number,
-    									       sub_category_number,
-    									       NULL ) );
+        gtk_entry_set_text ( GTK_ENTRY ( entry ),
+                        gsb_data_category_get_sub_category_name ( category_number,
+                        sub_category_number,
+                        NULL ) );
     }
     else
     {
-    	/* widget paddingbox XML loading */
-    	if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "dlg_edit_with_radio.ui" ) )
-    		return NULL;
-
-    	entry = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "entry" ));
-
-    	gtk_entry_set_text ( GTK_ENTRY ( entry ),
-    				     gsb_data_category_get_name ( category_number, 0, NULL ) );
+        /* widget paddingbox XML loading */
+        if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "dlg_edit_with_radio.ui" ) )
+            return FALSE;
 
-    	if (gsb_data_category_get_type (category_number))
-    		gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( gtk_builder_get_object ( widget_builder, "Debit_radiobutton" ) ), TRUE );
-    	else
-    		gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( gtk_builder_get_object ( widget_builder, "Credit_radiobutton" ) ), TRUE );
+        entry = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "entry" ) );
 
-    	g_object_set_data (G_OBJECT (gtk_builder_get_object ( widget_builder, "Debit_radiobutton" )),
-    			       "number_for_func", GINT_TO_POINTER (category_number));
+        gtk_entry_set_text ( GTK_ENTRY ( entry ),
+                        gsb_data_category_get_name ( category_number, 0, NULL ) );
 
-    	g_signal_connect ( G_OBJECT (gtk_builder_get_object ( widget_builder, "Debit_radiobutton" )), "toggled",
-    			G_CALLBACK (gsb_autofunc_checkbutton_changed), G_CALLBACK (gsb_data_category_set_type));
-	}
+        if ( gsb_data_category_get_type ( category_number ) )
+            gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (
+                        gtk_builder_get_object ( widget_builder, "Debit_radiobutton" ) ), TRUE );
+        else
+            gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (
+                        gtk_builder_get_object ( widget_builder, "Credit_radiobutton" ) ), TRUE );
 
-    /* Get the needed widgets*/
-    dialog = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "dialog_edit_category" ));
-    label = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "label" ));
+        g_object_set_data ( G_OBJECT ( gtk_builder_get_object ( widget_builder, "Debit_radiobutton" ) ),
+                        "number_for_func", GINT_TO_POINTER ( category_number ) );
 
+        g_signal_connect ( gtk_builder_get_object ( widget_builder, "Debit_radiobutton" ),
+                        "toggled",
+                        G_CALLBACK ( gsb_autofunc_checkbutton_changed ),
+                        G_CALLBACK ( gsb_data_category_set_type ) );
+    }
 
+    /* Get the needed widgets */
+    dialog = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "dialog_edit_category" ) );
+    label = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "label" ) );
 
-    //Set Title
-    gtk_label_set_label(GTK_LABEL(label),title);
+    /* Set Title */
+    gtk_label_set_label ( GTK_LABEL ( label ),title );
     g_free ( title );
 
     gtk_widget_show_all ( dialog );
 
     while ( 1 )
     {
-	if ( gtk_dialog_run ( GTK_DIALOG(dialog) ) != GTK_RESPONSE_OK )
-	{
-        sortie_edit_category = TRUE;
-	    gtk_widget_destroy ( GTK_WIDGET ( dialog ) );
-	    return FALSE;
-	}
+        if ( gtk_dialog_run ( GTK_DIALOG ( dialog ) ) != GTK_RESPONSE_OK )
+        {
+            sortie_edit_category = TRUE;
+            gtk_widget_destroy ( GTK_WIDGET ( dialog ) );
+            return FALSE;
+        }
 
-	if ( ( sub_category_number > 0 &&
-	       gsb_data_category_get_sub_category_number_by_name ( category_number,
-								   gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-								   FALSE ) &&
-	       gsb_data_category_get_sub_category_number_by_name ( category_number,
-								   gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-								   FALSE ) != sub_category_number ) ||
-	     ( sub_category_number <= 0 &&
-	       gsb_data_category_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-						      FALSE, 0 ) &&
-	       gsb_data_category_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-						      FALSE, 0 ) != category_number ) )
-	{
-	    gchar * message;
-	    if ( sub_category_number > 0 )
-	    {
-		message = g_strdup_printf ( _("You tried to rename current sub-category to '%s' "
-					      "but this sub-category already exists.  Please "
-					      "choose another name."),
-					    gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
-	    }
-	    else
-	    {
-		message = g_strdup_printf ( _("You tried to rename current category to '%s' "
-					      "but this category already exists.  Please "
-					      "choose another name."),
-					    gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
-	    }
-	    dialogue_warning_hint ( message, _("Category already exists") );
-	    g_free ( message );
-	}
-	else
-	{
-	    if ( sub_category_number > 0 )
-	    {
-		gsb_data_category_set_sub_category_name ( category_number,
-							  sub_category_number,
-							  gtk_entry_get_text ( GTK_ENTRY (entry)));
-	    }
-	    else
-	    {
-		gsb_data_category_set_name ( category_number,
-					     gtk_entry_get_text ( GTK_ENTRY (entry)));
-	    }
-	    break;
-	}
+        if ( ( sub_category_number > 0 &&
+               gsb_data_category_get_sub_category_number_by_name ( category_number,
+                                       gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+                                       FALSE ) &&
+               gsb_data_category_get_sub_category_number_by_name ( category_number,
+                                       gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+                                       FALSE ) != sub_category_number ) ||
+             ( sub_category_number <= 0 &&
+               gsb_data_category_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+                                  FALSE, 0 ) &&
+               gsb_data_category_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+                                  FALSE, 0 ) != category_number ) )
+        {
+            gchar * message;
+            if ( sub_category_number > 0 )
+            {
+            message = g_strdup_printf ( _("You tried to rename current sub-category to '%s' "
+                              "but this sub-category already exists.  Please "
+                              "choose another name."),
+                            gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
+            }
+            else
+            {
+            message = g_strdup_printf ( _("You tried to rename current category to '%s' "
+                              "but this category already exists.  Please "
+                              "choose another name."),
+                            gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
+            }
+            dialogue_warning_hint ( message, _("Category already exists") );
+            g_free ( message );
+        }
+        else
+        {
+            if ( sub_category_number > 0 )
+            {
+            gsb_data_category_set_sub_category_name ( category_number,
+                                  sub_category_number,
+                                  gtk_entry_get_text ( GTK_ENTRY (entry)));
+            }
+            else
+            {
+            gsb_data_category_set_name ( category_number,
+                             gtk_entry_get_text ( GTK_ENTRY (entry)));
+            }
+            break;
+        }
     }
 
     gtk_widget_destroy ( dialog );
@@ -827,18 +837,18 @@ gboolean edit_category ( GtkTreeView *tree_view )
 
     if ( sub_category_number > 0 )
     {
-	div_iter = get_iter_from_div ( model, category_number, sub_category_number );
-	fill_sub_division_row ( model, category_interface,
-				div_iter,
-				category_number,
-				sub_category_number);
+        div_iter = get_iter_from_div ( model, category_number, sub_category_number );
+        fill_sub_division_row ( model, category_interface,
+                    div_iter,
+                    category_number,
+                    sub_category_number);
     }
     else
     {
-	div_iter = get_iter_from_div ( model, category_number, 0 );
-	fill_division_row ( model, category_interface,
-			    div_iter,
-			    category_number );
+        div_iter = get_iter_from_div ( model, category_number, 0 );
+        fill_division_row ( model, category_interface,
+                    div_iter,
+                    category_number );
     }
     gtk_tree_iter_free (div_iter);
 
@@ -995,6 +1005,9 @@ gboolean category_list_button_press ( GtkWidget *tree_view,
         GtkTreeIter iter;
         GtkTreePath *path = NULL;
         enum meta_tree_row_type type_division;
+        GrisbiAppConf *conf;
+
+        conf = grisbi_app_get_conf ( );
 
         type_division = metatree_get_row_type_from_tree_view ( tree_view );
         if ( type_division == META_TREE_TRANSACTION )
@@ -1004,7 +1017,7 @@ gboolean category_list_button_press ( GtkWidget *tree_view,
         if ( selection && gtk_tree_selection_get_selected (selection, &model, &iter ) )
             path = gtk_tree_model_get_path  ( model, &iter);
 
-        if ( conf.metatree_action_2button_press == 0 || type_division == META_TREE_DIV )
+        if ( conf->metatree_action_2button_press == 0 || type_division == META_TREE_DIV )
         {
             if ( gtk_tree_view_row_expanded ( GTK_TREE_VIEW ( tree_view ), path ) )
                 gtk_tree_view_collapse_row ( GTK_TREE_VIEW ( tree_view ), path );
@@ -1014,7 +1027,7 @@ gboolean category_list_button_press ( GtkWidget *tree_view,
             gtk_tree_path_free ( path );
             return FALSE;
         }
-        else if ( conf.metatree_action_2button_press == 1 )
+        else if ( conf->metatree_action_2button_press == 1 )
         {
             edit_category ( GTK_TREE_VIEW ( tree_view ) );
 
diff --git a/src/dialog.c b/src/dialog.c
index 1a866c0..8f0e8d4 100644
--- a/src/dialog.c
+++ b/src/dialog.c
@@ -30,6 +30,7 @@
 
 /*START_INCLUDE*/
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "parametres.h"
 #include "structures.h"
 /*END_INCLUDE*/
@@ -203,7 +204,7 @@ void dialogue_special ( GtkMessageType param, gchar *text )
 {
     GtkWidget *dialog;
 
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         param, GTK_BUTTONS_CLOSE,
                         NULL );
@@ -229,9 +230,9 @@ GtkWidget *dialogue_special_no_run ( GtkMessageType param,
 {
     GtkWidget *dialog;
 
-    if ( GTK_IS_WINDOW ( run.window ) )
+    if ( GTK_IS_WINDOW ( grisbi_app_get_active_window ( NULL ) ) )
     {
-        dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+        dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT || GTK_DIALOG_MODAL,
                         param, buttons,
                         NULL );
@@ -323,7 +324,7 @@ GtkDialog *dialogue_conditional_new ( gchar *text,
         }
     }
 
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         type, buttons,
                         NULL );
@@ -436,7 +437,7 @@ gboolean question_yes_no ( gchar *text, gint default_answer )
     GtkWidget *dialog;
     gint response;
 
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_MESSAGE_QUESTION,
                         GTK_BUTTONS_YES_NO,
@@ -520,7 +521,7 @@ gboolean question_conditional_yes_no_with_struct ( struct conditional_message *m
         return message -> default_answer;
 
     text = make_hint ( _(message -> hint), message -> message );
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_MESSAGE_WARNING,
                         GTK_BUTTONS_YES_NO,
@@ -734,7 +735,7 @@ const gchar *dialogue_hint_with_entry ( gchar *text, gchar *hint, gchar *entry_d
 
     format_text = make_hint ( hint, text );
 
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_MESSAGE_INFO,
                         GTK_BUTTONS_CLOSE,
diff --git a/src/erreur.c b/src/erreur.c
index 366d870..9fcf992 100644
--- a/src/erreur.c
+++ b/src/erreur.c
@@ -35,6 +35,8 @@
 /*START_INCLUDE*/
 #include "erreur.h"
 #include "dialog.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "gsb_dirs.h"
 #include "gsb_file.h"
 #include "gsb_file_save.h"
@@ -86,13 +88,59 @@ void traitement_sigsegv ( gint signal_nb )
 #ifdef HAVE_BACKTRACE
     GtkWidget * expander;
 #endif
+    GrisbiAppConf *conf;
 
-    /*   il y a 3 possibilités : */
-    /*     soit on était en train de charger un fichier, c'est que celui-ci est corrompu */
-    /* soit on était en train de sauver un fichier, et là on peut rien faire */
-    /* sinon on essaie de sauver le fichier sous le nom entouré de # */
+    conf = grisbi_app_get_conf ( );
 
-    if ( run.is_loading || run.is_saving || !gsb_file_get_modified ( ) )
+    /* il y a 4 possibilités :
+     *  - Demande de fermeture de la part du système
+     *  - Chargement d'un fichier -> celui-ci est corrompu
+     *  - Sauvegarde d'un fichier -> on peut rien faire
+     *  - Erreur de mémoire -> tentative de sauver le fichier sous le nom entouré de #
+     */
+    if ( ( signal_nb == SIGINT || signal_nb == SIGTERM ) && gsb_file_get_modified ( ) )
+    {
+        gint res;
+
+        gsb_file_default_dir = gsb_dirs_get_home_dir ( );
+
+        if ( nom_fichier_comptes )
+            /* set # around the filename */
+            nom_fichier_comptes = g_path_get_basename ( nom_fichier_comptes );
+        else
+            /* no name for the file, create it */
+            nom_fichier_comptes = g_build_filename ( gsb_file_default_dir, "#grisbi_save_no_name.gsb#", NULL );
+
+        old_errmsg = g_strdup ( _("Request for forced shutdown of  Grisbi \n") );
+        errmsg = g_markup_printf_escaped ( _("The file \"%s has been modified. Do you want to save it?\n"),
+                                    nom_fichier_comptes );
+
+        dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
+                                    GTK_DIALOG_DESTROY_WITH_PARENT,
+                                    GTK_MESSAGE_ERROR,
+                                    GTK_BUTTONS_YES_NO,
+                                    old_errmsg );
+        gtk_dialog_set_default_response     ( GTK_DIALOG ( dialog ), GTK_RESPONSE_YES );
+        gtk_message_dialog_format_secondary_markup ( GTK_MESSAGE_DIALOG ( dialog ), "%s", errmsg );
+
+        g_free ( old_errmsg );
+        g_free ( errmsg );
+
+        res = gtk_dialog_run ( GTK_DIALOG ( dialog ) );
+
+        if ( res == GTK_RESPONSE_YES )
+        {
+            gsb_status_message ( _("Save file") );
+            gsb_file_save_save_file ( nom_fichier_comptes, conf->compress_file, FALSE );
+            gsb_status_clear ( );
+        }
+
+        gtk_widget_destroy ( dialog );
+        gsb_file_util_modify_lock ( FALSE );
+
+        exit ( 0 );
+    }
+    else if ( run.is_loading || run.is_saving || !gsb_file_get_modified ( ) )
     {
         if ( run.is_loading )
         {
@@ -124,7 +172,7 @@ void traitement_sigsegv ( gint signal_nb )
 
         gsb_status_message ( _("Save file") );
 
-        gsb_file_save_save_file ( nom_fichier_comptes, conf.compress_file, FALSE );
+        gsb_file_save_save_file ( nom_fichier_comptes, conf->compress_file, FALSE );
 
         gsb_status_clear ( );
 
@@ -137,23 +185,24 @@ void traitement_sigsegv ( gint signal_nb )
     }
 
     old_errmsg = errmsg;
-    errmsg = g_str rmsg;  traitement_sigsegv ( gint signal_nb )  ress_file, FALSE );  );  errmsg );  ?\n"),  );  tton" ) ), TRUE );  ¾ÐºÐ¾Ð¼ "    ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 concat ( errmsg, 
-			   "\n\n",
-			   _("Please report this problem to <tt>http://www.grisbi.org/bugtracking/</tt>.  "),
-			   NULL );
+    errmsg = g_strconcat ( errmsg,
+                        "\n\n",
+                        _("Please report this problem to <tt>http://www.grisbi.org/bugtracking/</tt>.  "),
+                        NULL );
      g_free ( old_errmsg );
 
 #ifdef HAVE_BACKTRACE
     old_errmsg = errmsg;
-    errmsg = g_strconcat ( errmsg, _("Copy and paste the following backtrace with your bug "
+    errmsg = g_strconcat ( errmsg,
+                        _("Copy and paste the following backtrace with your bug "
                         "report."),
-			   NULL );
+                        NULL );
      g_free ( old_errmsg );
 #endif
 
     dialog = dialogue_special_no_run ( GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE,
-				       make_hint ( _("Grisbi terminated due to a segmentation fault."),
-						   errmsg ));
+                        make_hint ( _("Grisbi terminated due to a segmentation fault."),
+                        errmsg ) );
     g_free ( errmsg );
 
 #ifdef HAVE_BACKTRACE
@@ -193,7 +242,6 @@ void initialize_debugging ( void )
     gchar *tmpstr1;
     gchar *tmpstr2;
 
-    
     if ( ( debugging_grisbi = gsb_main_get_debug_level ( ) ) )
     {
         /* on renseigne le texte du level de debug */
@@ -477,7 +525,9 @@ gboolean gsb_debug_start_log ( void )
     {
         GtkWidget *widget;
         gchar *tmp_str_2;
-        GtkUIManager *ui_manager = gsb_menu_get_ui_manager ( );
+        GtkUIManager *ui_manager;
+
+        ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
 
         widget = gtk_ui_manager_get_widget ( ui_manager, "/menubar/FileMenu/DebugMode" );
         etat.debug_mode = TRUE;
diff --git a/src/etats_config_ui.c b/src/etats_config_ui.c
index 3b8f95c..7df9661 100644
--- a/src/etats_config_ui.c
+++ b/src/etats_config_ui.c
@@ -33,6 +33,7 @@
 /*START_INCLUDE*/
 #include "etats_config_ui.h"
 #include "etats_config.h"
+#include "grisbi_app.h"
 #include "structures.h"
 #include "utils.h"
 #include "utils_buttons.h"
@@ -269,7 +270,8 @@ GtkWidget *etats_config_ui_create_dialog ( void )
 
     /* Recuparation d'un pointeur sur la fenetre. */
     dialog = GTK_WIDGET ( gtk_builder_get_object ( etats_config_builder, "config_etats_dialog" ) );
-    gtk_window_set_transient_for ( GTK_WINDOW ( dialog ), GTK_WINDOW ( run.window ) );
+    gtk_window_set_transient_for ( GTK_WINDOW ( dialog ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ) );
 
     /* Recupération d'un pointeur sur le gtk_tree_view. */
     tree_view = etats_config_ui_left_panel_create_tree_view ( );
diff --git a/src/etats_config_ui.h b/src/etats_config_ui.h
index 37ae449..fda5b84 100644
--- a/src/etats_config_ui.h
+++ b/src/etats_config_ui.h
@@ -1,5 +1,5 @@
-#ifndef GSB_ETATS_CONFIG_UI_H
-#define GSB_ETATS_CONFIG_UI_H (1)
+#ifndef _ETATS_CONFIG_UI_H
+#define _ETATS_CONFIG_UI_H (1)
 
 /* START_INCLUDE_H */
 /* END_INCLUDE_H */
@@ -39,4 +39,4 @@ gboolean etats_config_ui_widget_set_sensitive ( const gchar *widget_name,
 /* END_DECLARATION */
 
 
-#endif /* GSB_ETATS_CONFIG_UI_H */
+#endif /* ETATS_CONFIG_UI_H */
diff --git a/src/etats_html.c b/src/etats_html.c
index 14dd300..653d946 100644
--- a/src/etats_html.c
+++ b/src/etats_html.c
@@ -37,11 +37,6 @@
 #include "etats_affiche.h"
 /*END_INCLUDE*/
 
-/* FOLLOWING LINES REVERTS BACK TO THE ORIGINAL FPRINTF (LIBINTL_FPRINTF IS BUGGY) */
-#ifdef _WIN32
-	#undef fprintf
-#endif
-
 /*START_STATIC*/
 static void html_attach_hsep ( int x, int x2, int y, int y2);
 static void html_attach_label ( gchar * text, gdouble properties, int x, int x2, int y, int y2, 
diff --git a/src/etats_onglet.c b/src/etats_onglet.c
index 8837048..25b1472 100644
--- a/src/etats_onglet.c
+++ b/src/etats_onglet.c
@@ -38,6 +38,7 @@
 #include "etats_config.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_data_report.h"
 #include "gsb_data_report_amout_comparison.h"
@@ -140,11 +141,14 @@ GtkWidget *creation_onglet_etats ( void )
 GtkWidget *gsb_gui_create_report_toolbar ( void )
 {
     GtkWidget *hbox, *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     hbox = gtk_hbox_new ( FALSE, 5 );
 
     /* Add various icons */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 					       _("New report"),
 					       "new-report.png",
 					       G_CALLBACK ( ajout_etat ),
@@ -153,7 +157,7 @@ GtkWidget *gsb_gui_create_report_toolbar ( void )
 				  _("Create a new report") );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_OPEN,
 					   _("Import"),
 					   G_CALLBACK (importer_etat),
@@ -162,7 +166,7 @@ GtkWidget *gsb_gui_create_report_toolbar ( void )
 				  _("Import a Grisbi report file (.egsb)") );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    bouton_exporter_etat = gsb_automem_stock_button_new ( etat.display_toolbar,
+    bouton_exporter_etat = gsb_automem_stock_button_new ( conf->display_toolbar,
 							 GTK_STOCK_SAVE,
 							 _("Export"),
 							 G_CALLBACK (exporter_etat),
@@ -172,7 +176,7 @@ GtkWidget *gsb_gui_create_report_toolbar ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), bouton_exporter_etat, FALSE, FALSE, 0 );
 
     /* print button */
-    bouton_imprimer_etat = gsb_automem_stock_button_new ( etat.display_toolbar,
+    bouton_imprimer_etat = gsb_automem_stock_button_new ( conf->display_toolbar,
 							  GTK_STOCK_PRINT,
 							  _("Print"),
 							  G_CALLBACK (print_report),
@@ -182,7 +186,7 @@ GtkWidget *gsb_gui_create_report_toolbar ( void )
 
     gtk_box_pack_start ( GTK_BOX ( hbox ), bouton_imprimer_etat, FALSE, FALSE, 0 );
 
-    bouton_effacer_etat = gsb_automem_stock_button_new ( etat.display_toolbar,
+    bouton_effacer_etat = gsb_automem_stock_button_new ( conf->display_toolbar,
 							 GTK_STOCK_DELETE,
 							 _("Delete"),
 							 G_CALLBACK ( efface_etat ),
@@ -191,7 +195,7 @@ GtkWidget *gsb_gui_create_report_toolbar ( void )
 				   _("Delete selected report") );
     gtk_box_pack_start ( GTK_BOX ( hbox ), bouton_effacer_etat, FALSE, FALSE, 0 );
 
-    bouton_personnaliser_etat = gsb_automem_stock_button_new ( etat.display_toolbar,
+    bouton_personnaliser_etat = gsb_automem_stock_button_new ( conf->display_toolbar,
 							      GTK_STOCK_PROPERTIES,
 							      _("Properties"),
 							      G_CALLBACK ( etats_config_personnalisation_etat ),
@@ -200,7 +204,7 @@ GtkWidget *gsb_gui_create_report_toolbar ( void )
 				  _("Edit selected report") );
     gtk_box_pack_start ( GTK_BOX ( hbox ), bouton_personnaliser_etat, FALSE, FALSE, 0 );
 
-    bouton_dupliquer_etat = gsb_automem_stock_button_new ( etat.display_toolbar,
+    bouton_dupliquer_etat = gsb_automem_stock_button_new ( conf->display_toolbar,
 							  GTK_STOCK_COPY,
 							  _("Clone"),
 							  G_CALLBACK (dupliquer_etat),
@@ -1121,7 +1125,7 @@ void exporter_etat ( void )
         gtk_notebook_set_current_page ( GTK_NOTEBOOK ( notebook_general), GSB_REPORTS_PAGE );
 
     fenetre_nom = gtk_file_chooser_dialog_new ( _("Export report"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
@@ -1207,7 +1211,7 @@ void importer_etat ( void )
 	gtk_notebook_set_current_page ( GTK_NOTEBOOK ( notebook_general), GSB_REPORTS_PAGE );
 
     fenetre_nom = gtk_file_chooser_dialog_new ( _("Import a report"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_OPEN,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_OPEN, GTK_RESPONSE_OK,
diff --git a/src/fenetre_principale.c b/src/fenetre_principale.c
index 660cd18..f330c84 100644
--- a/src/fenetre_principale.c
+++ b/src/fenetre_principale.c
@@ -36,30 +36,29 @@
 #include "bet_finance_ui.h"
 #include "bet_hist.h"
 #include "bet_tab.h"
-#include "navigation.h"
-#include "gsb_transactions_list.h"
+#include "categories_onglet.h"
 #include "etats_onglet.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "gsb_data_account.h"
 #include "gsb_account_property.h"
 #include "gsb_form.h"
 #include "gsb_scheduler_list.h"
-#include "main.h"
-#include "categories_onglet.h"
+#include "gsb_transactions_list.h"
 #include "imputation_budgetaire.h"
-#include "tiers_onglet.h"
+#include "main.h"
+#include "navigation.h"
 #include "structures.h"
+#include "tiers_onglet.h"
 #include "erreur.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
-static GtkWidget *gsb_gui_create_general_notebook (void );
+static void gsb_gui_create_general_notebook ( GrisbiWindow *window );
 static gboolean gsb_gui_fill_general_notebook ( GtkWidget *notebook );
 static void gsb_gui_headings_private_update_label_markup ( GtkLabel *label,
                         const gchar *text,
                         gboolean escape_text );
-static gboolean gsb_gui_hpaned_size_allocate ( GtkWidget *hpaned,
-                        GtkAllocation *allocation,
-                        gpointer null );
 static gboolean on_simpleclick_event_run ( GtkWidget * button, GdkEvent * button_event,
                         GCallback cb );
 /*END_STATIC*/
@@ -68,23 +67,6 @@ static gboolean on_simpleclick_event_run ( GtkWidget * button, GdkEvent * button
 /*END_EXTERN*/
 
 
-/* données des widgets généraux */
-static GtkWidget *vbox_general = NULL;
-static GtkWidget *hpaned_general = NULL;
-static GtkWidget *notebook_general = NULL;
-static gint hpaned_left_width;
-
-/** Notebook of the account pane. */
-GtkWidget *account_page = NULL;
-
-static GtkWidget * headings_eb = NULL;
-
-/** Title for the heading bar. */
-static GtkWidget * headings_title = NULL;
-/** Suffix for the heading bar.  */
-static GtkWidget * headings_suffix = NULL;
-
-
 /**
  * Create the main widget that holds all the user interface save the
  * menus.
@@ -93,82 +75,25 @@ static GtkWidget * headings_suffix = NULL;
  */
 GtkWidget *gsb_gui_create_general_widgets ( void )
 {
-    GtkWidget * hbox, * arrow_eb, * arrow_left, * arrow_right;
-    GtkStyle * style;
-
-    /* All stuff will be put in a huge vbox, with an hbox containing
-     * quick summary. */
-    vbox_general = gtk_vbox_new ( FALSE, 0 );
-
-    headings_eb = gtk_event_box_new ();
-    style = gtk_widget_get_style ( headings_eb );
-
-    hbox = gtk_hbox_new ( FALSE, 0 );
-
-    /* Create two arrows. */
-    arrow_left = gtk_arrow_new ( GTK_ARROW_LEFT, GTK_SHADOW_OUT );
-    arrow_eb = gtk_event_box_new ();
-    gtk_widget_modify_bg ( arrow_eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
-    gtk_container_add ( GTK_CONTAINER ( arrow_eb ), arrow_left );
-    g_signal_connect ( G_OBJECT ( arrow_eb ), "button-press-event", 
-		       G_CALLBACK ( on_simpleclick_event_run ), 
-		       gsb_gui_navigation_select_prev );
-    gtk_box_pack_start ( GTK_BOX ( hbox ), arrow_eb, FALSE, FALSE, 0 );
-
-    arrow_right = gtk_arrow_new ( GTK_ARROW_RIGHT, GTK_SHADOW_OUT );
-    arrow_eb = gtk_event_box_new ();
-    gtk_widget_modify_bg ( arrow_eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
-    gtk_container_add ( GTK_CONTAINER ( arrow_eb ), arrow_right );
-    g_signal_connect ( G_OBJECT ( arrow_eb ), "button-press-event", 
-		       G_CALLBACK ( on_simpleclick_event_run ), 
-		       gsb_gui_navigation_select_next );
-    gtk_box_pack_start ( GTK_BOX(hbox), arrow_eb, FALSE, FALSE, 3 );
-
-    /* Define labels. */
-    headings_title = gtk_label_new ( NULL );
-    gtk_label_set_justify ( GTK_LABEL(headings_title), GTK_JUSTIFY_LEFT );
-    gtk_misc_set_alignment (GTK_MISC (headings_title), 0.0, 0.5);
-    gtk_box_pack_start ( GTK_BOX(hbox), headings_title, TRUE, TRUE, 3 );
-    headings_suffix = gtk_label_new (NULL);
-    gtk_box_pack_start ( GTK_BOX(hbox), headings_suffix, FALSE, FALSE, 0 );
-
-    /* Change color with an event box trick. */
-    gtk_container_add ( GTK_CONTAINER ( headings_eb ), hbox );
-    gtk_widget_modify_bg ( headings_eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
-    gtk_container_set_border_width ( GTK_CONTAINER ( hbox ), 6 );
-
-    gtk_box_pack_start ( GTK_BOX( vbox_general ), headings_eb, FALSE, FALSE, 0 );
-    gsb_gui_update_show_headings ();
+    GtkWidget *vbox_general;
+    GtkWidget *hpaned_general;
+    GrisbiWindow *window;
+
+    window = grisbi_app_get_active_window ( grisbi_app_get_default ( ) );
+
+    vbox_general = grisbi_window_get_widget_by_name ( "vbox_general" );
 
     /* Then create and fill the main hpaned. */
-    hpaned_general = gtk_hpaned_new ();
-    g_signal_connect ( G_OBJECT ( hpaned_general ),
-		       "size_allocate",
-		       G_CALLBACK ( gsb_gui_hpaned_size_allocate ),
-		       NULL );
-    gtk_box_pack_start ( GTK_BOX ( vbox_general ), hpaned_general, TRUE, TRUE, 0 );
-    gtk_paned_add1 ( GTK_PANED ( hpaned_general ), gsb_gui_navigation_create_navigation_pane ( ) );
-    gtk_paned_add2 ( GTK_PANED ( hpaned_general ), gsb_gui_create_general_notebook ( ) );
+    hpaned_general = grisbi_window_new_hpaned ( window );
+    gsb_gui_navigation_create_navigation_pane ( );
+    gsb_gui_create_general_notebook ( window );
     gtk_container_set_border_width ( GTK_CONTAINER ( hpaned_general ), 6 );
-    if ( hpaned_left_width == -1 )
-    {
-        gint width, height;
-
-        gtk_window_get_size ( GTK_WINDOW ( run.window ), &width, &height );
-        gtk_paned_set_position ( GTK_PANED ( hpaned_general ), (gint) width / 4 );
-    }
-    else
-    {
-        if ( hpaned_left_width )
-            gtk_paned_set_position ( GTK_PANED ( hpaned_general ), hpaned_left_width );
-        else
-            gtk_paned_set_position ( GTK_PANED ( hpaned_general ), 1 );
-    }
 
     gtk_widget_show ( hpaned_general );
 
     gtk_widget_show ( vbox_general );
 
+    /* return */
     return vbox_general;
 }
 
@@ -182,23 +107,20 @@ GtkWidget *gsb_gui_create_general_widgets ( void )
  *
  * \return the notebook
  */
-GtkWidget *gsb_gui_create_general_notebook (void )
+void gsb_gui_create_general_notebook ( GrisbiWindow *window )
 {
-    GtkWidget * vbox, * form;
+    GtkWidget *vbox;
+    GtkWidget *form;
+    GtkWidget *notebook_general;
 
     devel_debug ( "create_main_notebook" );
 
     /* the main right page is a vbox with a notebook on the top
      * and the form on the bottom */
-
-    vbox = gtk_vbox_new ( FALSE, 0 );
+    vbox = grisbi_window_get_widget_by_name ( "vbox_transactions_list" );
 
     /* append the notebook */
-    notebook_general = gtk_notebook_new ( );
-    gtk_notebook_set_show_tabs ( GTK_NOTEBOOK ( notebook_general ), FALSE );
-    gtk_notebook_set_show_border ( GTK_NOTEBOOK ( notebook_general ), FALSE );
-    gtk_box_pack_start ( GTK_BOX ( vbox ), notebook_general, TRUE, TRUE, 0 );
-    gtk_widget_show ( notebook_general );
+    notebook_general = grisbi_window_get_widget_by_name ( "notebook_general" );
 
     /* append the form */
     form = gsb_form_new ( );
@@ -208,9 +130,7 @@ GtkWidget *gsb_gui_create_general_notebook (void )
     /* fill the notebook */
     gsb_gui_fill_general_notebook ( notebook_general );
 
-    gtk_widget_show ( vbox );
-
-    return vbox;
+    /* return */
 }
 
 
@@ -220,6 +140,10 @@ GtkWidget *gsb_gui_create_general_notebook (void )
  */
 GtkWidget *gsb_gui_get_general_notebook (void )
 {
+    GtkWidget *notebook_general;
+
+    notebook_general = grisbi_window_get_widget_by_name ( "notebook_general" );
+
     return notebook_general;
 }
 
@@ -233,6 +157,8 @@ GtkWidget *gsb_gui_get_general_notebook (void )
  * */
 gboolean gsb_gui_fill_general_notebook ( GtkWidget *notebook )
 {
+    GtkWidget *account_page;
+
     /* append the main page */
     gtk_notebook_append_page ( GTK_NOTEBOOK ( notebook ),
                         creation_onglet_accueil(),
@@ -240,9 +166,7 @@ gboolean gsb_gui_fill_general_notebook ( GtkWidget *notebook )
 
     /* append the account page : a notebook with the account configuration
      * the bet pages and transactions page */
-    account_page = gtk_notebook_new ();
-    gtk_notebook_set_show_border ( GTK_NOTEBOOK(account_page), FALSE );
-    gtk_widget_show ( account_page );
+    account_page = grisbi_window_get_widget_by_name ( "account_page" );
 
     gtk_notebook_append_page ( GTK_NOTEBOOK ( notebook ),
                         account_page,
@@ -363,38 +287,36 @@ gboolean gsb_gui_on_account_switch_page ( GtkNotebook *notebook,
 
 
 /**
- * Set the account notebook page.
- * 
- * \param page		Page to set.
+ * Get the account notebook.
+ *
+ * \param page
+ *
+ * \return 
  */
-void gsb_gui_on_account_change_page ( GsbaccountNotebookPages page )
+GtkWidget *gsb_gui_on_account_get_notebook ( void )
 {
-    gtk_notebook_set_current_page ( GTK_NOTEBOOK ( account_page ), page );
+    GtkWidget *account_page;
+
+    account_page = grisbi_window_get_widget_by_name ( "account_page" );
+
+    return account_page;
 }
 
 
 /**
- * Update one of the heading bar label with a new text.
- *
- * \param label	Label to update.
- * \param text	String to display in headings bar.
- *
+ * Set the account notebook page.
+ * 
+ * \param page		Page to set.
  */
-void gsb_gui_headings_private_update_label_markup ( GtkLabel *label,
-                        const gchar *text,
-                        gboolean escape_text )
+void gsb_gui_on_account_change_page ( GsbaccountNotebookPages page )
 {
-    gchar* tmpstr;
+    GtkWidget *account_page;
 
-    if ( escape_text )
-        tmpstr = g_markup_printf_escaped ("<b>%s</b>", text );
-    else
-        tmpstr = g_strconcat ( "<b>", text, "</b>", NULL );
-    gtk_label_set_markup ( label, tmpstr );
-
-    g_free ( tmpstr );
+    account_page = grisbi_window_get_widget_by_name ( "account_page" );
+    gtk_notebook_set_current_page ( GTK_NOTEBOOK ( account_page ), page );
 }
 
+
 /**
  * Update headings bar with a new title.
  *
@@ -403,7 +325,7 @@ void gsb_gui_headings_private_update_label_markup ( GtkLabel *label,
  */
 void gsb_gui_headings_update_title ( gchar * title )
 {
-    gsb_gui_headings_private_update_label_markup ( GTK_LABEL(headings_title), title, TRUE );
+    grisbi_window_headings_update_label_markup ( "headings_title", title, TRUE );
 }
 
 /**
@@ -414,7 +336,7 @@ void gsb_gui_headings_update_title ( gchar * title )
  */
 void gsb_gui_headings_update_suffix ( gchar * suffix )
 {
-    gsb_gui_headings_private_update_label_markup ( GTK_LABEL(headings_suffix), suffix, FALSE );
+    grisbi_window_headings_update_label_markup ( "headings_suffix", suffix, FALSE );
 }
 
 
@@ -427,13 +349,19 @@ void gsb_gui_headings_update_suffix ( gchar * suffix )
  */
 gboolean gsb_gui_update_show_headings ( void )
 {
-    if ( etat.show_headings_bar )
+    GrisbiAppConf *conf;
+    GrisbiWindow *window;
+
+    conf = grisbi_app_get_conf ( );
+    window = grisbi_app_get_active_window ( NULL );
+
+    if ( conf->show_headings_bar )
     {
-	gtk_widget_show_all ( headings_eb );
+        gtk_widget_show_all ( grisbi_window_get_headings_eb ( window ) );
     }
     else
     {
-	gtk_widget_hide ( headings_eb );
+        gtk_widget_hide ( grisbi_window_get_headings_eb ( window ) );
     }
     return FALSE;
 }
@@ -447,9 +375,11 @@ gboolean gsb_gui_update_show_headings ( void )
  * */
 void gsb_gui_sensitive_headings ( gboolean sensitive )
 {
-    if (headings_eb)
-	gtk_widget_set_sensitive ( headings_eb,
-				   sensitive );
+    GrisbiWindow *window;
+
+    window = grisbi_app_get_active_window ( NULL );
+
+    gtk_widget_set_sensitive ( grisbi_window_get_headings_eb ( window ), sensitive );
 }
 
 
@@ -460,103 +390,10 @@ void gsb_gui_sensitive_headings ( gboolean sensitive )
  */
 void gsb_gui_notebook_change_page ( GsbGeneralNotebookPages page )
 {
-    gtk_notebook_set_current_page ( GTK_NOTEBOOK ( notebook_general ), page );
-}
-
-
-/**
- * Trigger a callback functions only if button event that triggered it
- * was a simple click.
- *
- */
-gboolean on_simpleclick_event_run ( GtkWidget * button, GdkEvent * button_event,
-                        GCallback cb )
-{
-    if ( button_event -> type == GDK_BUTTON_PRESS )
-    {
-	cb ();
-    }
-
-    return TRUE;
-}
-
-
-/**
- *
- *
- *
- */
-gboolean gsb_gui_hpaned_size_allocate ( GtkWidget *hpaned,
-                        GtkAllocation *allocation,
-                        gpointer null )
-{
-    hpaned_left_width = gtk_paned_get_position ( GTK_PANED ( hpaned ) );
-    
-    return FALSE;
-}
-
-
-/**
- * initialise notebook_general, hpaned_general et vbox_general
- *
- *
- */
-void gsb_gui_init_general_vbox ( void )
-{
-    if ( vbox_general )
-    {
-        gtk_widget_destroy ( vbox_general );
-        vbox_general = NULL;
-    }
-}
-
+    GtkWidget *notebook_general;
 
-/**
- * initialise notebook_general, hpaned_general et vbox_general
- *
- *
- */
-void gsb_gui_init_general_notebook ( void )
-{
-        notebook_general = NULL;
-}
-
-
-/**
- * test l'existence de hpaned_general
- *
- *
- */
-gboolean gsb_gui_is_hpaned_general ( void )
-{
-    if ( hpaned_general && GTK_IS_WIDGET ( hpaned_general ) )
-        return TRUE;
-    else
-        return FALSE;
-}
-
-
-/**
- * renvoie la largeur de la partie gauche du hpaned
- *
- *
- */
-gint gsb_gui_get_hpaned_left_width ( void )
-{
-    return hpaned_left_width;
-}
-
-
-/**
- * fixe la largeur de la partie gauche du hpaned
- *
- *
- */
-gboolean gsb_gui_set_hpaned_left_width ( gint width )
-{
-    hpaned_left_width = width;
-
-    return TRUE;
+    notebook_general = gsb_gui_get_general_notebook ( );
+    gtk_notebook_set_current_page ( GTK_NOTEBOOK ( notebook_general ), page );
 }
 
 
diff --git a/src/fenetre_principale.h b/src/fenetre_principale.h
index e779aee..be4a861 100644
--- a/src/fenetre_principale.h
+++ b/src/fenetre_principale.h
@@ -12,8 +12,6 @@ typedef enum GSB_GENERAL_NOTEBOOK_PAGES {
     GSB_CATEGORIES_PAGE,
     GSB_BUDGETARY_LINES_PAGE,
     GSB_REPORTS_PAGE,
-    /** FIXME (later) : define an api so that plugin register here itself.  */
-    GSB_AQBANKING_PAGE,
 } GsbGeneralNotebookPages;
 
 typedef enum GSB_ACCOUNT_NOTEBOOK_PAGES {
@@ -34,17 +32,14 @@ GtkWidget *gsb_gui_get_general_notebook (void );
 void gsb_gui_headings_update_suffix ( gchar * suffix );
 void gsb_gui_headings_update_title ( gchar * title );
 void gsb_gui_init_general_notebook ( void );
-void gsb_gui_init_general_vbox ( void );
-gint gsb_gui_get_hpaned_left_width ( void );
-gboolean gsb_gui_is_hpaned_general ( void );
 void gsb_gui_notebook_change_page ( GsbGeneralNotebookPages page );
 void gsb_gui_on_account_change_page ( GsbaccountNotebookPages page );
+GtkWidget *gsb_gui_on_account_get_notebook ( void );
 gboolean gsb_gui_on_account_switch_page ( GtkNotebook *notebook,
                         gpointer page,
                         guint page_number,
                         gpointer null );
 void gsb_gui_sensitive_headings ( gboolean sensitive );
-gboolean gsb_gui_set_hpaned_left_width ( gint width );
 void gsb_gui_update_all_toolbars ( void );
 gboolean gsb_gui_update_show_headings ( void );
 /*END_DECLARATION*/
diff --git a/src/grisbi_app.c b/src/grisbi_app.c
new file mode 100644
index 0000000..a47c71e
--- /dev/null
+++ b/src/grisbi_app.c
@@ -0,0 +1,667 @@
+/* ************************************************************************** */
+/*                                                                            */
+/*     Copyright (C)    2001-2008 Cédric Auger (cedric at grisbi.org)            */
+/*          2003-2008 Benjamin Drieu (bdrieu at april.org)                       */
+/*          2009-2012 Pierre Biava (grisbi at pierre.biava.name)                 */
+/*          http://www.grisbi.org                                             */
+/*                                                                            */
+/*  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 */
+/*                                                                            */
+/* ************************************************************************** */
+
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <string.h>
+#include <unistd.h>
+#include <glib/gi18n.h>
+
+/*START_INCLUDE*/
+#include "grisbi_app.h"
+#include "gsb_color.h"
+#include "gsb_dirs.h"
+#include "gsb_file.h"
+#include "gsb_file_config.h"
+#include "gsb_plugins.h"
+#include "import.h"
+#include "traitement_variables.h"
+#include "erreur.h"
+/*END_INCLUDE*/
+
+
+/*START_STATIC*/
+static void grisbi_app_class_init ( GrisbiAppClass *klass );
+static void grisbi_app_finalize ( GObject *object );
+static void grisbi_app_init ( GrisbiApp *app );
+static void grisbi_app_load_accels ( void );
+static void grisbi_app_load_config_var ( GrisbiApp *app );
+static void grisbi_app_load_import_formats ( GrisbiApp *app );
+static void grisbi_app_save_accels ( void );
+static void grisbi_app_set_active_window (GrisbiApp *app,
+                   GrisbiWindow *window);
+static void grisbi_app_weak_notify ( gpointer data,
+                        GObject *where_the_app_was );
+static gboolean grisbi_app_window_delete_event ( GrisbiWindow *window,
+                        GdkEvent *event,
+                        GrisbiApp *app );
+static void grisbi_app_window_destroy ( GrisbiWindow *window,
+                        GrisbiApp *app );
+static gboolean grisbi_app_window_focus_in_event ( GrisbiWindow *window,
+                        GdkEventFocus *event,
+                        GrisbiApp *app );
+static void grisbi_app_window_set_size_and_position ( GrisbiWindow *window );
+/*END_STATIC*/
+
+
+#define GRISBI_APP_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), GRISBI_TYPE_APP, GrisbiAppPrivate))
+
+
+struct _GrisbiAppPrivate
+{
+    GList               *windows;
+    GrisbiWindow        *active_window;
+
+    GrisbiAppConf       *conf;
+    gint                first_use;
+};
+
+
+G_DEFINE_TYPE(GrisbiApp, grisbi_app, G_TYPE_OBJECT)
+
+
+/**
+ * finalise GrisbiApp
+ *
+ * \param object
+ *
+ * \return
+ */
+static void grisbi_app_finalize ( GObject *object )
+{
+    GrisbiApp *app = GRISBI_APP ( object );
+    GrisbiAppConf *conf;
+    devel_debug (NULL);
+
+    /* libération mémoire de la liste des fenêtres */
+    g_list_free ( app->priv->windows );
+
+    /* libération mémoire de la configuration de grisbi */
+    conf = app->priv->conf;
+    g_free ( conf->font_string );
+    g_free ( conf->browser_command );
+    g_strfreev ( conf->tab_noms_derniers_fichiers_ouverts );
+    g_free ( app->priv->conf );
+
+    /* libération de l'objet app */
+    G_OBJECT_CLASS ( grisbi_app_parent_class )->finalize ( object );
+}
+
+
+/**
+ * Initialise GrisbiAppClass
+ *
+ * \param app
+ *
+ * \return
+ */
+static void grisbi_app_class_init ( GrisbiAppClass *klass )
+{
+    GObjectClass *object_class = G_OBJECT_CLASS ( klass );
+
+    object_class->finalize = grisbi_app_finalize;
+
+    g_type_class_add_private ( object_class, sizeof( GrisbiAppPrivate ) );
+}
+
+
+/**
+ * Initialise GrisbiApp
+ *
+ * \param app
+ *
+ * \return
+ */
+static void grisbi_app_init ( GrisbiApp *app )
+{
+    gchar *string;
+
+    app->priv = GRISBI_APP_GET_PRIVATE ( app );
+
+    /* charge les raccourcis claviers */
+    grisbi_app_load_accels ( );
+
+    /* create the icon of grisbi (set in the panel of gnome or other) */
+    string = g_build_filename ( gsb_dirs_get_pixmaps_dir ( ), "grisbi-logo.png", NULL );
+    if ( g_file_test ( string, G_FILE_TEST_EXISTS ) )
+        gtk_window_set_default_icon_from_file ( string, NULL );
+    g_free (string);
+
+    /* initialisation des paramètres de l'application */
+    grisbi_app_load_config_var ( app );
+
+    /* importation des formats de fichiers */
+    grisbi_app_load_import_formats ( app );
+
+    /* return */
+}
+
+
+/**
+ * GWeakNotify callback function
+ *
+ * \param
+ *
+ * \return
+ */
+static void grisbi_app_weak_notify ( gpointer data,
+                        GObject *where_the_app_was )
+{
+    devel_debug (NULL);
+
+    gtk_main_quit ();
+}
+
+
+/**
+ * Returns the GrisbiApp object.
+ *
+ * \param
+ *
+ * \return the GrisbiApp pointer
+ */
+GrisbiApp *grisbi_app_get_default ( void )
+{
+    static GrisbiApp *app = NULL;
+
+    if ( app != NULL )
+        return app;
+
+    app = GRISBI_APP ( g_object_new ( GRISBI_TYPE_APP, NULL ) );
+
+    g_object_add_weak_pointer ( G_OBJECT ( app ), (gpointer) &app );
+    g_object_weak_ref ( G_OBJECT ( app ), grisbi_app_weak_notify, NULL );
+
+    return app;
+}
+
+
+GrisbiWindow *grisbi_app_get_active_window ( GrisbiApp *app )
+{
+    GrisbiApp *tmp_app;
+
+    if ( app == NULL )
+
+        tmp_app = grisbi_app_get_default ( );
+    else
+        tmp_app = app;
+
+    if ( !GRISBI_IS_APP ( tmp_app ) )
+        return NULL;
+
+    if ( !GTK_WIDGET_REALIZED ( GTK_WIDGET ( tmp_app->priv->active_window ) ) )
+        gtk_widget_realize ( GTK_WIDGET ( tmp_app->priv->active_window ) );
+
+    return tmp_app->priv->active_window;
+}
+
+
+/**
+ * Création d'une fenêtre GrisbiWindow.
+ *
+ * \param app
+ * \param screen
+ *
+ * \return une fenêtre pour Grisbi
+ */
+GrisbiWindow *grisbi_app_create_window ( GrisbiApp *app,
+                        GdkScreen *screen )
+{
+    GrisbiWindow *window;
+
+    if ( app->priv->windows == NULL )
+    {
+        window = g_object_new ( GRISBI_TYPE_WINDOW, NULL );
+        grisbi_app_set_active_window ( app, window );
+    }
+    else
+    {
+        window = g_object_new ( GRISBI_TYPE_WINDOW, NULL );
+    }
+
+    app->priv->windows = g_list_prepend ( app->priv->windows, window );
+
+    grisbi_app_window_set_size_and_position ( window );
+
+    g_signal_connect ( window,
+                        "focus_in_event",
+                        G_CALLBACK ( grisbi_app_window_focus_in_event ),
+                        app );
+
+    g_signal_connect ( window,
+                        "delete_event",
+                        G_CALLBACK ( grisbi_app_window_delete_event ),
+                        app );
+
+    g_signal_connect ( window,
+                        "destroy",
+                        G_CALLBACK ( grisbi_app_window_destroy ),
+                        app );
+
+    if ( screen != NULL )
+        gtk_window_set_screen ( GTK_WINDOW ( window ), screen );
+
+    return window;
+}
+
+
+/**
+ * updates active_window when a new toplevel receives focus.
+ *
+ * \param window
+ * \param event
+ * \param app
+ *
+ * \return TRUE
+ * */
+static gboolean grisbi_app_window_focus_in_event ( GrisbiWindow *window,
+                        GdkEventFocus *event,
+                        GrisbiApp *app )
+{
+    devel_debug (NULL);
+
+    if ( !GRISBI_IS_WINDOW ( window ) )
+        return FALSE;
+
+    grisbi_app_set_active_window ( app, window );
+
+    return FALSE;
+}
+
+
+/**
+ * exit the gtk main loop when the main window is destroyed.
+ *
+ * \param window
+ * \param event
+ * \param app
+ *
+ * \return TRUE
+ * */
+static gboolean grisbi_app_window_delete_event ( GrisbiWindow *window,
+                        GdkEvent *event,
+                        GrisbiApp *app )
+{
+    devel_debug (NULL);
+
+    gtk_widget_destroy ( GTK_WIDGET  (window ) );
+
+    return TRUE;
+}
+
+
+/**
+ * exit the gtk main loop when the main window is destroyed.
+ *
+ * \param window
+ * \param app
+ *
+ * \return TRUE
+ * */
+static void grisbi_app_window_destroy ( GrisbiWindow *window,
+                        GrisbiApp *app )
+{
+    devel_debug (NULL);
+
+    app->priv->windows = g_list_remove ( app->priv->windows, window );
+
+    if ( window == app->priv->active_window )
+    {
+        if ( app->priv->windows != NULL )
+            app->priv->active_window = app->priv->windows->data ;
+        else
+            app->priv->active_window = NULL;
+    }
+
+    if ( app->priv->windows == NULL )
+    {
+        grisbi_app_save_accels ( );
+        g_object_unref ( app );
+    }
+}
+
+
+/**
+ * charge les raccourcis claviers.
+ *
+ * \param
+ *
+ * \return
+ */
+static void grisbi_app_load_accels ( void )
+{
+    gchar *accel_filename = NULL;
+    gchar *msg;
+
+    accel_filename = g_build_filename ( gsb_dirs_get_user_config_dir ( ), "grisbi-accels", NULL );
+    if ( accel_filename )
+    {
+        gtk_accel_map_load ( accel_filename );
+        msg = g_strdup_printf ( "Loading keybindings from %s\n", accel_filename );
+        g_free ( accel_filename );
+    }
+    else
+        msg = g_strdup_printf ( "Error loading keyboard shortcuts\n" );
+
+        notice_debug ( msg );
+        g_free ( msg );
+}
+
+
+/**
+ * sauvegarde les raccourcis claviers.
+ *
+ * \param
+ *
+ * \return
+ */
+static void grisbi_app_save_accels ( void )
+{
+    gchar *accel_filename;
+    gchar *msg;
+
+    accel_filename = g_build_filename ( gsb_dirs_get_user_config_dir ( ), "grisbi-accels", NULL );
+    if ( accel_filename )
+    {
+        msg = g_strdup_printf ( "Saving keybindings in %s\n", accel_filename);
+        gtk_accel_map_save ( accel_filename );
+        g_free ( accel_filename );
+    }
+    else
+        msg = g_strdup_printf ( "Error saving keyboard shortcuts\n" );
+
+        notice_debug ( msg );
+        g_free ( msg );
+}
+
+
+/**
+ * set active window.
+ *
+ * \param app
+ * \param window
+ *
+ * \return
+ */
+static void grisbi_app_set_active_window (GrisbiApp *app,
+                   GrisbiWindow *window)
+{
+    app->priv->active_window = window;
+}
+
+
+/**
+ * get_first_use.
+ *
+ * \param app
+ *
+ * \return TRUE if first use
+ */
+gboolean grisbi_app_get_first_use ( GrisbiApp *app )
+{
+    return app->priv->first_use;
+
+}
+
+ 
+/**
+ * initialises les paramètres de Grisbi.
+ *
+ * \param app
+ *
+ * \return TRUE if first use
+ */
+static void grisbi_app_load_config_var ( GrisbiApp *app )
+{
+    /* initialisation de la variable conf */
+    app->priv->conf = g_malloc0 ( sizeof ( GrisbiAppConf ) );
+
+    /* initialisation des couleurs par défaut */
+    gsb_color_initialise_couleurs_par_defaut ( );
+
+    /* chargement des paramètres communs */
+    app->priv->first_use = !gsb_file_config_load_config ( app->priv->conf );
+
+    /* à reprendre autrement */
+    init_variables ();
+
+}
+
+ 
+/**
+ * initialises les formats de fichiers pour l'importation.
+ *
+ * \param app
+ *
+ * \return TRUE if first use
+ */
+static void grisbi_app_load_import_formats ( GrisbiApp *app )
+{
+    /* importation des formats de fichiers */
+#ifdef HAVE_PLUGINS
+    gsb_plugins_scan_dir ( gsb_dirs_get_plugins_dir ( ) );
+#endif
+    register_import_formats ();
+}
+
+ 
+/**
+ * set size and position of the main window of grisbi.
+ *
+ * \param window
+ *
+ * \return
+ *
+ * */
+static void grisbi_app_window_set_size_and_position ( GrisbiWindow *window )
+{
+    GrisbiApp *app;
+    GrisbiAppConf *conf;
+
+    app = grisbi_app_get_default ( );
+    conf = app->priv->conf;
+
+    /* set the size of the window */
+    if ( conf->main_width && conf->main_height )
+        gtk_window_set_default_size ( GTK_WINDOW ( window ), conf->main_width, conf->main_height );
+    else
+        gtk_window_set_default_size ( GTK_WINDOW ( window ), 900, 600 );
+
+    /* display window at position */
+    gtk_window_move ( GTK_WINDOW ( window ), conf->root_x, conf->root_y );
+
+    /* set the full screen if necessary */
+    if ( conf->full_screen )
+        gtk_window_fullscreen ( GTK_WINDOW ( window ) );
+
+    /* put up the screen if necessary */
+    if ( conf->maximize_screen )
+        gtk_window_maximize ( GTK_WINDOW ( window ) );
+}
+
+
+/**
+ * retourne la structure de configuration de Grisbi
+ *
+ * \param app
+ *
+ * \return conf
+ *
+ **/
+GrisbiAppConf *grisbi_app_get_conf ( void )
+{
+    GrisbiApp *app;
+
+    app = grisbi_app_get_default ( );
+    return app->priv->conf;
+}
+
+
+/**
+ * close grisbi by destroying the main window
+ * This function is called by the Quit menu option.
+ *
+ * \param
+ *
+ * \return FALSE
+ * */
+gboolean grisbi_app_quit ( void )
+{
+    GrisbiApp *app;
+    GrisbiWindow *window;
+    GrisbiAppConf *conf;
+
+    devel_debug (NULL);
+
+    app = grisbi_app_get_default ( );
+    conf = grisbi_app_get_conf ( );
+
+    /* on récupère la fenetre active */
+    window = grisbi_app_get_active_window ( app );
+
+    /* sauvegarde la position de la fenetre principale */
+    if ( conf->full_screen == 0 && conf->maximize_screen == 0 )
+        gtk_window_get_position ( GTK_WINDOW ( window ), &conf->root_x, &conf->root_y );
+
+    /* sauvegarde de la taille de la fenêtre si nécessaire */
+    if ( conf->full_screen == 0 && conf->maximize_screen == 0 )
+        gtk_window_get_size ( GTK_WINDOW ( window ), &conf->main_width, &conf->main_height );
+
+    gsb_file_config_save_config ( conf );
+
+    if ( gsb_file_close ( ) )
+        gtk_widget_destroy ( GTK_WIDGET ( window ) );
+
+    /* clean finish of the debug file */
+    if ( etat.debug_mode )
+        gsb_debug_finish_log ( );
+
+    return FALSE;
+}
+
+
+/**
+ * close the file
+ * if no file loaded or no change, directly return TRUE
+ *
+ * \param
+ *
+ * \return FALSE if problem, TRUE if ok
+ * */
+gboolean grisbi_app_close_file ( void )
+{
+    GrisbiApp *app;
+    GrisbiWindow *main_window;
+    GrisbiAppConf *conf;
+
+    devel_debug (NULL);
+
+    app = grisbi_app_get_default ( );
+    conf = grisbi_app_get_conf ( );
+
+    /* on récupère la fenetre active */
+    main_window = grisbi_app_get_active_window ( app );
+
+
+
+
+
+    return TRUE;
+}
+
+
+/**
+ * retourne le nom du fichier de la fenêtre active
+ *
+ * \param
+ *
+ * \return
+ **/
+const gchar *grisbi_app_get_active_filename ( void )
+{
+    GrisbiApp *app;
+    GrisbiWindow *window;
+
+    app = grisbi_app_get_default ( );
+    window = grisbi_app_get_active_window ( app );
+
+    return grisbi_window_get_filename ( window );
+}
+
+
+/**
+ * définit le nom du fichier associé à la fenêtre
+ *
+ * \param filename
+ *
+ * \return TRUE
+ **/
+gboolean grisbi_app_set_active_filename ( const gchar *filename )
+{
+    GrisbiApp *app;
+    GrisbiWindow *window;
+
+    app = grisbi_app_get_default ( );
+    window = grisbi_app_get_active_window ( app );
+
+    grisbi_window_set_filename ( window, filename );
+
+    return TRUE;
+}
+
+
+/**
+ * retourne le ui_manager pour la gestion des menus et barres d'outils
+ *
+ * \param
+ *
+ * \return
+ **/
+GtkUIManager *grisbi_app_get_active_ui_manager ( void )
+{
+    GrisbiApp *app;
+    GrisbiWindow *window;
+    GtkUIManager *ui_manager;
+
+    app = grisbi_app_get_default ( );
+    window = grisbi_app_get_active_window ( app );
+
+    ui_manager = grisbi_window_get_ui_manager ( window );
+
+    return ui_manager;
+}
+
+
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
+/* Local Variables: */
+/* c-basic-offset: 4 */
+/* End: */
diff --git a/src/grisbi_app.h b/src/grisbi_app.h
new file mode 100644
index 0000000..1e4e6a3
--- /dev/null
+++ b/src/grisbi_app.h
@@ -0,0 +1,66 @@
+#ifndef __GRISBI_APP_H__
+#define __GRISBI_APP_H__
+
+#include <gtk/gtk.h>
+
+/*START_INCLUDE*/
+#include "grisbi_window.h"
+#include "structures.h"
+/*END_INCLUDE*/
+
+G_BEGIN_DECLS
+
+/*
+ * Type checking and casting macros
+ */
+#define GRISBI_TYPE_APP              (grisbi_app_get_type())
+#define GRISBI_APP(obj)              (G_TYPE_CHECK_INSTANCE_CAST((obj), GRISBI_TYPE_APP, GrisbiApp))
+#define GRISBI_APP_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST((klass), GRISBI_TYPE_APP, GrisbiAppClass))
+#define GRISBI_IS_APP(obj)           (G_TYPE_CHECK_INSTANCE_TYPE((obj), GRISBI_TYPE_APP))
+#define GRISBI_IS_APP_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), GRISBI_TYPE_APP))
+#define GRISBI_APP_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS((obj), GRISBI_TYPE_APP, GrisbitAppClass))
+
+/* Private structure type */
+typedef struct _GrisbiAppPrivate GrisbiAppPrivate;
+
+
+/* Main object structure */
+typedef struct _GrisbiApp GrisbiApp;
+
+struct _GrisbiApp
+{
+    GObject object;
+
+    /*< private > */
+    GrisbiAppPrivate *priv;
+};
+
+/* Class definition */
+typedef struct _GrisbiAppClass GrisbiAppClass;
+
+struct _GrisbiAppClass
+{
+    GObjectClass parent_class;
+};
+
+
+/* START_DECLARATION */
+GType grisbi_app_get_type ( void ) G_GNUC_CONST;
+
+gboolean grisbi_app_close_file ( void );
+GrisbiWindow *grisbi_app_create_window ( GrisbiApp *app,
+                        GdkScreen *screen );
+const gchar *grisbi_app_get_active_filename ( void );
+GtkUIManager *grisbi_app_get_active_ui_manager ( void );
+GrisbiWindow *grisbi_app_get_active_window ( GrisbiApp *app );
+GrisbiAppConf *grisbi_app_get_conf ( void );
+GrisbiApp *grisbi_app_get_default ( void );
+gboolean grisbi_app_get_first_use ( GrisbiApp *app );
+const GList	*grisbi_app_get_windows ( GrisbiApp *app );
+gboolean grisbi_app_quit ( void );
+gboolean grisbi_app_set_active_filename ( const gchar *filename );
+/* END_DECLARATION */
+
+G_END_DECLS
+
+#endif  /* __GRISBI_APP_H__ */
diff --git a/src/grisbi_osx.c b/src/grisbi_osx.c
index 16bef69..7f3f12a 100644
--- a/src/grisbi_osx.c
+++ b/src/grisbi_osx.c
@@ -239,7 +239,7 @@ GtkWidget *grisbi_osx_init_menus ( GtkWidget *window, GtkWidget *menubar )
 
     theApp = g_object_new ( GTK_TYPE_OSX_APPLICATION, NULL );
 
-    ui_manager = gsb_menu_get_ui_manager ( );
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
     items = menu_items_new ( );
 
     items->open_item = gtk_ui_manager_get_widget ( ui_manager, "/menubar/FileMenu/Open" );
diff --git a/src/grisbi_ui.h b/src/grisbi_ui.h
new file mode 100644
index 0000000..ddb0da6
--- /dev/null
+++ b/src/grisbi_ui.h
@@ -0,0 +1,219 @@
+#ifndef __GRISBI_UI_H__
+#define __GRISBI_UI_H__
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <gtk/gtk.h>
+
+/*START_INCLUDE*/
+#include "gsb_debug.h"
+#include "export.h"
+#include "file_obfuscate.h"
+#include "file_obfuscate_qif.h"
+#include "grisbi_app.h"
+#include "gsb_account.h"
+#include "gsb_assistant_account.h"
+#include "gsb_assistant_archive.h"
+#include "gsb_assistant_archive_export.h"
+#include "gsb_file.h"
+#include "gsb_scheduler_list.h"
+#include "gsb_transactions_list.h"
+#include "help.h"
+#include "import.h"
+#include "main.h"
+#include "menu.h"
+#include "parametres.h"
+#include "tip.h"
+#include "erreur.h"
+/*END_INCLUDE*/
+
+
+static const GtkActionEntry always_sensitive_entries[] =
+{
+/* name, stock_id, label, accelerator, tooltip, callback */
+    /* File menu */
+    {"FileMenuAction", NULL, N_("_File"), NULL, NULL, NULL},
+#ifdef GTKOSXAPPLICATION
+    { "NewAction", GTK_STOCK_NEW, N_("_New account file..."), "<Meta>N", NULL,
+     G_CALLBACK ( gsb_file_new ) },
+    {"OpenAction",  GTK_STOCK_OPEN, N_("_Open..."), "<Meta>O", NULL,
+     G_CALLBACK ( gsb_file_open_menu ) },
+    {"RecentFilesAction", NULL, N_("_Recently opened files"), NULL, NULL, NULL },
+     G_CALLBACK ( gsb_file_save ) },
+#else
+    { "NewAction", GTK_STOCK_NEW, N_("_New account file..."), NULL, NULL,
+     G_CALLBACK ( gsb_file_new ) },
+    {"OpenAction",  GTK_STOCK_OPEN, N_("_Open..."), NULL, NULL,
+     G_CALLBACK ( gsb_file_open_menu ) },
+    {"RecentFilesAction", NULL, N_("_Recently opened files"), NULL, NULL, NULL },
+#endif
+    {"ImportFileAction", GTK_STOCK_CONVERT,  N_("_Import file..."), NULL, NULL,
+     G_CALLBACK ( importer_fichier ) },
+    {"ObfuscateQifAction", GTK_STOCK_FIND, N_("_Obfuscate QIF file..."), "", NULL,
+     G_CALLBACK ( file_obfuscate_qif_run ) },
+    {"QuitAction", GTK_STOCK_QUIT, N_("_Quit"), NULL, NULL,
+     G_CALLBACK ( grisbi_app_quit ) },
+
+    /* Edit menu */
+    {"EditMenuAction", NULL, N_("_Edit"), NULL, NULL, NULL },
+
+    /* View menu */
+    {"ViewMenuAction", NULL, N_("_View"), NULL, NULL, NULL },
+
+    /* Help menu */
+    {"HelpMenuAction", NULL, N_("_Help"), NULL, NULL, NULL },
+#ifdef GTKOSXAPPLICATION
+    {"ManualAction", GTK_STOCK_HELP, N_("_Manual"), "<Meta>H", NULL,
+     G_CALLBACK ( help_manual ) },
+#else
+    {"ManualAction", GTK_STOCK_HELP, N_("_Manual"), NULL, NULL,
+     G_CALLBACK ( help_manual ) },
+#endif
+    {"QuickStartAction", NULL, N_("_Quick start"), NULL, NULL,
+     G_CALLBACK ( help_quick_start ) },
+    {"TranslationAction", NULL, N_("_Translation"), NULL, NULL,
+     G_CALLBACK ( help_translation ) },
+    {"AboutAction", GTK_STOCK_ABOUT, N_("_About Grisbi..."), NULL, NULL,
+     G_CALLBACK ( a_propos ) },
+    {"GrisbiWebsiteAction", NULL, N_("_Grisbi website"), NULL, NULL,
+     G_CALLBACK ( help_website ) },
+    {"ReportBugAction", NULL, N_("_Report a bug"), NULL, NULL,
+     G_CALLBACK ( help_bugreport ) },
+    {"TipAction", GTK_STOCK_DIALOG_INFO, N_("_Tip of the day"), NULL, NULL,
+     G_CALLBACK ( force_display_tip ) },
+};
+
+static GtkToggleActionEntry show_full_screen_entrie[] =
+{
+/* Name, stock_id, label, accelerator, tooltip, callback, is_active */
+    {"ShowFullScreenAction", NULL, N_("Full screen mode"), NULL, NULL,
+     G_CALLBACK ( gsb_menu_full_screen_mode ), 0 },
+};
+
+static const GtkActionEntry division_sensitive_entries[] =
+{
+    {"SaveAsAction", GTK_STOCK_SAVE_AS,  N_("_Save as..."), NULL, NULL,
+     G_CALLBACK ( gsb_file_save_as ) },
+    {"FileRevertAction", GTK_STOCK_REVERT_TO_SAVED, NULL, NULL,
+     N_("Revert to a saved version of the file..."),
+     G_CALLBACK ( gsb_file_save_as ) },
+    { "ExportFileAction", GTK_STOCK_CONVERT, N_("_Export accounts as QIF/CSV file..."), NULL, NULL,
+     G_CALLBACK ( export_accounts ) },
+    {"CreateArchiveAction", GTK_STOCK_CLEAR, N_("Archive transactions..."), NULL, NULL,
+     G_CALLBACK ( gsb_assistant_archive_run_by_menu ) },
+    {"ExportArchiveAction", GTK_STOCK_HARDDISK, N_("_Export an archive as GSB/QIF/CSV file..."), NULL, NULL,
+     G_CALLBACK ( gsb_assistant_archive_export_run ) },
+    {"DebugFileAction", GTK_STOCK_FIND, N_("_Debug account file..."), "", NULL,
+     G_CALLBACK ( gsb_debug ) },
+    {"ObfuscateAction", GTK_STOCK_FIND, N_("_Obfuscate account file..."), "", NULL,
+     G_CALLBACK ( file_obfuscate_run ) },
+#ifdef GTKOSXAPPLICATION
+    {"CloseAction", GTK_STOCK_CLOSE, NULL, "<Meta>W", NULL,
+     G_CALLBACK ( grisbi_app_close_file ) },
+#else
+    {"CloseAction", GTK_STOCK_CLOSE, NULL, NULL, NULL,
+     G_CALLBACK ( grisbi_app_close_file ) },
+#endif
+    {"NewAccountAction", GTK_STOCK_NEW, N_("_New account"), "", NULL,
+     G_CALLBACK ( gsb_assistant_account_run ) },
+    {"PrefsAction", GTK_STOCK_PREFERENCES, N_("_Preferences"), NULL, NULL,
+     G_CALLBACK ( preferences ) },
+};
+
+static const GtkActionEntry file_save_entries[] =
+{
+#ifdef GTKOSXAPPLICATION
+    {"SaveAction", GTK_STOCK_SAVE, N_("_Save"), "<Meta>S", NULL,
+     G_CALLBACK ( gsb_file_save ) },
+#else
+    {"SaveAction", GTK_STOCK_SAVE, N_("_Save"), NULL, NULL,
+     G_CALLBACK ( gsb_file_save ) },
+#endif
+};
+
+static const GtkActionEntry file_recent_files_entrie[] =
+{
+    {"RecentFilesAction", NULL, N_("_Recently opened files"), NULL, NULL, NULL },
+};
+
+static GtkToggleActionEntry file_debug_toggle_entrie[] =
+{
+/* Name, stock_id, label, accelerator, tooltip, callback, is_active */
+    {"DebugModeAction", NULL, N_("Debug mode"), NULL, NULL,
+     G_CALLBACK ( gsb_debug_start_log ), 0 },
+};
+
+static const GtkActionEntry edit_sensitive_entries[] =
+{
+     {"EditTransactionAction", GTK_STOCK_EDIT, N_("_Edit transaction"), "", NULL,
+     G_CALLBACK ( gsb_transactions_list_edit_current_transaction ) },
+    {"NewTransactionAction", GTK_STOCK_NEW, N_("_New transaction"), "", NULL,
+     G_CALLBACK ( new_transaction ) },
+    {"MoveToAnotherAccountAction", NULL, N_("_Move transaction to another account"), NULL, NULL, NULL },
+    {"RemoveAccountAction", GTK_STOCK_DELETE, N_("_Remove current account"), "", NULL,
+     G_CALLBACK ( gsb_account_delete ) },
+};
+
+static const GtkActionEntry edit_transaction_entrie[] =
+{
+     {"EditTransactionAction", GTK_STOCK_EDIT, N_("_Edit transaction"), "", NULL,
+     G_CALLBACK ( gsb_transactions_list_edit_current_transaction ) },
+};
+
+static const GtkActionEntry edit_transactions_entries[] =
+{
+    {"RemoveTransactionAction", GTK_STOCK_DELETE, N_("_Remove transaction"), "", NULL,
+     G_CALLBACK ( remove_transaction ) },
+    {"TemplateTransactionAction", GTK_STOCK_COPY, N_("Use selected transaction as a template"), "", NULL,
+     G_CALLBACK ( gsb_transactions_list_clone_template ) },
+    {"CloneTransactionAction", GTK_STOCK_COPY, N_("_Clone transaction"), "", NULL,
+     G_CALLBACK ( clone_selected_transaction ) },
+    {"ConvertToScheduledAction", GTK_STOCK_CONVERT, N_("Convert to _scheduled transaction"), NULL, NULL,
+     G_CALLBACK ( schedule_selected_transaction ) },
+};
+
+
+static const GtkActionEntry view_init_width_col_entrie[] =
+{
+    {"InitwidthColAction", NULL, N_("Reset the column width"), NULL, NULL,
+     G_CALLBACK ( gsb_menu_reinit_largeur_col_menu ) },
+
+};
+
+static GtkRadioActionEntry view_radio_entries[] =
+{
+    /* Name, StockID, Label, Accelerator, Tooltip, Value */
+    {"ShowOneLineAction", NULL, N_("Show _one line per transaction"), NULL, NULL,
+     ONE_LINE_PER_TRANSACTION },
+    {"ShowTwoLinesAction", NULL, N_("Show _two lines per transaction"), NULL, NULL,
+     TWO_LINES_PER_TRANSACTION },
+    {"ShowThreeLinesAction", NULL, N_("Show _three lines per transaction"), NULL, NULL,
+     THREE_LINES_PER_TRANSACTION },
+    {"ShowFourLinesAction", NULL, N_("Show _four lines per transaction"), NULL, NULL,
+     FOUR_LINES_PER_TRANSACTION },
+};
+
+static GtkToggleActionEntry view_toggle_entries[] =
+{
+/* Name, stock_id, label, accelerator, tooltip, callback, is_active */
+    {"ShowTransactionFormAction", NULL, N_("Show transaction _form"), NULL, NULL,
+     G_CALLBACK ( gsb_gui_toggle_show_form ), 0 },
+#ifdef GTKOSXAPPLICATION
+    {"ShowReconciledAction", NULL, N_("Show _reconciled"), "<Meta>R", NULL,
+     G_CALLBACK ( gsb_gui_toggle_show_reconciled ), 0 },
+    {"ShowArchivedAction", NULL, N_("Show _lines archives"), "<Meta>L", NULL,
+     G_CALLBACK ( gsb_gui_toggle_show_archived ), 0 },
+#else
+    {"ShowReconciledAction", NULL, N_("Show _reconciled"), "<Alt>R", NULL,
+     G_CALLBACK ( gsb_gui_toggle_show_reconciled ), 0 },
+    {"ShowArchivedAction", NULL, N_("Show _lines archives"), "<Alt>L", NULL,
+     G_CALLBACK ( gsb_gui_toggle_show_archived ), 0 },
+#endif
+    {"ShowClosedAction", NULL, N_("Show _closed accounts"), NULL, NULL,
+     G_CALLBACK ( gsb_gui_toggle_show_closed_accounts ),0 }
+};
+
+
+#endif  /* __GRISBI_UI_H__  */
diff --git a/src/grisbi_window.c b/src/grisbi_window.c
new file mode 100644
index 0000000..25ad706
--- /dev/null
+++ b/src/grisbi_window.c
@@ -0,0 +1,838 @@
+/* ************************************************************************** */
+/*                                                                            */
+/*     Copyright (C)    2001-2008 Cédric Auger (cedric at grisbi.org)            */
+/*          2003-2008 Benjamin Drieu (bdrieu at april.org)                       */
+/*          2009-2012 Pierre Biava (grisbi at pierre.biava.name)                 */
+/*          http://www.grisbi.org                                             */
+/*                                                                            */
+/*  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 */
+/*                                                                            */
+/* ************************************************************************** */
+
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <string.h>
+#include <unistd.h>
+
+#include <glib/gi18n.h>
+#include <gdk/gdkkeysyms.h>
+
+/*START_INCLUDE*/
+#include "grisbi_window.h"
+#include "grisbi_app.h"
+#include "grisbi_ui.h"
+#include "gsb_dirs.h"
+#include "menu.h"
+#include "navigation.h"
+#include "structures.h"
+#include "utils_gtkbuilder.h"
+/*END_INCLUDE*/
+
+
+/*START_STATIC*/
+static GtkActionGroup *grisbi_window_add_recents_action_group ( GtkUIManager *ui_manager,
+                        GrisbiAppConf *conf );
+static void grisbi_window_add_recents_sub_menu ( GtkUIManager *ui_manager,
+                        gint nb_derniers_fichiers_ouverts );
+static void grisbi_window_init_menus ( GrisbiWindow *window );
+static gboolean grisbi_window_initialise_builder ( void );
+static GtkWidget *grisbi_window_new_headings_eb ( GrisbiWindow *window );
+static GtkWidget *grisbi_window_new_statusbar ( GrisbiWindow *window );
+/*END_STATIC*/
+
+
+#define GRISBI_WINDOW_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), GRISBI_TYPE_WINDOW, GrisbiWindowPrivate))
+
+static GtkBuilder *grisbi_window_builder = NULL;
+
+struct _GrisbiWindowPrivate
+{
+    /* Vbox générale */
+    GtkWidget       *main_box;
+
+    /* nom du fichier associé à la fenêtre */
+    gchar           *filename;
+
+    /* titre de la fenêtre */
+    gchar           *title;
+
+    /* Menus et barres d'outils */
+    GtkWidget       *menu_bar;
+    GtkUIManager    *ui_manager;
+    GtkActionGroup  *always_sensitive_action_group;
+    GtkActionGroup  *division_sensitive_action_group;
+    GtkActionGroup  *file_save_action_group;
+    GtkActionGroup  *file_recent_files_action_group;
+    GtkActionGroup  *file_debug_toggle_action_group;
+    GtkActionGroup  *edit_sensitive_action_group;
+    GtkActionGroup  *edit_transactions_action_group;
+    GtkActionGroup  *view_sensitive_action_group;
+
+    /* statusbar */
+    GtkWidget       *statusbar;
+    guint           context_id;
+    guint           message_id;
+
+    /* headings_bar */
+    GtkWidget       *headings_eb;
+};
+
+
+G_DEFINE_TYPE(GrisbiWindow, grisbi_window, GTK_TYPE_WINDOW)
+
+
+static void grisbi_window_realized ( GtkWidget *window,
+                        gpointer  *data )
+{
+
+    /* return */
+}
+
+
+static void grisbi_window_finalize ( GObject *object )
+{
+    GrisbiWindow *window;
+
+    devel_debug (NULL);
+
+    window = GRISBI_WINDOW ( object );
+
+    g_free ( window->priv->title );
+    g_free ( window->priv->filename );
+
+    G_OBJECT_CLASS ( grisbi_window_parent_class )->finalize ( object );
+}
+
+
+static gboolean grisbi_window_key_press_event ( GtkWidget *widget,
+                        GdkEventKey *event,
+                        gpointer data )
+{
+    GrisbiAppConf *conf;
+
+    switch ( event -> keyval )
+    {
+        case GDK_KEY_F11 :
+            conf = grisbi_app_get_conf ( );
+            if ( conf->full_screen )
+                gtk_window_unfullscreen ( GTK_WINDOW ( widget ) );
+            else
+                gtk_window_fullscreen ( GTK_WINDOW ( widget ) );
+        break;
+    }
+
+    return FALSE;
+}
+
+
+static gboolean grisbi_window_state_event ( GtkWidget *widget,
+                        GdkEventWindowState *event )
+{
+    GrisbiWindow *window = GRISBI_WINDOW ( widget );
+    GrisbiAppConf *conf;
+    gboolean show;
+
+    if ( event->changed_mask & GDK_WINDOW_STATE_MAXIMIZED )
+    {
+        show = !( event->new_window_state & GDK_WINDOW_STATE_MAXIMIZED );
+
+        gtk_statusbar_set_has_resize_grip ( GTK_STATUSBAR ( window->priv->statusbar ), show );
+        conf = grisbi_app_get_conf ( );
+        conf->maximize_screen = !show;
+    }
+    else if ( event->changed_mask & GDK_WINDOW_STATE_FULLSCREEN )
+    {
+        show = !( event->new_window_state & GDK_WINDOW_STATE_FULLSCREEN );
+
+        gtk_statusbar_set_has_resize_grip ( GTK_STATUSBAR ( window->priv->statusbar ), show );
+        conf = grisbi_app_get_conf ( );
+        conf->full_screen = !show;
+    }
+
+    return FALSE;
+}
+
+
+static void grisbi_window_class_init ( GrisbiWindowClass *klass )
+{
+    GObjectClass *object_class = G_OBJECT_CLASS ( klass );
+    GtkWidgetClass *widget_class = GTK_WIDGET_CLASS ( klass );
+
+    object_class->finalize = grisbi_window_finalize;
+    widget_class->window_state_event = grisbi_window_state_event;
+
+    g_type_class_add_private ( object_class, sizeof ( GrisbiWindowPrivate ) );
+}
+
+
+static void grisbi_window_init ( GrisbiWindow *window )
+{
+    GtkWidget *main_box;
+    GtkWidget *statusbar;
+    GtkWidget *headings_eb;
+
+    window->priv = GRISBI_WINDOW_GET_PRIVATE ( window );
+
+    if ( !grisbi_window_initialise_builder ( ) )
+        return;
+
+    /* Création de la fenêtre de dialogue pour le graph */
+    main_box = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, "main_vbox" ) );
+
+    window->priv->main_box = main_box;
+
+    gtk_container_add ( GTK_CONTAINER ( window ), main_box );
+    gtk_widget_show ( main_box );
+
+    /* create the menus */
+    grisbi_window_init_menus ( window );
+
+    /* create the headings eb */
+    headings_eb = grisbi_window_new_headings_eb ( window );
+    gtk_box_pack_start ( GTK_BOX ( main_box ), headings_eb, FALSE, FALSE, 0 );
+
+    /* create the statusbar */
+    statusbar = grisbi_window_new_statusbar ( window );
+    gtk_box_pack_end ( GTK_BOX ( main_box ), statusbar, FALSE, FALSE, 0 );
+
+    /* set the signals */
+    g_signal_connect ( G_OBJECT ( window ),
+                        "realize",
+                        G_CALLBACK ( grisbi_window_realized ),
+                        NULL );
+
+    g_signal_connect ( G_OBJECT ( window ),
+                        "key-press-event",
+                        G_CALLBACK ( grisbi_window_key_press_event ),
+                        NULL );
+}
+
+
+/* MENUS */
+static void grisbi_window_init_menus ( GrisbiWindow *window )
+{
+    GrisbiAppConf *conf;
+    GtkUIManager *ui_manager;
+    GtkActionGroup *actions;
+    GError *error = NULL;
+    gchar *ui_file;
+
+    ui_manager = gtk_ui_manager_new ( );
+    window->priv->ui_manager = ui_manager;
+
+    conf = grisbi_app_get_conf ( );
+
+    /* actions toujours accessibles (sensitives) */
+    actions = gtk_action_group_new ( "AlwaysSensitiveActions" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        always_sensitive_entries,
+                        G_N_ELEMENTS ( always_sensitive_entries ),
+                        window );
+
+    /* ShowFullScreenAction sensitive */
+    gtk_action_group_add_toggle_actions ( actions,
+                        show_full_screen_entrie,
+                        G_N_ELEMENTS ( show_full_screen_entrie ),
+                        NULL );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->always_sensitive_action_group = actions;
+
+    /* Actions pour la gestion des fichiers sensitives */
+    actions = gtk_action_group_new ( "DivisionSensitiveActions" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        division_sensitive_entries,
+                        G_N_ELEMENTS ( division_sensitive_entries ),
+                        window );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->division_sensitive_action_group = actions;
+    gtk_action_group_set_sensitive ( actions, FALSE );
+
+    /* Actions pour la gestion des fichiers sensitives */
+    actions = gtk_action_group_new ( "FileSaveAction" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        file_save_entries,
+                        G_N_ELEMENTS ( file_save_entries ),
+                        window );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->file_save_action_group = actions;
+    gtk_action_group_set_sensitive ( actions, FALSE );
+
+    /* Actions pour la gestion des fichiers récents */
+    actions = gtk_action_group_new ( "FileRecentFilesAction" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        file_recent_files_entrie,
+                        G_N_ELEMENTS ( file_recent_files_entrie ),
+                        window );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    gtk_action_group_set_sensitive ( actions, TRUE );
+
+    /* DebugToggle_Action sensitive */
+    actions = gtk_action_group_new ( "FileDebugToggleAction" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_toggle_actions ( actions,
+                        file_debug_toggle_entrie,
+                        G_N_ELEMENTS ( file_debug_toggle_entrie ),
+                        NULL );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->file_debug_toggle_action_group = actions;
+    gtk_action_group_set_sensitive ( actions, FALSE );
+
+    /* actions du menu Edit sensitives */
+    actions = gtk_action_group_new ( "EditSensitiveActions" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        edit_sensitive_entries,
+                        G_N_ELEMENTS ( edit_sensitive_entries ),
+                        window );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->edit_sensitive_action_group = actions;
+    gtk_action_group_set_sensitive ( actions, FALSE );
+
+    /* actions propres aux transactions */
+    actions = gtk_action_group_new ( "EditTransactionsActions" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        edit_transactions_entries,
+                        G_N_ELEMENTS ( edit_transactions_entries ),
+                        window );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->edit_transactions_action_group = actions;
+    gtk_action_group_set_sensitive ( actions, FALSE );
+
+    /* actions du menu View sensitives */
+    actions = gtk_action_group_new ( "ViewSensitiveActions" );
+    gtk_action_group_set_translation_domain ( actions, NULL );
+    gtk_action_group_add_actions (actions,
+                        view_init_width_col_entrie,
+                        G_N_ELEMENTS ( view_init_width_col_entrie ),
+                        window );
+
+    gtk_action_group_add_radio_actions ( actions,
+                        view_radio_entries,
+                        G_N_ELEMENTS ( view_radio_entries ),
+                        -1,
+                        G_CALLBACK ( gsb_gui_toggle_line_view_mode ),
+                        NULL );
+
+    gtk_action_group_add_toggle_actions ( actions,
+                        view_toggle_entries,
+                        G_N_ELEMENTS ( view_toggle_entries ),
+                        NULL );
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
+    g_object_unref ( actions );
+    window->priv->view_sensitive_action_group = actions;
+    gtk_action_group_set_sensitive ( actions, FALSE );
+
+    /* now load the UI definition */
+    ui_file = g_build_filename ( gsb_dirs_get_ui_dir ( ), "grisbi_ui.xml", NULL );
+    gtk_ui_manager_add_ui_from_file ( ui_manager, ui_file, &error );
+    if ( error != NULL )
+    {
+        g_warning ( "Could not merge %s: %s", ui_file, error->message );
+        g_error_free ( error );
+    }
+    g_free ( ui_file );
+
+    /* on ajoute les derniers fichiers utilisés */
+    if ( conf->nb_derniers_fichiers_ouverts && conf->nb_max_derniers_fichiers_ouverts )
+    {
+        actions = grisbi_window_add_recents_action_group ( ui_manager, conf );
+        grisbi_window_add_recents_sub_menu ( ui_manager, conf->nb_derniers_fichiers_ouverts );
+        window->priv->file_recent_files_action_group = actions;
+    }
+
+#ifndef GTKOSXAPPLICATION
+    gtk_window_add_accel_group ( GTK_WINDOW ( window ),
+                        gtk_ui_manager_get_accel_group ( ui_manager ) );
+#endif /* !GTKOSXAPPLICATION */
+
+    window->priv->menu_bar = gtk_ui_manager_get_widget ( ui_manager, "/menubar" );
+    gtk_box_pack_start ( GTK_BOX ( window->priv->main_box ),  window->priv->menu_bar, FALSE, TRUE, 0 );
+
+    /* return */
+}
+
+
+/**
+ * return ui_manager
+ *
+ * \param GrisbiWindow
+ *
+ * \return ui_manager
+**/
+GtkUIManager *grisbi_window_get_ui_manager ( GrisbiWindow *window )
+{
+    return window->priv->ui_manager;
+}
+
+
+GtkActionGroup *grisbi_window_get_action_group ( GrisbiWindow *window,
+                        const gchar *action_group_name )
+{
+    if ( strcmp ( action_group_name, "AlwaysSensitiveActions" ) == 0 )
+        return window->priv->edit_sensitive_action_group;
+    else if ( strcmp ( action_group_name, "DivisionSensitiveActions" ) == 0 )
+        return window->priv->division_sensitive_action_group;
+    else if ( strcmp ( action_group_name, "FileRecentFilesAction" ) == 0 )
+        return window->priv->file_recent_files_action_group;
+    else if ( strcmp ( action_group_name, "FileDebugToggleAction" ) == 0 )
+        return window->priv->file_debug_toggle_action_group;
+    else if ( strcmp ( action_group_name, "EditSensitiveActions" ) == 0 )
+        return window->priv->edit_sensitive_action_group;
+    else if ( strcmp ( action_group_name, "EditTransactionsActions" ) == 0 )
+        return window->priv->edit_transactions_action_group;
+    else if ( strcmp ( action_group_name, "ViewSensitiveActions" ) == 0 )
+        return window->priv->view_sensitive_action_group;
+    else
+        return NULL;
+}
+
+
+/**
+ * Add menu items to the action_group "FileRecentFilesGroupAction"
+ *
+ * \param
+ *
+ * \return
+ **/
+static GtkActionGroup *grisbi_window_add_recents_action_group ( GtkUIManager *ui_manager,
+                        GrisbiAppConf *conf )
+{
+    GtkActionGroup *actions;
+    gint i;
+
+    devel_debug (NULL);
+
+    actions = gtk_action_group_new ( "FileRecentFilesGroupAction" );
+    for ( i = 0 ; i < conf->nb_derniers_fichiers_ouverts ; i++ )
+    {
+        gchar *tmp_name;
+        GtkAction *action;
+
+        tmp_name = g_strdup_printf ( "LastFile%d", i );
+
+        action = gtk_action_new ( tmp_name, 
+                        conf->tab_noms_derniers_fichiers_ouverts[i],
+                        "",
+                        "" );
+        g_free ( tmp_name );
+        g_signal_connect ( action,
+                        "activate",
+                        G_CALLBACK ( gsb_file_open_direct_menu ), 
+                        GINT_TO_POINTER ( i ) );
+        gtk_action_group_add_action ( actions, action );
+    }
+
+    gtk_ui_manager_insert_action_group ( ui_manager, actions, 1 );
+    g_object_unref ( actions );
+
+    return actions;
+}
+
+
+/**
+ * Add menu items to the action_group "FileRecentFilesGroupAction".
+ *
+ * \param
+ *
+ * \return
+ **/
+static void grisbi_window_add_recents_sub_menu ( GtkUIManager *ui_manager,
+                        gint nb_derniers_fichiers_ouverts )
+{
+    gint recent_files_merge_id = -1;
+    gint i;
+
+    devel_debug (NULL);
+
+    recent_files_merge_id = gtk_ui_manager_new_merge_id ( ui_manager );
+
+    for ( i=0 ; i < nb_derniers_fichiers_ouverts ; i++ )
+    {
+        gchar *tmp_name;
+        gchar *tmp_label;
+
+        tmp_name = g_strdup_printf ( "LastFile%d", i );
+        tmp_label = g_strdup_printf ( "_%d LastFile%d", i, i );
+
+        gtk_ui_manager_add_ui ( ui_manager,
+                    recent_files_merge_id, 
+                    "/menubar/FileMenu/RecentFiles/FileRecentsPlaceholder",
+                    tmp_label,
+                    tmp_name,
+                    GTK_UI_MANAGER_MENUITEM,
+                    FALSE );
+
+        g_free ( tmp_name );
+        g_free ( tmp_label );
+    }
+}
+
+
+/* TITLE OF MAIN WINDOW */
+/**
+ * set window title
+ *
+ *
+ *
+ * */
+void grisbi_window_set_title ( GrisbiApp *app,
+                        const gchar *title )
+{
+    GrisbiWindow *window;
+
+    window = grisbi_app_get_active_window ( app );
+
+    if ( window->priv->title )
+        g_free ( window->priv->title );
+
+    gtk_window_set_title ( GTK_WINDOW ( window ), title );
+}
+
+
+/* GTK_BUILDER */
+/**
+ * Crée un builder et récupère les widgets du fichier grisbi.ui
+ *
+ * \param
+ *
+ * \rerurn
+ * */
+gboolean grisbi_window_initialise_builder ( void )
+{
+    /* Creation d'un nouveau GtkBuilder */
+    grisbi_window_builder = gtk_builder_new ( );
+    if ( grisbi_window_builder == NULL )
+        return FALSE;
+
+    /* récupère les widgets */
+    if ( utils_gtkbuilder_merge_ui_data_in_builder ( grisbi_window_builder, "grisbi.ui" ) )
+        return TRUE;
+    else
+        return FALSE;
+}
+
+
+/* FILENAME */
+/**
+ * retourne le nom du fichier associé à la fenêtre
+ *
+ * \param GrisbiWindow
+ *
+ * \return filename
+ **/
+const gchar *grisbi_window_get_filename ( GrisbiWindow *window )
+{
+    return window->priv->filename;
+}
+
+/**
+ * définit le nom du fichier associé à la fenêtre
+ *
+ * \param GrisbiWindow
+ * \param filename
+ *
+ * \return TRUE
+ **/
+gboolean grisbi_window_set_filename ( GrisbiWindow *window,
+                        const gchar *filename )
+{
+    devel_debug ( filename );
+
+    g_free ( window->priv->filename );
+
+    window->priv->filename = g_strdup ( filename );
+
+    return TRUE;
+}
+
+/* STATUS_BAR */
+/**
+ * Create and return a new GtkStatusBar to hold various status
+ * information.
+ *
+ * \param
+ *
+ * \return  A newly allocated GtkStatusBar.
+ */
+static GtkWidget *grisbi_window_new_statusbar ( GrisbiWindow *window )
+{
+    GtkWidget *statusbar;
+
+    statusbar = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, "main_statusbar" ) );
+    window->priv->statusbar = statusbar;
+    window->priv->context_id = gtk_statusbar_get_context_id ( GTK_STATUSBAR ( statusbar ), "Grisbi" );
+    window->priv->message_id = -1;
+
+    return statusbar;
+}
+
+
+/**
+ * supprime le message de la liste
+ *
+ * \param GrisbiWindow
+ *
+ * \return
+ **/
+void grisbi_window_statusbar_remove ( GrisbiWindow *window )
+{
+    if ( window->priv->message_id >= 0 )
+    {
+        gtk_statusbar_remove ( GTK_STATUSBAR ( window->priv->statusbar ),
+                        window->priv->context_id,
+                        window->priv->message_id );
+        window->priv->message_id = -1;
+    }
+
+}
+
+
+/**
+ * met un message dans la barre d'état de la fenêtre
+ *
+ * \param GrisbiWindow
+ * \param msg
+ *
+ * \return
+ **/
+void grisbi_window_statusbar_push ( GrisbiWindow *window,
+                        const gchar *msg )
+{
+    window->priv->message_id = gtk_statusbar_push ( GTK_STATUSBAR ( window->priv->statusbar ),
+                        window->priv->context_id, msg );
+}
+
+
+/* HEADINGS_EB */
+/**
+ * Trigger a callback functions only if button event that triggered it
+ * was a simple click.
+ *
+ * \param button
+ * \param event
+ * \param callback function
+ *
+ * \return  TRUE.
+ */
+static gboolean grisbi_window_headings_simpleclick_event_run ( GtkWidget *button,
+                        GdkEvent *button_event,
+                        GCallback callback )
+{
+    if ( button_event -> type == GDK_BUTTON_PRESS )
+    {
+        callback ( );
+    }
+
+    return TRUE;
+}
+
+
+/**
+ * Create and return a new headings_bar
+ * information.
+ *
+ * \param
+ *
+ * \return  A newly allocated headings_eb.
+ */
+static GtkWidget *grisbi_window_new_headings_eb ( GrisbiWindow *window )
+{
+    GtkWidget *headings_eb;
+    GtkWidget *arrow_eb;
+    GtkStyle *style;
+
+    headings_eb = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, "headings_eb" ) );
+    window->priv->headings_eb = headings_eb;
+    style = gtk_widget_get_style ( headings_eb );
+
+    arrow_eb = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, "arrow_eb_left" ) );
+    gtk_widget_modify_bg ( arrow_eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
+    g_signal_connect ( G_OBJECT ( arrow_eb ),
+                        "button-press-event",
+                        G_CALLBACK ( grisbi_window_headings_simpleclick_event_run ),
+                        gsb_gui_navigation_select_prev );
+
+
+    arrow_eb = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, "arrow_eb_right" ) );
+    gtk_widget_modify_bg ( arrow_eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
+    g_signal_connect ( G_OBJECT ( arrow_eb ), "button-press-event",
+                        G_CALLBACK ( grisbi_window_headings_simpleclick_event_run ),
+                        gsb_gui_navigation_select_next );
+
+    gtk_widget_modify_bg ( headings_eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
+
+
+    return headings_eb;
+}
+
+
+/**
+ * retourne headings_eb
+ *
+ * \param
+ *
+ * \return
+ **/
+GtkWidget *grisbi_window_get_headings_eb ( GrisbiWindow *window )
+{
+    return window->priv->headings_eb;
+}
+
+
+/**
+ * Update one of the heading bar label with a new text.
+ *
+ * \param label Label to update.
+ * \param text  String to display in headings bar.
+ * \param text  escape string to display in headings bar.
+ *
+ */
+void grisbi_window_headings_update_label_markup ( gchar *label_name,
+                        const gchar *text,
+                        gboolean escape_text )
+{
+    GtkWidget *label;
+    gchar* tmpstr;
+
+    if ( escape_text )
+        tmpstr = g_markup_printf_escaped ("<b>%s</b>", text );
+    else
+        tmpstr = g_strconcat ( "<b>", text, "</b>", NULL );
+
+    label = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, label_name ) );
+
+    if ( GTK_IS_LABEL ( label ) )
+        gtk_label_set_markup ( GTK_LABEL ( label ), tmpstr );
+
+    g_free ( tmpstr );
+}
+
+
+/* HPANED */
+/**
+ * met à jour la taille du panneau de gauche
+ *
+ * \param hpaned
+ * \param allocation
+ * \param null
+ *
+ * \return
+ **/
+static gboolean grisbi_window_hpaned_size_allocate ( GtkWidget *hpaned,
+                        GtkAllocation *allocation,
+                        gpointer null )
+{
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+    conf->panel_width = gtk_paned_get_position ( GTK_PANED ( hpaned ) );
+    
+    return FALSE;
+
+}
+
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
+GtkWidget *grisbi_window_new_hpaned ( GrisbiWindow *window )
+{
+    GtkWidget *hpaned_general;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
+    /* initialisation du hpaned */
+    hpaned_general = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, "hpaned_general" ) );
+
+    g_signal_connect ( G_OBJECT ( hpaned_general ),
+                        "size_allocate",
+                        G_CALLBACK ( grisbi_window_hpaned_size_allocate ),
+                        NULL );
+    gtk_container_set_border_width ( GTK_CONTAINER ( hpaned_general ), 6 );
+
+    if ( conf->panel_width == -1 )
+    {
+        gint width, height;
+
+        gtk_window_get_size ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ), &width, &height );
+        gtk_paned_set_position ( GTK_PANED ( hpaned_general ), (gint) width / 4 );
+    }
+    else
+    {
+        if ( conf->panel_width )
+            gtk_paned_set_position ( GTK_PANED ( hpaned_general ), conf->panel_width );
+        else
+            gtk_paned_set_position ( GTK_PANED ( hpaned_general ), 1 );
+    }
+
+    return hpaned_general;
+}
+
+
+/* FONCTIONS UTILITAIRES */
+/**
+ * retourne le widget nommé
+ *
+ * \param nom du widget recherché
+ *
+ * \return
+ **/
+GtkWidget *grisbi_window_get_widget_by_name (  const gchar *name )
+{
+    GtkWidget *widget;
+
+    widget = GTK_WIDGET ( gtk_builder_get_object ( grisbi_window_builder, name ) );
+
+    return widget;
+}
+
+
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
+/* Local Variables: */
+/* c-basic-offset: 4 */
+/* End: */
diff --git a/src/grisbi_window.h b/src/grisbi_window.h
new file mode 100644
index 0000000..97f362b
--- /dev/null
+++ b/src/grisbi_window.h
@@ -0,0 +1,69 @@
+#ifndef __GRISBI_WINDOW_H__
+#define __GRISBI_WINDOW_H__
+
+#include <gtk/gtk.h>
+
+/*START_INCLUDE*/
+/*END_INCLUDE*/
+
+
+
+G_BEGIN_DECLS
+
+/*
+ * Type checking and casting macros
+ */
+#define GRISBI_TYPE_WINDOW              (grisbi_window_get_type())
+#define GRISBI_WINDOW(obj)              (G_TYPE_CHECK_INSTANCE_CAST((obj), GRISBI_TYPE_WINDOW, GrisbiWindow))
+#define GRISBI_WINDOW_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST((klass), GRISBI_TYPE_WINDOW, GrisbiWindowClass))
+#define GRISBI_IS_WINDOW(obj)           (G_TYPE_CHECK_INSTANCE_TYPE((obj), GRISBI_TYPE_WINDOW))
+#define GRISBI_IS_WINDOW_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), GRISBI_TYPE_WINDOW))
+#define GRISBI_WINDOW_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS((obj), GRISBI_TYPE_WINDOW, GrisbitWindowClass))
+
+/* Private structure type */
+typedef struct _GrisbiWindowPrivate GrisbiWindowPrivate;
+
+
+/* Main object structure */
+typedef struct _GrisbiWindow GrisbiWindow;
+
+struct _GrisbiWindow
+{
+    GtkWindow window;
+
+    /*< private > */
+    GrisbiWindowPrivate *priv;
+};
+
+/* Class definition */
+typedef struct _GrisbiWindowClass GrisbiWindowClass;
+
+struct _GrisbiWindowClass
+{
+    GtkWindowClass parent_class;
+};
+
+
+/* START_DECLARATION */
+GType grisbi_window_get_type ( void ) G_GNUC_CONST;
+
+GtkActionGroup *grisbi_window_get_action_group ( GrisbiWindow *window,
+                        const gchar *action_group_name );
+const gchar *grisbi_window_get_filename ( GrisbiWindow *window );
+GtkWidget *grisbi_window_get_headings_eb ( GrisbiWindow *window );
+GtkWidget *grisbi_window_get_widget_by_name (  const gchar *name );
+GtkUIManager *grisbi_window_get_ui_manager ( GrisbiWindow *window );
+GtkWidget *grisbi_window_new_hpaned ( GrisbiWindow *window );
+void grisbi_window_headings_update_label_markup ( gchar *label_name,
+                        const gchar *text,
+                        gboolean escape_text );
+gboolean grisbi_window_set_filename ( GrisbiWindow *window,
+                        const gchar *filename );
+void grisbi_window_statusbar_remove ( GrisbiWindow *window );
+void grisbi_window_statusbar_push ( GrisbiWindow *window,
+                        const gchar *msg );
+/* END_DECLARATION */
+
+G_END_DECLS
+
+#endif  /* __GRISBI_APP_H__ */
diff --git a/src/gsb_account.c b/src/gsb_account.c
index b62390e..9ffce4a 100644
--- a/src/gsb_account.c
+++ b/src/gsb_account.c
@@ -140,7 +140,8 @@ gboolean gsb_account_new ( kind_account account_type,
 
         /* Go to accounts properties */
         gtk_notebook_set_current_page ( GTK_NOTEBOOK ( notebook_general ), GSB_ACCOUNT_PAGE );
-        gtk_notebook_set_current_page ( GTK_NOTEBOOK ( account_page ), GSB_PROPERTIES_PAGE );
+        gtk_notebook_set_current_page ( GTK_NOTEBOOK ( gsb_gui_on_account_get_notebook ( ) ),
+                        GSB_PROPERTIES_PAGE );
 
         gsb_account_property_fill_page ();
     }
diff --git a/src/gsb_archive_config.c b/src/gsb_archive_config.c
index 0b9d0ef..d6e94bd 100644
--- a/src/gsb_archive_config.c
+++ b/src/gsb_archive_config.c
@@ -35,6 +35,8 @@
 
 /*START_INCLUDE*/
 #include "gsb_archive_config.h"
+#include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_account_property.h"
 #include "gsb_autofunc.h"
 #include "gsb_automem.h"
@@ -43,17 +45,16 @@
 #include "gsb_data_archive_store.h"
 #include "gsb_data_fyear.h"
 #include "gsb_data_transaction.h"
+#include "gsb_dirs.h"
 #include "gsb_file.h"
-#include "utils_dates.h"
-#include "navigation.h"
 #include "gsb_real.h"
 #include "gsb_transactions_list.h"
+#include "navigation.h"
+#include "structures.h"
 #include "traitement_variables.h"
-#include "utils.h"
-#include "dialog.h"
 #include "transaction_list.h"
-#include "structures.h"
-#include "gsb_dirs.h"
+#include "utils.h"
+#include "utils_dates.h"
 /*END_INCLUDE*/
 
 /** Columns for payment methods tree */
@@ -99,183 +100,158 @@ GtkWidget *gsb_archive_config_create ( void )
     GtkWidget *table, *label;
     GtkListStore *archive_model;
     gchar *titles[] = {
-	_("Name"), _("Initial date"), _("Final date"), _("Financial year"), _("Report name")
+    _("Name"), _("Initial date"), _("Final date"), _("Financial year"), _("Report name")
     };
     gfloat alignment[] = {
-	COLUMN_LEFT, COLUMN_CENTER, COLUMN_CENTER , COLUMN_CENTER, COLUMN_CENTER
+    COLUMN_LEFT, COLUMN_CENTER, COLUMN_CENTER , COLUMN_CENTER, COLUMN_CENTER
     };
     gint i;
     GtkWidget *modification_paddingbox;
     GtkWidget *check_paddingbox;
     GtkWidget *button;
     GtkWidget *entry;
-	gchar* tmpstr;
+    gchar* tmpstr;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* create the page */
-    vbox_pref = new_vbox_with_title_and_icon ( _("Archives"),
-					       "archives.png" );
+    vbox_pref = new_vbox_with_title_and_icon ( _("Archives"), "archives.png" );
 
     /* create the list of archives */
-    paddingbox = new_paddingbox_with_title (vbox_pref, TRUE,
-					    _("Known archives"));
+    paddingbox = new_paddingbox_with_title (vbox_pref, TRUE, _("Known archives"));
 
     /* Create scrolled window */
     scrolled_window = gtk_scrolled_window_new ( NULL, NULL );
     gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scrolled_window ),
-				     GTK_POLICY_AUTOMATIC,
-				     GTK_POLICY_AUTOMATIC );
-    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW ( scrolled_window ),
-					  GTK_SHADOW_IN);
-    gtk_box_pack_start ( GTK_BOX (paddingbox),
-			 scrolled_window,
-			 TRUE, TRUE, 0 );
+                        GTK_POLICY_AUTOMATIC,
+                        GTK_POLICY_AUTOMATIC );
+    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW ( scrolled_window ), GTK_SHADOW_IN );
+    gtk_box_pack_start ( GTK_BOX (paddingbox), scrolled_window, TRUE, TRUE, 0 );
 
     /* Create tree view */
     archive_model = gtk_list_store_new (NUM_ARCHIVES_COLUMNS,
-					G_TYPE_STRING,
-					G_TYPE_STRING,
-					G_TYPE_STRING,
-					G_TYPE_STRING,
-					G_TYPE_STRING,
-					G_TYPE_INT );
+                        G_TYPE_STRING,
+                        G_TYPE_STRING,
+                        G_TYPE_STRING,
+                        G_TYPE_STRING,
+                        G_TYPE_STRING,
+                        G_TYPE_INT );
     archive_treeview = gtk_tree_view_new_with_model ( GTK_TREE_MODEL (archive_model) );
     g_object_unref (G_OBJECT(archive_model) );
     gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (archive_treeview), TRUE);
-    gtk_container_add ( GTK_CONTAINER (scrolled_window),
-			archive_treeview );
+    gtk_container_add ( GTK_CONTAINER (scrolled_window), archive_treeview );
 
     /* set the columns */
     for (i=0 ; i<5 ; i++)
     {
-	GtkTreeViewColumn *column;
-	GtkCellRenderer *cell;
-
-	cell = gtk_cell_renderer_text_new ();
-	g_object_set ( G_OBJECT (cell),
-		       "xalign", alignment[i],
-		       NULL );
-
-	column = gtk_tree_view_column_new ( );
-	gtk_tree_view_column_set_sizing ( column,
-					  GTK_TREE_VIEW_COLUMN_AUTOSIZE );
-	gtk_tree_view_column_set_alignment ( column,
-					     alignment[i] );
-
-	gtk_tree_view_column_pack_start ( column, cell, TRUE );
-	gtk_tree_view_column_set_title ( column, titles[i] );
-	gtk_tree_view_column_set_attributes (column, cell,
-					     "text", i,
-					     NULL);
-	gtk_tree_view_column_set_expand ( column, TRUE );
-	gtk_tree_view_column_set_resizable ( column,
-					     TRUE );
-	gtk_tree_view_append_column ( GTK_TREE_VIEW(archive_treeview), column);
+        GtkTreeViewColumn *column;
+        GtkCellRenderer *cell;
+
+        cell = gtk_cell_renderer_text_new ();
+        g_object_set ( G_OBJECT (cell), "xalign", alignment[i], NULL );
+
+        column = gtk_tree_view_column_new ( );
+        gtk_tree_view_column_set_sizing ( column, GTK_TREE_VIEW_COLUMN_AUTOSIZE );
+        gtk_tree_view_column_set_alignment ( column, alignment[i] );
+
+        gtk_tree_view_column_pack_start ( column, cell, TRUE );
+        gtk_tree_view_column_set_title ( column, titles[i] );
+        gtk_tree_view_column_set_attributes (column, cell, "text", i, NULL);
+        gtk_tree_view_column_set_expand ( column, TRUE );
+        gtk_tree_view_column_set_resizable ( column, TRUE );
+        gtk_tree_view_append_column ( GTK_TREE_VIEW(archive_treeview), column);
     }
 
     /* archive modification */
     modification_paddingbox = new_paddingbox_with_title (vbox_pref, FALSE,
-						    _("Archive modification"));
+                                _("Archive modification"));
     gtk_widget_set_sensitive ( modification_paddingbox, FALSE );
-    g_signal_connect (gtk_tree_view_get_selection (GTK_TREE_VIEW (archive_treeview)), 
-		      "changed", 
-		      G_CALLBACK (gsb_archive_config_select),
-		      modification_paddingbox);
+    g_signal_connect ( gtk_tree_view_get_selection ( GTK_TREE_VIEW ( archive_treeview ) ), 
+                        "changed", 
+                        G_CALLBACK ( gsb_archive_config_select ),
+                        modification_paddingbox );
 
     /* archive name (the only thing we can change) */
     table = gtk_table_new ( 2, 2, FALSE );
     gtk_table_set_col_spacings ( GTK_TABLE ( table ), 6 );
-    gtk_box_pack_start ( GTK_BOX ( modification_paddingbox ), table,
-			 FALSE, FALSE, 6 );
+    gtk_box_pack_start ( GTK_BOX ( modification_paddingbox ), table, FALSE, FALSE, 6 );
 
     label = gtk_label_new ( _("Name: ") );
     gtk_misc_set_alignment (GTK_MISC (label), 0, 1);
     gtk_table_attach ( GTK_TABLE ( table ),
-		       label, 0, 1, 0, 1,
-		       GTK_SHRINK | GTK_FILL, 0,
-		       0, 0 );
+                        label, 0, 1, 0, 1,
+                        GTK_SHRINK | GTK_FILL, 0,
+                        0, 0 );
     archive_name_entry = gsb_autofunc_entry_new ( NULL,
-						  G_CALLBACK (gsb_archive_config_name_changed), archive_treeview,
-						  G_CALLBACK (gsb_data_archive_set_name), 0 );
-    g_signal_connect ( G_OBJECT (archive_name_entry ), "destroy",
-    		G_CALLBACK ( gtk_widget_destroyed), &archive_name_entry );
+                        G_CALLBACK ( gsb_archive_config_name_changed ),
+                        archive_treeview,
+                        G_CALLBACK ( gsb_data_archive_set_name ),
+                        0 );
+    g_signal_connect ( G_OBJECT ( archive_name_entry ),
+                        "destroy",
+                        G_CALLBACK ( gtk_widget_destroyed),
+                        &archive_name_entry );
     gtk_table_attach ( GTK_TABLE ( table ),
-		       archive_name_entry, 1, 2, 0, 1,
-		       GTK_SHRINK | GTK_FILL, 0,
-		       0, 0 );
+                        archive_name_entry, 1, 2, 0, 1,
+                        GTK_SHRINK | GTK_FILL, 0,
+                        0, 0 );
 
     /* button to delete an archive and free the transactions */
     button = gtk_button_new_with_label (_("Delete the archive"));
-    gtk_button_set_relief ( GTK_BUTTON (button),
-			    GTK_RELIEF_NONE );
+    gtk_button_set_relief ( GTK_BUTTON ( button ), GTK_RELIEF_NONE );
     g_signal_connect ( G_OBJECT (button),
-		       "clicked",
-		       G_CALLBACK (gsb_archive_config_delete_archive),
-		       archive_treeview );
+                        "clicked",
+                        G_CALLBACK ( gsb_archive_config_delete_archive ),
+                archive_treeview );
     tmpstr = g_build_filename ( gsb_dirs_get_pixmaps_dir ( ), "import.png", NULL );
-    gtk_button_set_image ( GTK_BUTTON(button), 
-			   gtk_image_new_from_file ( tmpstr ) );
+    gtk_button_set_image ( GTK_BUTTON ( button ), 
+                        gtk_image_new_from_file ( tmpstr ) );
     g_free ( tmpstr );
     gtk_table_attach ( GTK_TABLE ( table ),
-		       button, 0, 1, 1, 2,
-		       GTK_SHRINK | GTK_FILL, 0,
-		       0, 0 );
+                        button, 0, 1, 1, 2,
+                        GTK_SHRINK | GTK_FILL, 0,
+                        0, 0 );
 
     /* button to delete an archive and delete the t pstr ) );  import.png", NULL );  );  ,   _IN );  WindowClass))  vate))  TRUE );  ¾ÐºÐ¾Ð¼ "    ÿ  uŠ{ã‘+  €ª|ã‘+  ¥œã‘+                          ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 ransactions */
     button = gtk_button_new_with_label ( _("Delete the archive and transactions") );
-    gtk_button_set_relief ( GTK_BUTTON (button),
-			    GTK_RELIEF_NONE );
-    g_signal_connect ( G_OBJECT (button),
-		       "clicked",
-		       G_CALLBACK (gsb_archive_config_destroy_archive),
-		       archive_treeview );
+    gtk_button_set_relief ( GTK_BUTTON ( button ), GTK_RELIEF_NONE );
+    g_signal_connect ( G_OBJECT ( button ),
+                        "clicked",
+                        G_CALLBACK ( gsb_archive_config_destroy_archive ),
+                        archive_treeview );
     tmpstr = g_build_filename ( gsb_dirs_get_pixmaps_dir ( ), "import.png", NULL );
-    gtk_button_set_image ( GTK_BUTTON(button), 
-			   gtk_image_new_from_file ( tmpstr ) );
+    gtk_button_set_image ( GTK_BUTTON ( button ), 
+                        gtk_image_new_from_file ( tmpstr ) );
     g_free ( tmpstr );
 
-    gtk_button_set_relief ( GTK_BUTTON (button),
-			    GTK_RELIEF_NONE );
+    gtk_button_set_relief ( GTK_BUTTON ( button ),
+                        GTK_RELIEF_NONE );
     gtk_table_attach ( GTK_TABLE ( table ),
-		       button, 1, 2, 1, 2,
-		       GTK_SHRINK | GTK_FILL, 0,
-		       0, 0 );
+                        button, 1, 2, 1, 2,
+                        GTK_SHRINK | GTK_FILL, 0,
+                        0, 0 );
 
     /* check part at the opening of the file */
-    check_paddingbox = new_paddingbox_with_title (vbox_pref, FALSE,
-						    _("Automatic check"));
+    check_paddingbox = new_paddingbox_with_title ( vbox_pref, FALSE, _("Automatic check") );
 
     button = gsb_automem_checkbutton_new ( _("Check at opening if creating archive is needed."),
-					   &conf.check_for_archival,
-					   NULL, NULL );
-    gtk_box_pack_start ( GTK_BOX (check_paddingbox),
-			 button,
-			 FALSE, FALSE,
-			 0 );
-
-    hbox = gtk_hbox_new (FALSE, 0);
-    gtk_box_pack_start ( GTK_BOX (check_paddingbox),
-			 hbox,
-			 TRUE, FALSE,
-			 0 );
+                        &conf->check_for_archival,
+                        NULL, NULL );
+    gtk_box_pack_start ( GTK_BOX (check_paddingbox), button, FALSE, FALSE, 0 );
+
+    hbox = gtk_hbox_new ( FALSE, 0 );
+    gtk_box_pack_start ( GTK_BOX ( check_paddingbox ), hbox, TRUE, FALSE, 0 );
 
     label = gtk_label_new (_("Warn if more than "));
-    gtk_box_pack_start ( GTK_BOX (hbox),
-			 label,
-			 FALSE, FALSE,
-			 0 );
-    entry = gsb_automem_spin_button_new (&conf.max_non_archived_transactions_for_check,
-					 NULL, NULL );
-    gtk_widget_set_size_request ( entry,
-			   100, -1 );
-    gtk_box_pack_start ( GTK_BOX (hbox),
-			 entry,
-			 FALSE, FALSE,
-			 0 );
-    label = gtk_label_new (_(" transactions are not archived."));
-    gtk_box_pack_start ( GTK_BOX (hbox),
-			 label,
-			 FALSE, FALSE,
-			 0 );
+    gtk_box_pack_start ( GTK_BOX (hbox), label, FALSE, FALSE, 0 );
+
+    entry = gsb_automem_spin_button_new ( &conf->max_non_archived_transactions_for_check, NULL, NULL );
+    gtk_widget_set_size_request ( entry, 100, -1 );
+    gtk_box_pack_start ( GTK_BOX (hbox), entry, FALSE, FALSE, 0 );
+
+    label = gtk_label_new ( _(" transactions are not archived.") );
+    gtk_box_pack_start ( GTK_BOX (hbox), label, FALSE, FALSE, 0 );
 
     /* fill the list */
     gsb_archive_config_fill_list (archive_model);
@@ -285,7 +261,7 @@ GtkWidget *gsb_archive_config_create ( void )
     /** Do not set this tab sensitive is no account file is opened. */
     if ( !gsb_data_account_get_accounts_amount () )
     {
-	gtk_widget_set_sensitive ( vbox_pref, FALSE );
+        gtk_widget_set_sensitive ( vbox_pref, FALSE );
     }
     return ( vbox_pref );
 }
diff --git a/src/gsb_assistant.c b/src/gsb_assistant.c
index debb68c..f9c3a50 100644
--- a/src/gsb_assistant.c
+++ b/src/gsb_assistant.c
@@ -36,6 +36,7 @@
 /*START_INCLUDE*/
 #include "gsb_assistant.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_dirs.h"
 #include "structures.h"
 #include "utils.h"
@@ -82,14 +83,14 @@ GtkWidget * gsb_assistant_new ( const gchar * title, const gchar * explanation,
     gint width = 140;
 
     assistant = gtk_dialog_new_with_buttons ( title,
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL | GTK_DIALOG_NO_SEPARATOR,
                         NULL );
 
     gtk_window_set_default_size ( GTK_WINDOW ( assistant ), 800, 500 );
     gtk_window_set_position ( GTK_WINDOW ( assistant ), GTK_WIN_POS_CENTER_ON_PARENT );
     gtk_window_set_resizable ( GTK_WINDOW ( assistant ), TRUE );
-    g_object_set_data ( G_OBJECT ( run.window ), "assistant", assistant );
+    g_object_set_data ( G_OBJECT ( grisbi_app_get_active_window ( NULL ) ), "assistant", assistant );
 
     button_select = gtk_toggle_button_new_with_label ( _("Select all") );
     gtk_widget_set_size_request ( button_select, width, -1 );
diff --git a/src/gsb_assistant_archive.c b/src/gsb_assistant_archive.c
index 6626325..5f3c7dc 100644
--- a/src/gsb_assistant_archive.c
+++ b/src/gsb_assistant_archive.c
@@ -36,7 +36,10 @@
 
 /*START_INCLUDE*/
 #include "gsb_assistant_archive.h"
+#include "dialog.h"
+#include "etats_calculs.h"
 #include "etats_support.h"
+#include "grisbi_app.h"
 #include "gsb_assistant.h"
 #include "gsb_calendar_entry.h"
 #include "gsb_data_archive.h"
@@ -45,17 +48,15 @@
 #include "gsb_data_report.h"
 #include "gsb_data_transaction.h"
 #include "gsb_file.h"
-#include "utils_dates.h"
 #include "gsb_fyear.h"
-#include "navigation.h"
 #include "gsb_report.h"
 #include "gsb_transactions_list.h"
-#include "dialog.h"
+#include "navigation.h"
+#include "structures.h"
 #include "traitement_variables.h"
-#include "utils_str.h"
-#include "etats_calculs.h"
 #include "utils.h"
-#include "structures.h"
+#include "utils_dates.h"
+#include "utils_str.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
@@ -127,58 +128,63 @@ GtkResponseType gsb_assistant_archive_run ( gboolean origin )
     GtkResponseType return_value;
     GtkWidget *assistant;
     gchar *tmpstr;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     if (origin)
-	/* come from check while opening file */
-	tmpstr = g_strdup_printf ( _("There are a lot of transactions in your file (%d) and it is advised not to keep more than about %d transactions unarchived.\n"
-				     "To increase speed, you should archive them "
-				     "(the current limit and the opening check-up can be changed in the Preferences)\n\n"
-				     "This assistant will guide you through the process of archiving transactions "
-				     "By default, Grisbi does not export any archive into separate files, "
-				     "it just mark transactions as archted and do not use them.\n\n"
-				     "You can still export them into a separate archive file if necessary.\n\n" 
-				     "Press Cancel if you don't want make an archive now\n"),
-				   g_slist_length (gsb_data_transaction_get_transactions_list ()),
-				   conf.max_non_archived_transactions_for_check );
+        /* come from check while opening file */
+        tmpstr = g_strdup_printf ( _("There are a lot of transactions in your file (%d) and it is "
+                        "advised not to keep more than about %d transactions unarchived.\n"
+                        "To increase speed, you should archive them "
+                        "(the current limit and the opening check-up can be changed in the Preferences)\n\n"
+                        "This assistant will guide you through the process of archiving transactions "
+                        "By default, Grisbi does not export any archive into separate files, "
+                        "it just mark transactions as archted and do not use them.\n\n"
+                        "You can still export them into a separate archive file if necessary.\n\n"
+                        "Press Cancel if you don't want make an archive now\n"),
+                        g_slist_length (gsb_data_transaction_get_transactions_list ()),
+                        conf->max_non_archived_transactions_for_check );
     else
-	/* come by menu action */
-	tmpstr = my_strdup (_("This assistant will guide you through the process of archiving transactions "
-			      "to increase the speed of grisbi.\n\n"
-			      "By default, Grisbi does not export any archive into separate files, "
-			      "it just mark transactions as archted and do not use them.\n\n"
-			      "You can still export them into a separate archive file if necessary.\n"));
+        /* come by menu action */
+        tmpstr = my_strdup (_("This assistant will guide you through the process of archiving transactions "
+                        "to increase the speed of grisbi.\n\n"
+                        "By default, Grisbi does not export any archive into separate files, "
+                        "it just mark transactions as archted and do not use them.\n\n"
+                        "You can still export them into a separate archive file if necessary.\n"));
 
     /* create the assistant */
     assistant = gsb_assistant_new ( _("Archive transactions"),
-				    tmpstr,
-				    "archive.png",
-				    G_CALLBACK (gsb_assistant_archive_switch_to_intro));
+                        tmpstr,
+                        "archive.png",
+                        G_CALLBACK ( gsb_assistant_archive_switch_to_intro ) );
     g_free (tmpstr);
 
     gsb_assistant_add_page ( assistant,
-			     gsb_assistant_archive_page_menu (assistant),
-			     ARCHIVE_ASSISTANT_MENU,
-			     ARCHIVE_ASSISTANT_INTRO,
-			     ARCHIVE_ASSISTANT_ARCHIVE_NAME,
-			     G_CALLBACK (gsb_assistant_archive_switch_to_menu));
+                        gsb_assistant_archive_page_menu (assistant),
+                        ARCHIVE_ASSISTANT_MENU,
+                        ARCHIVE_ASSISTANT_INTRO,
+                        ARCHIVE_ASSISTANT_ARCHIVE_NAME,
+                        G_CALLBACK ( gsb_assistant_archive_switch_to_menu ) );
     gsb_assistant_add_page ( assistant,
-			     gsb_assistant_archive_page_archive_name (assistant),
-			     ARCHIVE_ASSISTANT_ARCHIVE_NAME,
-			     ARCHIVE_ASSISTANT_MENU,
-			     ARCHIVE_ASSISTANT_SUCCESS,
-			     G_CALLBACK (gsb_assistant_archive_switch_to_archive_name));
+                        gsb_assistant_archive_page_archive_name ( assistant ),
+                        ARCHIVE_ASSISTANT_ARCHIVE_NAME,
+                        ARCHIVE_ASSISTANT_MENU,
+                        ARCHIVE_ASSISTANT_SUCCESS,
+                        G_CALLBACK ( gsb_assistant_archive_switch_to_archive_name ) );
     gsb_assistant_add_page ( assistant,
-			     gsb_assistant_archive_page_success (),
-			     ARCHIVE_ASSISTANT_SUCCESS,
-			     ARCHIVE_ASSISTANT_MENU,
-			     0,
-			     G_CALLBACK (gsb_assistant_archive_switch_to_success));
-    return_value = gsb_assistant_run (assistant);
-    gtk_widget_destroy (assistant);
+                        gsb_assistant_archive_page_success (),
+                        ARCHIVE_ASSISTANT_SUCCESS,
+                        ARCHIVE_ASSISTANT_MENU,
+                        0,
+                        G_CALLBACK ( gsb_assistant_archive_switch_to_success ) );
+    return_value = gsb_assistant_run ( assistant );
+    gtk_widget_destroy ( assistant );
 
     /* the fyear combobox in grisbi are used with the "Automatic" line,
      * so show it again */
-    gsb_fyear_set_automatic (TRUE);
+    gsb_fyear_set_automatic ( TRUE );
+
     return return_value;
 }
 
diff --git a/src/gsb_assistant_archive_export.c b/src/gsb_assistant_archive_export.c
index cf5535f..cff203d 100644
--- a/src/gsb_assistant_archive_export.c
+++ b/src/gsb_assistant_archive_export.c
@@ -35,19 +35,20 @@
 
 /*START_INCLUDE*/
 #include "gsb_assistant_archive_export.h"
-#include "gsb_assistant.h"
 #include "export_csv.h"
+#include "grisbi_app.h"
+#include "gsb_assistant.h"
 #include "gsb_data_archive.h"
 #include "gsb_data_fyear.h"
 #include "gsb_file.h"
 #include "gsb_file_save.h"
 #include "gsb_file_util.h"
-#include "utils_dates.h"
+#include "gsb_transactions_list.h"
 #include "qif.h"
-#include "utils_str.h"
-#include "utils.h"
 #include "structures.h"
-#include "gsb_transactions_list.h"
+#include "utils.h"
+#include "utils_dates.h"
+#include "utils_str.h"
 /*END_INCLUDE*/
 
 
@@ -351,98 +352,102 @@ static GtkWidget *gsb_assistant_archive_export_page_succes ( GtkWidget *assistan
  * \return FALSE
  * */
 static gboolean gsb_assistant_archive_switch ( GtkWidget *assistant,
-					       gint new_page )
+                        gint new_page )
 {
     gint archive_number;
     GtkTreeModel *model;
     const gchar *export_name;
     gboolean success = FALSE;
     gchar* tmpstr;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     model = gtk_tree_view_get_model (GTK_TREE_VIEW (archive_export_treeview));
     archive_number = gsb_assistant_archive_export_get_selected_archive (model);
 
     switch (new_page)
     {
-	case ARCHIVE_EXPORT_ASSISTANT_INTRO:
-	    break;
-
-	case ARCHIVE_EXPORT_ASSISTANT_CHOOSE:
-	    if (archive_number)
-		gsb_assistant_sensitive_button_next (assistant, TRUE);
-	    else
-		gsb_assistant_sensitive_button_next (assistant, FALSE);
-	    break;
-
-	case ARCHIVE_EXPORT_ASSISTANT_NAME:
-	    /* if we come here, an archive must have been selected,
-	     * so needn't to check */
-	    tmpstr = g_markup_printf_escaped ( 
-                        _("<span size=\"x-large\">Exporting the archive: %s</span>"),
-                        gsb_data_archive_get_name (archive_number));
-	    gtk_label_set_markup ( GTK_LABEL ( archive_export_label ), tmpstr);
-	    g_free ( tmpstr );
-        /* on remplace les slash des dates par des points
-         * avant de fixer le nom du fichier par défaut */
-        tmpstr = ( gchar * )gsb_data_archive_get_name ( archive_number );
-        tmpstr = my_strdelimit (tmpstr, "/", "." );
-	    gtk_file_chooser_set_current_name ( GTK_FILE_CHOOSER (archive_export_filechooser), tmpstr );
-	    gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER (archive_export_filechooser), gsb_file_get_last_path () );
-	    g_free ( tmpstr );
-	    /* need to set the next button to the next function,
-	     * because if the export failed and the user did previous button,
-	     * the next button stay in the close state */
-	    gsb_assistant_change_button_next ( assistant, GTK_STOCK_GO_FORWARD,
-					       GTK_RESPONSE_YES );
-
-	    break;
-
-	case ARCHIVE_EXPORT_ASSISTANT_SUCCESS:
-	    export_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (archive_export_filechooser));
-	    switch (gtk_combo_box_get_active (GTK_COMBO_BOX(archive_export_combobox)))
-	    {
-		case 0:
-		    /* GSB format */
-		    /* the gsb_file_save_save_file function write directly, so we need to check before
-		     * if the file exists */
-            /* on vérifie juste que l'extension existe */
-            if ( ! g_strrstr ( export_name, ".gsb" ) )
+        case ARCHIVE_EXPORT_ASSISTANT_INTRO:
+            break;
+
+        case ARCHIVE_EXPORT_ASSISTANT_CHOOSE:
+            if (archive_number)
+            gsb_assistant_sensitive_button_next (assistant, TRUE);
+            else
+            gsb_assistant_sensitive_button_next (assistant, FALSE);
+            break;
+
+        case ARCHIVE_EXPORT_ASSISTANT_NAME:
+            /* if we come here, an archive must have been selected,
+             * so needn't to check */
+            tmpstr = g_markup_printf_escaped (
+                            _("<span size=\"x-large\">Exporting the archive: %s</span>"),
+                            gsb_data_archive_get_name (archive_number));
+            gtk_label_set_markup ( GTK_LABEL ( archive_export_label ), tmpstr);
+            g_free ( tmpstr );
+            /* on remplace les slash des dates par des points
+             * avant de fixer le nom du fichier par défaut */
+            tmpstr = ( gchar * )gsb_data_archive_get_name ( archive_number );
+            tmpstr = my_strdelimit (tmpstr, "/", "." );
+            gtk_file_chooser_set_current_name ( GTK_FILE_CHOOSER (archive_export_filechooser), tmpstr );
+            gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER (archive_export_filechooser),
+                        gsb_file_get_last_path () );
+            g_free ( tmpstr );
+            /* need to set the next button to the next function,
+             * because if the export failed and the user did previous button,
+             * the next button stay in the close state */
+            gsb_assistant_change_button_next ( assistant, GTK_STOCK_GO_FORWARD,
+                               GTK_RESPONSE_YES );
+
+            break;
+
+        case ARCHIVE_EXPORT_ASSISTANT_SUCCESS:
+            export_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (archive_export_filechooser));
+            switch (gtk_combo_box_get_active (GTK_COMBO_BOX(archive_export_combobox)))
             {
-               export_name = g_strconcat ( export_name, ".gsb", NULL );
+                case 0:
+                    /* GSB format */
+                    /* the gsb_file_save_save_file function write directly, so we need to check before
+                     * if the file exists */
+                    /* on vérifie juste que l'extension existe */
+                    if ( ! g_strrstr ( export_name, ".gsb" ) )
+                    {
+                       export_name = g_strconcat ( export_name, ".gsb", NULL );
+                    }
+                    success = gsb_file_util_test_overwrite ( export_name )
+                    &&
+                    gsb_file_save_save_file ( export_name, conf->compress_backup, archive_number );
+                    break;
+
+                case 1:
+                    /* QIF format */
+                    if ( ! g_strrstr ( export_name, ".qif" ) )
+                    {
+                       export_name = g_strconcat ( export_name, ".qif", NULL );
+                    }
+                    success = gsb_qif_export_archive ( export_name, archive_number);
+                    break;
+
+                case 2:
+                    /* CSV format */
+                    if ( ! g_strrstr ( export_name, ".csv" ) )
+                    {
+                       export_name = g_strconcat ( export_name, ".csv", NULL );
+                    }
+                    success = gsb_csv_export_archive ( export_name, archive_number);
+                    break;
             }
-		    success = gsb_file_util_test_overwrite (export_name)
-			&&
-			gsb_file_save_save_file ( export_name, conf.compress_backup, archive_number);
-		    break;
-
-		case 1:
-		    /* QIF format */
-            if ( ! g_strrstr ( export_name, ".qif" ) )
-            {
-               export_name = g_strconcat ( export_name, ".qif", NULL );
-            }
-		    success = gsb_qif_export_archive ( export_name, archive_number);
-		    break;
-
-		case 2:
-		    /* CSV format */
-            if ( ! g_strrstr ( export_name, ".csv" ) )
+            /* now success = TRUE or FALSE, show the good final page of assistant */
+            if (success)
+            gtk_label_set_text ( GTK_LABEL (archive_export_label_success),
+                         _("Success !\nThe export of the archive finished successfully.\n\nYou can now close the assistant."));
+            else
             {
-               export_name = g_strconcat ( export_name, ".csv", NULL );
+                gtk_label_set_text ( GTK_LABEL (archive_export_label_success),
+                             _("Error !\nAn error occured while saving the archive.\n\nPlease press the Previous button to correct the problem,\nor the close button to cancel the action."));
+                gsb_assistant_sensitive_button_prev ( assistant, TRUE );
             }
-		    success = gsb_csv_export_archive ( export_name, archive_number);
-		    break;
-	    }
-	    /* now success = TRUE or FALSE, show the good final page of assistant */
-	    if (success)
-		gtk_label_set_text ( GTK_LABEL (archive_export_label_success),
-				     _("Success !\nThe export of the archive finished successfully.\n\nYou can now close the assistant."));
-	    else
-	    {
-		gtk_label_set_text ( GTK_LABEL (archive_export_label_success),
-				     _("Error !\nAn error occured while saving the archive.\n\nPlease press the Previous button to correct the problem,\nor the close button to cancel the action."));
-		gsb_assistant_sensitive_button_prev ( assistant, TRUE );
-	    }
     }
     return FALSE;
 }
diff --git a/src/gsb_assistant_file.c b/src/gsb_assistant_file.c
index 57bf2ef..7ec2e39 100644
--- a/src/gsb_assistant_file.c
+++ b/src/gsb_assistant_file.c
@@ -36,6 +36,7 @@
 /*START_INCLUDE*/
 #include "gsb_assistant_file.h"
 #include "affichage.h"
+#include "grisbi_app.h"
 #include "gsb_assistant.h"
 #include "gsb_automem.h"
 #include "gsb_bank.h"
@@ -603,7 +604,7 @@ static gboolean gsb_assistant_file_choose_filename ( GtkWidget *button,
     gchar *tmpstr;
 
     dialog = gtk_file_chooser_dialog_new ( _("Create filename"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
diff --git a/src/gsb_assistant_first.c b/src/gsb_assistant_first.c
index f08035a..abec6e9 100644
--- a/src/gsb_assistant_first.c
+++ b/src/gsb_assistant_first.c
@@ -36,6 +36,7 @@
 /*START_INCLUDE*/
 #include "gsb_assistant_first.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_assistant.h"
 #include "gsb_assistant_file.h"
 #include "gsb_automem.h"
@@ -197,18 +198,17 @@ static GtkWidget *gsb_assistant_first_page_2 ( GtkWidget *assistant )
     gchar *text;
     GtkWidget *hbox;
     GtkWidget *dialog;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     page = gtk_hbox_new (FALSE, 15);
-    gtk_container_set_border_width ( GTK_CONTAINER (page),
-				     10 );
+    gtk_container_set_border_width ( GTK_CONTAINER (page), 10 );
 
     size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
 
-    vbox = new_vbox_with_title_and_icon ( _("General configuration of Grisbi"),
-					  "generalities.png" );
-    gtk_box_pack_start ( GTK_BOX (page),
-			 vbox,
-			 TRUE, TRUE, 0 );
+    vbox = new_vbox_with_title_and_icon ( _("General configuration of Grisbi"), "generalities.png" );
+    gtk_box_pack_start ( GTK_BOX (page), vbox, TRUE, TRUE, 0 );
 
     /* configure the browser */
     paddingbox = new_paddingbox_with_title (vbox, FALSE, _("Web"));
@@ -222,8 +222,8 @@ static GtkWidget *gsb_assistant_first_page_2 ( GtkWidget *assistant )
     gtk_size_group_add_widget ( size_group, label );
     gtk_misc_set_alignment ( GTK_MISC ( label ), 0.0, 0.5 );
     gtk_table_attach ( GTK_TABLE(table), label, 0, 1, 1, 2,
-		       GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0 );
-    entry = gsb_automem_entry_new ( &conf.browser_command, NULL, NULL );
+                        GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0 );
+    entry = gsb_automem_entry_new ( &conf->browser_command, NULL, NULL );
     gtk_table_attach ( GTK_TABLE(table), entry, 1, 2, 1, 2, GTK_EXPAND|GTK_FILL, 0, 0, 0 );
 
     text = make_blue ( _("You may use %s to expand the URL - I.e: 'firefox -remote %s' ") );
@@ -235,28 +235,26 @@ static GtkWidget *gsb_assistant_first_page_2 ( GtkWidget *assistant )
     g_free ( text );
 
     /* Account file handling */
-    paddingbox = new_paddingbox_with_title (vbox, FALSE,
-					    _("Account files handling"));
+    paddingbox = new_paddingbox_with_title (vbox, FALSE, _("Account files handling"));
 
     /* Automatically load last file on startup? */
     button = gsb_automem_checkbutton_new (_("Automatically load last file on startup"),
-					  &conf.dernier_fichier_auto, NULL, NULL );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, 
-			 FALSE, FALSE, 0 );
+                        &conf->dernier_fichier_auto, NULL, NULL );
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), button,  FALSE, FALSE, 0 );
 
     /* automatically save file at closing */
     button = gsb_automem_checkbutton_new (_("Automatically save on exit"),
-					  &conf.sauvegarde_auto, NULL, NULL);
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, 
-			 FALSE, FALSE, 0 );
+                        &conf->sauvegarde_auto, NULL, NULL);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* crypt the grisbi file */
     if ( gsb_plugin_find ( "openssl" ) )
     {
         button = gsb_automem_checkbutton_new ( _("Encrypt Grisbi file"),
-                                               &(etat.crypt_file), G_CALLBACK (gsb_gui_encryption_toggled), NULL);
-        gtk_box_pack_start ( GTK_BOX ( paddingbox ), button,
-                             FALSE, FALSE, 0 );
+                        &(etat.crypt_file),
+                        G_CALLBACK ( gsb_gui_encryption_toggled ),
+                        NULL );
+        gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
         if ( etat.crypt_file )
             run.new_crypted_file = TRUE;
@@ -268,50 +266,45 @@ static GtkWidget *gsb_assistant_first_page_2 ( GtkWidget *assistant )
 
     /* Automatic backup ? */
     button = gsb_automem_checkbutton_new (_("Make a backup copy before saving files"),
-					  &conf.make_backup, NULL, NULL);
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), button,
-			 FALSE, FALSE, 0 );
+                        &conf->make_backup, NULL, NULL);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Automatic backup every x minutes */
     hbox = gtk_hbox_new ( FALSE, 6);
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox,
-			 FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0 );
 
     button = gsb_automem_checkbutton_new (_("Make a backup copy every "),
-					  &conf.make_backup_every_minutes,
-					  G_CALLBACK (gsb_file_automatic_backup_start), NULL);
-    gtk_box_pack_start ( GTK_BOX (hbox), button,
-			 FALSE, FALSE, 0 );
+                        &conf->make_backup_every_minutes,
+                        G_CALLBACK (gsb_file_automatic_backup_start),
+                        NULL );
+    gtk_box_pack_start ( GTK_BOX (hbox), button, FALSE, FALSE, 0 );
 
-    button = gsb_automem_spin_button_new ( &conf.make_backup_nb_minutes,
-					   G_CALLBACK (gsb_file_automatic_backup_change_time), NULL );
-    gtk_box_pack_start ( GTK_BOX (hbox), button,
-			 FALSE, FALSE, 0 );
+    button = gsb_automem_spin_button_new ( &conf->make_backup_nb_minutes,
+                        G_CALLBACK ( gsb_file_automatic_backup_change_time ),
+                        NULL );
+    gtk_box_pack_start ( GTK_BOX (hbox), button, FALSE, FALSE, 0 );
 
     label = gtk_label_new ( _(" minutes") );
-    gtk_box_pack_start ( GTK_BOX (hbox), label,
-			 FALSE, FALSE, 0 );
+    gtk_box_pack_start ( GTK_BOX (hbox), label, FALSE, FALSE, 0 );
 
     /* if automatic backup, choose a dir */
     hbox = gtk_hbox_new ( FALSE, 6 );
-    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox,
-			 FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0 );
 
     label = gtk_label_new ( _("Backup directory: ") );
-    gtk_box_pack_start ( GTK_BOX ( hbox ), label,
-			 FALSE, FALSE, 0);
+    gtk_box_pack_start ( GTK_BOX ( hbox ), label, FALSE, FALSE, 0 );
 
-    dialog = utils_files_create_file_chooser ( run.window,
+    dialog = utils_files_create_file_chooser ( GTK_WIDGET ( grisbi_app_get_active_window ( NULL ) ),
                         _("Select/Create backup directory") );
-    button = gtk_file_chooser_button_new_with_dialog (dialog);
-    gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER (button),
-                        gsb_dirs_get_user_data_dir () );
-    g_signal_connect ( G_OBJECT (button),
+
+    button = gtk_file_chooser_button_new_with_dialog ( dialog );
+    gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER ( button ),
+                        gsb_dirs_get_user_data_dir ( ) );
+    g_signal_connect ( G_OBJECT ( button ),
                         "selection-changed",
-                        G_CALLBACK (gsb_config_backup_dir_chosen),
+                        G_CALLBACK ( gsb_config_backup_dir_chosen ),
                         dialog );
-    gtk_box_pack_start ( GTK_BOX ( hbox ), button,
-			 FALSE, TRUE, 0);
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
     gtk_widget_show_all (page);
     return page;
diff --git a/src/gsb_bank.c b/src/gsb_bank.c
index 91df09b..33bb127 100644
--- a/src/gsb_bank.c
+++ b/src/gsb_bank.c
@@ -39,6 +39,7 @@
 /*START_INCLUDE*/
 #include "gsb_bank.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_account_property.h"
 #include "gsb_autofunc.h"
 #include "gsb_data_account.h"
@@ -1025,7 +1026,7 @@ static gboolean gsb_bank_edit_bank ( gint bank_number,
     gint result;
 
     dialog = gtk_dialog_new_with_buttons ( _("Edit bank"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_APPLY, GTK_RESPONSE_APPLY,
diff --git a/src/gsb_calendar_entry.c b/src/gsb_calendar_entry.c
index 88e250b..162218e 100644
--- a/src/gsb_calendar_entry.c
+++ b/src/gsb_calendar_entry.c
@@ -38,6 +38,7 @@
 
 /*START_INCLUDE*/
 #include "gsb_calendar_entry.h"
+#include "grisbi_app.h"
 #include "gsb_color.h"
 #include "gsb_form_widget.h"
 #include "structures.h"
@@ -454,7 +455,7 @@ GtkWidget *gsb_calendar_entry_popup ( GtkWidget *entry )
     popup = gtk_window_new ( GTK_WINDOW_TOPLEVEL );
     gtk_window_set_modal ( GTK_WINDOW ( popup ), TRUE );
     gtk_window_set_transient_for ( GTK_WINDOW ( popup ),
-                        GTK_WINDOW ( run.window ) );
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ) );
     gtk_window_set_decorated ( GTK_WINDOW ( popup ), FALSE );
     g_signal_connect_swapped ( G_OBJECT ( popup ),
 				"destroy",
diff --git a/src/gsb_currency.c b/src/gsb_currency.c
index 5d2167f..ec5f89e 100644
--- a/src/gsb_currency.c
+++ b/src/gsb_currency.c
@@ -37,6 +37,7 @@
 /*START_INCLUDE*/
 #include "gsb_currency.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_autofunc.h"
 #include "gsb_color.h"
 #include "gsb_currency_config.h"
@@ -530,7 +531,7 @@ void gsb_currency_exchange_dialog ( gint account_currency_number,
     }
 
     dialog = gtk_dialog_new_with_buttons ( _("Enter exchange rate"),
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL,
                         GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
                         GTK_STOCK_OK, GTK_RESPONSE_OK,
diff --git a/src/gsb_currency_config.c b/src/gsb_currency_config.c
index 3305e98..7b09cfe 100644
--- a/src/gsb_currency_config.c
+++ b/src/gsb_currency_config.c
@@ -34,28 +34,29 @@
 
 /*START_INCLUDE*/
 #include "gsb_currency_config.h"
+#include "categories_onglet.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_autofunc.h"
 #include "gsb_automem.h"
-#include "parametres.h"
 #include "gsb_currency.h"
 #include "gsb_data_account.h"
 #include "gsb_data_currency.h"
 #include "gsb_data_scheduled.h"
 #include "gsb_data_transaction.h"
+#include "gsb_dirs.h"
 #include "gsb_file.h"
 #include "gsb_locale.h"
+#include "imputation_budgetaire.h"
 #include "main.h"
+#include "parametres.h"
+#include "structures.h"
+#include "tiers_onglet.h"
 #include "traitement_variables.h"
 #include "utils.h"
-#include "tiers_onglet.h"
-#include "categories_onglet.h"
-#include "imputation_budgetaire.h"
-#include "utils_str.h"
-#include "structures.h"
 #include "utils_files.h"
+#include "utils_str.h"
 #include "erreur.h"
-#include "gsb_dirs.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
@@ -943,7 +944,7 @@ gboolean gsb_currency_config_add_currency ( GtkWidget *button,
     GtkTreeModel *model;
 
     dialog = gtk_dialog_new_with_buttons ( _("Add a currency"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_DIALOG_MODAL,
 					   GTK_STOCK_CLOSE, 1,
 					   NULL );
diff --git a/src/gsb_data_account.c b/src/gsb_data_account.c
index 7376f3f..d19de19 100644
--- a/src/gsb_data_account.c
+++ b/src/gsb_data_account.c
@@ -39,6 +39,7 @@
 #include "custom_list.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_data_currency.h"
 #include "gsb_data_form.h"
 #include "gsb_data_transaction.h"
@@ -1028,10 +1029,13 @@ gsb_real gsb_data_account_calculate_current_and_marked_balances ( gint account_n
     GDate *date_jour;
     GSList *tmp_list;
     gsb_real current_balance;
-	gsb_real current_balance_later = null_real;
+    gsb_real current_balance_later = null_real;
     gsb_real marked_balance;
-	gsb_real marked_balance_later = null_real;
+    gsb_real marked_balance_later = null_real;
     gint floating_point;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* devel_debug_int ( account_number ); */
     account = gsb_data_account_get_structure ( account_number );
@@ -1042,9 +1046,9 @@ gsb_real gsb_data_account_calculate_current_and_marked_balances ( gint account_n
     floating_point = gsb_data_currency_get_floating_point (account -> currency);
 
     current_balance = gsb_real_adjust_exponent ( account -> init_balance,
-						 floating_point );
+                        floating_point );
     marked_balance = gsb_real_adjust_exponent ( account -> init_balance,
-						floating_point );
+                        floating_point );
 
     date_jour = gdate_today ( );
 
@@ -1052,50 +1056,50 @@ gsb_real gsb_data_account_calculate_current_and_marked_balances ( gint account_n
 
     while (tmp_list)
     {
-	gint transaction_number;
-    gint res = 0;
-
-	transaction_number = gsb_data_transaction_get_transaction_number (tmp_list->data);
-    /* on regarde si on tient compte ou pas des échéances pour les soldes */
-    if ( conf.balances_with_scheduled )
-        res = 0;
-    else
-    {
-        const GDate *date;
+        gint transaction_number;
+        gint res = 0;
 
-        date = gsb_data_transaction_get_value_date_or_date ( transaction_number );
-        res = g_date_compare ( date_jour, date );
-    }
+        transaction_number = gsb_data_transaction_get_transaction_number (tmp_list->data);
+        /* on regarde si on tient compte ou pas des échéances pour les soldes */
+        if ( conf->balances_with_scheduled )
+            res = 0;
+        else
+        {
+            const GDate *date;
 
-	if ( gsb_data_transaction_get_account_number (transaction_number) == account_number
-	     &&
-	     !gsb_data_transaction_get_mother_transaction_number (transaction_number)
-         && res >= 0 )
-	{
-        gsb_real adjusted_amout = gsb_data_transaction_get_adjusted_amount (transaction_number, floating_point);
+            date = gsb_data_transaction_get_value_date_or_date ( transaction_number );
+            res = g_date_compare ( date_jour, date );
+        }
 
-        gsb_real tmp_balance = gsb_real_add ( current_balance, adjusted_amout );
-	    if( tmp_balance.mantissa != error_real.mantissa )
-	        current_balance = tmp_balance;
-        else
-            current_balance_later = gsb_real_add ( current_balance_later, adjusted_amout);
+        if ( gsb_data_transaction_get_account_number (transaction_number) == account_number
+             &&
+             !gsb_data_transaction_get_mother_transaction_number (transaction_number)
+             && res >= 0 )
+        {
+            gsb_real adjusted_amout = gsb_data_transaction_get_adjusted_amount (transaction_number, floating_point);
 
-	    if ( gsb_data_transaction_get_marked_transaction (transaction_number))
-	    {
-            tmp_balance = gsb_real_add ( marked_balance, adjusted_amout );
-    	    if( tmp_balance.mantissa != error_real.mantissa )
-	            marked_balance = tmp_balance;
+            gsb_real tmp_balance = gsb_real_add ( current_balance, adjusted_amout );
+            if( tmp_balance.mantissa != error_real.mantissa )
+                current_balance = tmp_balance;
             else
-                marked_balance_later = gsb_real_add ( marked_balance_later, adjusted_amout);
+                current_balance_later = gsb_real_add ( current_balance_later, adjusted_amout);
+
+            if ( gsb_data_transaction_get_marked_transaction (transaction_number))
+            {
+                tmp_balance = gsb_real_add ( marked_balance, adjusted_amout );
+                if( tmp_balance.mantissa != error_real.mantissa )
+                    marked_balance = tmp_balance;
+                else
+                    marked_balance_later = gsb_real_add ( marked_balance_later, adjusted_amout);
+            }
         }
-	}
-	tmp_list = tmp_list -> next;
+        tmp_list = tmp_list -> next;
     }
 
-    g_date_free ( date_jour ); 
+    g_date_free ( date_jour );
     account -> current_balance = gsb_real_add ( current_balance, current_balance_later );
     account -> marked_balance = gsb_real_add ( marked_balance, marked_balance_later );
-
+    /* return */
     return account -> current_balance;
 }
 
@@ -2881,7 +2885,7 @@ gsb_real gsb_data_account_calculate_current_day_balance ( gint account_number,
         tmp_list = tmp_list -> next;
     }
 
-    g_date_free ( date_jour ); 
+    g_date_free ( date_jour );
 
     return gsb_real_add ( current_balance, current_balance_later );
 }
diff --git a/src/gsb_data_partial_balance.c b/src/gsb_data_partial_balance.c
index 072207e..677d30c 100644
--- a/src/gsb_data_partial_balance.c
+++ b/src/gsb_data_partial_balance.c
@@ -36,6 +36,7 @@
 /*START_INCLUDE*/
 #include "gsb_data_partial_balance.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_currency_config.h"
 #include "gsb_currency.h"
 #include "gsb_data_account.h"
@@ -1531,14 +1532,14 @@ GtkWidget *gsb_partial_balance_create_dialog ( gint action, gint spin_value )
 
     if ( action == 1 )
         dialog = gtk_dialog_new_with_buttons ( _("Add a partial balance"),
-                            GTK_WINDOW ( run.window ),
+                            GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                             GTK_DIALOG_MODAL,
                             GTK_STOCK_CANCEL, 0,
                             GTK_STOCK_OK, 1,
                             NULL );
     else
         dialog = gtk_dialog_new_with_buttons ( _("Modify a partial balance"),
-                            GTK_WINDOW ( run.window ),
+                            GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                             GTK_DIALOG_MODAL,
                             GTK_STOCK_CANCEL, 0,
                             GTK_STOCK_OK, 1,
diff --git a/src/gsb_data_print_config.c b/src/gsb_data_print_config.c
index 6b56f04..e2338f7 100644
--- a/src/gsb_data_print_config.c
+++ b/src/gsb_data_print_config.c
@@ -36,6 +36,7 @@
 
 /*START_INCLUDE*/
 #include "gsb_data_print_config.h"
+#include "grisbi_app.h"
 #include "structures.h"
 /*END_INCLUDE*/
 
@@ -77,6 +78,9 @@ static PangoFontDescription *report_font_title = NULL;
 void gsb_data_print_config_init ( void )
 {
     PangoFontDescription *new_font;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* init transactions list config */
     draw_lines = TRUE;
@@ -89,24 +93,24 @@ void gsb_data_print_config_init ( void )
     draw_interval_dates = FALSE;
     draw_dates_are_value_dates = FALSE;
 
-    if ( conf.utilise_fonte_listes && conf.font_string )
-	new_font = pango_font_description_from_string ( conf.font_string );
+    if ( conf->utilise_fonte_listes && conf->font_string )
+        new_font = pango_font_description_from_string ( conf->font_string );
     else
-	new_font = pango_font_description_from_string  ("sans 6");
+        new_font = pango_font_description_from_string  ("sans 6");
 
     gsb_data_print_config_set_font_transaction ( new_font );
 
     if (font_title)
-	pango_font_description_free (font_title);
+        pango_font_description_free (font_title);
     font_title = pango_font_description_from_string  ("sans 12");
 
     /* init report config */
     if (report_font_transactions)
-	pango_font_description_free (report_font_transactions);
+        pango_font_description_free (report_font_transactions);
     report_font_transactions = pango_font_description_from_string  ("sans 6");
 
     if (report_font_title)
-	pango_font_description_free (report_font_title);
+        pango_font_description_free (report_font_title);
     report_font_title = pango_font_description_from_string  ("sans 12");
 }
 
diff --git a/src/gsb_file.c b/src/gsb_file.c
index 7358d35..ee2b457 100644
--- a/src/gsb_file.c
+++ b/src/gsb_file.c
@@ -32,21 +32,14 @@
 #include <glib/gstdio.h>
 #include <glib/gi18n.h>
 
-#ifdef _WIN32
-#	if defined(_MSC_VER) || defined(_MINGW)
-#		include <realpath.h>
-#	else
-#		include <stdlibx.h> // For realpath()
-#	endif /*_MSC_VER */
-#endif /* _WIN32 */
-
 /*START_INCLUDE*/
 #include "gsb_file.h"
-#include "menu.h"
-#include "utils.h"
-#include "fenetre_principale.h"
+#include "accueil.h"
+#include "affichage_liste.h"
 #include "dialog.h"
-#include "utils_file_selection.h"
+#include "fenetre_principale.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "gsb_account_property.h"
 #include "gsb_assistant_account.h"
 #include "gsb_assistant_file.h"
@@ -56,24 +49,25 @@
 #include "gsb_file_load.h"
 #include "gsb_file_save.h"
 #include "gsb_file_util.h"
-#include "navigation.h"
-#include "accueil.h"
 #include "gsb_real.h"
 #include "gsb_status.h"
 #include "gsb_transactions_list.h"
-#include "traitement_variables.h"
 #include "main.h"
-#include "utils_str.h"
+#include "menu.h"
+#include "navigation.h"
 #include "parametres.h"
-#include "affichage_liste.h"
+#include "structures.h"
+#include "traitement_variables.h"
 #include "transaction_list.h"
+#include "utils.h"
 #include "utils_files.h"
-#include "structures.h"
+#include "utils_file_selection.h"
+#include "utils_str.h"
 #include "erreur.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
-static void gsb_file_append_name_to_opened_list ( gchar * path_fichier );
+static void gsb_file_append_name_to_opened_list ( gchar *path_fichier );
 static gboolean gsb_file_automatic_backup ( gpointer null );
 static gchar *gsb_file_dialog_ask_name ( void );
 static gint gsb_file_dialog_save ( void );
@@ -95,7 +89,6 @@ gint id_timeout = 0;
 /*START_EXTERN*/
 extern gchar *copy_old_filename;
 extern gchar *nom_fichier_comptes;
-extern gchar **tab_noms_derniers_fichiers_ouverts;
 extern GtkWidget *table_etat;
 extern gchar *titre_fichier;
 extern GtkWidget *tree_view_vbox;
@@ -115,7 +108,7 @@ gboolean gsb_file_new ( void )
 {
     /* continue only if closing the file is ok */
     if ( !gsb_file_close () )
-	return FALSE;
+        return FALSE;
 
     /* set up all the default variables */
     init_variables ();
@@ -166,22 +159,25 @@ void gsb_file_new_gui ( void )
     GtkWidget *notebook_general;
 
     /* dégrise les menus nécessaire */
-    menus_sensitifs ( TRUE );
+    gsb_menu_sensitive ( TRUE );
 
-    /*     récupère l'organisation des colonnes  */
+    /* récupère l'organisation des colonnes  */
     recuperation_noms_colonnes_et_tips ();
 
     /* Create main widget. */
     gsb_status_message ( _("Creating main window") );
-    main_vbox = g_object_get_data ( G_OBJECT ( run.window ), "main_vbox" );
+    main_vbox = grisbi_window_get_widget_by_name ( "main_vbox" );
+
+    /* affiche headings_bar si nécessaire */
+    gsb_gui_update_show_headings ( );
     gtk_box_pack_start ( GTK_BOX ( main_vbox ), gsb_gui_create_general_widgets ( ), TRUE, TRUE, 0 );
 
     /* create the model */
     if (!transaction_list_create ())
     {
-    dialogue_error (_("The model of the list couldn't be created... "
+        dialogue_error (_("The model of the list couldn't be created... "
                         "Bad things will happen very soon..."));
-    return;
+        return;
     }
 
     /* Create transaction list. */
@@ -219,11 +215,11 @@ gboolean gsb_file_open_menu ( void )
     GtkFileFilter * filter;
 
     selection_fichier = gtk_file_chooser_dialog_new ( _("Open an accounts file"),
-					   GTK_WINDOW ( run.window ),
-					   GTK_FILE_CHOOSER_ACTION_OPEN,
-					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-					   GTK_STOCK_OPEN, GTK_RESPONSE_OK,
-					   NULL);
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
+                        GTK_FILE_CHOOSER_ACTION_OPEN,
+                        GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+                        GTK_STOCK_OPEN, GTK_RESPONSE_OK,
+                        NULL);
 
     gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER ( selection_fichier ), gsb_file_get_last_path () );
     gtk_window_set_position ( GTK_WINDOW ( selection_fichier ), GTK_WIN_POS_CENTER_ON_PARENT );
@@ -239,24 +235,25 @@ gboolean gsb_file_open_menu ( void )
     gtk_file_filter_add_pattern ( filter, "*" );
     gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( selection_fichier ), filter );
 
-    switch ( gtk_dialog_run ( GTK_DIALOG (selection_fichier)))
+    switch ( gtk_dialog_run ( GTK_DIALOG ( selection_fichier) ) )
     {
-	case GTK_RESPONSE_OK:
-	    if ( gsb_file_close() )
-	    {
-		gtk_widget_hide ( selection_fichier );
-		nom_fichier_comptes = file_selection_get_filename ( GTK_FILE_CHOOSER ( selection_fichier ) );
-        gsb_file_update_last_path ( file_selection_get_last_directory (
-                        GTK_FILE_CHOOSER ( selection_fichier),
-                        TRUE ) );
-		gsb_file_open_file (nom_fichier_comptes);
-	    }
-	    break;
-      default:
-	  break;
+    case GTK_RESPONSE_OK:
+        if ( gsb_file_close() )
+        {
+            gtk_widget_hide ( selection_fichier );
+            nom_fichier_comptes = file_selection_get_filename ( GTK_FILE_CHOOSER ( selection_fichier ) );
+            gsb_file_update_last_path ( file_selection_get_last_directory (
+                            GTK_FILE_CHOOSER ( selection_fichier ),
+                            TRUE ) );
+            gsb_file_open_file ( nom_fichier_comptes );
+        }
+        break;
+    default:
+        break;
     }
-    gsb_file_update_last_path (file_selection_get_last_directory (GTK_FILE_CHOOSER (selection_fichier), TRUE));
+
     gtk_widget_destroy ( selection_fichier );
+
     return FALSE;
 }
 
@@ -270,14 +267,14 @@ gboolean gsb_file_open_menu ( void )
  * */
 void gsb_file_update_last_path ( const gchar *last_path )
 {
-devel_debug ( last_path );
-    if (last_path
-	&&
-	strlen (last_path))
+    devel_debug ( last_path );
+
+    if ( last_path && strlen ( last_path ) )
     {
-	if (last_path_used)
-	    g_free (last_path_used);
-	last_path_used = my_strdup (last_path);
+        if ( last_path_used )
+            g_free ( last_path_used );
+
+        last_path_used = my_strdup ( last_path );
     }
 }
 
@@ -338,12 +335,21 @@ void gsb_file_set_backup_path ( const gchar *path )
 gboolean gsb_file_open_direct_menu ( GtkMenuItem *item,
                         gint *file_number_ptr )
 {
+    GrisbiApp *app;
+    GrisbiAppConf *conf;
+    gint file_number;
+
     /* continue only if can close the current file */
-    if ( !gsb_file_close() )
-	return FALSE;
+    if ( !gsb_file_close ( ) )
+        return FALSE;
+
+    app = grisbi_app_get_default ( );
+    conf = grisbi_app_get_conf ( );
 
-    nom_fichier_comptes = my_strdup (tab_noms_derniers_fichiers_ouverts[GPOINTER_TO_INT (file_number_ptr)]);
-    gsb_file_open_file (nom_fichier_comptes);
+    file_number = GPOINTER_TO_INT ( file_number_ptr );
+    nom_fichier_comptes = my_strdup ( conf->tab_noms_derniers_fichiers_ouverts[file_number] );
+
+    gsb_file_open_file ( nom_fichier_comptes );
 
     return FALSE;
 }
@@ -361,14 +367,16 @@ gboolean gsb_file_open_direct_menu ( GtkMenuItem *item,
 gboolean gsb_file_open_file ( gchar *filename )
 {
     GSList *list_tmp;
+    GrisbiAppConf *conf;
 
     devel_debug (filename);
 
     if ( !filename
-	 ||
-	 !strlen (filename))
-	return FALSE;
+     ||
+     !strlen (filename))
+        return FALSE;
 
+    conf = grisbi_app_get_conf ( );
     gsb_status_wait ( TRUE );
     gsb_status_message ( _("Loading accounts") );
 
@@ -377,11 +385,11 @@ gboolean gsb_file_open_file ( gchar *filename )
      * when returning from gsb_file_load_open_file!
      * making application crashes! */
 
-    if ( gsb_file_load_open_file (filename))
+    if ( gsb_file_load_open_file ( filename ) )
     {
         /* the file has been opened succesfully */
         /* we make a backup if necessary */
-        if ( conf.sauvegarde_demarrage )
+        if ( conf->sauvegarde_demarrage )
         {
             gsb_file_save_backup ();
             gsb_file_set_modified ( FALSE );
@@ -392,10 +400,10 @@ gboolean gsb_file_open_file ( gchar *filename )
         /* Loading failed. */
         gsb_status_message ( _("Failed to load accounts") );
 
-        if ( conf.sauvegarde_demarrage || conf.make_backup || conf.make_backup_every_minutes )
+        if ( conf->sauvegarde_demarrage || conf->make_backup || conf->make_backup_every_minutes )
         {
             gchar *tmpstr = g_strdup_printf ( _("Error loading file '%s'"), filename);
-            gchar *tmpstr2 = g_strdup_printf ( 
+            gchar *tmpstr2 = g_strdup_printf (
                                 _("Grisbi was unable to load file. You should find the last "
                                   "backups in '%s', they are saved with date and time into "
                                   "their name so you should find easily the last backup "
@@ -414,8 +422,8 @@ gboolean gsb_file_open_file ( gchar *filename )
             gchar *tmpstr = g_strdup_printf ( _("Error loading file '%s'"), filename);
             gchar *tmpstr2;
 
-            if (gsb_file_get_backup_path ())
-            tmpstr2 = g_strdup_printf ( 
+            if ( gsb_file_get_backup_path ( ) )
+                tmpstr2 = g_strdup_printf (
                             _("Grisbi was unable to load file and the backups seem not to "
                               "be activated... This is a bad thing.\nYour backup path is '%s', "
                               "try to find if earlier you had some backups in there ?\n"
@@ -423,7 +431,7 @@ gboolean gsb_file_open_file ( gchar *filename )
                               "to find what happened to you current file."),
                             gsb_file_get_backup_path ());
             else
-            tmpstr2 = my_strdup ( _("Grisbi was unable to load file and the backups seem not "
+                tmpstr2 = my_strdup ( _("Grisbi was unable to load file and the backups seem not "
                                     "to be activated... This is a bad thing.\n"
                                     "Please contact the Grisbi's team on "
                                     "devel at listes.grisbi.org to find what happened to you "
@@ -437,8 +445,11 @@ gboolean gsb_file_open_file ( gchar *filename )
         }
     }
 
+    /* on fixe le nom de fichier associé à la fenêtre active */
+    grisbi_app_set_active_filename ( nom_fichier_comptes );
+
     /* ok, here the file or backup is loaded */
-    gsb_status_message ( _("Checking schedulers"));
+    gsb_status_message ( _("Checking schedulers") );
 
     /* the the name in the last opened files */
     gsb_file_append_name_to_opened_list ( filename );
@@ -451,24 +462,24 @@ gboolean gsb_file_open_file ( gchar *filename )
     gsb_file_new_gui ();
 
     /* check the amounts of all the accounts */
-    gsb_status_message ( _("Checking amounts"));
-    list_tmp = gsb_data_account_get_list_accounts ();
+    gsb_status_message ( _("Checking amounts") );
+    list_tmp = gsb_data_account_get_list_accounts ( );
 
     while ( list_tmp )
     {
-	gint account_number;
-	volatile gint value;
-
-	account_number = gsb_data_account_get_no_account ( list_tmp -> data );
-
-	/* set the minimum balances to be shown or not */
-	value = gsb_real_cmp ( gsb_data_account_get_current_balance (account_number), 
-                          gsb_data_account_get_mini_balance_authorized (account_number) ) == -1;
-    gsb_data_account_set_mini_balance_authorized_message ( account_number, value);
-    value = gsb_real_cmp ( gsb_data_account_get_current_balance (account_number),
-                          gsb_data_account_get_mini_balance_wanted (account_number) ) == -1;
-    gsb_data_account_set_mini_balance_wanted_message ( account_number, value);
-	list_tmp = list_tmp -> next;
+        gint account_number;
+        volatile gint value;
+
+        account_number = gsb_data_account_get_no_account ( list_tmp -> data );
+
+        /* set the minimum balances to be shown or not */
+        value = gsb_real_cmp ( gsb_data_account_get_current_balance (account_number),
+                              gsb_data_account_get_mini_balance_authorized (account_number) ) == -1;
+        gsb_data_account_set_mini_balance_authorized_message ( account_number, value);
+        value = gsb_real_cmp ( gsb_data_account_get_current_balance (account_number),
+                              gsb_data_account_get_mini_balance_wanted (account_number) ) == -1;
+        gsb_data_account_set_mini_balance_wanted_message ( account_number, value);
+        list_tmp = list_tmp -> next;
     }
 
     /* set Grisbi title */
@@ -527,45 +538,52 @@ gboolean gsb_file_save_file ( gint origine )
 {
     gint etat_force, result;
     gchar *nouveau_nom_enregistrement;
+    GrisbiAppConf *conf;
 
     devel_debug_int (origine);
 
+    conf = grisbi_app_get_conf ( );
+
     etat_force = 0;
 
     if ( ( !gsb_file_get_modified ( ) && origine != -2 ) ||
-	 !gsb_data_account_get_accounts_amount () )
+     !gsb_data_account_get_accounts_amount () )
     {
-	notice_debug ( "nothing done in gsb_file_save_file" );
-	return ( TRUE );
+        notice_debug ( "nothing done in gsb_file_save_file" );
+        return ( TRUE );
     }
 
     /* si le fichier de comptes n'a pas de nom ou si on enregistre sous un nouveau nom */
     /*     c'est ici */
 
     if ( !nom_fichier_comptes || origine == -2 )
-	nouveau_nom_enregistrement = gsb_file_dialog_ask_name ();
+        nouveau_nom_enregistrement = gsb_file_dialog_ask_name ();
     else
-	nouveau_nom_enregistrement = nom_fichier_comptes;
+        nouveau_nom_enregistrement = nom_fichier_comptes;
 
     if ( !nouveau_nom_enregistrement )
-	return FALSE;
+        return FALSE;
 
     /*     on vérifie que le fichier n'est pas locké */
     if ( etat.fichier_deja_ouvert
-	 &&
-	 !conf.force_enregistrement
-	 &&
-	 origine != -2 )
+     &&
+     !conf->force_enregistrement
+     &&
+     origine != -2 )
     {
-        gchar* tmpstr1 = g_strdup_printf( _("Grisbi was unable to save this file because it is locked.  Please save it with another name or activate the \"%s\" option in preferences."),
-					       _("Force saving of locked files" ) );
-	gchar* tmpstr2 = g_strdup_printf( _("Can not save file \"%s\""),
-					       nom_fichier_comptes );
-	dialogue_error_hint ( tmpstr1,
-			      tmpstr2 );
-	g_free ( tmpstr1 );
-	g_free ( tmpstr2 );
-	return ( FALSE );
+        gchar *tmpstr1;
+        gchar *tmpstr2;
+
+        tmpstr1 = g_strdup_printf( _("Grisbi was unable to save this file because it is locked. "
+                        "Please save it with another name or activate the \"%s\" option in preferences."),
+                        ("Force saving of locked files" ) );
+        tmpstr2 = g_strdup_printf( _("Can not save file \"%s\""), nom_fichier_comptes );
+        dialogue_error_hint ( tmpstr1, tmpstr2 );
+
+        g_free ( tmpstr1 );
+        g_free ( tmpstr2 );
+
+        return ( FALSE );
     }
 
         /* Si le fichier est un d'une version précédente de grisbi on demande si on l'efface */
@@ -577,32 +595,32 @@ gboolean gsb_file_save_file ( gint origine )
     }
 
     /* make backup before saving if asked */
-    if (conf.make_backup)
-	gsb_file_save_backup();
+    if ( conf->make_backup )
+        gsb_file_save_backup();
 
     /*   on a maintenant un nom de fichier */
     /*     et on sait qu'on peut sauvegarder */
     gsb_status_message ( _("Saving file") );
 
     result = gsb_file_save_save_file ( nouveau_nom_enregistrement,
-				       conf.compress_file,
-				       FALSE );
+                        conf->compress_file,
+                        FALSE );
 
     if ( result )
     {
-	/* saving was right, so unlock the last name */
-	gsb_file_util_modify_lock ( FALSE );
+        /* saving was right, so unlock the last name */
+        gsb_file_util_modify_lock ( FALSE );
 
-	nom_fichier_comptes = nouveau_nom_enregistrement;
+        nom_fichier_comptes = nouveau_nom_enregistrement;
 
-	/* and lock the new name */
-	gsb_file_util_modify_lock ( TRUE );
+        /* and lock the new name */
+        gsb_file_util_modify_lock ( TRUE );
 
-	/* update variables */
-	etat.fichier_deja_ouvert = 0;
-        gsb_file_set_modified ( FALSE );
-	gsb_main_set_grisbi_title ( gsb_gui_navigation_get_current_account ( ) );
-	gsb_file_append_name_to_opened_list ( nom_fichier_comptes );
+        /* update variables */
+        etat.fichier_deja_ouvert = 0;
+            gsb_file_set_modified ( FALSE );
+        gsb_main_set_grisbi_title ( gsb_gui_navigation_get_current_account ( ) );
+        gsb_file_append_name_to_opened_list ( nom_fichier_comptes );
     }
 
     gsb_status_message ( _("Done") );
@@ -625,6 +643,9 @@ gboolean gsb_file_save_backup ( void )
     struct tm *day_time;
     time_t temps;
     gchar *name;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     if (!gsb_file_get_backup_path ()
 	||
@@ -648,7 +669,7 @@ gboolean gsb_file_save_backup ( void )
     }
     /* create a filename for the backup :
      * filename_yyyymmddTmmhhss.gsb */
-    if ( conf.make_bakup_single_file )
+    if ( conf->make_bakup_single_file )
     {
         filename =  g_strdup_printf ( "%s%s%s_backup.gsb",
                             gsb_file_get_backup_path ( ),
@@ -671,7 +692,7 @@ gboolean gsb_file_save_backup ( void )
                             day_time -> tm_sec );
     }
 
-    retour = gsb_file_save_save_file ( filename, conf.compress_backup, FALSE );
+    retour = gsb_file_save_save_file ( filename, conf->compress_backup, FALSE );
 
     g_free (filename);
     g_free (name);
@@ -693,7 +714,7 @@ gboolean gsb_file_save_backup ( void )
 gboolean gsb_file_automatic_backup_start ( GtkWidget *checkbutton,
                         gpointer null )
 {
-    devel_debug_int (conf.make_backup_every_minutes);
+/*     devel_debug_int (conf->make_backup_every_minutes);  */
 
     /* if there is already a timeout, we remove it */
     if (id_timeout)
@@ -703,12 +724,15 @@ gboolean gsb_file_automatic_backup_start ( GtkWidget *checkbutton,
     }
 
     /* launch the timeout only if active and if there is some minutes */
-    if (conf.make_backup_every_minutes
-	&&
-	conf.make_backup_nb_minutes )
-	id_timeout = g_timeout_add_seconds ( conf.make_backup_nb_minutes * 60,
-					     (GSourceFunc) (gsb_file_automatic_backup),
-					     NULL );
+/*     if (conf->make_backup_every_minutes
+ * 	&&
+ * 	conf->make_backup_nb_minutes )
+ * 	id_timeout = g_timeout_add_seconds ( conf->make_backup_nb_minutes * 60,
+ * 					     (GSourceFunc) (gsb_file_automatic_backup),
+ * 					     NULL );
+ */
+
+    /* return */
     return FALSE;
 }
 
@@ -723,21 +747,25 @@ gboolean gsb_file_automatic_backup_start ( GtkWidget *checkbutton,
 gboolean gsb_file_automatic_backup_change_time ( GtkWidget *spinbutton,
                         gpointer null )
 {
-    devel_debug_int (conf.make_backup_nb_minutes);
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+    devel_debug_int (conf->make_backup_nb_minutes);
 
     /* if there is already a timeout, we stop it */
     if (id_timeout)
     {
-	g_source_remove (id_timeout);
-	id_timeout = 0;
+        g_source_remove (id_timeout);
+        id_timeout = 0;
     }
 
     /* set a new timeout only if there is an interval */
-    if (conf.make_backup_nb_minutes)
-	id_timeout = g_timeout_add_seconds ( conf.make_backup_nb_minutes * 60,
-					     (GSourceFunc) (gsb_file_automatic_backup),
-					     NULL );
+    if (conf->make_backup_nb_minutes)
+        id_timeout = g_timeout_add_seconds ( conf->make_backup_nb_minutes * 60,
+                        (GSourceFunc) (gsb_file_automatic_backup),
+                        NULL );
 
+    /* return */
     return FALSE;
 }
 
@@ -752,14 +780,17 @@ gboolean gsb_file_automatic_backup_change_time ( GtkWidget *spinbutton,
  * */
 gboolean gsb_file_automatic_backup ( gpointer null )
 {
+    GrisbiAppConf *conf;
+
     devel_debug (NULL);
+    conf = grisbi_app_get_conf ( );
 
-    if (!conf.make_backup_every_minutes)
+    if (!conf->make_backup_every_minutes)
 	/* stop the timeout */
 	return FALSE;
 
     /* we save only if there is a nb of minutes, but don't stop the timer if not */
-    if (conf.make_backup_nb_minutes)
+    if (conf->make_backup_nb_minutes)
 	gsb_file_save_backup ();
 
     return TRUE;
@@ -785,14 +816,17 @@ static gint gsb_file_dialog_save ( void )
     gchar* message;
     gchar* tmpstr1;
     gchar* tmpstr2;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /*     si le fichier n'est pas modifié on renvoie qu'on ne veut pas enregistrer */
     if ( !gsb_file_get_modified ( ) )
         return GTK_RESPONSE_NO;
 
-    if ( conf.sauvegarde_auto
+    if ( conf->sauvegarde_auto
      &&
-     ( !etat.fichier_deja_ouvert || conf.force_enregistrement )
+     ( !etat.fichier_deja_ouvert || conf->force_enregistrement )
      &&
      nom_fichier_comptes )
       return GTK_RESPONSE_OK;
@@ -800,12 +834,12 @@ static gint gsb_file_dialog_save ( void )
     /*     si le fichier était déjà locké et que force enregistrement n'est pas mis, */
     /*     on prévient ici */
 
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_MESSAGE_WARNING,
                         GTK_BUTTONS_NONE,
                         NULL );
-    if ( etat.fichier_deja_ouvert && !conf.force_enregistrement )
+    if ( etat.fichier_deja_ouvert && !conf->force_enregistrement )
     {
         hint = g_strdup ( _("Save locked files?") );
         message = g_strdup_printf ( _("The document '%s' is locked but modified. "
@@ -886,7 +920,7 @@ static gchar *gsb_file_dialog_ask_name ( void )
     gint result;
 
     dialog = gtk_file_chooser_dialog_new ( _("Name the accounts file"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_FILE_CHOOSER_ACTION_SAVE,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
@@ -949,43 +983,42 @@ gboolean gsb_file_close ( void )
     devel_debug (NULL);
 
     if ( !assert_account_loaded () )
-	return ( TRUE );
+        return ( TRUE );
 
     /* ask for saving */
     result = gsb_file_dialog_save();
 
     switch ( result )
     {
-	case GTK_RESPONSE_OK:
-
-	    /* try to save */
-	    if ( !gsb_file_save_file (-1) )
-		return ( FALSE );
-
-	case GTK_RESPONSE_NO :
-	     /* remove the lock */
-	    if ( !etat.fichier_deja_ouvert
-		 &&
-		 gsb_data_account_get_accounts_amount ()
-		 &&
-		 nom_fichier_comptes )
-		gsb_file_util_modify_lock ( FALSE );
-        gsb_gui_init_general_vbox ( );
-
-	    /* free all the variables */
- 	    init_variables ();
+    case GTK_RESPONSE_OK:
+
+        /* try to save */
+        if ( !gsb_file_save_file (-1) )
+            return ( FALSE );
+
+    case GTK_RESPONSE_NO :
+        /* remove the lock */
+        if ( !etat.fichier_deja_ouvert
+         &&
+         gsb_data_account_get_accounts_amount ()
+         &&
+         nom_fichier_comptes )
+            gsb_file_util_modify_lock ( FALSE );
+
+        /* free all the variables */
+        init_variables ();
         gsb_account_property_clear_config ( );
 
         gsb_main_set_grisbi_title ( -1 );
 
-	    menus_sensitifs ( FALSE );
+        menus_sensitifs ( FALSE );
 
         table_etat = NULL;
 
-	    return ( TRUE );
+        return ( TRUE );
 
-	default :
-	    return FALSE;
+    default :
+        return FALSE;
     }
 }
 
@@ -997,23 +1030,26 @@ gboolean gsb_file_close ( void )
  *
  * \return
  * */
-void gsb_file_append_name_to_opened_list ( gchar * path_fichier )
+void gsb_file_append_name_to_opened_list ( gchar *path_fichier )
 {
     gint i, position;
-    gchar * dernier, * real_name;
+    gchar *dernier, *real_name;
+    GrisbiAppConf *conf;
 
     devel_debug (path_fichier);
 
+    conf = grisbi_app_get_conf ( );
+
     if ( !path_fichier )
         return;
 
-    if ( conf.nb_max_derniers_fichiers_ouverts == 0 )
+    if ( conf->nb_max_derniers_fichiers_ouverts == 0 )
         return;
 
-    if ( conf.nb_derniers_fichiers_ouverts < 0 )
-        conf.nb_derniers_fichiers_ouverts = 0;
+    if ( conf->nb_derniers_fichiers_ouverts < 0 )
+        conf->nb_derniers_fichiers_ouverts = 0;
 
-    if ( !g_path_is_absolute ( nom_fichier_comptes ) )
+    if ( nom_fichier_comptes && !g_path_is_absolute ( nom_fichier_comptes ) )
     {
         real_name = g_strdup( (gchar*)realpath ( nom_fichier_comptes, NULL ));
         if ( ! real_name )
@@ -1032,13 +1068,13 @@ void gsb_file_append_name_to_opened_list ( gchar * path_fichier )
      * noms */
     position = 0;
 
-    if ( conf.nb_derniers_fichiers_ouverts )
+    if ( conf->nb_derniers_fichiers_ouverts )
     {
-        for ( i = 0; i < conf.nb_derniers_fichiers_ouverts; i++ )
+        for ( i = 0; i < conf->nb_derniers_fichiers_ouverts; i++ )
         {
-            if ( !strcmp ( real_name, tab_noms_derniers_fichiers_ouverts[i] ) )
+            if ( !strcmp ( real_name, conf->tab_noms_derniers_fichiers_ouverts[i] ) )
             {
-                /* 	si ce fichier est déjà le dernier ouvert, on laisse tomber */
+                /* si ce fichier est déjà le dernier ouvert, on laisse tomber */
                 if ( !i )
                 {
                     g_free ( real_name );
@@ -1055,11 +1091,11 @@ void gsb_file_append_name_to_opened_list ( gchar * path_fichier )
         {
             /* le fichier a été trouvé, on fait juste une rotation */
             for ( i = position; i > 0 ; i-- )
-                tab_noms_derniers_fichiers_ouverts[i] = tab_noms_derniers_fichiers_ouverts[i-1];
+                conf->tab_noms_derniers_fichiers_ouverts[i] = conf->tab_noms_derniers_fichiers_ouverts[i-1];
             if ( real_name )
-                tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( real_name );
+                conf->tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( real_name );
             else
-                tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( "<no file>" );
+                conf->tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( "<no file>" );
 
             affiche_derniers_fichiers_ouverts ( );
             g_free ( real_name );
@@ -1069,25 +1105,29 @@ void gsb_file_append_name_to_opened_list ( gchar * path_fichier )
         /* le fichier est nouveau, on décale tout d'un cran et on met le nouveau à 0 */
 
         /* si on est déjà au max, c'est juste un décalage avec perte du dernier */
-        /* on garde le ptit dernier dans le cas contraire */
-        dernier = tab_noms_derniers_fichiers_ouverts[conf.nb_derniers_fichiers_ouverts-1];
-        for ( i = conf.nb_derniers_fichiers_ouverts - 1 ; i > 0 ; i-- )
-            tab_noms_derniers_fichiers_ouverts[i] = tab_noms_derniers_fichiers_ouverts[i-1];
+        /* on garde le petit dernier dans le cas contraire */
+        dernier = conf->tab_noms_derniers_fichiers_ouverts[conf->nb_derniers_fichiers_ouverts-1];
+        for ( i = conf->nb_derniers_fichiers_ouverts - 1 ; i > 0 ; i-- )
+            conf->tab_noms_derniers_fichiers_ouverts[i] = conf->tab_noms_derniers_fichiers_ouverts[i-1];
     }
     else
         dernier = NULL;
 
-    if ( conf.nb_derniers_fichiers_ouverts < conf.nb_max_derniers_fichiers_ouverts )
+    if ( conf->nb_derniers_fichiers_ouverts < conf->nb_max_derniers_fichiers_ouverts )
     {
-        tab_noms_derniers_fichiers_ouverts = g_realloc ( tab_noms_derniers_fichiers_ouverts,
-						    ( ++conf.nb_derniers_fichiers_ouverts ) * sizeof ( gpointer ) );
-        tab_noms_derniers_fichiers_ouverts[conf.nb_derniers_fichiers_ouverts-1] = dernier;
+        conf->tab_noms_derniers_fichiers_ouverts = g_realloc ( conf->tab_noms_derniers_fichiers_ouverts,
+                                            ( ++conf->nb_derniers_fichiers_ouverts ) * sizeof ( gpointer ) );
+
+        conf->tab_noms_derniers_fichiers_ouverts[conf->nb_derniers_fichiers_ouverts-1] = dernier;
     }
 
-    tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( real_name );
+    conf->tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( real_name );
 
     affiche_derniers_fichiers_ouverts();
+
     g_free ( real_name );
+
+    /* return */
 }
 
 
@@ -1101,20 +1141,23 @@ void gsb_file_append_name_to_opened_list ( gchar * path_fichier )
 void gsb_file_remove_name_from_opened_list ( gchar *filename )
 {
     gint i, j;
+    GrisbiAppConf *conf;
+
+    devel_debug (filename);
+
+    conf = grisbi_app_get_conf ( );
 
-    devel_debug ( filename );
     efface_derniers_fichiers_ouverts();
-    devel_debug_int ( conf.nb_derniers_fichiers_ouverts );
 
-    for ( i = 0 ; i < conf.nb_derniers_fichiers_ouverts; i++ )
+    for ( i = 0; i < conf->nb_derniers_fichiers_ouverts; i++ )
     {
-        if ( strcmp (filename, tab_noms_derniers_fichiers_ouverts[i]) == 0 )
+        if ( strcmp (filename, conf->tab_noms_derniers_fichiers_ouverts[i]) == 0 )
         {
-            for ( j = i; ( j + 1 ) < conf.nb_derniers_fichiers_ouverts; j++ )
+            for ( j = i; ( j + 1 ) < conf->nb_derniers_fichiers_ouverts; j++ )
             {
-                tab_noms_derniers_fichiers_ouverts[j] = tab_noms_derniers_fichiers_ouverts[j+1];
+                conf->tab_noms_derniers_fichiers_ouverts[j] = conf->tab_noms_derniers_fichiers_ouverts[j+1];
             }
-            conf.nb_derniers_fichiers_ouverts--;
+            conf->nb_derniers_fichiers_ouverts--;
         }
     }
     affiche_derniers_fichiers_ouverts();
@@ -1134,11 +1177,11 @@ void gsb_file_save_remove_old_file ( gchar *filename )
     GtkWidget *image;
     GtkWidget *label;
     gint resultat;
-	gchar *tmpstr;
+    gchar *tmpstr;
 
     dialog = gtk_dialog_new_with_buttons ( 
                         _("Delete file copy from a previous version of grisbi"),
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_STOCK_NO, GTK_RESPONSE_CANCEL,
                         GTK_STOCK_YES, GTK_RESPONSE_OK,
diff --git a/src/gsb_file_config.c b/src/gsb_file_config.c
index f373fee..26113f2 100644
--- a/src/gsb_file_config.c
+++ b/src/gsb_file_config.c
@@ -41,9 +41,9 @@
 #include "gsb_file_config.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_dirs.h"
 #include "gsb_file.h"
-#include "structures.h"
 #include "utils_buttons.h"
 #include "utils_files.h"
 #include "utils_str.h"
@@ -51,23 +51,16 @@
 /*END_INCLUDE*/
 
 /*START_STATIC*/
-static void gsb_file_config_clean_config ( void );
+static void gsb_file_config_clean_config ( GrisbiAppConf *conf );
 /*END_STATIC*/
 
 
 /*START_EXTERN*/
 extern struct conditional_message delete_msg[];
-extern gboolean execute_scheduled_of_month;
 extern struct conditional_message messages[];
-extern gint nb_days_before_scheduled;
 extern gchar *nom_fichier_comptes;
 /*END_EXTERN*/
 
-/* global variable, see structures.h */
-struct gsb_conf_t conf;
-
-/* liste des derniers fichiers ouverts */
-gchar **tab_noms_derniers_fichiers_ouverts = NULL;
 
 /* nom du fichier de configuration */
 static gchar *conf_filename;
@@ -90,7 +83,7 @@ static gchar *conf_filename;
  *
  * \return TRUE if ok, FALSE if not found, usually for a new opening
  * */
-gboolean gsb_file_config_load_config ( void )
+gboolean gsb_file_config_load_config ( GrisbiAppConf *conf )
 {
     GKeyFile *config;
     gboolean result;
@@ -99,7 +92,7 @@ gboolean gsb_file_config_load_config ( void )
     gint int_ret;
     GError* err = NULL;
 
-    gsb_file_config_clean_config ();
+    gsb_file_config_clean_config ( conf );
 
     if ( !g_file_test ( conf_filename, G_FILE_TEST_EXISTS ) )
         return FALSE;
@@ -117,11 +110,11 @@ gboolean gsb_file_config_load_config ( void )
 
 #if IS_DEVELOPMENT_VERSION == 1
     /* get config model */
-    conf.stable_config_file_model = g_key_file_get_integer ( config,
+    conf->stable_config_file_model = g_key_file_get_integer ( config,
                         "Model",
                         "Stable_config_file_model",
                         NULL );
-    if ( conf.stable_config_file_model )
+    if ( conf->stable_config_file_model )
     {
         used_model = TRUE;
         g_free ( conf_filename );
@@ -142,44 +135,55 @@ gboolean gsb_file_config_load_config ( void )
 #endif
 
     /* get the geometry */
-    conf.root_x = g_key_file_get_integer ( config,
+    conf->root_x = g_key_file_get_integer ( config,
                         "Geometry",
                         "Root_x",
                         NULL );
 
-    conf.root_y = g_key_file_get_integer ( config,
+    conf->root_y = g_key_file_get_integer ( config,
                         "Geometry",
                         "Root_y",
                         NULL );
 
-    conf.main_width = g_key_file_get_integer ( config,
+    conf->main_width = g_key_file_get_integer ( config,
                         "Geometry",
                         "Width",
                         NULL );
 
-    conf.main_height = g_key_file_get_integer ( config,
+    conf->main_height = g_key_file_get_integer ( config,
                         "Geometry",
                         "Height",
                         NULL );
 
-    conf.full_screen = g_key_file_get_integer ( config,
+    conf->full_screen = g_key_file_get_integer ( config,
                         "Geometry",
-                        "Full screen",
+                        "Full_screen",
+                        NULL );
+
+    conf->maximize_screen = g_key_file_get_integer ( config,
+                        "Geometry",
+                        "Maximize_screen",
                         NULL );
 
     int_ret = g_key_file_get_integer ( config,
                         "Geometry",
                         "Panel_width",
-                        NULL );
-    gsb_gui_set_hpaned_left_width ( int_ret );
+                        &err );
+    if ( err == NULL )
+        conf->panel_width = int_ret;
+    else
+    {
+        conf->panel_width = -1;
+        err = NULL;
+    }
 
-    conf.prefs_width = g_key_file_get_integer ( config,
+    conf->prefs_width = g_key_file_get_integer ( config,
                         "Geometry",
                         "Prefs width",
                         NULL );
 
     /* get general */
-    conf.r_modifiable = g_key_file_get_integer ( config,
+    conf->r_modifiable = g_key_file_get_integer ( config,
                         "General",
                         "Can modify R",
                         NULL );
@@ -189,71 +193,71 @@ gboolean gsb_file_config_load_config ( void )
                         "Path",
                         NULL ));
 
-    conf.alerte_permission = g_key_file_get_integer ( config,
+    conf->alerte_permission = g_key_file_get_integer ( config,
                         "General",
                         "Show permission alert",
                         NULL );
 
-    conf.entree = g_key_file_get_integer ( config,
+    conf->entree = g_key_file_get_integer ( config,
                         "General",
                         "Function of enter",
                         NULL );
 
-    conf.alerte_mini = g_key_file_get_integer ( config,
+    conf->alerte_mini = g_key_file_get_integer ( config,
                         "General",
                         "Show alert messages",
                         NULL );
 
-    conf.utilise_fonte_listes = g_key_file_get_integer ( config,
+    conf->utilise_fonte_listes = g_key_file_get_integer ( config,
                         "General",
                         "Use user font",
                         NULL );
     
-    conf.font_string = g_key_file_get_string ( config, "General", "Font name", NULL );
+    conf->font_string = g_key_file_get_string ( config, "General", "Font name", NULL );
     
-    conf.browser_command = g_key_file_get_string ( config,
+    conf->browser_command = g_key_file_get_string ( config,
                         "General",
                         "Web",
                         NULL );
 
-    conf.pluriel_final = g_key_file_get_integer ( config,
+    conf->pluriel_final = g_key_file_get_integer ( config,
                         "General",
                         "Pluriel_final",
                         NULL );
                         
-    conf.metatree_action_2button_press = g_key_file_get_integer ( config,
+    conf->metatree_action_2button_press = g_key_file_get_integer ( config,
                         "General",
                         "Metatree_action_2button_press",
                         NULL );
 
     /* get backup part */
-    conf.make_backup = g_key_file_get_integer ( config,
+    conf->make_backup = g_key_file_get_integer ( config,
                         "Backup",
                         "Make backup",
                         NULL );
 
-    conf.make_bakup_single_file = g_key_file_get_integer ( config,
+    conf->make_bakup_single_file = g_key_file_get_integer ( config,
                         "Backup",
                         "Make backup single file",
                         NULL );
 
-    conf.make_backup_every_minutes = g_key_file_get_integer ( config,
+    conf->make_backup_every_minutes = g_key_file_get_integer ( config,
                         "Backup",
                         "Make backup every x minutes",
                         NULL );
 
-    conf.make_backup_nb_minutes = g_key_file_get_integer ( config,
+    conf->make_backup_nb_minutes = g_key_file_get_integer ( config,
                         "Backup",
                         "Make backup nb minutes",
                         NULL );
 
     /* exec gsb_file_automatic_backup_start ( ) if necessary */
-    if ( conf.make_backup_every_minutes
+    if ( conf->make_backup_every_minutes
      &&
-     conf.make_backup_nb_minutes )
+     conf->make_backup_nb_minutes )
         gsb_file_automatic_backup_start ( NULL, NULL );
 
-    conf.compress_backup = g_key_file_get_integer ( config,
+    conf->compress_backup = g_key_file_get_integer ( config,
                         "Backup",
                         "Compress backup",
                         NULL );
@@ -264,63 +268,63 @@ gboolean gsb_file_config_load_config ( void )
                         NULL ));
 
     /* get input/output */
-    conf.dernier_fichier_auto = g_key_file_get_integer ( config,
+    conf->dernier_fichier_auto = g_key_file_get_integer ( config,
                         "IO",
                         "Load last file",
                         NULL );
 
-    conf.sauvegarde_auto = g_key_file_get_integer ( config,
+    conf->sauvegarde_auto = g_key_file_get_integer ( config,
                         "IO",
                         "Save at closing",
                         NULL );
 
-    conf.sauvegarde_demarrage = g_key_file_get_integer ( config,
+    conf->sauvegarde_demarrage = g_key_file_get_integer ( config,
                         "IO",
                         "Save at opening",
                         NULL );
 
-    conf.nb_max_derniers_fichiers_ouverts = g_key_file_get_integer ( config,
+    conf->nb_max_derniers_fichiers_ouverts = g_key_file_get_integer ( config,
                         "IO",
                         "Nb last opened files",
                         NULL );
 
-    conf.compress_file = g_key_file_get_integer ( config,
+    conf->compress_file = g_key_file_get_integer ( config,
                         "IO",
                         "Compress file",
                         NULL );
 
-    conf.force_enregistrement = g_key_file_get_integer ( config,
+    conf->force_enregistrement = g_key_file_get_integer ( config,
                         "IO",
                         "Force saving",
                         NULL );
 
-    tab_noms_derniers_fichiers_ouverts = g_key_file_get_string_list ( config,
+    conf->tab_noms_derniers_fichiers_ouverts = g_key_file_get_string_list ( config,
                         "IO",
                         "Names last files",
-                        &conf.nb_derniers_fichiers_ouverts,
+                        &conf->nb_derniers_fichiers_ouverts,
                         NULL );
-    if (tab_noms_derniers_fichiers_ouverts)
-        nom_fichier_comptes = my_strdup (tab_noms_derniers_fichiers_ouverts [ 0 ]);
+    if ( conf->tab_noms_derniers_fichiers_ouverts )
+        nom_fichier_comptes = my_strdup ( conf->tab_noms_derniers_fichiers_ouverts [0]);
     else
         nom_fichier_comptes = NULL;
 
-    conf.check_for_archival = g_key_file_get_integer ( config, 
+    conf->check_for_archival = g_key_file_get_integer ( config, 
                         "IO",
                         "Check_archival_at_opening",
                         NULL );
 
-    conf.max_non_archived_transactions_for_check = g_key_file_get_integer ( config, 
+    conf->max_non_archived_transactions_for_check = g_key_file_get_integer ( config, 
                         "IO",
                         "Max_transactions_before_warn_archival",
                         NULL );
     
     /* get scheduled section */
-    nb_days_before_scheduled = g_key_file_get_integer ( config,
+    conf->nb_days_before_scheduled = g_key_file_get_integer ( config,
                         "Scheduled",
                         "Days before remind",
                         NULL );
 
-    execute_scheduled_of_month = g_key_file_get_integer ( config,
+    conf->execute_scheduled_of_month = g_key_file_get_integer ( config,
                         "Scheduled",
                         "Execute scheduled of month",
                         NULL );
@@ -330,42 +334,37 @@ gboolean gsb_file_config_load_config ( void )
                         "Balances with scheduled",
                         &err );
     if ( err == NULL )
-        conf.balances_with_scheduled = int_ret;
+        conf->balances_with_scheduled = int_ret;
     else
         err = NULL;
 
     /* get shown section */
-    etat.formulaire_toujours_affiche = g_key_file_get_integer ( config,
+    conf->formulaire_toujours_affiche = g_key_file_get_integer ( config,
                         "Display",
                         "Show transaction form",
                         NULL );
 
-    conf.show_transaction_selected_in_form = g_key_file_get_integer ( config,
+    conf->show_transaction_selected_in_form = g_key_file_get_integer ( config,
                         "Display",
                         "Show selected transaction in form",
                         NULL );
 
-    conf.show_transaction_gives_balance = g_key_file_get_integer ( config,
+    conf->show_transaction_gives_balance = g_key_file_get_integer ( config,
                         "Display",
                         "Show transaction gives balance",
                         NULL );
 
-    conf.transactions_list_primary_sorting = g_key_file_get_integer ( config,
+    conf->transactions_list_primary_sorting = g_key_file_get_integer ( config,
                         "Display",
                         "Transactions_list_primary_sorting",
                         NULL );
 
-    conf.transactions_list_secondary_sorting = g_key_file_get_integer ( config,
+    conf->transactions_list_secondary_sorting = g_key_file_get_integer ( config,
                         "Display",
                         "Transactions_list_secondary_sorting",
                         NULL );
 
-    etat.largeur_auto_colonnes = g_key_file_get_integer ( config,
-                        "Display",
-                        "Columns width auto",
-                        NULL );
-
-    etat.affichage_exercice_automatique = g_key_file_get_integer ( config,
+    conf->affichage_exercice_automatique = g_key_file_get_integer ( config,
                         "Display",
                         "Show automatic financial year",
                         NULL );
@@ -375,46 +374,46 @@ gboolean gsb_file_config_load_config ( void )
                         "Automatic completion payee",
                         &err );
     if ( err == NULL )
-        conf.automatic_completion_payee = int_ret;
+        conf->automatic_completion_payee = int_ret;
     else
         err = NULL;
 
-    conf.limit_completion_to_current_account = g_key_file_get_integer ( config,
+    conf->limit_completion_to_current_account = g_key_file_get_integer ( config,
                         "Display",
                         "Limit payee completion",
                         NULL );
 
-    conf.automatic_recover_splits = g_key_file_get_integer ( config,
+    conf->automatic_recover_splits = g_key_file_get_integer ( config,
                         "Display",
                         "Automatic_recover_splits",
                         NULL );
 
-    conf.automatic_erase_credit_debit = g_key_file_get_integer ( config,
+    conf->automatic_erase_credit_debit = g_key_file_get_integer ( config,
                         "Display",
                         "Automatic_erase_credit_debit",
                         NULL );
 
-    etat.display_toolbar = g_key_file_get_integer ( config,
+    conf->display_toolbar = g_key_file_get_integer ( config,
                         "Display",
                         "Display toolbar",
                         NULL );
 
-    conf.active_scrolling_left_pane = g_key_file_get_integer ( config,
+    conf->active_scrolling_left_pane = g_key_file_get_integer ( config,
                         "Display",
                         "Active_scrolling_left_pane",
                         NULL );
 
-    etat.show_headings_bar = g_key_file_get_integer ( config,
+    conf->show_headings_bar = g_key_file_get_integer ( config,
                         "Display",
                         "Show headings bar",
                         NULL );
 
-    etat.show_closed_accounts = g_key_file_get_integer ( config,
+    conf->show_closed_accounts = g_key_file_get_integer ( config,
                         "Display",
                         "Show closed accounts",
                         NULL );
 
-    conf.display_grisbi_title = g_key_file_get_integer ( config,
+    conf->display_grisbi_title = g_key_file_get_integer ( config,
                         "Display",
                         "Display grisbi title",
                         NULL );
@@ -440,12 +439,12 @@ gboolean gsb_file_config_load_config ( void )
         g_free ( name );
     }
 
-    etat.last_tip = g_key_file_get_integer ( config,
+    conf->last_tip = g_key_file_get_integer ( config,
                         "Messages",
                         "Last tip",
                         NULL );
 
-    etat.show_tip = g_key_file_get_integer ( config,
+    conf->show_tip = g_key_file_get_integer ( config,
                         "Messages",
                         "Show tip",
                         NULL );
@@ -465,23 +464,16 @@ gboolean gsb_file_config_load_config ( void )
  *
  * \return TRUE if ok
  * */
-gboolean gsb_file_config_save_config ( void )
+gboolean gsb_file_config_save_config ( GrisbiAppConf *conf )
 {
     GKeyFile *config;
-    gchar *filename;
     gchar *file_content;
     gchar *name;
-    gchar *tmp_str;
     gsize length;
     FILE *conf_file;
     gint i;
-    gint tmp_int = 0;
     
-    devel_debug (NULL);
-
-    tmp_str = g_strconcat ( PACKAGE, GRISBIRC, NULL );
-    filename = g_build_filename ( gsb_dirs_get_user_config_dir ( ), tmp_str, NULL );
-    g_free ( tmp_str );
+    devel_debug ( conf_filename );
 
     config = g_key_file_new ();
 
@@ -490,62 +482,55 @@ gboolean gsb_file_config_save_config ( void )
     g_key_file_set_integer ( config,
                         "Model",
                         "Stable_config_file_model",
-                        conf.stable_config_file_model );
+                        conf->stable_config_file_model );
 #endif
 
-    /* get the geometry */
-    if ( gtk_widget_get_window ( GTK_WIDGET ( run.window ) ) )
-        gtk_window_get_size ( GTK_WINDOW ( run.window ),
-                        &conf.main_width, &conf.main_height);
-    else
-    {
-        conf.main_width = 0;
-        conf.main_height = 0;
-    }
-
     g_key_file_set_integer ( config,
                         "Geometry",
                         "Root_x",
-                        conf.root_x );
+                        conf->root_x );
 
     g_key_file_set_integer ( config,
                         "Geometry",
                         "Root_y",
-                        conf.root_y );
+                        conf->root_y );
 
     g_key_file_set_integer ( config,
                         "Geometry",
                         "Width",
-                        conf.main_width );
+                        conf->main_width );
 
     g_key_file_set_integer ( config,
                         "Geometry",
                         "Height",
-                        conf.main_height );
+                        conf->main_height );
+
+    g_key_file_set_integer ( config,
+                        "Geometry",
+                        "Full_screen",
+                        conf->full_screen );
 
     g_key_file_set_integer ( config,
                         "Geometry",
-                        "Full screen",
-                        conf.full_screen );
+                        "Maximize_screen",
+                        conf->maximize_screen );
 
     g_key_file_set_integer ( config,
                         "Geometry",
                         "Prefs width",
-                        conf.prefs_width );
+                        conf->prefs_width );
 
     /* Remember size of main panel */
-    if ( gsb_gui_is_hpaned_general ( ) )
-        tmp_int = gsb_gui_get_hpaned_left_width ( );
     g_key_file_set_integer ( config,
                         "Geometry",
                         "Panel_width",
-                        tmp_int );
+                        conf->panel_width );
 
     /* save general */
     g_key_file_set_integer ( config,
                         "General",
                         "Can modify R",
-                        conf.r_modifiable );
+                        conf->r_modifiable );
 
     g_key_file_set_string ( config,
                         "General",
@@ -555,34 +540,34 @@ gboolean gsb_file_config_save_config ( void )
     g_key_file_set_integer ( config,
                         "General",
                         "Show permission alert",
-                        conf.alerte_permission );
+                        conf->alerte_permission );
 
     g_key_file_set_integer ( config,
                         "General",
                         "Function of enter",
-                        conf.entree );
+                        conf->entree );
 
     g_key_file_set_integer ( config,
                         "General",
                         "Show alert messages",
-                        conf.alerte_mini );
+                        conf->alerte_mini );
 
     g_key_file_set_integer ( config,
                         "General",
                         "Use user font",
-                        conf.utilise_fonte_listes );
+                        conf->utilise_fonte_listes );
 
-    if ( conf.font_string )
+    if ( conf->font_string )
         g_key_file_set_string ( config,
                         "General",
                         "Font name",
-                        conf.font_string );
+                        conf->font_string );
 
-    if ( conf.browser_command )
+    if ( conf->browser_command )
     {
         gchar *string;
 
-        string = my_strdelimit ( conf.browser_command, "&", "\\e" );
+        string = my_strdelimit ( conf->browser_command, "&", "\\e" );
         if ( string )
             g_key_file_set_string ( config,
                         "General",
@@ -594,38 +579,38 @@ gboolean gsb_file_config_save_config ( void )
     g_key_file_set_integer ( config,
                         "General",
                         "Pluriel_final",
-                        conf.pluriel_final );
+                        conf->pluriel_final );
 
     g_key_file_set_integer ( config,
                         "General",
                         "Metatree_action_2button_press",
-                        conf.metatree_action_2button_press );
+                        conf->metatree_action_2button_press );
 
      /* save backup part */
     g_key_file_set_integer ( config,
                         "Backup",
                         "Make backup",
-                        conf.make_backup );
+                        conf->make_backup );
 
     g_key_file_set_integer ( config,
                         "Backup",
                         "Make backup single file",
-                        conf.make_bakup_single_file );
+                        conf->make_bakup_single_file );
 
     g_key_file_set_integer ( config,
                         "Backup",
                         "Make backup every x minutes",
-                        conf.make_backup_every_minutes );
+                        conf->make_backup_every_minutes );
 
     g_key_file_set_integer ( config,
                         "Backup",
                         "Compress backup",
-                        conf.compress_backup );
+                        conf->compress_backup );
 
     g_key_file_set_integer ( config,
                         "Backup",
                         "Make backup nb minutes",
-                        conf.make_backup_nb_minutes );
+                        conf->make_backup_nb_minutes );
 
     if (gsb_file_get_backup_path ())
         g_key_file_set_string ( config,
@@ -637,143 +622,143 @@ gboolean gsb_file_config_save_config ( void )
     g_key_file_set_integer ( config,
                         "IO",
                         "Load last file",
-                        conf.dernier_fichier_auto );
+                        conf->dernier_fichier_auto );
 
     g_key_file_set_integer ( config,
                         "IO",
                         "Save at closing",
-                        conf.sauvegarde_auto );
+                        conf->sauvegarde_auto );
 
     g_key_file_set_integer ( config,
                         "IO",
                         "Save at opening",
-                        conf.sauvegarde_demarrage );
+                        conf->sauvegarde_demarrage );
 
     g_key_file_set_integer ( config,
                         "IO",
                         "Nb last opened files",
-                        conf.nb_max_derniers_fichiers_ouverts );
+                        conf->nb_max_derniers_fichiers_ouverts );
 
     g_key_file_set_integer ( config,
                         "IO",
                         "Compress file",
-                        conf.compress_file );
+                        conf->compress_file );
 
     g_key_file_set_integer ( config,
                         "IO",
                         "Force saving",
-                        conf.force_enregistrement );
+                        conf->force_enregistrement );
 
-    if ( conf.nb_derniers_fichiers_ouverts > 0
+    if ( conf->nb_derniers_fichiers_ouverts > 0
      &&
-     tab_noms_derniers_fichiers_ouverts)
+     conf->tab_noms_derniers_fichiers_ouverts )
         g_key_file_set_string_list ( config,
                         "IO",
                         "Names last files",
-                        (const gchar **) tab_noms_derniers_fichiers_ouverts,
-                        conf.nb_derniers_fichiers_ouverts);
+                        (const gchar **) conf->tab_noms_derniers_fichiers_ouverts,
+                        conf->nb_derniers_fichiers_ouverts);
 
     g_key_file_set_integer ( config, 
                         "IO",
                         "Check_archival_at_opening",
-                        conf.check_for_archival );
+                        conf->check_for_archival );
 
     g_key_file_set_integer ( config, 
                         "IO",
                         "Max_transactions_before_warn_archival",
-                        conf.max_non_archived_transactions_for_check );
+                        conf->max_non_archived_transactions_for_check );
 
     /* save scheduled section */
     g_key_file_set_integer ( config,
                         "Scheduled",
                         "Days before remind",
-                        nb_days_before_scheduled );
+                        conf->nb_days_before_scheduled );
 
     g_key_file_set_integer ( config,
                         "Scheduled",
                         "Execute scheduled of month",
-                        execute_scheduled_of_month );
+                        conf->execute_scheduled_of_month );
 
     g_key_file_set_integer ( config,
                         "Scheduled",
                         "Balances with scheduled",
-                        conf.balances_with_scheduled );
+                        conf->balances_with_scheduled );
 
     /* save shown section */
     g_key_file_set_integer ( config,
                         "Display",
                         "Show transaction form",
-                        etat.formulaire_toujours_affiche );
+                        conf->formulaire_toujours_affiche );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Show selected transaction in form",
-                        conf.show_transaction_selected_in_form );
+                        conf->show_transaction_selected_in_form );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Show transaction gives balance",
-                        conf.show_transaction_gives_balance );
+                        conf->show_transaction_gives_balance );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Transactions_list_primary_sorting",
-                        conf.transactions_list_primary_sorting );
+                        conf->transactions_list_primary_sorting );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Transactions_list_secondary_sorting",
-                        conf.transactions_list_secondary_sorting );
+                        conf->transactions_list_secondary_sorting );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Show automatic financial year",
-                        etat.affichage_exercice_automatique );
+                        conf->affichage_exercice_automatique );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Automatic completion payee",
-                        conf.automatic_completion_payee );
+                        conf->automatic_completion_payee );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Limit payee completion",
-                        conf.limit_completion_to_current_account );
+                        conf->limit_completion_to_current_account );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Automatic_recover_splits",
-                        conf.automatic_recover_splits );
+                        conf->automatic_recover_splits );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Automatic_erase_credit_debit",
-                        conf.automatic_erase_credit_debit );
+                        conf->automatic_erase_credit_debit );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Display toolbar",
-                        etat.display_toolbar );
+                        conf->display_toolbar );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Active_scrolling_left_pane",
-                        conf.active_scrolling_left_pane );
+                        conf->active_scrolling_left_pane );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Show headings bar",
-                        etat.show_headings_bar );
+                        conf->show_headings_bar );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Show closed accounts",
-                        etat.show_closed_accounts );
+                        conf->show_closed_accounts );
 
     g_key_file_set_integer ( config,
                         "Display",
                         "Display grisbi title",
-                        conf.display_grisbi_title );
+                        conf->display_grisbi_title );
 
     /* save messages */
     for ( i = 0; messages[i].name; i ++ )
@@ -794,23 +779,23 @@ gboolean gsb_file_config_save_config ( void )
     g_key_file_set_integer ( config,
                         "Messages",
                         "Last tip",
-                        etat.last_tip );
+                        conf->last_tip );
 
     g_key_file_set_integer ( config,
                         "Messages",
                         "Show tip",
-                        etat.show_tip );
+                        conf->show_tip );
 
     /* save into a file */
     file_content = g_key_file_to_data ( config, &length, NULL );
 
-    conf_file = fopen ( filename, "w" );
+    conf_file = fopen ( conf_filename, "w" );
 
     #ifndef _WIN32
     if ( !conf_file )
     {
         utils_files_create_XDG_dir ( );
-        conf_file = fopen ( filename, "w" );
+        conf_file = fopen ( conf_filename, "w" );
     }
     #endif
 
@@ -819,19 +804,17 @@ gboolean gsb_file_config_save_config ( void )
      !fwrite ( file_content, sizeof ( gchar ), length, conf_file ) )
     {
         gchar* tmpstr = g_strdup_printf ( _("Cannot save configuration file '%s': %s"),
-                        filename,
+                        conf_filename,
                         g_strerror ( errno ) );
         dialogue_error ( tmpstr );
         g_free ( tmpstr );
         g_free ( file_content);
-        g_free (filename);
         g_key_file_free (config);
         return ( FALSE );
     }
     
     fclose (conf_file);
     g_free ( file_content);
-    g_free (filename);
     g_key_file_free (config);
 
     return TRUE;
@@ -848,84 +831,78 @@ gboolean gsb_file_config_save_config ( void )
  *
  * \return
  */
-void gsb_file_config_clean_config ( void )
+void gsb_file_config_clean_config ( GrisbiAppConf *conf )
 {
     devel_debug (NULL);
 
-    conf.main_width = 0;
-    conf.main_height = 0;
-    gsb_gui_set_hpaned_left_width ( -1 );
-    conf.prefs_width = 600;
-
-    conf.force_enregistrement = 1;
-
-    conf.r_modifiable = 0;       /* we can not change the reconciled transaction */
-    conf.dernier_fichier_auto = 1;   /*  on n'ouvre pas directement le dernier fichier */
-    conf.sauvegarde_auto = 0;    /* on NE sauvegarde PAS * automatiquement par défaut */
-    conf.entree = 1;    /* la touche entree provoque l'enregistrement de l'opération */
-    nb_days_before_scheduled = 0;     /* nb de jours avant l'échéance pour prévenir */
-    execute_scheduled_of_month = FALSE;
-    conf.balances_with_scheduled = TRUE;
-    etat.formulaire_toujours_affiche = 0;           /* le formulaire ne s'affiche que lors de l'edition d'1 opé */
-    etat.affichage_exercice_automatique = 0;        /* l'exercice est choisi en fonction de la date */
-    conf.automatic_completion_payee = 1;            /* by default automatic completion */
-    conf.limit_completion_to_current_account = 0;   /* By default, do full search */
-    conf.automatic_recover_splits = 1;
-    conf.automatic_erase_credit_debit = 0;
-
-    conf.display_grisbi_title = GSB_ACCOUNTS_TITLE; /* show Accounts file title par défaut */
-    etat.display_toolbar = GSB_BUTTON_BOTH;         /* How to display toolbar icons. */
-    conf.active_scrolling_left_pane = FALSE;        /* Active_scrolling_left_pane or not. */
-    etat.show_headings_bar = TRUE;                  /* Show toolbar or not. */
-    conf.show_transaction_selected_in_form = 1;     /* show selected transaction in form */
-    conf.show_transaction_gives_balance = 1;        /* show transaction that gives the balance of the day */
-    conf.transactions_list_primary_sorting = 1;     /* Primary sorting option for the transactions */
-    conf.transactions_list_secondary_sorting = 0;   /* Secondary sorting option for the transactions */
-    etat.show_closed_accounts = FALSE;
-
-    if ( conf.font_string )
+    conf->main_width = 0;
+    conf->main_height = 0;
+    conf->panel_width = 250;
+    conf->prefs_width = 600;
+
+    conf->force_enregistrement = 1;
+
+    conf->r_modifiable = 0;                         /* we can not change the reconciled transaction */
+    conf->dernier_fichier_auto = 1;                 /* on n'ouvre pas directement le dernier fichier */
+    conf->sauvegarde_auto = 1;                      /* on sauvegarde automatiquement par défaut */
+    conf->entree = 1;                               /* la touche entree provoque l'enregistrement de l'opération */
+    conf->nb_days_before_scheduled = 0;             /* nb de jours avant l'échéance pour prévenir */
+    conf->execute_scheduled_of_month = FALSE;       /* exécution automatique à l'échéance. */
+    conf->balances_with_scheduled = TRUE;
+    conf->formulaire_toujours_affiche = 0;           /* le formulaire ne s'affiche que lors de l'edition d'1 opé */
+    conf->affichage_exercice_automatique = 0;        /* l'exercice est choisi en fonction de la date */
+    conf->automatic_completion_payee = 1;            /* by default automatic completion */
+    conf->limit_completion_to_current_account = 0;   /* By default, do full search */
+    conf->automatic_recover_splits = 1;
+    conf->automatic_erase_credit_debit = 0;
+
+    conf->display_grisbi_title = GSB_ACCOUNTS_TITLE; /* show Accounts file title par défaut */
+    conf->display_toolbar = GSB_BUTTON_BOTH;         /* How to display toolbar icons. */
+    conf->active_scrolling_left_pane = FALSE;        /* Active_scrolling_left_pane or not. */
+    conf->show_headings_bar = TRUE;                  /* Show toolbar or not. */
+    conf->show_transaction_selected_in_form = 1;     /* show selected transaction in form */
+    conf->show_transaction_gives_balance = 1;        /* show transaction that gives the balance of the day */
+    conf->transactions_list_primary_sorting = 1;     /* Primary sorting option for the transactions */
+    conf->transactions_list_secondary_sorting = 0;   /* Secondary sorting option for the transactions */
+    conf->show_closed_accounts = FALSE;
+
+    if ( conf->font_string )
     {
-    g_free ( conf.font_string );
-    conf.font_string = NULL;
+        g_free ( conf->font_string );
+        conf->font_string = NULL;
     }
     
-    conf.force_enregistrement = 1;     /* par défaut, on force l'enregistrement */
-    gsb_file_update_last_path (g_get_home_dir ());
+    conf->force_enregistrement = 1;                     /* par défaut, on force l'enregistrement */
+    gsb_file_update_last_path ( g_get_home_dir ( ) );
     gsb_file_set_backup_path ( gsb_dirs_get_user_data_dir ( ) );
-    conf.make_backup = 1;
-    conf.make_backup_every_minutes = FALSE;
-    conf.make_backup_nb_minutes = 0;
+    conf->make_backup = 1;
+    conf->make_backup_every_minutes = FALSE;
+    conf->make_backup_nb_minutes = 0;
 
 #if IS_DEVELOPMENT_VERSION == 1
-    conf.stable_config_file_model = 0;
+    conf->stable_config_file_model = 0;
 #endif
 
-    conf.nb_derniers_fichiers_ouverts = 0;
-    conf.nb_max_derniers_fichiers_ouverts = 3;
-    tab_noms_derniers_fichiers_ouverts = NULL;
+    conf->nb_derniers_fichiers_ouverts = 0;
+    conf->nb_max_derniers_fichiers_ouverts = 3;
 
     /* no compress by default */
-    conf.compress_file = 0;
-    conf.compress_backup = 0;
+    conf->compress_file = 0;
+    conf->compress_backup = 0;
 
     /* archive data */
-    conf.check_for_archival = TRUE;
-    conf.max_non_archived_transactions_for_check = 3000;
+    conf->check_for_archival = TRUE;
+    conf->max_non_archived_transactions_for_check = 3000;
 
-    etat.largeur_auto_colonnes = 0;
-    etat.retient_affichage_par_compte = 0;
-
-    etat.last_tip = -1;
-    etat.show_tip = FALSE;
+    conf->last_tip = -1;
+    conf->show_tip = FALSE;
 
     /* mise en conformité avec les recommandations FreeDesktop. */
-    if ( conf.browser_command )
-        g_free ( conf.browser_command );
-    conf.browser_command = g_strdup ( ETAT_WWW_BROWSER );
-
-    conf.metatree_action_2button_press = 0;     /* action par défaut pour le double clic sur division */
+    if ( conf->browser_command )
+        g_free ( conf->browser_command );
+    conf->browser_command = g_strdup ( ETAT_WWW_BROWSER );
 
-    memset ( etat.csv_skipped_lines, '\0', sizeof(gboolean) * CSV_MAX_TOP_LINES );
+    conf->metatree_action_2button_press = 0;     /* action par défaut pour le double clic sur division */
 }
 
 
@@ -949,10 +926,18 @@ const gchar *gsb_config_get_conf_filename ( void )
  *
  * \return
  */
-void gsb_config_initialise_conf_filename ( void )
+void gsb_config_initialise_conf_filename ( const gchar *config_file )
 {
     gchar *tmp_str;
 
+    devel_debug ( config_file );
+
+    if ( config_file )
+    {
+        conf_filename = g_strdup ( config_file );
+        return;
+        return;  name = g_strdup ( config_file );  har *config_file )    ur le double clic sur division */  /  é */   with another name or activate the \"%s\" option in preferences."),  ));        ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                   }
+
     tmp_str = g_strconcat ( PACKAGE, GRISBIRC, NULL );
     conf_filename = g_build_filename ( gsb_dirs_get_user_config_dir ( ), tmp_str, NULL );
     g_free ( tmp_str );
@@ -983,6 +968,13 @@ void gsb_config_free_conf_filename ( void )
 }
 
 
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
 /* Local Variables: */
 /* c-basic-offset: 4 */
 /* End: */
diff --git a/src/gsb_file_config.h b/src/gsb_file_config.h
index 68fd8e0..edb7de7 100644
--- a/src/gsb_file_config.h
+++ b/src/gsb_file_config.h
@@ -3,14 +3,18 @@
 
 #include <glib.h>
 
+/*START_INCLUDE*/
+#include "structures.h"
+/*END_INCLUDE*/
+
 #define ETAT_WWW_BROWSER "xdg-open"
 
 /* START_DECLARATION */
-gboolean gsb_file_config_load_config ( void );
-gboolean gsb_file_config_save_config ( void );
+gboolean gsb_file_config_load_config ( GrisbiAppConf *conf );
+gboolean gsb_file_config_save_config ( GrisbiAppConf *conf );
 const gchar *gsb_config_get_conf_filename ( void );
 void gsb_config_free_conf_filename ( void );
-void gsb_config_initialise_conf_filename ( void );
+void gsb_config_initialise_conf_filename ( const gchar *config_file );
 /* END_DECLARATION */
 
 #endif
diff --git a/src/gsb_file_load.c b/src/gsb_file_load.c
index 2de88b8..e28e069 100644
--- a/src/gsb_file_load.c
+++ b/src/gsb_file_load.c
@@ -40,6 +40,7 @@
 #include "custom_list.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_assistant_archive.h"
 #include "gsb_assistant_first.h"
 #include "gsb_calendar.h"
@@ -65,6 +66,7 @@
 #include "gsb_data_report_text_comparison.h"
 #include "gsb_data_scheduled.h"
 #include "gsb_data_transaction.h"
+#include "gsb_dirs.h"
 #include "gsb_file.h"
 #include "gsb_file_util.h"
 #include "gsb_locale.h"
@@ -82,7 +84,6 @@
 #include "utils_real.h"
 #include "utils_str.h"
 #include "erreur.h"
-#include "gsb_dirs.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
@@ -8072,6 +8073,9 @@ gboolean gsb_file_load_update_previous_version ( void )
     gint account_number;
     GList *dlist_tmp;
     gchar** strarray;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     strarray = g_strsplit ( download_tmp_values.file_version, ".", 0 );
     tmpstr = g_strjoinv ( "", strarray );
@@ -8817,8 +8821,8 @@ gboolean gsb_file_load_update_previous_version ( void )
         /*
          * untill 0.6, no archive, so by default we let grisbi check at opening and set
          * the transactions limit to 3000 */
-        conf.check_for_archival = TRUE;
-        conf.max_non_archived_transactions_for_check = 3000;
+        conf->check_for_archival = TRUE;
+        conf->max_non_archived_transactions_for_check = 3000;
 
         /**
          * new in 0.6, there is no name for saving file but a directory
@@ -8842,7 +8846,7 @@ gboolean gsb_file_load_update_previous_version ( void )
         gsb_data_account_reorder (sort_accounts);
 
     case 60:
-        if ( conf.sauvegarde_demarrage )
+        if ( conf->sauvegarde_demarrage )
             gsb_file_set_modified ( TRUE );
         break;
 
@@ -8865,11 +8869,11 @@ gboolean gsb_file_load_update_previous_version ( void )
     /* check now if a lot of transactions,
      * if yes, we propose to file the transactions
      * by default take the 3000 transactions as limit */
-    if ( conf.check_for_archival
+    if ( conf->check_for_archival
      &&
-     g_slist_length (gsb_data_transaction_get_transactions_list ()) > 
-     conf.max_non_archived_transactions_for_check )
-    gsb_assistant_archive_run (TRUE);
+     g_slist_length (gsb_data_transaction_get_transactions_list ()) >
+     conf->max_non_archived_transactions_for_check )
+        gsb_assistant_archive_run (TRUE);
 
     /* if we opened an archive, we say it here */
     if (etat.is_archive)
diff --git a/src/gsb_form.c b/src/gsb_form.c
index 950ac17..ad58127 100644
--- a/src/gsb_form.c
+++ b/src/gsb_form.c
@@ -40,8 +40,10 @@
 #include "accueil.h"
 #include "bet_data.h"
 #include "dialog.h"
-#include "gsb_calendar_entry.h"
+#include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_calendar.h"
+#include "gsb_calendar_entry.h"
 #include "gsb_currency.h"
 #include "gsb_data_account.h"
 #include "gsb_data_budget.h"
@@ -55,57 +57,56 @@
 #include "gsb_data_report.h"
 #include "gsb_data_scheduled.h"
 #include "gsb_data_transaction.h"
-#include "utils_dates.h"
 #include "gsb_file.h"
 #include "gsb_form_scheduler.h"
 #include "gsb_form_transaction.h"
 #include "gsb_form_widget.h"
 #include "gsb_fyear.h"
 #include "gsb_locale.h"
-#include "navigation.h"
-#include "menu.h"
-#include "tiers_onglet.h"
 #include "gsb_payment_method.h"
-#include "parametres.h"
 #include "gsb_real.h"
 #include "gsb_reconcile.h"
 #include "gsb_report.h"
 #include "gsb_scheduler.h"
 #include "gsb_scheduler_list.h"
 #include "gsb_transactions_list.h"
-#include "utils_editables.h"
 #include "gtk_combofix.h"
+#include "menu.h"
+#include "mouse.h"
+#include "navigation.h"
+#include "parametres.h"
+#include "structures.h"
+#include "tiers_onglet.h"
 #include "traitement_variables.h"
-#include "utils_real.h"
-#include "utils_str.h"
 #include "transaction_list.h"
 #include "transaction_list_select.h"
+#include "utils_dates.h"
+#include "utils_editables.h"
 #include "utils_operations.h"
-#include "fenetre_principale.h"
-#include "mouse.h"
-#include "structures.h"
+#include "utils_real.h"
+#include "utils_str.h"
 #include "erreur.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
 static gboolean gsb_form_activate_expander ( GtkWidget *expander,
-		gpointer null );
+                        gpointer null );
 static gboolean gsb_form_button_press ( GtkWidget *vbox,
-		GdkEventButton *ev,
-		gpointer null );
+                        GdkEventButton *ev,
+                        gpointer null );
 static gint gsb_form_check_for_transfer ( const gchar *entry_string );
 static gboolean gsb_form_get_categories ( gint transaction_number,
-		gint new_transaction,
-		gboolean is_transaction );
+                        gint new_transaction,
+                        gboolean is_transaction );
 static gboolean gsb_form_hide ( void );
 static gboolean gsb_form_initialise_transaction_form ( void );
 static gboolean gsb_form_size_allocate ( GtkWidget *widget,
-		GtkAllocation *allocation,
-		gpointer null );
+                        GtkAllocation *allocation,
+                        gpointer null );
 static void gsb_form_take_datas_from_form ( gint transaction_number,
-		gboolean is_transaction );
+                        gboolean is_transaction );
 static gboolean gsb_form_validate_form_transaction ( gint transaction_number,
-		gboolean is_transaction );
+                        gboolean is_transaction );
 /*END_STATIC*/
 
 /*START_EXTERN*/
@@ -162,7 +163,7 @@ static GDate *save_form_date;
  * */
 GtkWidget *gsb_form_get_form_widget ( void )
 {
-	return transaction_form;
+    return transaction_form;
 }
 
 /**
@@ -172,18 +173,21 @@ GtkWidget *gsb_form_get_form_widget ( void )
  * */
 GtkWidget *gsb_form_new ( void )
 {
-	/* Create the expander */
-	form_expander = gtk_expander_new ( "" );
-	gtk_expander_set_expanded ( GTK_EXPANDER ( form_expander ),
-			etat.formulaire_toujours_affiche );
-	g_signal_connect_after( G_OBJECT(form_expander),
-			"activate",
-			G_CALLBACK (gsb_form_activate_expander),
-			NULL );
-
-	gsb_form_create_widgets ();
-
-	return form_expander;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+    /* Create the expander */
+    form_expander = gtk_expander_new ( "" );
+    gtk_expander_set_expanded ( GTK_EXPANDER ( form_expander ), conf->formulaire_toujours_affiche );
+    g_signal_connect_after ( G_OBJECT ( form_expander ),
+                        "activate",
+                        G_CALLBACK ( gsb_form_activate_expander ),
+                        NULL );
+
+    gsb_form_create_widgets ();
+
+    /* return */
+    return form_expander;
 }
 
 /**
@@ -195,7 +199,7 @@ GtkWidget *gsb_form_new ( void )
  * */
 GtkWidget *gsb_form_get_scheduler_part ( void )
 {
-	return form_scheduled_part;
+    return form_scheduled_part;
 }
 
 
@@ -207,149 +211,150 @@ GtkWidget *gsb_form_get_scheduler_part ( void )
  */
 void gsb_form_create_widgets ( void )
 {
-	GtkWidget * hbox, * label, * separator, * hbox_buttons, * hbox_buttons_inner;
-	GtkWidget * child = gtk_bin_get_child ( GTK_BIN ( form_expander ) );
-	GtkWidget *event_box;
+    GtkWidget * hbox, * label, * separator, * hbox_buttons, * hbox_buttons_inner;
+    GtkWidget * child = gtk_bin_get_child ( GTK_BIN ( form_expander ) );
+    GtkWidget *event_box;
 	gchar* tmpstr;
 
-	devel_debug (NULL);
-
-	if ( child && GTK_IS_WIDGET(child) )
-	{
-		gsb_form_widget_free_list ();
-		gtk_container_remove ( GTK_CONTAINER ( form_expander ), child );
-	}
-
-	/* Expander has a composite label */
-	hbox = gtk_hbox_new ( FALSE, 0 );
-	gtk_expander_set_label_widget ( GTK_EXPANDER(form_expander), hbox );
-
-	/* set the label transaction form */
-	label = gtk_label_new ( NULL );
-	tmpstr = make_pango_attribut ( "weight=\"bold\"", _("Transaction/Scheduled _form") );
-	gtk_label_set_markup_with_mnemonic ( GTK_LABEL ( label ), tmpstr );
-	g_free ( tmpstr );
-	gtk_box_pack_start ( GTK_BOX ( hbox ),
-			label,
-			FALSE, FALSE, 0 );
-
-	/* set the last statement label */
-	label_last_statement = gtk_label_new ( NULL );
-	gtk_box_pack_end ( GTK_BOX ( hbox ),
-			label_last_statement,
-			FALSE, FALSE, 0 );
-
-	/* Create form inside the expander :
-	 * the form is 3 parts :
-	 * top : the values specific for the scheduled transactions
-	 * middle : the values for transactions and scheduled transactions
-	 * bottom : the buttons valid/cancel */
-	transaction_form = gtk_vbox_new ( FALSE, 5 );
-	gtk_container_add ( GTK_CONTAINER ( form_expander ),
+    devel_debug (NULL);
+
+    if ( child && GTK_IS_WIDGET(child) )
+    {
+        gsb_form_widget_free_list ();
+	    gtk_container_remove ( GTK_CONTAINER ( form_expander ), child );
+    }
+
+    /* Expander has a composite label */
+    hbox = gtk_hbox_new ( FALSE, 0 );
+    gtk_expander_set_label_widget ( GTK_EXPANDER(form_expander), hbox );
+
+    /* set the label transaction form */
+    label = gtk_label_new ( NULL );
+    tmpstr = make_pango_attribut ( "weight=\"bold\"", _("Transaction/Scheduled _form") );
+    gtk_label_set_markup_with_mnemonic ( GTK_LABEL ( label ), tmpstr );
+    g_free ( tmpstr );
+    gtk_box_pack_start ( GTK_BOX ( hbox ),
+			 label,
+			 FALSE, FALSE, 0 );
+
+    /* set the last statement label */
+    label_last_statement = gtk_label_new ( NULL );
+    gtk_box_pack_end ( GTK_BOX ( hbox ),
+		       label_last_statement,
+		       FALSE, FALSE, 0 );
+
+    /* Create form inside the expander :
+     * the form is 3 parts :
+     * top : the values specific for the scheduled transactions
+     * middle : the values for transactions and scheduled transactions
+     * bottom : the buttons valid/cancel */
+    transaction_form = gtk_vbox_new ( FALSE, 5 );
+    gtk_container_add ( GTK_CONTAINER ( form_expander ),
 			transaction_form );
 
-	/* play with that widget to tell to the tree view to scroll to keep the selection visible */
-	g_signal_connect_after ( G_OBJECT (transaction_form),
-			"size-allocate",
-			G_CALLBACK (gsb_form_size_allocate),
-			NULL );
-
-	/* the scheduled part is a table of SCHEDULED_WIDTH col x SCHEDULED_HEIGHT rows */
-
-	form_scheduled_part = gtk_table_new ( SCHEDULED_HEIGHT,
-			SCHEDULED_WIDTH,
-			FALSE );
-	gtk_table_set_col_spacings ( GTK_TABLE (form_scheduled_part),
-			6 );
-	gtk_box_pack_start ( GTK_BOX (transaction_form),
-			form_scheduled_part,
-			FALSE, FALSE,
-			0 );
-
-	gsb_form_scheduler_create (form_scheduled_part);
-
-	/* add a separator between the scheduled and transaction part */
-	separator = gtk_hseparator_new ();
-	gtk_box_pack_start ( GTK_BOX (transaction_form),
-			separator,
-			FALSE, FALSE,
-			0 );
-
-	/* the transactions part is a variable table,
-	 * so set to 1x1 for now, it will change when we show it */
-	/* didn't find another way to get the button-press-event on the form_transaction_part,
-	 * so use an event box */
-	event_box = gtk_event_box_new ();
-	gtk_event_box_set_above_child (GTK_EVENT_BOX (event_box),
-			FALSE );
-	gtk_box_pack_start ( GTK_BOX (transaction_form),
-			event_box ,
-			FALSE, FALSE,
-			0 );
-	g_signal_connect ( G_OBJECT (event_box),
-			"button-press-event",
-			G_CALLBACK (gsb_form_button_press),
-			NULL );
-
-	form_transaction_part = gtk_table_new ( 1, 1, FALSE );
-	gtk_table_set_col_spacings ( GTK_TABLE (form_transaction_part), 6 );
-	g_signal_connect ( G_OBJECT (form_transaction_part),
-			"size-allocate",
-			G_CALLBACK (gsb_form_allocate_size),
-			NULL );
-	gtk_container_add ( GTK_CONTAINER (event_box),
+    /* play with that widget to tell to the tree view to scroll to keep the selection visible */
+    g_signal_connect_after ( G_OBJECT (transaction_form),
+			     "size-allocate",
+			     G_CALLBACK (gsb_form_size_allocate),
+			     NULL );
+
+    /* the scheduled part is a table of SCHEDULED_WIDTH col x SCHEDULED_HEIGHT rows */
+
+    form_scheduled_part = gtk_table_new ( SCHEDULED_HEIGHT, 
+                      SCHEDULED_WIDTH,
+                      FALSE );
+    gtk_table_set_col_spacings ( GTK_TABLE (form_scheduled_part),
+                    6 );
+    gtk_box_pack_start ( GTK_BOX (transaction_form),
+                    form_scheduled_part,
+                    FALSE, FALSE,
+                    0 );
+
+    gsb_form_scheduler_create (form_scheduled_part);
+
+    /* add a separator between the scheduled and transaction part */
+    separator = gtk_hseparator_new ();
+    gtk_box_pack_start ( GTK_BOX (transaction_form),
+			 separator,
+			 FALSE, FALSE,
+			 0 );
+
+    /* the transactions part is a variable table,
+     * so set to 1x1 for now, it will change when we show it */
+    /* didn't find another way to get the button-press-event on the form_transaction_part,
+     * so use an event box */
+    event_box = gtk_event_box_new ();
+    gtk_event_box_set_above_child (GTK_EVENT_BOX (event_box),
+				   FALSE );
+    gtk_box_pack_start ( GTK_BOX (transaction_form),
+			 event_box ,
+			 FALSE, FALSE,
+			 0 );
+    g_signal_connect ( G_OBJECT (event_box),
+		       "button-press-event",
+		       G_CALLBACK (gsb_form_button_press),
+		       NULL );
+
+    form_transaction_part = gtk_table_new ( 1, 1, FALSE );
+    gtk_table_set_col_spacings ( GTK_TABLE (form_transaction_part), 6 );
+    g_signal_connect ( G_OBJECT (form_transaction_part),
+		       "size-allocate",
+		       G_CALLBACK (gsb_form_allocate_size),
+		       NULL );
+    gtk_container_add ( GTK_CONTAINER (event_box),
 			form_transaction_part );
 
-	gsb_form_initialise_transaction_form ( );
-
-	/* the buttons part is a hbox, with the recuperate child split
-	 * on the left and valid/cancel on the right */
-	form_button_part = gtk_vbox_new ( FALSE, 0 );
-	gtk_box_pack_start ( GTK_BOX (transaction_form), form_button_part, FALSE, FALSE, 0 );
-
-	/* add a separator between the transaction and button part */
-	separator = gtk_hseparator_new ();
-	gtk_box_pack_start ( GTK_BOX (form_button_part), separator, FALSE, FALSE, 0 );
-
-	/* Hbox containing buttons */
-	hbox_buttons = gtk_hbox_new ( FALSE, 0 );
-	gtk_box_pack_start ( GTK_BOX (form_button_part), hbox_buttons, FALSE, FALSE, 0 );
-
-	hbox_buttons_inner = gtk_hbox_new ( TRUE, 0 );
-	gtk_box_pack_end ( GTK_BOX (hbox_buttons), hbox_buttons_inner, FALSE, FALSE, 0 );
-
-	/* create the check button to recover the children of splits */
-	form_button_recover_split = gtk_check_button_new_with_label ( _("Recover the children"));
-	gtk_box_pack_start ( GTK_BOX (hbox_buttons_inner),
-			form_button_recover_split,
-			FALSE, FALSE,
-			0 );
-
-	/* create the valid/cancel buttons */
-	form_button_valid = gtk_button_new_from_stock (GTK_STOCK_OK);
-	gtk_button_set_relief ( GTK_BUTTON (form_button_valid), GTK_RELIEF_NONE );
-	g_signal_connect ( G_OBJECT (form_button_valid), "clicked",
-			G_CALLBACK (gsb_form_finish_edition), NULL );
-	gtk_box_pack_end ( GTK_BOX (hbox_buttons_inner), form_button_valid, FALSE, FALSE, 0 );
-
-	form_button_cancel = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
-	gtk_button_set_relief ( GTK_BUTTON (form_button_cancel), GTK_RELIEF_NONE );
-	g_signal_connect ( G_OBJECT (form_button_cancel), "clicked",
-			G_CALLBACK (gsb_form_escape_form), NULL );
-	gtk_box_pack_end ( GTK_BOX (hbox_buttons_inner), form_button_cancel, FALSE, FALSE, 0 );
-
-	/* Kludge : otherwise, GtkExpander won't give us as many space
+    gsb_form_initialise_transaction_form ( );
+
+    /* the buttons part is a hbox, with the recuperate child split
+     * on the left and valid/cancel on the right */
+    form_button_part = gtk_vbox_new ( FALSE, 0 );
+    gtk_box_pack_start ( GTK_BOX (transaction_form), form_button_part, FALSE, FALSE, 0 );
+
+    /* add a separator between the transaction and button part */
+    separator = gtk_hseparator_new ();
+    gtk_box_pack_start ( GTK_BOX (form_button_part), separator, FALSE, FALSE, 0 );
+
+    /* Hbox containing buttons */
+    hbox_buttons = gtk_hbox_new ( FALSE, 0 );
+    gtk_box_pack_start ( GTK_BOX (form_button_part), hbox_buttons, FALSE, FALSE, 0 );
+
+    hbox_buttons_inner = gtk_hbox_new ( TRUE, 0 );
+    gtk_box_pack_end ( GTK_BOX (hbox_buttons), hbox_buttons_inner, FALSE, FALSE, 0 );
+
+    /* create the check button to recover the children of splits */
+    form_button_recover_split = gtk_check_button_new_with_label ( _("Recover the children"));
+    gtk_box_pack_start ( GTK_BOX (hbox_buttons_inner),
+			 form_button_recover_split,
+			 FALSE, FALSE,
+			 0 );
+
+    /* create the valid/cancel buttons */
+    form_button_valid = gtk_button_new_from_stock (GTK_STOCK_OK);
+    gtk_button_set_relief ( GTK_BUTTON (form_button_valid), GTK_RELIEF_NONE );
+    g_signal_connect ( G_OBJECT (form_button_valid), "clicked",
+		       G_CALLBACK (gsb_form_finish_edition), NULL );
+    gtk_box_pack_end ( GTK_BOX (hbox_buttons_inner), form_button_valid, FALSE, FALSE, 0 );
+
+    form_button_cancel = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
+    gtk_button_set_relief ( GTK_BUTTON (form_button_cancel), GTK_RELIEF_NONE );
+    g_signal_connect ( G_OBJECT (form_button_cancel), "clicked",
+		       G_CALLBACK (gsb_form_escape_form), NULL );
+    gtk_box_pack_end ( GTK_BOX (hbox_buttons_inner), form_button_cancel, FALSE, FALSE, 0 );
+
+    /* Kludge : otherwise, GtkExpander won't give us as many space
        as we need. */
-	gtk_widget_set_size_request ( hbox, 2048, -1 );
+/*     gtk_widget_set_size_request ( hbox, 2048, -1 );  */
 
-	gtk_widget_show_all ( hbox );
-	gtk_widget_show_all ( transaction_form );
-	gtk_widget_hide ( form_scheduled_part );
+    gtk_widget_show_all ( hbox );
+    gtk_widget_show_all ( transaction_form );
+    gtk_widget_hide ( form_scheduled_part );
 
-	gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_valid ), FALSE );
-	gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_cancel ), FALSE );
+    gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_valid ), FALSE );
+    gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_cancel ), FALSE );
 
-	gsb_form_show ( FALSE );
+    /* return */
+    gsb_form_show ( FALSE );
 }
 
 
@@ -366,17 +371,17 @@ void gsb_form_create_widgets ( void )
  * \return FALSE
  * */
 static gboolean gsb_form_size_allocate ( GtkWidget *widget,
-		GtkAllocation *allocation,
-		gpointer null )
+                        GtkAllocation *allocation,
+                        gpointer null )
 {
-	if (gsb_form_is_visible () && !block_size_allocate)
-	{
-		block_size_allocate = TRUE;
-		gsb_transactions_list_set_row_align (-1.0);
-	}
-	else
-		block_size_allocate = FALSE;
-	return FALSE;
+    if (gsb_form_is_visible () && !block_size_allocate)
+    {
+	block_size_allocate = TRUE;
+	gsb_transactions_list_set_row_align (-1.0);
+    }
+    else
+	block_size_allocate = FALSE;
+    return FALSE;
 }
 
 
@@ -391,177 +396,177 @@ static gboolean gsb_form_size_allocate ( GtkWidget *widget,
  * \return FALSE
  * */
 gboolean gsb_form_fill_by_transaction ( gint transaction_number,
-		gint is_transaction,
-		gboolean grab_focus )
+                        gint is_transaction,
+                        gboolean grab_focus )
 {
-	gint mother_number;
-	gint account_number;
-	gint focus_to;
-	gint is_split;
-	GSList *tmp_list;
-
-	devel_debug_int (transaction_number);
-
-	if ( !transaction_number )
-		return FALSE;
-
-	/* get the account */
-	account_number = gsb_data_mix_get_account_number (transaction_number, is_transaction);
-	mother_number = gsb_data_mix_get_mother_transaction_number (transaction_number, is_transaction);
-	is_split = gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction);
-
-	/* if here account number = -1, it's because it's a white line or there were a problem ;
-	 * in all case, get the current account number */
-	if (account_number == -1)
-		account_number = gsb_form_get_account_number ();
-
-	/* show and prepare the form */
-	gsb_form_show ( TRUE );
-
-	if ( !is_transaction )
-	{
-		/* we need to set up the part of scheduler form here because changing the account
-		 * button will change the form */
-		gsb_form_scheduler_set ( transaction_number );
-	}
-
-	/* if the transaction is the white line, we set the date and necessary stuff and go away
-	 * for that use the button_press function, so clicking on a form's field or do enter/double click
-	 * on white line will do the same */
-	if ( transaction_number == -1 )
-	{
-		GtkWidget *date_entry;
-
-		/* if we can't touch the focus, it's because we just select a transaction, and
-		 * for now, select the white line, so keep the form blank */
-		if ( !grab_focus )
-			return FALSE;
-
-		date_entry = gsb_form_widget_get_widget (TRANSACTION_FORM_DATE);
-
-		if ( gsb_form_widget_check_empty (date_entry))
-			/* for now,  transaction_number_in_form is NULL so can call the next function
-			 * wich will prepare the form for a new transaction */
-			gsb_form_button_press_event ( date_entry,
-					NULL,
-					GINT_TO_POINTER (TRANSACTION_FORM_DATE));
-
-		gtk_editable_select_region ( GTK_EDITABLE (date_entry), 0, -1);
-		gtk_widget_grab_focus ( GTK_WIDGET (date_entry));
-
-		return FALSE;
-	}
-
-	/* set the number of the transaction in the form, can be -2, -3...
-	 * for white line split
-	 * that must be defined before gsb_form_change_sensitive_buttons
-	 * because without that number, others functions cannot get the account
-	 * number for an execution of scheduled in the home page
-	 * but after gsb_form_show because it will set that value to 0...*/
-	g_object_set_data ( G_OBJECT ( transaction_form ),
+    gint mother_number;
+    gint account_number;
+    gint focus_to;
+    gint is_split;
+    GSList *tmp_list;
+
+    devel_debug_int (transaction_number);
+
+    if ( !transaction_number )
+        return FALSE;
+
+    /* get the account */
+    account_number = gsb_data_mix_get_account_number (transaction_number, is_transaction);
+    mother_number = gsb_data_mix_get_mother_transaction_number (transaction_number, is_transaction);
+    is_split = gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction);
+
+    /* if here account number = -1, it's because it's a white line or there were a problem ; 
+     * in all case, get the current account number */
+    if (account_number == -1)
+        account_number = gsb_form_get_account_number ();
+
+    /* show and prepare the form */
+    gsb_form_show ( TRUE );
+
+    if ( !is_transaction )
+    {
+	/* we need to set up the part of scheduler form here because changing the account
+	 * button will change the form */
+    gsb_form_scheduler_set ( transaction_number );
+    }
+
+    /* if the transaction is the white line, we set the date and necessary stuff and go away
+     * for that use the button_press function, so clicking on a form's field or do enter/double click
+     * on white line will do the same */
+    if ( transaction_number == -1 )
+    {
+        GtkWidget *date_entry;
+
+        /* if we can't touch the focus, it's because we just select a transaction, and
+         * for now, select the white line, so keep the form blank */
+        if ( !grab_focus )
+            return FALSE;
+
+        date_entry = gsb_form_widget_get_widget (TRANSACTION_FORM_DATE);
+
+        if ( gsb_form_widget_check_empty (date_entry))
+            /* for now,  transaction_number_in_form is NULL so can call the next function
+             * wich will prepare the form for a new transaction */
+            gsb_form_button_press_event ( date_entry,
+                          NULL,
+                          GINT_TO_POINTER (TRANSACTION_FORM_DATE));
+
+        gtk_editable_select_region ( GTK_EDITABLE (date_entry), 0, -1);
+        gtk_widget_grab_focus ( GTK_WIDGET (date_entry));
+
+        return FALSE;
+    }
+
+    /* set the number of the transaction in the form, can be -2, -3...
+     * for white line split
+     * that must be defined before gsb_form_change_sensitive_buttons
+     * because without that number, others functions cannot get the account
+     * number for an execution of scheduled in the home page
+     * but after gsb_form_show because it will set that value to 0...*/
+    g_object_set_data ( G_OBJECT ( transaction_form ),
 			"transaction_number_in_form",
 			GINT_TO_POINTER (transaction_number));
 
-	gsb_form_change_sensitive_buttons (TRUE);
-
-	/* by default, a function before changed all the form from non sensitive to sensitive,
-	 * but for split or split child, some widgets need to be unsensitive/hidden */
-	gsb_form_set_sensitive (is_split, mother_number);
-
-	/* fill what is necessary in the form */
-	tmp_list = gsb_form_widget_get_list ();
-
-	while (tmp_list)
-	{
-		struct_element *element;
-
-		element = tmp_list -> data;
-
-		if (mother_number
-				&&
-				transaction_number < 0)
-		{
-			/* we are on a split white line, we fill only few fields
-			 * with the element_number of the mother */
-			switch (element -> element_number)
-			{
-			case TRANSACTION_FORM_DATE:
-			case TRANSACTION_FORM_VALUE_DATE:
-			case TRANSACTION_FORM_PARTY:
-			case TRANSACTION_FORM_TYPE:
-			case TRANSACTION_FORM_CHEQUE:
-			case TRANSACTION_FORM_DEVISE:
-			case TRANSACTION_FORM_BANK:
-				gsb_form_fill_element ( element -> element_number,
-						account_number,
-						mother_number,
-						is_transaction );
-				break;
-			}
-		}
-		else
-			/* normal transaction */
-			gsb_form_fill_element ( element -> element_number,
-					account_number,
-					transaction_number,
-					is_transaction );
-
-		tmp_list = tmp_list -> next;
-	}
-
-	/* for a transaction, need to check if marked R, and do some stuff with that */
-	if (is_transaction)
-	{
-		gint contra_transaction_number;
-
-		/* get the contra transaction */
-		contra_transaction_number = gsb_data_transaction_get_contra_transaction_number ( transaction_number );
-
-		/* if the transaction is marked R and splitted, cannot change the amounts */
-		if ( gsb_data_transaction_get_marked_transaction (transaction_number) == OPERATION_RAPPROCHEE
-				&& mother_number == 0 )
-		{
-			gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_DEBIT), FALSE );
-			gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_CREDIT), FALSE );
-		}
-
-		/* if the contra transaction is marked R, cannot change category and amounts */
-		if ( contra_transaction_number > 0
-				&&
-				gsb_data_transaction_get_marked_transaction (contra_transaction_number) == OPERATION_RAPPROCHEE )
-		{
-			gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_DEBIT), FALSE );
-			gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_CREDIT), FALSE );
-
-			/* if it's a transfer, we cannot change too the category */
-			gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_CATEGORY), FALSE );
-		}
-	}
-
-	/* we take focus only if asked */
-	if (grab_focus)
-	{
-		GtkWidget *widget;
-
-		/* the form is full, if it's not a split, we give the focus to the date
-		 * else, we give the focus to the first free form element */
-		if (mother_number)
-			focus_to = gsb_form_widget_next_element ( account_number,
-					TRANSACTION_FORM_DATE,
-					GSB_RIGHT );
-		else
-			focus_to = TRANSACTION_FORM_DATE;
-
-		widget = gsb_form_widget_get_widget ( focus_to );
-		gtk_editable_select_region ( GTK_EDITABLE ( widget ), 0, -1 );
-		if ( !is_transaction && gtk_widget_is_focus ( widget ) )
-			gsb_form_widget_entry_get_focus ( widget, NULL, GINT_TO_POINTER ( focus_to ) );
-		else
-			gtk_widget_grab_focus ( widget );
-
-	}
-
-	return FALSE;
+    gsb_form_change_sensitive_buttons (TRUE);
+
+    /* by default, a function before changed all the form from non sensitive to sensitive,
+     * but for split or split child, some widgets need to be unsensitive/hidden */
+    gsb_form_set_sensitive (is_split, mother_number);
+
+    /* fill what is necessary in the form */
+    tmp_list = gsb_form_widget_get_list ();
+
+    while (tmp_list)
+    {
+        struct_element *element;
+
+        element = tmp_list -> data;
+
+        if (mother_number
+            &&
+            transaction_number < 0)
+        {
+            /* we are on a split white line, we fill only few fields
+             * with the element_number of the mother */
+            switch (element -> element_number)
+            {
+            case TRANSACTION_FORM_DATE:
+            case TRANSACTION_FORM_VALUE_DATE:
+            case TRANSACTION_FORM_PARTY:
+            case TRANSACTION_FORM_TYPE:
+            case TRANSACTION_FORM_CHEQUE:
+            case TRANSACTION_FORM_DEVISE:
+            case TRANSACTION_FORM_BANK:
+                gsb_form_fill_element ( element -> element_number,
+                            account_number,
+                            mother_number,
+                            is_transaction );
+                break;
+            }
+        }
+        else
+            /* normal transaction */
+            gsb_form_fill_element ( element -> element_number,
+                        account_number,
+                        transaction_number,
+                        is_transaction );
+
+        tmp_list = tmp_list -> next;
+    }
+
+    /* for a transaction, need to check if marked R, and do some stuff with that */
+    if (is_transaction)
+    {
+        gint contra_transaction_number;
+
+        /* get the contra transaction */
+        contra_transaction_number = gsb_data_transaction_get_contra_transaction_number ( transaction_number );
+
+        /* if the transaction is marked R and splitted, cannot change the amounts */
+        if ( gsb_data_transaction_get_marked_transaction (transaction_number) == OPERATION_RAPPROCHEE
+         && mother_number == 0 )
+        {
+            gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_DEBIT), FALSE );
+            gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_CREDIT), FALSE );
+        }
+
+        /* if the contra transaction is marked R, cannot change category and amounts */
+        if ( contra_transaction_number > 0
+         &&
+         gsb_data_transaction_get_marked_transaction (contra_transaction_number) == OPERATION_RAPPROCHEE )
+        {
+            gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_DEBIT), FALSE );
+            gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_CREDIT), FALSE );
+
+            /* if it's a transfer, we cannot change too the category */
+            gtk_widget_set_sensitive ( gsb_form_widget_get_widget (TRANSACTION_FORM_CATEGORY), FALSE );
+        }
+    }
+
+    /* we take focus only if asked */
+    if (grab_focus)
+    {
+        GtkWidget *widget;
+
+        /* the form is full, if it's not a split, we give the focus to the date
+         * else, we give the focus to the first free form element */
+        if (mother_number)
+            focus_to = gsb_form_widget_next_element ( account_number,
+						      TRANSACTION_FORM_DATE,
+						      GSB_RIGHT );
+        else
+            focus_to = TRANSACTION_FORM_DATE;
+
+        widget = gsb_form_widget_get_widget ( focus_to );
+        gtk_editable_select_region ( GTK_EDITABLE ( widget ), 0, -1 );
+        if ( !is_transaction && gtk_widget_is_focus ( widget ) )
+            gsb_form_widget_entry_get_focus ( widget, NULL, GINT_TO_POINTER ( focus_to ) );
+        else
+            gtk_widget_grab_focus ( widget );
+
+    }
+
+    return FALSE;
 }
 
 
@@ -576,61 +581,61 @@ gboolean gsb_form_fill_by_transaction ( gint transaction_number,
  * \return FALSE
  * */
 gboolean gsb_form_set_sensitive ( gboolean split,
-		gboolean split_child)
+                        gboolean split_child)
 {
-	GSList *tmp_list;
+    GSList *tmp_list;
 
-	/* for now, come here only for split or split child */
-	if (!split
-			&&
-			!split_child)
-		return FALSE;
+    /* for now, come here only for split or split child */
+    if (!split
+	&&
+	!split_child)
+	return FALSE;
 
-	tmp_list = gsb_form_widget_get_list ();
+    tmp_list = gsb_form_widget_get_list ();
 
-	while (tmp_list)
-	{
-		struct_element *element;
+    while (tmp_list)
+    {
+	struct_element *element;
 
-		element = tmp_list -> data;
+	element = tmp_list -> data;
 
-		/* for a split, hide the exercice and the budget */
-		if (split)
-		{
-			switch (element -> element_number)
-			{
-			case TRANSACTION_FORM_BUDGET:
-			case TRANSACTION_FORM_VOUCHER:
-				gtk_widget_set_sensitive ( element -> element_widget,
-						FALSE );
-				break;
-			}
-		}
+	/* for a split, hide the exercice and the budget */
+	if (split)
+	{
+	    switch (element -> element_number)
+	    {
+		case TRANSACTION_FORM_BUDGET:
+		case TRANSACTION_FORM_VOUCHER:
+		    gtk_widget_set_sensitive ( element -> element_widget,
+					       FALSE );
+		    break;
+	    }
+	}
 
-		/* for a child of split, cannot change the date, payee... */
-		if ( split_child )
-		{
-			/* mixed widgets for transactions and scheduled transactions */
-			switch (element -> element_number)
-			{
-			case TRANSACTION_FORM_DATE:
-			case TRANSACTION_FORM_VALUE_DATE:
-			case TRANSACTION_FORM_PARTY:
-			case TRANSACTION_FORM_DEVISE:
-			case TRANSACTION_FORM_CHANGE:
-			case TRANSACTION_FORM_TYPE:
-			case TRANSACTION_FORM_CHEQUE:
-			case TRANSACTION_FORM_BANK:
-				gtk_widget_set_sensitive ( element -> element_widget,
-						FALSE );
-				break;
-			}
-			/* specific widgets for scheduled transactions */
-			gtk_widget_hide (gsb_form_get_scheduler_part ());
-		}
-		tmp_list = tmp_list -> next;
+	/* for a child of split, cannot change the date, payee... */
+	if ( split_child )
+	{
+	    /* mixed widgets for transactions and scheduled transactions */
+	    switch (element -> element_number)
+	    {
+		case TRANSACTION_FORM_DATE:
+		case TRANSACTION_FORM_VALUE_DATE:
+		case TRANSACTION_FORM_PARTY:
+		case TRANSACTION_FORM_DEVISE:
+		case TRANSACTION_FORM_CHANGE:
+		case TRANSACTION_FORM_TYPE:
+		case TRANSACTION_FORM_CHEQUE:
+		case TRANSACTION_FORM_BANK:
+		    gtk_widget_set_sensitive ( element -> element_widget,
+					       FALSE );
+		    break;
+	    }
+	    /* specific widgets for scheduled transactions */
+	    gtk_widget_hide (gsb_form_get_scheduler_part ());
 	}
-	return FALSE;
+	tmp_list = tmp_list -> next;
+    }
+    return FALSE;
 }
 
 
@@ -647,298 +652,298 @@ gboolean gsb_form_set_sensitive ( gboolean split,
  * \return
  * */
 void gsb_form_fill_element ( gint element_number,
-		gint account_number,
-		gint transaction_number,
-		gboolean is_transaction )
+                        gint account_number,
+                        gint transaction_number,
+                        gboolean is_transaction )
 {
-	GtkWidget *widget;
-	GtkWidget *tmp_widget;
-	gchar *char_tmp;
-	gint number;
+    GtkWidget *widget;
+    GtkWidget *tmp_widget;
+    gchar *char_tmp;
+    gint number;
 
-	widget = gsb_form_widget_get_widget (element_number);
-	if (!widget)
-		return;
+    widget = gsb_form_widget_get_widget (element_number);
+    if (!widget)
+	return;
 
-	switch (element_number)
-	{
+    switch (element_number)
+    {
 	case TRANSACTION_FORM_OP_NB:
-		gtk_label_set_text ( GTK_LABEL ( widget ),
-				char_tmp = utils_str_itoa (transaction_number));
-		g_free (char_tmp);
-		break;
+	    gtk_label_set_text ( GTK_LABEL ( widget ),
+				 char_tmp = utils_str_itoa (transaction_number));
+	    g_free (char_tmp);
+	    break;
 
 	case TRANSACTION_FORM_DATE:
-		gsb_form_entry_get_focus (widget);
-		gsb_calendar_entry_set_date ( widget, gsb_data_mix_get_date (transaction_number, is_transaction));
-		break;
+	    gsb_form_entry_get_focus (widget);
+	    gsb_calendar_entry_set_date ( widget, gsb_data_mix_get_date (transaction_number, is_transaction));
+	    break;
 
 	case TRANSACTION_FORM_VALUE_DATE:
-		/* value_date only for transactions */
-		if ( is_transaction
-				&&
-				gsb_data_transaction_get_value_date (transaction_number))
-		{
-			gsb_form_entry_get_focus (widget);
-			gsb_calendar_entry_set_date ( widget, gsb_data_transaction_get_value_date (transaction_number));
-		}
-		break;
+	    /* value_date only for transactions */
+	    if ( is_transaction
+		 &&
+		 gsb_data_transaction_get_value_date (transaction_number))
+	    {
+		gsb_form_entry_get_focus (widget);
+		gsb_calendar_entry_set_date ( widget, gsb_data_transaction_get_value_date (transaction_number));
+	    }
+	    break;
 
 	case TRANSACTION_FORM_EXERCICE:
-		gsb_fyear_set_combobox_history ( widget,
-				gsb_data_mix_get_financial_year_number (transaction_number, is_transaction));
-		break;
+	    gsb_fyear_set_combobox_history ( widget,
+					     gsb_data_mix_get_financial_year_number (transaction_number, is_transaction));
+	    break;
 
 	case TRANSACTION_FORM_PARTY:
-		if ( gsb_data_mix_get_party_number (transaction_number, is_transaction))
-		{
-			gsb_form_entry_get_focus (widget);
-			gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
+	    if ( gsb_data_mix_get_party_number (transaction_number, is_transaction))
+	    {
+		gsb_form_entry_get_focus (widget);
+		gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
 					gsb_data_payee_get_name ( gsb_data_mix_get_party_number (transaction_number, is_transaction), TRUE ));
-		}
-		break;
+	    }
+	    break;
 
 	case TRANSACTION_FORM_DEBIT:
-		if (gsb_data_mix_get_amount (transaction_number, is_transaction).mantissa < 0)
-		{
-			char_tmp = utils_real_get_string_with_currency (gsb_real_abs (gsb_data_mix_get_amount (transaction_number, is_transaction)),
-					gsb_data_mix_get_currency_number (transaction_number, is_transaction),
-					FALSE );
+	    if (gsb_data_mix_get_amount (transaction_number, is_transaction).mantissa < 0)
+	    {
+		char_tmp = utils_real_get_string_with_currency (gsb_real_abs (gsb_data_mix_get_amount (transaction_number, is_transaction)),
+							      gsb_data_mix_get_currency_number (transaction_number, is_transaction),
+							      FALSE );
 
-			gsb_form_entry_get_focus (widget);
-			gtk_entry_set_text ( GTK_ENTRY ( widget ),
-					char_tmp );
-			g_free (char_tmp);
-		}
-		break;
+		gsb_form_entry_get_focus (widget);
+		gtk_entry_set_text ( GTK_ENTRY ( widget ),
+				     char_tmp );
+		g_free (char_tmp);
+	    }
+	    break;
 
 	case TRANSACTION_FORM_CREDIT:
-		if (gsb_data_mix_get_amount (transaction_number, is_transaction).mantissa >= 0)
-		{
-			char_tmp = utils_real_get_string_with_currency (gsb_data_mix_get_amount (transaction_number, is_transaction),
-					gsb_data_mix_get_currency_number (transaction_number, is_transaction),
-					FALSE );
+	    if (gsb_data_mix_get_amount (transaction_number, is_transaction).mantissa >= 0)
+	    {
+		char_tmp = utils_real_get_string_with_currency (gsb_data_mix_get_amount (transaction_number, is_transaction),
+							      gsb_data_mix_get_currency_number (transaction_number, is_transaction),
+							      FALSE );
 
-			gsb_form_entry_get_focus (widget);
-			gtk_entry_set_text ( GTK_ENTRY ( widget ),
-					char_tmp );
-			g_free (char_tmp);
-		}
-		break;
+		gsb_form_entry_get_focus (widget);
+		gtk_entry_set_text ( GTK_ENTRY ( widget ),
+				     char_tmp );
+		g_free (char_tmp);
+	    }
+	    break;
 
 	case TRANSACTION_FORM_CATEGORY:
-		if (gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction))
-		{
-			/* it's a split of transaction */
-			gsb_form_entry_get_focus (widget);
-			gtk_combofix_set_text ( GTK_COMBOFIX (widget),
+	    if (gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction))
+	    {
+		/* it's a split of transaction */
+		gsb_form_entry_get_focus (widget);
+		gtk_combofix_set_text ( GTK_COMBOFIX (widget),
 					_("Split of transaction") );
-		}
-		else
-		{
-			gint contra_transaction_number;
+	    }
+	    else
+	    {
+        gint contra_transaction_number;
 
-			contra_transaction_number = gsb_data_mix_get_transaction_number_transfer (transaction_number, is_transaction);
-			switch (contra_transaction_number)
-			{
-			case -1:
-				/* transfer to deleted account, not possible with scheduled */
-				gsb_form_entry_get_focus (widget);
-				gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
+		contra_transaction_number = gsb_data_mix_get_transaction_number_transfer (transaction_number, is_transaction);
+		switch (contra_transaction_number)
+		{
+		    case -1:
+			/* transfer to deleted account, not possible with scheduled */
+			gsb_form_entry_get_focus (widget);
+			gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
 						_("Transfer : Deleted account") );
-				break;
-			case 0:
-				/* normal category */
-				char_tmp = gsb_data_category_get_name ( gsb_data_mix_get_category_number (transaction_number, is_transaction),
-						gsb_data_mix_get_sub_category_number (transaction_number, is_transaction),
-						NULL );
-				if (char_tmp)
-				{
-					gsb_form_entry_get_focus (widget);
-					gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
-							char_tmp );
-					g_free (char_tmp);
-				}
-				break;
-			default:
-				/* transfer */
-				gsb_form_entry_get_focus (widget);
-				gtk_combofix_set_text ( GTK_COMBOFIX (widget),
-						char_tmp = g_strconcat ( _("Transfer : "),
-								gsb_data_account_get_name (gsb_data_mix_get_account_number_transfer (transaction_number, is_transaction)), NULL ));
-				g_free (char_tmp);
+			break;
+		    case 0:
+			/* normal category */
+			char_tmp = gsb_data_category_get_name ( gsb_data_mix_get_category_number (transaction_number, is_transaction),
+								gsb_data_mix_get_sub_category_number (transaction_number, is_transaction),
+								NULL );
+			if (char_tmp)
+			{
+			    gsb_form_entry_get_focus (widget);
+			    gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
+						    char_tmp );
+			    g_free (char_tmp);
 			}
+			break;
+		    default:
+			/* transfer */
+			gsb_form_entry_get_focus (widget);
+			gtk_combofix_set_text ( GTK_COMBOFIX (widget),
+						char_tmp = g_strconcat ( _("Transfer : "),
+									 gsb_data_account_get_name (gsb_data_mix_get_account_number_transfer (transaction_number, is_transaction)), NULL ));
+			g_free (char_tmp);
 		}
-		break;
+	    }
+	    break;
 
 	case TRANSACTION_FORM_BUDGET:
-		char_tmp = gsb_data_budget_get_name ( gsb_data_mix_get_budgetary_number (transaction_number, is_transaction),
-				gsb_data_mix_get_sub_budgetary_number (transaction_number, is_transaction),
-				NULL );
-		if (char_tmp)
-		{
-			gsb_form_entry_get_focus (widget);
-			gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
+	    char_tmp = gsb_data_budget_get_name ( gsb_data_mix_get_budgetary_number (transaction_number, is_transaction),
+						  gsb_data_mix_get_sub_budgetary_number (transaction_number, is_transaction),
+						  NULL );
+	    if (char_tmp)
+	    {
+		gsb_form_entry_get_focus (widget);
+		gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
 					char_tmp );
-			g_free (char_tmp);
-		}
-		break;
+		g_free (char_tmp);
+	    }
+	    break;
 
 	case TRANSACTION_FORM_NOTES:
-		if (gsb_data_mix_get_notes (transaction_number, is_transaction))
-		{
-			gsb_form_entry_get_focus (widget);
-			gtk_entry_set_text ( GTK_ENTRY ( widget ),
-					gsb_data_mix_get_notes (transaction_number, is_transaction));
-		}
-		break;
+	    if (gsb_data_mix_get_notes (transaction_number, is_transaction))
+	    {
+		gsb_form_entry_get_focus (widget);
+		gtk_entry_set_text ( GTK_ENTRY ( widget ),
+				     gsb_data_mix_get_notes (transaction_number, is_transaction));
+	    }
+	    break;
 
 	case TRANSACTION_FORM_TYPE:
-		/* one small thing here : normally if the transaction is a debit, we set the
-		 * negative payment method. but the problem : if we are on a child of split,
-		 * that child contains the payment method of the mother, and if the child has not
-		 * the same sign of the mother (rare but possible), grisbi will not find the good payment
-		 * method for that child because it's not on the good sign... so for a child of split,
-		 * we set the payment box of the mother */
-		number = gsb_data_mix_get_mother_transaction_number (transaction_number, is_transaction);
-		if (!number)
-			/* it's not a child split, so set number to transaction_number */
-			number = transaction_number;
-
-		/* ok, now number contains either the transaction_number, either the mother transaction number,
-		 * we can check the sign with it */
-		if (gsb_data_mix_get_amount (number, is_transaction).mantissa < 0)
-		{
-			if ( gsb_payment_method_get_combo_sign ( widget ) != GSB_PAYMENT_DEBIT
-					||
-					( gsb_payment_method_get_selected_number ( widget )
-							!=
-									gsb_data_account_get_default_debit ( account_number ) ) )
-				gsb_payment_method_create_combo_list ( widget,
-						GSB_PAYMENT_DEBIT,
-						account_number, 0, FALSE );
-		}
-		else
-		{
-			if ( gsb_payment_method_get_combo_sign ( widget ) != GSB_PAYMENT_CREDIT
-					||
-					( gsb_payment_method_get_selected_number ( widget )
-							!=
-									gsb_data_account_get_default_debit ( account_number ) ) )
-				gsb_payment_method_create_combo_list ( widget,
-						GSB_PAYMENT_CREDIT,
-						account_number, 0, FALSE );
-		}
-
-		/* don't show the cheque entry for a child of split */
-		tmp_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
-		if ( gtk_widget_get_visible ( widget ) )
-		{
-			gboolean check_entry = FALSE;
-
-			number = gsb_data_mix_get_method_of_payment_number (transaction_number, is_transaction);
-			if ( transaction_number == - 1 )
-				check_entry = TRUE;
-
-			/* we show the cheque entry only for transactions */
-			if (gsb_payment_method_set_combobox_history ( widget, number, check_entry )
-					&&
-					gsb_data_payment_get_show_entry (number)
-					&&
-					is_transaction
-					&&
-					!gsb_data_mix_get_mother_transaction_number (transaction_number, is_transaction) )
-			{
-				gsb_form_entry_get_focus ( tmp_widget );
-				if ( gsb_data_transaction_get_method_of_payment_content ( transaction_number ) )
-					gtk_entry_set_text ( GTK_ENTRY ( tmp_widget ),
-							gsb_data_transaction_get_method_of_payment_content ( transaction_number) );
-
-				gtk_widget_show ( tmp_widget );
-			}
-			else
-				gtk_widget_hide ( tmp_widget );
-		}
-		else
-			gtk_widget_hide ( tmp_widget );
-		break;
+	    /* one small thing here : normally if the transaction is a debit, we set the
+	     * negative payment method. but the problem : if we are on a child of split,
+	     * that child contains the payment method of the mother, and if the child has not
+	     * the same sign of the mother (rare but possible), grisbi will not find the good payment
+	     * method for that child because it's not on the good sign... so for a child of split,
+	     * we set the payment box of the mother */
+	    number = gsb_data_mix_get_mother_transaction_number (transaction_number, is_transaction);
+	    if (!number)
+		/* it's not a child split, so set number to transaction_number */
+		number = transaction_number;
+
+	    /* ok, now number contains either the transaction_number, either the mother transaction number,
+	     * we can check the sign with it */
+	    if (gsb_data_mix_get_amount (number, is_transaction).mantissa < 0)
+        {
+            if ( gsb_payment_method_get_combo_sign ( widget ) != GSB_PAYMENT_DEBIT
+             ||
+             ( gsb_payment_method_get_selected_number ( widget )
+             !=
+             gsb_data_account_get_default_debit ( account_number ) ) )
+                gsb_payment_method_create_combo_list ( widget,
+                                GSB_PAYMENT_DEBIT,
+                                account_number, 0, FALSE );
+        }
+	    else
+        {
+            if ( gsb_payment_method_get_combo_sign ( widget ) != GSB_PAYMENT_CREDIT
+             ||
+             ( gsb_payment_method_get_selected_number ( widget )
+             !=
+             gsb_data_account_get_default_debit ( account_number ) ) )
+                gsb_payment_method_create_combo_list ( widget,
+                                GSB_PAYMENT_CREDIT,
+                                account_number, 0, FALSE );
+        }
+
+	    /* don't show the cheque entry for a child of split */
+        tmp_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
+	    if ( gtk_widget_get_visible ( widget ) )
+	    {
+            gboolean check_entry = FALSE;
+
+            number = gsb_data_mix_get_method_of_payment_number (transaction_number, is_transaction);
+            if ( transaction_number == - 1 )
+                check_entry = TRUE;
+
+            /* we show the cheque entry only for transactions */
+            if (gsb_payment_method_set_combobox_history ( widget, number, check_entry )
+             &&
+             gsb_data_payment_get_show_entry (number)
+             &&
+             is_transaction
+              &&
+             !gsb_data_mix_get_mother_transaction_number (transaction_number, is_transaction) )
+            {
+                gsb_form_entry_get_focus ( tmp_widget );
+                if ( gsb_data_transaction_get_method_of_payment_content ( transaction_number ) )
+                    gtk_entry_set_text ( GTK_ENTRY ( tmp_widget ),
+                            gsb_data_transaction_get_method_of_payment_content ( transaction_number) );
+
+                gtk_widget_show ( tmp_widget );
+            }
+            else
+                gtk_widget_hide ( tmp_widget );
+	    }
+	    else
+            gtk_widget_hide ( tmp_widget );
+	    break;
 
 	case TRANSACTION_FORM_DEVISE:
-		number = gsb_data_mix_get_currency_number (transaction_number, is_transaction);
-
-		gsb_currency_set_combobox_history ( widget, number);
-		if ( transaction_number < 1 )
-			gsb_currency_init_exchanges ( );
-
-		if (is_transaction)
-		{
-			if ( gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_RAPPROCHEE )
-			{
-				gtk_widget_set_sensitive ( widget, FALSE );
-				gtk_widget_hide ( gsb_form_widget_get_widget (
-						TRANSACTION_FORM_CHANGE ) );
-			}
-		}
-		break;
+	    number = gsb_data_mix_get_currency_number (transaction_number, is_transaction);
+
+	    gsb_currency_set_combobox_history ( widget, number);
+        if ( transaction_number < 1 )
+            gsb_currency_init_exchanges ( );
+
+	    if (is_transaction)
+        {
+            if ( gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_RAPPROCHEE )
+            {
+                gtk_widget_set_sensitive ( widget, FALSE );
+                gtk_widget_hide ( gsb_form_widget_get_widget (
+                            TRANSACTION_FORM_CHANGE ) );
+            }
+        }
+	    break;
 
 	case TRANSACTION_FORM_BANK:
-		if ( gsb_data_mix_get_bank_references (transaction_number, is_transaction))
-		{
-			gsb_form_entry_get_focus (widget);
-			gtk_entry_set_text ( GTK_ENTRY ( widget ),
-					gsb_data_mix_get_bank_references (transaction_number, is_transaction));
-		}
-		break;
+	    if ( gsb_data_mix_get_bank_references (transaction_number, is_transaction))
+	    {
+		gsb_form_entry_get_focus (widget);
+		gtk_entry_set_text ( GTK_ENTRY ( widget ),
+				     gsb_data_mix_get_bank_references (transaction_number, is_transaction));
+	    }
+	    break;
 
 	case TRANSACTION_FORM_VOUCHER:
-		if ( gsb_data_mix_get_voucher (transaction_number, is_transaction))
-		{
-			gsb_form_entry_get_focus (widget);
-			gtk_entry_set_text ( GTK_ENTRY ( widget ),
-					gsb_data_mix_get_voucher (transaction_number, is_transaction));
-		}
-		break;
+	    if ( gsb_data_mix_get_voucher (transaction_number, is_transaction))
+	    {
+		gsb_form_entry_get_focus (widget);
+		gtk_entry_set_text ( GTK_ENTRY ( widget ),
+				     gsb_data_mix_get_voucher (transaction_number, is_transaction));
+	    }
+	    break;
 
 	case TRANSACTION_FORM_CONTRA:
-		if (gsb_data_mix_get_transaction_number_transfer (transaction_number, is_transaction) > 0)
-		{
-			number = gsb_data_mix_get_account_number_transfer (transaction_number, is_transaction);
-
-			if ( gsb_data_mix_get_amount (transaction_number, is_transaction).mantissa < 0 )
-				gsb_payment_method_create_combo_list ( widget,
-						GSB_PAYMENT_CREDIT,
-						number, 0, TRUE );
-			else
-				gsb_payment_method_create_combo_list ( widget,
-						GSB_PAYMENT_DEBIT,
-						number, 0, TRUE );
-
-			if (gtk_widget_get_visible (widget))
-			{
-				gint method;
-
-				if (is_transaction)
-					method = gsb_data_transaction_get_method_of_payment_number (
-							gsb_data_transaction_get_contra_transaction_number (transaction_number));
-				else
-					method = gsb_data_scheduled_get_contra_method_of_payment_number (transaction_number);
-
-				gsb_payment_method_set_combobox_history ( widget, method, FALSE );
-			}
-		}
-		else
-			gtk_widget_hide ( widget );
-		break;
+	    if (gsb_data_mix_get_transaction_number_transfer (transaction_number, is_transaction) > 0)
+	    {
+            number = gsb_data_mix_get_account_number_transfer (transaction_number, is_transaction);
+
+            if ( gsb_data_mix_get_amount (transaction_number, is_transaction).mantissa < 0 )
+                gsb_payment_method_create_combo_list ( widget,
+							   GSB_PAYMENT_CREDIT,
+							   number, 0, TRUE );
+            else
+                gsb_payment_method_create_combo_list ( widget,
+							   GSB_PAYMENT_DEBIT,
+							   number, 0, TRUE );
+
+            if (gtk_widget_get_visible (widget))
+            {
+                gint method;
+
+                if (is_transaction)
+                    method = gsb_data_transaction_get_method_of_payment_number (
+                                gsb_data_transaction_get_contra_transaction_number (transaction_number));
+                else
+                    method = gsb_data_scheduled_get_contra_method_of_payment_number (transaction_number);
+
+                gsb_payment_method_set_combobox_history ( widget, method, FALSE );
+            }
+	    }
+        else
+            gtk_widget_hide ( widget );
+	    break;
 
 	case TRANSACTION_FORM_MODE:
-		if ( gsb_data_mix_get_automatic_transaction (transaction_number, is_transaction))
-			gtk_label_set_text ( GTK_LABEL ( widget ),
-					_("Auto"));
-		else
-			gtk_label_set_text ( GTK_LABEL ( widget ),
-					_("Manual"));
-		break;
-	}
+	    if ( gsb_data_mix_get_automatic_transaction (transaction_number, is_transaction))
+		gtk_label_set_text ( GTK_LABEL ( widget ),
+				     _("Auto"));
+	    else
+		gtk_label_set_text ( GTK_LABEL ( widget ),
+				     _("Manual"));
+	    break;
+    }
 }
 
 
@@ -951,21 +956,21 @@ void gsb_form_fill_element ( gint element_number,
  * return FALSE
  * */
 gboolean gsb_form_set_expander_visible ( gboolean visible,
-		gboolean transactions_list )
+                        gboolean transactions_list )
 {
-	if ( visible )
-	{
-		gtk_widget_show (form_expander);
+    if ( visible )
+    {
+	gtk_widget_show (form_expander);
 
-		if (transactions_list)
-			gtk_widget_show (label_last_statement);
-		else
-			gtk_widget_hide (label_last_statement);
-	}
+	if (transactions_list)
+	    gtk_widget_show (label_last_statement);
 	else
-		gtk_widget_hide (form_expander);
+	    gtk_widget_hide (label_last_statement);
+    }
+    else
+	gtk_widget_hide (form_expander);
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -980,10 +985,10 @@ gboolean gsb_form_set_expander_visible ( gboolean visible,
  * */
 gboolean gsb_form_switch_expander ( void )
 {
-	gtk_expander_set_expanded ( GTK_EXPANDER (form_expander),
-			!gsb_form_is_visible ());
+    gtk_expander_set_expanded ( GTK_EXPANDER (form_expander),
+				!gsb_form_is_visible ());
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -997,33 +1002,36 @@ gboolean gsb_form_switch_expander ( void )
  * \return FALSE
  * */
 gboolean gsb_form_activate_expander ( GtkWidget *expander,
-		gpointer null )
+                        gpointer null )
 {
-	devel_debug (NULL);
-
-	if ( gtk_expander_get_expanded (GTK_EXPANDER (expander)))
-	{
-		GtkWidget *date_entry;
-
-		gsb_form_show ( TRUE );
-		etat.formulaire_toujours_affiche = TRUE;
-		gsb_form_widget_set_focus ( TRANSACTION_FORM_DATE );
-		date_entry = gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE );
-		gsb_form_widget_set_empty ( date_entry, TRUE );
-		gsb_form_button_press_event ( date_entry,
-				NULL,
-				GINT_TO_POINTER ( TRANSACTION_FORM_DATE ) );
-		gtk_widget_grab_focus ( GTK_WIDGET ( date_entry ) );
-		gtk_editable_set_position (GTK_EDITABLE ( date_entry ), -1 );
-	}
-	else
-	{
-		gsb_form_show ( FALSE );
-		etat.formulaire_toujours_affiche = FALSE;
-	}
-	gsb_menu_update_view_menu ( gsb_gui_navigation_get_current_account () );
-
-	return FALSE;
+    GrisbiAppConf *conf;
+
+    devel_debug (NULL);
+    conf = grisbi_app_get_conf ( );
+
+    if ( gtk_expander_get_expanded ( GTK_EXPANDER ( expander ) ) )
+    {
+        GtkWidget *date_entry;
+
+        gsb_form_show ( TRUE );
+        conf->formulaire_toujours_affiche = TRUE;
+        gsb_form_widget_set_focus ( TRANSACTION_FORM_DATE );
+        date_entry = gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE );
+        gsb_form_widget_set_empty ( date_entry, TRUE );
+        gsb_form_button_press_event ( date_entry,
+                        NULL,
+                        GINT_TO_POINTER ( TRANSACTION_FORM_DATE ) );
+        gtk_widget_grab_focus ( GTK_WIDGET ( date_entry ) );
+        gtk_editable_set_position (GTK_EDITABLE ( date_entry ), -1 );
+    }
+    else
+    {
+        gsb_form_show ( FALSE );
+        conf->formulaire_toujours_affiche = FALSE;
+    }
+    gsb_menu_update_view_menu ( gsb_gui_navigation_get_current_account () );
+
+    return FALSE;
 }
 
 
@@ -1039,37 +1047,36 @@ gboolean gsb_form_activate_expander ( GtkWidget *expander,
  * */
 gboolean gsb_form_show ( gboolean show )
 {
-	gint origin;
+    gint origin;
 
-	devel_debug_int (show);
+    devel_debug_int (show);
 
-	origin = gsb_form_get_origin ();
+    origin = gsb_form_get_origin ();
 
-	/* show or hide the scheduler part */
-	switch (origin)
-	{
+    /* show or hide the scheduler part */
+    switch (origin)
+    {
 	case ORIGIN_VALUE_OTHER:
 	case ORIGIN_VALUE_HOME:
-		return FALSE;
-		break;
+	    return FALSE;
+	    break;
 
 	case ORIGIN_VALUE_SCHEDULED:
-		gsb_form_scheduler_set_frequency ( 2 );
-		gtk_widget_show ( form_scheduled_part );
-		break;
+	    gsb_form_scheduler_set_frequency ( 2 );
+	    gtk_widget_show ( form_scheduled_part );
+	    break;
 
 	default:
-		gtk_widget_hide ( form_scheduled_part );
-		break;
-	}
+	    gtk_widget_hide ( form_scheduled_part );
+    }
 
-	gsb_form_fill_from_account ( origin );
-	gtk_widget_show ( form_transaction_part );
+    gsb_form_fill_from_account ( origin );
+    gtk_widget_show ( form_transaction_part );
 
-	if ( ! gsb_form_is_visible ( ) && show )
-		gtk_expander_set_expanded (GTK_EXPANDER (form_expander), TRUE );
+    if ( ! gsb_form_is_visible ( ) && show )
+        gtk_expander_set_expanded (GTK_EXPANDER (form_expander), TRUE );
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -1081,13 +1088,13 @@ gboolean gsb_form_show ( gboolean show )
  */
 gboolean gsb_form_is_visible ( void )
 {
-	return gtk_expander_get_expanded ( GTK_EXPANDER ( form_expander ) );
+    return gtk_expander_get_expanded ( GTK_EXPANDER ( form_expander ) );
 }
 
 
 
 /**
- * hide the form, depending to the variable etat.formulaire_toujours_affiche
+ * hide the form, depending to the variable conf->formulaire_toujours_affiche
  * if the user wants the form always showed, that function does nothing
  * else, destroy the form and hide the expander
  *
@@ -1097,8 +1104,8 @@ gboolean gsb_form_is_visible ( void )
  * */
 gboolean gsb_form_hide ( void )
 {
-	gsb_form_escape_form ();
-	return FALSE;
+    gsb_form_escape_form ();
+    return FALSE;
 }
 
 
@@ -1114,43 +1121,42 @@ gboolean gsb_form_hide ( void )
  * */
 gint gsb_form_get_account_number ( void )
 {
-	gint account_number;
-	gint origin;
+    gint account_number;
+    gint origin;
 
-	origin = gsb_form_get_origin ();
+    origin = gsb_form_get_origin ();
 
-	switch (origin)
-	{
+    switch (origin)
+    {
 	case ORIGIN_VALUE_OTHER:
-		return -2;
-		break;
+	    return -2;
+	    break;
 
 	case ORIGIN_VALUE_HOME:
-		/* we are on the home page, we need to check if the form is showed,
-		 * if yes, we get the account number of the scheduled showed in that form */
-		if ( transaction_form && gtk_widget_get_visible (transaction_form))
-		{
-			gint scheduled_number;
-
-			scheduled_number = GPOINTER_TO_INT ( g_object_get_data ( G_OBJECT (transaction_form),
-					"transaction_number_in_form" ));
-			if (!scheduled_number)
-				return -2;
-			account_number = gsb_data_scheduled_get_account_number (scheduled_number);
-		}
-		else
-			return -2;
-		break;
+	    /* we are on the home page, we need to check if the form is showed,
+	     * if yes, we get the account number of the scheduled showed in that form */
+	    if ( transaction_form && gtk_widget_get_visible (transaction_form))
+	    {
+		gint scheduled_number;
+
+		scheduled_number = GPOINTER_TO_INT ( g_object_get_data ( G_OBJECT (transaction_form),
+									 "transaction_number_in_form" ));
+		if (!scheduled_number)
+		    return -2;
+		account_number = gsb_data_scheduled_get_account_number (scheduled_number);
+	    }
+	    else
+		return -2;
+	    break;
 
 	case ORIGIN_VALUE_SCHEDULED:
-		account_number = gsb_form_scheduler_get_account ();
-		break;
-
+	    account_number = gsb_form_scheduler_get_account ();
+	    break;
+	    
 	default:
-		account_number = origin;
-		break;
-	}
-	return account_number;
+	    account_number = origin;
+    }
+    return account_number;
 }
 
 
@@ -1168,26 +1174,26 @@ gint gsb_form_get_account_number ( void )
  *  */
 gint gsb_form_get_origin ( void )
 {
-	gint account_number;
+    gint account_number;
 
-	switch (gsb_gui_navigation_get_current_page())
-	{
+    switch (gsb_gui_navigation_get_current_page())
+    {
 	case GSB_ACCOUNT_PAGE:
-		account_number = gsb_gui_navigation_get_current_account ();
+	    account_number = gsb_gui_navigation_get_current_account ();
 
-		if ( account_number != -1)
-			return account_number;
-		break;
+	    if ( account_number != -1)
+		return account_number;
+	    break;
 
 	case GSB_SCHEDULER_PAGE:
-		return ORIGIN_VALUE_SCHEDULED;
-		break;
+	    return ORIGIN_VALUE_SCHEDULED;
+	    break;
 
 	case GSB_HOME_PAGE:
-		return ORIGIN_VALUE_HOME;
-		break;
-	}
-	return ORIGIN_VALUE_OTHER;
+	    return ORIGIN_VALUE_HOME;
+	    break;
+    }
+    return ORIGIN_VALUE_OTHER;
 }
 
 
@@ -1202,64 +1208,64 @@ gint gsb_form_get_origin ( void )
  * */
 gboolean gsb_form_fill_from_account ( gint account_number )
 {
-	gint row, column;
-	gint rows_number, columns_number;
+    gint row, column;
+    gint rows_number, columns_number;
 
-	devel_debug_int (account_number);
+    devel_debug_int (account_number);
 
-	/* account_number can be -1 if come here from the accounts choice button,
-	 * and -2 if there were a problem with the origin */
-	switch (account_number)
-	{
+    /* account_number can be -1 if come here from the accounts choice button,
+     * and -2 if there were a problem with the origin */
+    switch (account_number)
+    {
 	case -2:
-		return FALSE;
-		break;
-
+	    return FALSE;
+	    break;
+	    
 	case -1:
-		account_number = gsb_form_scheduler_get_account ();
-		if (account_number == -2 )
-			return FALSE;
-		break;
-	}
-
-	/* if each account has a separate form, get it here,
-	 * else, get the form of the first account */
-
-	rows_number = gsb_data_form_get_nb_rows ( account_number );
-	columns_number = gsb_data_form_get_nb_columns ( account_number );
-
-	for ( row=0 ; row < rows_number ; row++ )
-		for ( column=0 ; column < columns_number ; column++ )
-		{
-			GtkWidget *widget;
-			gint element = gsb_data_form_get_value ( account_number, column, row );
-
-			widget = gsb_form_widget_get_widget ( element );
-
-			if ( !widget )
-				continue;
+	    account_number = gsb_form_scheduler_get_account ();
+	    if (account_number == -2 )
+		return FALSE;
+	    break;
+    }
 
-			/* We want to show all the widgets that are independent of operations and put
-			 * the means of payment in accordance with the type of account */
-			if ( element == TRANSACTION_FORM_TYPE )
-			{
-				gint sign;
+    /* if each account has a separate form, get it here,
+     * else, get the form of the first account */
 
-				if ( gsb_data_account_get_default_credit ( account_number ) == 0 )
-					sign = GSB_PAYMENT_NEUTRAL;
-				else
-					sign = GSB_PAYMENT_DEBIT;
+    rows_number = gsb_data_form_get_nb_rows ( account_number );
+    columns_number = gsb_data_form_get_nb_columns ( account_number );
 
-				gsb_payment_method_create_combo_list ( widget, sign, account_number, 0, FALSE );
-			}
-			else if ( element != TRANSACTION_FORM_CONTRA
-					&&
-					element != TRANSACTION_FORM_CHEQUE )
-				gtk_widget_show (widget);
-		}
+    for ( row=0 ; row < rows_number ; row++ )
+    for ( column=0 ; column < columns_number ; column++ )
+	{
+	    GtkWidget *widget;
+	    gint element = gsb_data_form_get_value ( account_number, column, row );
+
+		widget = gsb_form_widget_get_widget ( element );
+
+	    if ( !widget )
+            continue;
+
+	    /* We want to show all the widgets that are independent of operations and put 
+         * the means of payment in accordance with the type of account */
+	    if ( element == TRANSACTION_FORM_TYPE )
+        {
+            gint sign;
+
+            if ( gsb_data_account_get_default_credit ( account_number ) == 0 )
+                sign = GSB_PAYMENT_NEUTRAL;
+            else
+                sign = GSB_PAYMENT_DEBIT;
+
+            gsb_payment_method_create_combo_list ( widget, sign, account_number, 0, FALSE );
+        }
+		else if ( element != TRANSACTION_FORM_CONTRA
+         &&
+         element != TRANSACTION_FORM_CHEQUE )
+            gtk_widget_show (widget);
+	}
 
-	gsb_form_clean (account_number);
-	return FALSE;
+    gsb_form_clean (account_number);
+    return FALSE;
 }
 
 
@@ -1273,151 +1279,151 @@ gboolean gsb_form_fill_from_account ( gint account_number )
  * */
 gboolean gsb_form_clean ( gint account_number )
 {
-	GSList *tmp_list;
+    GSList *tmp_list;
+
+    devel_debug_int (account_number);
 
-	devel_debug_int (account_number);
+    /* clean the transactions widget */
+    tmp_list = gsb_form_widget_get_list ();
 
-	/* clean the transactions widget */
-	tmp_list = gsb_form_widget_get_list ();
+    while (tmp_list)
+    {
+	struct_element *element;
 
-	while (tmp_list)
+	element = tmp_list -> data;
+
+	/* better to protect here if widget != NULL (bad experience...) */
+	if (element -> element_widget)
 	{
-		struct_element *element;
+	    /* some widgets can be set unsensitive because of the children of splits,
+	     * so resensitive all to be sure */
+	    gtk_widget_set_sensitive ( element -> element_widget, TRUE );
+
+	    switch (element -> element_number)
+	    {
+		case TRANSACTION_FORM_DATE:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Date") );
+		    break;
 
-		element = tmp_list -> data;
+		case TRANSACTION_FORM_VALUE_DATE:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Value date") );
+		    break;
 
-		/* better to protect here if widget != NULL (bad experience...) */
-		if (element -> element_widget)
-		{
-			/* some widgets can be set unsensitive because of the children of splits,
-			 * so resensitive all to be sure */
-			gtk_widget_set_sensitive ( element -> element_widget, TRUE );
+		case TRANSACTION_FORM_EXERCICE:
+		    /* editing a transaction can show some fyear wich shouldn't be showed,
+		     * so hide them here */
+		    gsb_fyear_update_fyear_list ();
 
-			switch (element -> element_number)
-			{
-			case TRANSACTION_FORM_DATE:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Date") );
-				break;
-
-			case TRANSACTION_FORM_VALUE_DATE:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Value date") );
-				break;
-
-			case TRANSACTION_FORM_EXERCICE:
-				/* editing a transaction can show some fyear wich shouldn't be showed,
-				 * so hide them here */
-				gsb_fyear_update_fyear_list ();
-
-				/* set the combo_box on 'Automatic' */
-				gsb_fyear_set_combobox_history ( element -> element_widget, 0 );
-
-				gtk_widget_set_sensitive ( GTK_WIDGET ( element -> element_widget ), FALSE );
-				break;
-
-			case TRANSACTION_FORM_PARTY:
-				gsb_form_widget_set_empty ( GTK_COMBOFIX ( element -> element_widget ) -> entry, TRUE );
-				gtk_combofix_set_text ( GTK_COMBOFIX ( element -> element_widget ), _("Payee") );
-				break;
-
-			case TRANSACTION_FORM_DEBIT:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Debit") );
-				break;
-
-			case TRANSACTION_FORM_CREDIT:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Credit") );
-				break;
-
-			case TRANSACTION_FORM_CATEGORY:
-				gsb_form_widget_set_empty ( GTK_COMBOFIX ( element -> element_widget ) -> entry, TRUE );
-				gtk_combofix_set_text ( GTK_COMBOFIX ( element -> element_widget ),
-						_("Categories : Sub-categories") );
-				break;
-
-			case TRANSACTION_FORM_FREE:
-				break;
-
-			case TRANSACTION_FORM_BUDGET:
-				gsb_form_widget_set_empty ( GTK_COMBOFIX ( element -> element_widget ) -> entry, TRUE );
-				gtk_combofix_set_text ( GTK_COMBOFIX ( element -> element_widget ), _("Budgetary line") );
-				break;
-
-			case TRANSACTION_FORM_NOTES:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Notes") );
-				break;
-
-			case TRANSACTION_FORM_TYPE:
-			{
-				gint payment_number;
+		    /* set the combo_box on 'Automatic' */
+		    gsb_fyear_set_combobox_history ( element -> element_widget, 0 );
 
-				payment_number = gsb_data_account_get_default_debit ( account_number );
-				gsb_payment_method_set_combobox_history ( element -> element_widget, payment_number, TRUE );
-				gtk_widget_set_sensitive ( GTK_WIDGET ( element -> element_widget ), FALSE );
-				gsb_payment_method_show_cheque_entry_if_necessary ( payment_number );
+		    gtk_widget_set_sensitive ( GTK_WIDGET ( element -> element_widget ), FALSE );
+		    break;
 
-				break;
-			}
-			case TRANSACTION_FORM_CONTRA:
-				gtk_widget_hide ( element -> element_widget );
-				break;
-
-			case TRANSACTION_FORM_CHEQUE:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ),
-						_("Cheque/Transfer number") );
-				break;
-
-			case TRANSACTION_FORM_DEVISE:
-				g_signal_handlers_block_by_func ( G_OBJECT ( element -> element_widget ),
-						G_CALLBACK ( gsb_form_transaction_currency_changed ),
-						NULL );
-				gsb_currency_set_combobox_history ( element -> element_widget,
-						gsb_data_account_get_currency ( account_number ) );
-				gtk_widget_set_sensitive ( GTK_WIDGET ( element -> element_widget ), FALSE );
-				g_signal_handlers_unblock_by_func ( G_OBJECT ( element -> element_widget ),
-						G_CALLBACK ( gsb_form_transaction_currency_changed ),
-						NULL );
-				break;
-
-			case TRANSACTION_FORM_CHANGE:
-				gtk_widget_hide ( element -> element_widget );
-				break;
-
-			case TRANSACTION_FORM_BANK:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Bank references") );
-				break;
-
-			case TRANSACTION_FORM_VOUCHER:
-				gsb_form_widget_set_empty ( element -> element_widget, TRUE );
-				gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Voucher") );
-				break;
-
-			case TRANSACTION_FORM_OP_NB:
-				gtk_label_set_text ( GTK_LABEL ( element -> element_widget ), NULL );
-				break;
-
-			case TRANSACTION_FORM_MODE:
-				gtk_label_set_text ( GTK_LABEL ( element -> element_widget ), NULL );
-				break;
-			}
-		}
-		tmp_list = tmp_list -> next;
+		case TRANSACTION_FORM_PARTY:
+		    gsb_form_widget_set_empty ( GTK_COMBOFIX ( element -> element_widget ) -> entry, TRUE );
+		    gtk_combofix_set_text ( GTK_COMBOFIX ( element -> element_widget ), _("Payee") );
+		    break;
+
+		case TRANSACTION_FORM_DEBIT:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Debit") );
+		    break;
+
+		case TRANSACTION_FORM_CREDIT:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Credit") );
+		    break;
+
+		case TRANSACTION_FORM_CATEGORY:
+		    gsb_form_widget_set_empty ( GTK_COMBOFIX ( element -> element_widget ) -> entry, TRUE );
+		    gtk_combofix_set_text ( GTK_COMBOFIX ( element -> element_widget ),
+					    _("Categories : Sub-categories") );
+		    break;
+
+		case TRANSACTION_FORM_FREE:
+		    break;
+
+		case TRANSACTION_FORM_BUDGET:
+		    gsb_form_widget_set_empty ( GTK_COMBOFIX ( element -> element_widget ) -> entry, TRUE );
+		    gtk_combofix_set_text ( GTK_COMBOFIX ( element -> element_widget ), _("Budgetary line") );
+		    break;
+
+		case TRANSACTION_FORM_NOTES:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Notes") );
+		    break;
+
+		case TRANSACTION_FORM_TYPE:
+        {
+            gint payment_number;
+
+            payment_number = gsb_data_account_get_default_debit ( account_number );
+		    gsb_payment_method_set_combobox_history ( element -> element_widget, payment_number, TRUE );
+		    gtk_widget_set_sensitive ( GTK_WIDGET ( element -> element_widget ), FALSE );
+            gsb_payment_method_show_cheque_entry_if_necessary ( payment_number );
+
+		    break;
+        }
+		case TRANSACTION_FORM_CONTRA:
+		    gtk_widget_hide ( element -> element_widget );
+		    break;
+
+		case TRANSACTION_FORM_CHEQUE:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ),
+                        _("Cheque/Transfer number") );
+		    break;
+
+		case TRANSACTION_FORM_DEVISE:
+            g_signal_handlers_block_by_func ( G_OBJECT ( element -> element_widget ),
+                        G_CALLBACK ( gsb_form_transaction_currency_changed ),
+                        NULL );
+		    gsb_currency_set_combobox_history ( element -> element_widget,
+							gsb_data_account_get_currency ( account_number ) );
+		    gtk_widget_set_sensitive ( GTK_WIDGET ( element -> element_widget ), FALSE );
+            g_signal_handlers_unblock_by_func ( G_OBJECT ( element -> element_widget ),
+                        G_CALLBACK ( gsb_form_transaction_currency_changed ),
+                        NULL );
+		    break;
+
+		case TRANSACTION_FORM_CHANGE:
+		    gtk_widget_hide ( element -> element_widget );
+		    break;
+
+		case TRANSACTION_FORM_BANK:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Bank references") );
+		    break;
+
+		case TRANSACTION_FORM_VOUCHER:
+		    gsb_form_widget_set_empty ( element -> element_widget, TRUE );
+		    gtk_entry_set_text ( GTK_ENTRY ( element -> element_widget ), _("Voucher") );
+		    break;
+
+		case TRANSACTION_FORM_OP_NB:
+		    gtk_label_set_text ( GTK_LABEL ( element -> element_widget ), NULL );
+		    break;
+
+		case TRANSACTION_FORM_MODE:
+		    gtk_label_set_text ( GTK_LABEL ( element -> element_widget ), NULL );
+		    break;
+	    }
 	}
-	g_object_set_data ( G_OBJECT ( transaction_form ), "transaction_number_in_form", NULL );
+	tmp_list = tmp_list -> next;
+    }
+    g_object_set_data ( G_OBJECT ( transaction_form ), "transaction_number_in_form", NULL );
 
-	/* don't show the recover button */
-	gtk_widget_hide ( form_button_recover_split );
+    /* don't show the recover button */
+    gtk_widget_hide ( form_button_recover_split );
 
-	/* unsensitive the valid and cancel buttons */
-	gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_valid ), FALSE );
-	gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_cancel ), FALSE );
+    /* unsensitive the valid and cancel buttons */
+    gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_valid ), FALSE );
+    gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_cancel ), FALSE );
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -1432,15 +1438,15 @@ gboolean gsb_form_clean ( gint account_number )
  */
 gint gsb_form_get_element_expandable ( gint element_number )
 {
-	switch ( element_number )
-	{
+    switch ( element_number )
+    {
 	case TRANSACTION_FORM_OP_NB:
 	case TRANSACTION_FORM_MODE:
-		return GTK_SHRINK;
+	    return GTK_SHRINK;
 
 	default:
-		return GTK_EXPAND | GTK_FILL;
-	}
+	    return GTK_EXPAND | GTK_FILL;
+    }
 }
 
 
@@ -1455,28 +1461,28 @@ gint gsb_form_get_element_expandable ( gint element_number )
  * */
 gboolean gsb_form_entry_get_focus ( GtkWidget *entry )
 {
-	/* the entry can be a combofix or a real entry */
-	if (GTK_IS_COMBOFIX ( entry ))
-	{
-		if ( gsb_form_widget_check_empty (GTK_COMBOFIX ( entry ) -> entry ) )
-		{
-			gtk_combofix_set_text ( GTK_COMBOFIX ( entry ), "" );
-			gsb_form_widget_set_empty ( GTK_COMBOFIX ( entry) -> entry, FALSE );
-		}
-	}
-	else
-	{
-		if ( gsb_form_widget_check_empty ( entry ) )
-		{
-			gtk_entry_set_text ( GTK_ENTRY ( entry ), "" );
-			gsb_form_widget_set_empty ( entry, FALSE );
-		}
-	}
-	/* sensitive the valid and cancel buttons */
-	gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_valid ), TRUE );
-	gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_cancel ), TRUE );
-
-	return FALSE;
+    /* the entry can be a combofix or a real entry */
+    if (GTK_IS_COMBOFIX ( entry ))
+    {
+        if ( gsb_form_widget_check_empty (GTK_COMBOFIX ( entry ) -> entry ) )
+        {
+            gtk_combofix_set_text ( GTK_COMBOFIX ( entry ), "" );
+            gsb_form_widget_set_empty ( GTK_COMBOFIX ( entry) -> entry, FALSE );
+        }
+    }
+    else
+    {
+        if ( gsb_form_widget_check_empty ( entry ) )
+        {
+            gtk_entry_set_text ( GTK_ENTRY ( entry ), "" );
+            gsb_form_widget_set_empty ( entry, FALSE );
+        }
+    }
+    /* sensitive the valid and cancel buttons */
+    gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_valid ), TRUE );
+    gtk_widget_set_sensitive ( GTK_WIDGET ( form_button_cancel ), TRUE );
+
+    return FALSE;
 }
 
 
@@ -1490,320 +1496,320 @@ gboolean gsb_form_entry_get_focus ( GtkWidget *entry )
  * \return FALSE
  * */
 gboolean gsb_form_entry_lose_focus ( GtkWidget *entry,
-		GdkEventFocus *ev,
-		gint *ptr_origin )
+                        GdkEventFocus *ev,
+                        gint *ptr_origin )
 {
-	gchar *string;
-	gint element_number;
-	GtkWidget *widget;
-	GtkWidget *tmp_widget;
-	gint account_number;
-	gint transaction_number;
-	gint payment_number;
-
-	/* still not found, if change the content of the form, something come in entry
-	 * wich is nothing, so protect here */
-	if ( !GTK_IS_WIDGET (entry)
-			||
-			!GTK_IS_ENTRY (entry))
-		return FALSE;
-
-	/* remove the selection */
-	gtk_editable_select_region ( GTK_EDITABLE ( entry ), 0, 0 );
-	element_number = GPOINTER_TO_INT (ptr_origin);
-	account_number = gsb_form_get_account_number ();
-	transaction_number = GPOINTER_TO_INT ( g_object_get_data (
-			G_OBJECT ( gsb_form_get_form_widget ( ) ),
-			"transaction_number_in_form" ) );
-
-	/* sometimes the combofix popus stays showed, so remove here */
-	if ( element_number == TRANSACTION_FORM_PARTY
-			||
-			element_number == TRANSACTION_FORM_CATEGORY
-			||
-			element_number == TRANSACTION_FORM_BUDGET )
-	{
-		widget = gsb_form_widget_get_widget (element_number);
-		gtk_combofix_hide_popup ( GTK_COMBOFIX ( widget ) );
-	}
-
-	/* string will be filled only if the field is empty */
-	string = NULL;
-	switch ( element_number )
-	{
-	case TRANSACTION_FORM_PARTY :
-		/* we complete the transaction */
-		if ( !gsb_form_transaction_complete_form_by_payee (gtk_entry_get_text (GTK_ENTRY (entry))))
-			string = gsb_form_widget_get_name (TRANSACTION_FORM_PARTY);
-		break;
-
-	case TRANSACTION_FORM_DEBIT :
-		if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
-			return TRUE;
-		/* we change the payment method to adapt it for the debit */
-		if ( strlen ( gtk_entry_get_text ( GTK_ENTRY (entry))))
-		{
-			/* empty the credit */
-			widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CREDIT);
-			if (!gsb_form_widget_check_empty (widget))
-			{
-				gtk_entry_set_text ( GTK_ENTRY ( widget ),
-						gsb_form_widget_get_name ( TRANSACTION_FORM_CREDIT ) );
-				gsb_form_widget_set_empty ( widget, TRUE );
-			}
-
-			widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE);
-
-			/* change the method of payment if necessary
-			 * (if grey, it's a child of split so do nothing) */
-			if ( widget
-					&&
-					gtk_widget_get_sensitive (widget))
-			{
-				/* change the signe of the method of payment and the contra */
-				if ( gsb_payment_method_get_combo_sign ( widget ) == GSB_PAYMENT_CREDIT)
-				{
-					gsb_payment_method_create_combo_list ( widget,
-							GSB_PAYMENT_DEBIT,
-							account_number, 0, FALSE );
-					/* if there is no payment method, the last function hide it, but we have
-					 * to hide the cheque element too */
-					if ( !gtk_widget_get_visible ( widget ) )
-						gtk_widget_hide ( gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE ) );
-
-					widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA );
-					if ( widget && gtk_widget_get_visible ( widget ) )
-						gsb_payment_method_create_combo_list ( gsb_form_widget_get_widget (
-								TRANSACTION_FORM_CONTRA ),
-								GSB_PAYMENT_CREDIT,
-								account_number, 0, TRUE );
-				}
-			}
-			gsb_form_check_auto_separator (entry);
-		}
-		else
-		{
-			/* si pas de nouveau débit on essaie de remettre l'ancien crédit */
-			if ( (string = gsb_form_widget_get_old_credit ( ) ) )
-			{
-				tmp_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT );
-
-				gtk_entry_set_text ( GTK_ENTRY ( tmp_widget ), string );
-				gsb_form_widget_set_empty ( tmp_widget, FALSE );
-				g_free ( string );
-
-				widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE );
-				if ( widget
-						&&
-						gtk_widget_get_sensitive ( widget ) )
-				{
-					/* change the signe of the method of payment and the contra */
-					if ( gsb_payment_method_get_combo_sign ( widget ) == GSB_PAYMENT_DEBIT )
-					{
-						if ( transaction_number == -1 )
-							payment_number =  gsb_form_widget_get_old_credit_payment_number ( );
-						else
-							payment_number = gsb_data_transaction_get_method_of_payment_number (
-									transaction_number );
-
-						gsb_payment_method_create_combo_list ( widget,
-								GSB_PAYMENT_CREDIT,
-								account_number, 0, FALSE );
-						gsb_payment_method_set_payment_position ( widget, payment_number );
-
-						widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
-						if ( widget && gtk_widget_get_visible ( widget ) )
-						{
-							if ( gsb_form_widget_get_old_credit_payment_content ( ) )
-							{
-								gtk_entry_set_text ( GTK_ENTRY ( widget ),
-										gsb_form_widget_get_old_credit_payment_content ( ) );
-								gsb_form_widget_set_empty ( widget, FALSE );
-							}
-						}
-
-						widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CONTRA);
-						if ( widget && gtk_widget_get_visible ( widget ) )
-							gsb_payment_method_create_combo_list ( gsb_form_widget_get_widget (
-									TRANSACTION_FORM_CONTRA ),
-									GSB_PAYMENT_DEBIT,
-									account_number, 0, TRUE );
-					}
-				}
-			}
-			string = gsb_form_widget_get_name (TRANSACTION_FORM_DEBIT);
-		}
-		break;
-
-	case TRANSACTION_FORM_CREDIT :
-		if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
-			return TRUE;
-		/* we change the payment method to adapt it for the debit */
-		if ( strlen ( gtk_entry_get_text ( GTK_ENTRY (entry))))
-		{
-			/* empty the debit */
-			widget = gsb_form_widget_get_widget (TRANSACTION_FORM_DEBIT);
-			if (!gsb_form_widget_check_empty (widget))
-			{
-				gtk_entry_set_text ( GTK_ENTRY (widget),
-						gsb_form_widget_get_name (TRANSACTION_FORM_DEBIT));
-				gsb_form_widget_set_empty ( widget, TRUE );
-			}
-			widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE);
-
-			/* change the method of payment if necessary
-			 * (if grey, it's a child of split so do nothing) */
-			if ( widget
-					&&
-					gtk_widget_get_sensitive (widget))
-			{
-				/* change the signe of the method of payment and the contra */
-				if ( gsb_payment_method_get_combo_sign (widget) == GSB_PAYMENT_DEBIT)
-				{
-					gsb_payment_method_create_combo_list ( widget,
-							GSB_PAYMENT_CREDIT,
-							account_number, 0, FALSE );
-					/* if there is no payment method, the last function hide it, but we have
-					 * to hide the cheque element too */
-					if ( !gtk_widget_get_visible (widget))
-						gtk_widget_hide (gsb_form_widget_get_widget (TRANSACTION_FORM_CHEQUE));
-
-					widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA);
-					if ( widget && gtk_widget_get_visible ( widget ) )
-						gsb_payment_method_create_combo_list ( widget,
-								GSB_PAYMENT_DEBIT,
-								account_number, 0, TRUE );
-				}
-			}
-			gsb_form_check_auto_separator (entry);
-		}
-		else
-		{
-			/* si pas de nouveau credit on essaie de remettre l'ancien débit */
-			if ( (string = gsb_form_widget_get_old_debit ( ) ) )
-			{
-				tmp_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_DEBIT );
-
-				gtk_entry_set_text ( GTK_ENTRY ( tmp_widget ), string );
-				gsb_form_widget_set_empty ( tmp_widget, FALSE );
-				g_free ( string );
-
-				widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE );
-				if ( widget
-						&&
-						gtk_widget_get_sensitive ( widget ) )
-				{
-					/* change the signe of the method of payment and the contra */
-					if ( gsb_payment_method_get_combo_sign ( widget ) == GSB_PAYMENT_CREDIT )
-					{
-						if ( transaction_number == -1 )
-							payment_number =  gsb_form_widget_get_old_debit_payment_number ( );
-						else
-							payment_number = gsb_data_transaction_get_method_of_payment_number (
-									transaction_number );
-
-						gsb_payment_method_create_combo_list ( widget,
-								GSB_PAYMENT_DEBIT,
-								account_number, 0, FALSE );
-						gsb_payment_method_set_payment_position ( widget, payment_number );
-
-						widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
-						if ( widget && gtk_widget_get_visible ( widget ) )
-						{
-							if ( gsb_form_widget_get_old_debit_payment_content ( ) )
-							{
-								gtk_entry_set_text ( GTK_ENTRY ( widget ),
-										gsb_form_widget_get_old_debit_payment_content ( ) );
-								gsb_form_widget_set_empty ( widget, FALSE );
-							}
-						}
-
-						widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CONTRA);
-						if ( widget && gtk_widget_get_visible ( widget ) )
-							gsb_payment_method_create_combo_list ( gsb_form_widget_get_widget (
-									TRANSACTION_FORM_CONTRA ),
-									GSB_PAYMENT_CREDIT,
-									account_number, 0, TRUE );
-					}
-				}
-			}
-			string = gsb_form_widget_get_name ( TRANSACTION_FORM_CREDIT );
-		}
-		break;
+    gchar *string;
+    gint element_number;
+    GtkWidget *widget;
+    GtkWidget *tmp_widget;
+    gint account_number;
+    gint transaction_number;
+    gint payment_number;
+
+    /* still not found, if change the content of the form, something come in entry
+     * wich is nothing, so protect here */
+    if ( !GTK_IS_WIDGET (entry)
+     ||
+     !GTK_IS_ENTRY (entry))
+    return FALSE;
+
+    /* remove the selection */
+    gtk_editable_select_region ( GTK_EDITABLE ( entry ), 0, 0 );
+    element_number = GPOINTER_TO_INT (ptr_origin);
+    account_number = gsb_form_get_account_number ();
+    transaction_number = GPOINTER_TO_INT ( g_object_get_data (
+                        G_OBJECT ( gsb_form_get_form_widget ( ) ),
+                        "transaction_number_in_form" ) );
+
+    /* sometimes the combofix popus stays showed, so remove here */
+    if ( element_number == TRANSACTION_FORM_PARTY
+     ||
+     element_number == TRANSACTION_FORM_CATEGORY
+     ||
+     element_number == TRANSACTION_FORM_BUDGET )
+    {
+        widget = gsb_form_widget_get_widget (element_number);
+        gtk_combofix_hide_popup ( GTK_COMBOFIX ( widget ) );
+    }
+
+    /* string will be filled only if the field is empty */
+    string = NULL;
+    switch ( element_number )
+    {
+    case TRANSACTION_FORM_PARTY :
+        /* we complete the transaction */
+        if ( !gsb_form_transaction_complete_form_by_payee (gtk_entry_get_text (GTK_ENTRY (entry))))
+        string = gsb_form_widget_get_name (TRANSACTION_FORM_PARTY);
+        break;
+
+    case TRANSACTION_FORM_DEBIT :
+        if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
+            return TRUE;
+        /* we change the payment method to adapt it for the debit */
+        if ( strlen ( gtk_entry_get_text ( GTK_ENTRY (entry))))
+        {
+        /* empty the credit */
+        widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CREDIT);
+        if (!gsb_form_widget_check_empty (widget))
+        {
+            gtk_entry_set_text ( GTK_ENTRY ( widget ),
+                        gsb_form_widget_get_name ( TRANSACTION_FORM_CREDIT ) );
+            gsb_form_widget_set_empty ( widget, TRUE );
+        }
+
+        widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE);
+
+        /* change the method of payment if necessary
+         * (if grey, it's a child of split so do nothing) */
+        if ( widget
+            &&
+            gtk_widget_get_sensitive (widget))
+        {
+            /* change the signe of the method of payment and the contra */
+            if ( gsb_payment_method_get_combo_sign ( widget ) == GSB_PAYMENT_CREDIT)
+            {
+            gsb_payment_method_create_combo_list ( widget,
+                                            GSB_PAYMENT_DEBIT,
+                                            account_number, 0, FALSE );
+            /* if there is no payment method, the last function hide it, but we have
+             * to hide the cheque element too */
+            if ( !gtk_widget_get_visible ( widget ) )
+                gtk_widget_hide ( gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE ) );
+
+            widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA );
+            if ( widget && gtk_widget_get_visible ( widget ) )
+                gsb_payment_method_create_combo_list ( gsb_form_widget_get_widget (
+                                            TRANSACTION_FORM_CONTRA ),
+                                            GSB_PAYMENT_CREDIT,
+                                            account_number, 0, TRUE );
+            }
+        }
+        gsb_form_check_auto_separator (entry);
+        }
+        else
+        {
+            /* si pas de nouveau débit on essaie de remettre l'ancien crédit */
+            if ( (string = gsb_form_widget_get_old_credit ( ) ) )
+            {
+                tmp_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT );
+
+                gtk_entry_set_text ( GTK_ENTRY ( tmp_widget ), string );
+                gsb_form_widget_set_empty ( tmp_widget, FALSE );
+                g_free ( string );
+                
+                widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE );
+                if ( widget
+                     &&
+                     gtk_widget_get_sensitive ( widget ) )
+                {
+                    /* change the signe of the method of payment and the contra */
+                    if ( gsb_payment_method_get_combo_sign ( widget ) == GSB_PAYMENT_DEBIT )
+                    {
+                    if ( transaction_number == -1 )
+                        payment_number =  gsb_form_widget_get_old_credit_payment_number ( );
+                    else
+                        payment_number = gsb_data_transaction_get_method_of_payment_number (
+                                            transaction_number );
+
+                    gsb_payment_method_create_combo_list ( widget,
+                                            GSB_PAYMENT_CREDIT,
+                                            account_number, 0, FALSE );
+                    gsb_payment_method_set_payment_position ( widget, payment_number );
+
+                    widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
+                    if ( widget && gtk_widget_get_visible ( widget ) )
+                    {
+                        if ( gsb_form_widget_get_old_credit_payment_content ( ) )
+                        {
+                            gtk_entry_set_text ( GTK_ENTRY ( widget ),
+                                            gsb_form_widget_get_old_credit_payment_content ( ) );
+                            gsb_form_widget_set_empty ( widget, FALSE );
+                        }
+                    }
+
+                    widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CONTRA);
+                    if ( widget && gtk_widget_get_visible ( widget ) )
+                        gsb_payment_method_create_combo_list ( gsb_form_widget_get_widget (
+                                            TRANSACTION_FORM_CONTRA ),
+                                            GSB_PAYMENT_DEBIT,
+                                            account_number, 0, TRUE );
+                    }
+                }
+            }
+            string = gsb_form_widget_get_name (TRANSACTION_FORM_DEBIT);
+        }
+        break;
+
+    case TRANSACTION_FORM_CREDIT :
+        if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
+            return TRUE;
+        /* we change the payment method to adapt it for the debit */
+        if ( strlen ( gtk_entry_get_text ( GTK_ENTRY (entry))))
+        {
+        /* empty the debit */
+        widget = gsb_form_widget_get_widget (TRANSACTION_FORM_DEBIT);
+        if (!gsb_form_widget_check_empty (widget))
+        {
+            gtk_entry_set_text ( GTK_ENTRY (widget),
+                        gsb_form_widget_get_name (TRANSACTION_FORM_DEBIT));
+            gsb_form_widget_set_empty ( widget, TRUE );
+        }
+        widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE);
+
+        /* change the method of payment if necessary
+         * (if grey, it's a child of split so do nothing) */
+        if ( widget
+             &&
+             gtk_widget_get_sensitive (widget))
+        {
+            /* change the signe of the method of payment and the contra */
+            if ( gsb_payment_method_get_combo_sign (widget) == GSB_PAYMENT_DEBIT)
+            {
+            gsb_payment_method_create_combo_list ( widget,
+                        GSB_PAYMENT_CREDIT,
+                        account_number, 0, FALSE );
+            /* if there is no payment method, the last function hide it, but we have
+             * to hide the cheque element too */
+            if ( !gtk_widget_get_visible (widget))
+                gtk_widget_hide (gsb_form_widget_get_widget (TRANSACTION_FORM_CHEQUE));
+
+            widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA);
+            if ( widget && gtk_widget_get_visible ( widget ) )
+                gsb_payment_method_create_combo_list ( widget,
+                        GSB_PAYMENT_DEBIT,
+                        account_number, 0, TRUE );
+            }
+        }
+        gsb_form_check_auto_separator (entry);
+        }
+        else
+        {
+            /* si pas de nouveau credit on essaie de remettre l'ancien débit */
+            if ( (string = gsb_form_widget_get_old_debit ( ) ) )
+            {
+                tmp_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_DEBIT );
+
+                gtk_entry_set_text ( GTK_ENTRY ( tmp_widget ), string );
+                gsb_form_widget_set_empty ( tmp_widget, FALSE );
+                g_free ( string );
+
+                widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_TYPE );
+                if ( widget
+                     &&
+                     gtk_widget_get_sensitive ( widget ) )
+                {
+                    /* change the signe of the method of payment and the contra */
+                    if ( gsb_payment_method_get_combo_sign ( widget ) == GSB_PAYMENT_CREDIT )
+                    {
+                    if ( transaction_number == -1 )
+                        payment_number =  gsb_form_widget_get_old_debit_payment_number ( );
+                    else
+                        payment_number = gsb_data_transaction_get_method_of_payment_number (
+                                            transaction_number );
+
+                    gsb_payment_method_create_combo_list ( widget,
+                                            GSB_PAYMENT_DEBIT,
+                                            account_number, 0, FALSE );
+                    gsb_payment_method_set_payment_position ( widget, payment_number );
+
+                    widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
+                    if ( widget && gtk_widget_get_visible ( widget ) )
+                    {
+                        if ( gsb_form_widget_get_old_debit_payment_content ( ) )
+                        {
+                            gtk_entry_set_text ( GTK_ENTRY ( widget ),
+                                            gsb_form_widget_get_old_debit_payment_content ( ) );
+                            gsb_form_widget_set_empty ( widget, FALSE );
+                        }
+                    }
+ 
+                    widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CONTRA);
+                    if ( widget && gtk_widget_get_visible ( widget ) )
+                        gsb_payment_method_create_combo_list ( gsb_form_widget_get_widget (
+                                            TRANSACTION_FORM_CONTRA ),
+                                            GSB_PAYMENT_CREDIT,
+                                            account_number, 0, TRUE );
+                    }
+                }
+            }
+            string = gsb_form_widget_get_name ( TRANSACTION_FORM_CREDIT );
+        }
+        break;
 
 	case TRANSACTION_FORM_CATEGORY :
-		if ( strlen ( gtk_entry_get_text ( GTK_ENTRY (entry))))
-		{
-			/* if it's a transfer, set the content of the contra combo */
-			if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_CONTRA ) )
-			{
-				/* if it's a transfer, set the contra_method of payment menu */
-				gint contra_account_number;
-
-				contra_account_number = gsb_form_check_for_transfer ( gtk_entry_get_text (
-						GTK_ENTRY ( entry ) ) );
-				if ( contra_account_number >= 0 && contra_account_number != account_number )
-				{
-					if ( gsb_form_widget_check_empty ( gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT ) ) )
-						/* there is something in debit */
-						gsb_payment_method_create_combo_list (
-								gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA ),
-								GSB_PAYMENT_CREDIT,
-								contra_account_number, 0, TRUE );
-					else
-						/* there is something in credit */
-						gsb_payment_method_create_combo_list (
-								gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA ),
-								GSB_PAYMENT_DEBIT,
-								contra_account_number, 0, TRUE );
-				}
-				else
-					gtk_widget_hide ( gsb_form_widget_get_widget (TRANSACTION_FORM_CONTRA));
-			}
-			if ( strcmp ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ), _("Split of transaction") )
-					&& gtk_widget_get_visible ( form_button_recover_split ) )
-			{
-				gtk_widget_hide ( form_button_recover_split );
-			}
-		}
-		else
-			string = gsb_form_widget_get_name (TRANSACTION_FORM_CATEGORY);
-		break;
+	    if ( strlen ( gtk_entry_get_text ( GTK_ENTRY (entry))))
+	    {
+            /* if it's a transfer, set the content of the contra combo */
+            if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_CONTRA ) )
+            {
+                /* if it's a transfer, set the contra_method of payment menu */
+                gint contra_account_number;
+
+                contra_account_number = gsb_form_check_for_transfer ( gtk_entry_get_text (
+                                    GTK_ENTRY ( entry ) ) );
+                if ( contra_account_number >= 0 && contra_account_number != account_number )
+                {
+                    if ( gsb_form_widget_check_empty ( gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT ) ) )
+                        /* there is something in debit */
+                        gsb_payment_method_create_combo_list (
+                                    gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA ),
+                                    GSB_PAYMENT_CREDIT,
+                                    contra_account_number, 0, TRUE );
+                    else
+                        /* there is something in credit */
+                        gsb_payment_method_create_combo_list (
+                                    gsb_form_widget_get_widget ( TRANSACTION_FORM_CONTRA ),
+                                    GSB_PAYMENT_DEBIT,
+                                    contra_account_number, 0, TRUE );
+                }
+                else
+                    gtk_widget_hide ( gsb_form_widget_get_widget (TRANSACTION_FORM_CONTRA));
+            }
+            if ( strcmp ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ), _("Split of transaction") )
+             && gtk_widget_get_visible ( form_button_recover_split ) )
+            {
+                gtk_widget_hide ( form_button_recover_split );
+            }
+	    }
+	    else
+            string = gsb_form_widget_get_name (TRANSACTION_FORM_CATEGORY);
+	    break;
 
 	case TRANSACTION_FORM_CHEQUE :
 	case TRANSACTION_FORM_BUDGET :
 	case TRANSACTION_FORM_VOUCHER :
 	case TRANSACTION_FORM_NOTES :
 	case TRANSACTION_FORM_BANK :
-		if ( !strlen ( gtk_entry_get_text ( GTK_ENTRY ( entry ))))
-			string = _(gsb_form_widget_get_name (element_number));
-		break;
+	    if ( !strlen ( gtk_entry_get_text ( GTK_ENTRY ( entry ))))
+		string = _(gsb_form_widget_get_name (element_number));
+	    break;
 
 	default :
-		break;
-	}
+	    break;
+    }
 
-	/* if string is not NULL, the entry is empty so set the empty field to TRUE */
-	if ( string )
+    /* if string is not NULL, the entry is empty so set the empty field to TRUE */
+    if ( string )
+    {
+	switch ( element_number)
 	{
-		switch ( element_number)
-		{
-		case TRANSACTION_FORM_PARTY :
-		case TRANSACTION_FORM_CATEGORY :
-		case TRANSACTION_FORM_BUDGET :
-			/* need to work with the combofix to avoid some signals if we work
-			 * directly on the entry */
-			gtk_combofix_set_text ( GTK_COMBOFIX ( gsb_form_widget_get_widget (element_number) ),
+	    case TRANSACTION_FORM_PARTY :
+	    case TRANSACTION_FORM_CATEGORY :
+	    case TRANSACTION_FORM_BUDGET :
+		/* need to work with the combofix to avoid some signals if we work
+		 * directly on the entry */
+		gtk_combofix_set_text ( GTK_COMBOFIX ( gsb_form_widget_get_widget (element_number) ),
 					_(string) );
-			break;
+		break;
 
-		default:
-			gtk_entry_set_text ( GTK_ENTRY ( entry ), string );
-			break;
-		}
-		gsb_form_widget_set_empty ( entry, TRUE );
+	    default:
+		gtk_entry_set_text ( GTK_ENTRY ( entry ), string );
+		break;
 	}
-	return FALSE;
+	gsb_form_widget_set_empty ( entry, TRUE );
+    }
+    return FALSE;
 }
 
 
@@ -1817,69 +1823,69 @@ gboolean gsb_form_entry_lose_focus ( GtkWidget *entry,
  * */
 void gsb_form_check_auto_separator ( GtkWidget *entry )
 {
-	gint account_number;
-	gchar *string;
-	gint floating_point;
-	gchar *tmp = NULL;
-	gchar *mon_decimal_point;
-	gunichar decimal_point;
-	gint i;
-
-	if (!etat.automatic_separator
-			||
-			!entry )
-		return;
-
-	/* we need a my_strdup to permit to do the g_free later
-	 * because if strlen < floating point we need to
-	 * malloc another string */
-	string = my_strdup (gtk_entry_get_text (GTK_ENTRY(entry)));
-	if ( !string || strlen (string) == 0 )
-		return;
-
-	account_number = gsb_form_get_account_number ();
-	floating_point = gsb_data_currency_get_floating_point (gsb_data_account_get_currency (account_number));
-
-	mon_decimal_point = gsb_locale_get_mon_decimal_point ( );
-	decimal_point = g_utf8_get_char_validated ( mon_decimal_point, -1 );
-
-	if ( g_utf8_strchr (string, -1, decimal_point ) )
-	{
-		g_free (string);
-		g_free ( mon_decimal_point );
-		return;
-	}
-
-	/* if string is < the floating_point, increase it to have
-	 * 1 character more (to set the 0 before the .) */
-	if (strlen(string) <= floating_point)
-	{
-		gchar *concat_tmp;
-
-		tmp = g_malloc (floating_point - strlen(string) + 2);
-		for (i=0 ; i<(floating_point - strlen(string) + 1) ; i++)
-			tmp[i] = '0';
-		tmp[floating_point - strlen(string) + 1] = 0;
-		concat_tmp = g_strconcat ( tmp, string, NULL );
-		g_free (tmp);
-		g_free (string);
-		string = concat_tmp;
-	}
-
-	tmp = g_malloc ((strlen(string)+2) * sizeof (gchar));
-
-	memcpy ( tmp, string, strlen(string) - floating_point);
-
-	i = strlen(string) - floating_point;
-	tmp[i] = decimal_point;
-	i++;
-	memcpy ( tmp + i, string + i - 1, floating_point );
-	i = i + floating_point;
-	tmp[i] = 0;
-	gtk_entry_set_text (GTK_ENTRY (entry), tmp );
-	g_free (tmp);
-	g_free (string);
-	g_free ( mon_decimal_point );
+    gint account_number;
+    gchar *string;
+    gint floating_point;
+    gchar *tmp = NULL;
+    gchar *mon_decimal_point;
+    gunichar decimal_point;
+    gint i;
+
+    if (!etat.automatic_separator
+	||
+	!entry )
+	return;
+    
+    /* we need a my_strdup to permit to do the g_free later
+     * because if strlen < floating point we need to
+     * malloc another string */
+    string = my_strdup (gtk_entry_get_text (GTK_ENTRY(entry)));
+    if ( !string || strlen (string) == 0 )
+        return;
+
+    account_number = gsb_form_get_account_number ();
+    floating_point = gsb_data_currency_get_floating_point (gsb_data_account_get_currency (account_number));
+
+    mon_decimal_point = gsb_locale_get_mon_decimal_point ( );
+    decimal_point = g_utf8_get_char_validated ( mon_decimal_point, -1 );
+
+    if ( g_utf8_strchr (string, -1, decimal_point ) )
+    {
+        g_free (string);
+        g_free ( mon_decimal_point );
+        return;
+    }
+
+    /* if string is < the floating_point, increase it to have
+     * 1 character more (to set the 0 before the .) */
+    if (strlen(string) <= floating_point)
+    {
+        gchar *concat_tmp;
+
+        tmp = g_malloc (floating_point - strlen(string) + 2);
+        for (i=0 ; i<(floating_point - strlen(string) + 1) ; i++)
+            tmp[i] = '0';
+        tmp[floating_point - strlen(string) + 1] = 0;
+        concat_tmp = g_strconcat ( tmp, string, NULL );
+        g_free (tmp);
+        g_free (string);
+        string = concat_tmp;
+    }
+
+    tmp = g_malloc ((strlen(string)+2) * sizeof (gchar));
+
+    memcpy ( tmp, string, strlen(string) - floating_point);
+
+    i = strlen(string) - floating_point;
+    tmp[i] = decimal_point;
+    i++;
+    memcpy ( tmp + i, string + i - 1, floating_point );
+    i = i + floating_point;
+    tmp[i] = 0;
+    gtk_entry_set_text (GTK_ENTRY (entry), tmp );
+    g_free (tmp);
+    g_free (string);
+    g_free ( mon_decimal_point );
 }
 
 
@@ -1898,27 +1904,27 @@ void gsb_form_check_auto_separator ( GtkWidget *entry )
  * */
 gint gsb_form_check_for_transfer ( const gchar *entry_string )
 {
-	const gchar *account_name;
-
-	if ( !entry_string
-			||
-			strncmp ( entry_string,
-					_("Transfer : "),
-					strlen (_("Transfer : "))))
-		return -3;
-
-	account_name = memchr ( entry_string,
-			':',
-			strlen (entry_string));
-	/* after the : there is a space before the account name */
-	account_name = account_name + 2;
-
-	if ( strcmp ( account_name,
-			_("Deleted account")))
-		return gsb_data_account_get_no_account_by_name (account_name);
-
-	else
-		return -2;
+    const gchar *account_name;
+
+    if ( !entry_string
+	 ||
+	 strncmp ( entry_string,
+		   _("Transfer : "),
+		   strlen (_("Transfer : "))))
+	 return -3;
+
+    account_name = memchr ( entry_string,
+			    ':',
+			    strlen (entry_string));
+    /* after the : there is a space before the account name */
+    account_name = account_name + 2;
+
+    if ( strcmp ( account_name,
+		  _("Deleted account")))
+	return gsb_data_account_get_no_account_by_name (account_name);
+
+    else
+	return -2;
 }
 
 
@@ -1935,82 +1941,82 @@ gint gsb_form_check_for_transfer ( const gchar *entry_string )
  * \return FALSE
  * */
 gboolean gsb_form_button_press_event ( GtkWidget *entry,
-		GdkEventButton *ev,
-		gint *ptr_origin )
+                        GdkEventButton *ev,
+                        gint *ptr_origin )
 {
-	gint element_number;
-	GtkWidget *widget;
-
-	element_number = GPOINTER_TO_INT (ptr_origin);
-
-	/* we do the first part only if we click on the form directly, without double click or
-	 * entry in the transaction list,
-	 * in that case, transaction_number_in_form is 0 and set to -1, as a white line */
-	if (!g_object_get_data (G_OBJECT (transaction_form), "transaction_number_in_form"))
+    gint element_number;
+    GtkWidget *widget;
+
+    element_number = GPOINTER_TO_INT (ptr_origin);
+
+    /* we do the first part only if we click on the form directly, without double click or
+     * entry in the transaction list,
+     * in that case, transaction_number_in_form is 0 and set to -1, as a white line */
+    if (!g_object_get_data (G_OBJECT (transaction_form), "transaction_number_in_form"))
+    {
+	GtkWidget *date_entry;
+
+	/* set the new transaction number */
+	g_object_set_data ( G_OBJECT (transaction_form),
+			    "transaction_number_in_form",
+			    GINT_TO_POINTER (-1));
+
+	/* set the current date into the date entry */
+	date_entry = gsb_form_widget_get_widget (TRANSACTION_FORM_DATE);
+	if ( gsb_form_widget_check_empty (date_entry))
 	{
-		GtkWidget *date_entry;
-
-		/* set the new transaction number */
-		g_object_set_data ( G_OBJECT (transaction_form),
-				"transaction_number_in_form",
-				GINT_TO_POINTER (-1));
-
-		/* set the current date into the date entry */
-		date_entry = gsb_form_widget_get_widget (TRANSACTION_FORM_DATE);
-		if ( gsb_form_widget_check_empty (date_entry))
-		{
-			if ( save_form_date )
-				gtk_entry_set_text ( GTK_ENTRY ( date_entry ),
-						gsb_format_gdate ( save_form_date ) );
-			else
-				gtk_entry_set_text ( GTK_ENTRY ( date_entry ),
-						gsb_date_today ( ) );
-			gsb_form_widget_set_empty ( date_entry, FALSE );
-		}
+        if ( save_form_date )
+            gtk_entry_set_text ( GTK_ENTRY ( date_entry ),
+                        gsb_format_gdate ( save_form_date ) );
+        else
+            gtk_entry_set_text ( GTK_ENTRY ( date_entry ),
+                         gsb_date_today ( ) );
+	    gsb_form_widget_set_empty ( date_entry, FALSE );
+	}
 
-		/* set the form sensitive */
-		gsb_form_change_sensitive_buttons (TRUE);
+	/* set the form sensitive */
+	gsb_form_change_sensitive_buttons (TRUE);
 
-		/* if we are on scheduled transactions, show the scheduled part of form */
-		if (gsb_form_get_origin () == ORIGIN_VALUE_SCHEDULED)
-			gsb_form_scheduler_sensitive_buttons (TRUE);
+	/* if we are on scheduled transactions, show the scheduled part of form */
+	if (gsb_form_get_origin () == ORIGIN_VALUE_SCHEDULED)
+	    gsb_form_scheduler_sensitive_buttons (TRUE);
 
 
-		/* set the number of cheque for the method of payment if necessary */
-		widget = gsb_form_widget_get_widget (TRANSACTION_FORM_TYPE);
+	/* set the number of cheque for the method of payment if necessary */
+	widget = gsb_form_widget_get_widget (TRANSACTION_FORM_TYPE);
 
-		if ( widget
-				&&
-				gtk_widget_get_visible (widget))
-		{
-			gint payment_number;
-			gint account_number;
-			gchar* tmp_str;
+	if ( widget
+	     &&
+	     gtk_widget_get_visible (widget))
+	{
+	    gint payment_number;
+	    gint account_number;
+        gchar* tmp_str;
 
-			account_number = gsb_form_get_account_number ();
-			payment_number = gsb_payment_method_get_selected_number (widget);
-			if ( gsb_data_payment_get_automatic_numbering ( payment_number ))
-			{
-				widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CHEQUE);
+	    account_number = gsb_form_get_account_number ();
+	    payment_number = gsb_payment_method_get_selected_number (widget);
+	    if ( gsb_data_payment_get_automatic_numbering ( payment_number ))
+	    {
+		widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CHEQUE);
 
-				gsb_form_entry_get_focus (widget);
+		gsb_form_entry_get_focus (widget);
 
-				if ( !strlen (gtk_entry_get_text ( GTK_ENTRY (widget))))
-				{
-					tmp_str = gsb_data_payment_incremente_last_number ( payment_number, 1 );
-					gtk_entry_set_text ( GTK_ENTRY (widget), tmp_str);
-					g_free ( tmp_str );
-				}
-			}
+		if ( !strlen (gtk_entry_get_text ( GTK_ENTRY (widget))))
+		{
+            tmp_str = gsb_data_payment_incremente_last_number ( payment_number, 1 );
+		    gtk_entry_set_text ( GTK_ENTRY (widget), tmp_str);
+		    g_free ( tmp_str );
 		}
+	    }
 	}
+    }
 
-	/* if ev is NULL, go away here
-	 * (means come from a function as gsb_form_finish_edition...) */
-	if ( !ev )
-		return FALSE;
-
+    /* if ev is NULL, go away here
+     * (means come from a function as gsb_form_finish_edition...) */
+    if ( !ev )
 	return FALSE;
+
+    return FALSE;
 }
 
 
@@ -2023,18 +2029,18 @@ gboolean gsb_form_button_press_event ( GtkWidget *entry,
  * */
 gboolean gsb_form_change_sensitive_buttons ( gboolean sensitive )
 {
-	if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_TYPE ))
-		gtk_widget_set_sensitive ( GTK_WIDGET ( gsb_form_widget_get_widget (TRANSACTION_FORM_TYPE)),
-				sensitive );
-
-	if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_DEVISE ))
-		gtk_widget_set_sensitive ( GTK_WIDGET ( gsb_form_widget_get_widget (TRANSACTION_FORM_DEVISE)),
-				sensitive );
-
-	if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_EXERCICE ))
-		gtk_widget_set_sensitive ( GTK_WIDGET ( gsb_form_widget_get_widget (TRANSACTION_FORM_EXERCICE)),
-				sensitive );
-	return FALSE;
+    if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_TYPE ))
+	gtk_widget_set_sensitive ( GTK_WIDGET ( gsb_form_widget_get_widget (TRANSACTION_FORM_TYPE)),
+				   sensitive );
+
+    if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_DEVISE ))
+	gtk_widget_set_sensitive ( GTK_WIDGET ( gsb_form_widget_get_widget (TRANSACTION_FORM_DEVISE)),
+				   sensitive );
+
+    if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_EXERCICE ))
+	gtk_widget_set_sensitive ( GTK_WIDGET ( gsb_form_widget_get_widget (TRANSACTION_FORM_EXERCICE)),
+				   sensitive );
+    return FALSE;
 }
 
 
@@ -2048,1236 +2054,1240 @@ gboolean gsb_form_change_sensitive_buttons ( gboolean sensitive )
  * \return FALSE
  * */
 gboolean gsb_form_key_press_event ( GtkWidget *widget,
-		GdkEventKey *ev,
-		gint *ptr_origin )
+                        GdkEventKey *ev,
+                        gint *ptr_origin )
 {
-	gint element_number;
-	gint account_number;
-	gint element_suivant;
-	GtkWidget *widget_prov;
-
-	element_number = GPOINTER_TO_INT (ptr_origin);
-	account_number = gsb_form_get_account_number ();
-
-	/* if conf.entree = 1, entry finish the transaction, else does as tab */
-	if ( !conf.entree
-			&&
-			( ev -> keyval == GDK_KEY_Return
-					||
-					ev -> keyval == GDK_KEY_KP_Enter ))
-		ev->keyval = GDK_KEY_Tab ;
-
-	if (!g_object_get_data (G_OBJECT (transaction_form), "transaction_number_in_form"))
-		/* set the new transaction number */
-		g_object_set_data ( G_OBJECT ( transaction_form ),
-				"transaction_number_in_form",
-				GINT_TO_POINTER ( -1 ) );
-
-	switch ( ev -> keyval )
-	{
-	case GDK_KEY_1:
-	case GDK_KEY_2:
-	case GDK_KEY_3:
-	case GDK_KEY_4:
-	case GDK_KEY_5:
-	case GDK_KEY_6:
-	case GDK_KEY_7:
-	case GDK_KEY_8:
-	case GDK_KEY_9:
-	case GDK_KEY_0:
-		switch ( element_number )
-		{
-		case TRANSACTION_FORM_DEBIT:
-			widget_prov = gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT );
-			if ( !gsb_form_widget_check_empty ( widget_prov ) )
-			{
-				gtk_entry_set_text ( GTK_ENTRY ( widget_prov ),
-						gsb_form_widget_get_name ( TRANSACTION_FORM_CREDIT ) );
-				gsb_form_widget_set_empty ( widget_prov, TRUE );
-			}
-			break;
-		case TRANSACTION_FORM_CREDIT:
-			widget_prov = gsb_form_widget_get_widget ( TRANSACTION_FORM_DEBIT );
-			if ( !gsb_form_widget_check_empty ( widget_prov ) )
-			{
-				gtk_entry_set_text ( GTK_ENTRY (widget_prov),
-						gsb_form_widget_get_name (TRANSACTION_FORM_DEBIT));
-				gsb_form_widget_set_empty ( widget_prov, TRUE );
-			}
-			break;
-		}
-		break;
-		case GDK_KEY_Escape :
-			gsb_form_escape_form ();
-			break;
+    gint element_number;
+    gint account_number;
+    gint element_suivant;
+    GtkWidget *widget_prov;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
+    element_number = GPOINTER_TO_INT (ptr_origin);
+    account_number = gsb_form_get_account_number ();
+
+    /* if conf->entree = 1, entry finish the transaction, else does as tab */
+    if ( !conf->entree
+     &&
+     ( ev -> keyval == GDK_KEY_Return
+     ||
+     ev -> keyval == GDK_KEY_KP_Enter ))
+        ev->keyval = GDK_KEY_Tab ;
+
+    if (!g_object_get_data (G_OBJECT (transaction_form), "transaction_number_in_form"))
+        /* set the new transaction number */
+        g_object_set_data ( G_OBJECT ( transaction_form ),
+                        "transaction_number_in_form",
+                        GINT_TO_POINTER ( -1 ) );
+
+    switch ( ev -> keyval )
+    {
+    case GDK_KEY_1:
+    case GDK_KEY_2:
+    case GDK_KEY_3:
+    case GDK_KEY_4:
+    case GDK_KEY_5:
+    case GDK_KEY_6:
+    case GDK_KEY_7:
+    case GDK_KEY_8:
+    case GDK_KEY_9:
+    case GDK_KEY_0:
+        switch ( element_number )
+        {
+        case TRANSACTION_FORM_DEBIT:
+            widget_prov = gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT );
+            if ( !gsb_form_widget_check_empty ( widget_prov ) )
+            {
+                gtk_entry_set_text ( GTK_ENTRY ( widget_prov ),
+                         gsb_form_widget_get_name ( TRANSACTION_FORM_CREDIT ) );
+                gsb_form_widget_set_empty ( widget_prov, TRUE );
+            }
+            break;
+        case TRANSACTION_FORM_CREDIT:
+            widget_prov = gsb_form_widget_get_widget ( TRANSACTION_FORM_DEBIT );
+            if ( !gsb_form_widget_check_empty ( widget_prov ) )
+            {
+                gtk_entry_set_text ( GTK_ENTRY (widget_prov),
+                            gsb_form_widget_get_name (TRANSACTION_FORM_DEBIT));
+                gsb_form_widget_set_empty ( widget_prov, TRUE );
+            }
+            break;
+        }
+        break;
+	case GDK_KEY_Escape :
+	    gsb_form_escape_form ();
+	    break;
+
+	case GDK_KEY_Up:
+	    element_suivant = gsb_form_widget_next_element ( account_number,
+							     element_number,
+							     GSB_UP );
+	    gsb_form_widget_set_focus ( element_suivant );
+	    return TRUE;
+	    break;
+
+	case GDK_KEY_Down:
+	    element_suivant = gsb_form_widget_next_element ( account_number,
+							     element_number,
+							     GSB_DOWN );
+	    gsb_form_widget_set_focus ( element_suivant );
+	    return TRUE;
+	    break;
+
+	case GDK_KEY_ISO_Left_Tab:
+        if ( element_number == TRANSACTION_FORM_CREDIT
+         || element_number == TRANSACTION_FORM_DEBIT )
+        {
+            if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
+                return TRUE;
+        }
+
+        element_suivant = gsb_form_widget_next_element ( account_number,
+							     element_number,
+							     GSB_LEFT );
+
+        if ( element_number == TRANSACTION_FORM_VALUE_DATE )
+        {
+            widget_prov = gsb_form_widget_get_widget (
+                        TRANSACTION_FORM_VALUE_DATE);
+
+            if (strlen (gtk_entry_get_text (GTK_ENTRY (widget_prov))) == 0 )
+            {
+                gsb_form_widget_set_empty ( widget_prov, TRUE );
+                gtk_entry_set_text ( GTK_ENTRY ( widget_prov ), _("Value date") );
+            }
+            gsb_form_widget_set_focus ( element_suivant );
+        }
+
+        gsb_form_widget_set_focus ( element_suivant );
+	    return TRUE;
+	    break;
+
+	case GDK_KEY_Tab :
+        if ( element_number == TRANSACTION_FORM_CREDIT
+         || element_number == TRANSACTION_FORM_DEBIT )
+        {
+            if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
+                return TRUE;
+        }
+
+        element_suivant = gsb_form_widget_next_element ( account_number,
+							     element_number,
+							     GSB_RIGHT );
+
+        /* if element = value_date fix the bug 578 */
+        if ( element_number == TRANSACTION_FORM_VALUE_DATE )
+        {
+            widget_prov = gsb_form_widget_get_widget (
+                        TRANSACTION_FORM_VALUE_DATE);
+
+            if (strlen (gtk_entry_get_text ( GTK_ENTRY ( widget_prov ) ) ) == 0 )
+            {
+                gsb_form_widget_set_empty ( widget_prov, TRUE );
+                gtk_entry_set_text ( GTK_ENTRY ( widget_prov ), _("Value date") );
+            }
+            gsb_form_widget_set_focus ( element_suivant );
+        }
+
+	    if ( element_suivant == -2 )
+            gsb_form_finish_edition();
+	    else
+            gsb_form_widget_set_focus ( element_suivant );
+	    return TRUE;
+	    break;
+
+	case GDK_KEY_KP_Enter :
+	case GDK_KEY_Return :
+
+	    /* need to check here if we are performing a scheduled transaction in home page
+	     * or another transaction, because if we are in home page, cannot finish like that,
+	     * we need to finish with the dialog wich contains the form */
+	    if (gsb_gui_navigation_get_current_page () == GSB_HOME_PAGE)
+	    {
+            GtkWidget *tmp_widget;
+
+            /* ok, we are on the home page. the best way is to send the response ok
+             * to the dialog */
+            tmp_widget = widget;
+
+            do
+            {
+                tmp_widget = gtk_widget_get_parent (GTK_WIDGET (tmp_widget));
+            }
+            while ( GTK_IS_WIDGET (tmp_widget)
+                &&
+                !GTK_IS_DIALOG (tmp_widget));
+            gtk_dialog_response (GTK_DIALOG (tmp_widget), GTK_RESPONSE_OK);
+            return TRUE;
+	    }
+	    else
+	    {
+            if ( element_number == TRANSACTION_FORM_CREDIT
+             || element_number == TRANSACTION_FORM_DEBIT )
+            {
+                if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
+                    return TRUE;
+            }
+
+            widget_prov = gsb_form_widget_get_widget ( TRANSACTION_FORM_PARTY );
+
+            if ( GTK_IS_COMBOFIX ( widget_prov ) )
+                gsb_form_transaction_complete_form_by_payee ( gtk_combofix_get_text (
+                        GTK_COMBOFIX ( widget_prov ) ) );
+
+            gsb_form_finish_edition ();
+            return TRUE;
+	    }
+	    break;
+
+	case GDK_KEY_KP_Add:
+	case GDK_KEY_plus:
+	case GDK_KEY_equal:		/* This should make all our US users happy */
+	    /* increase the check of 1 */
+	    if (element_number == TRANSACTION_FORM_CHEQUE)
+	    {
+		increment_decrement_champ ( widget,
+					    1 );
+		return TRUE;
+	    }
+	    break;
+
+	case GDK_KEY_KP_Subtract:
+	case GDK_KEY_minus:
+	    /* decrease the check of 1 */
+	    if (element_number == TRANSACTION_FORM_CHEQUE)
+	    {
+		increment_decrement_champ ( widget,
+					    -1 );
+		return TRUE;
+	    }
+	    break;
+    }
+
+    if ( element_number == TRANSACTION_FORM_TYPE )
+    {
+        gint payment_number;
+
+        switch ( ev -> keyval )
+        {
+        case GDK_KEY_c:
+        case GDK_KEY_C:
+            payment_number = gsb_data_payment_get_number_by_name ( _("Credit card"),
+                        account_number );
+            if ( payment_number )
+                gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
+
+            return TRUE;
+            break;
+        case GDK_KEY_d:
+        case GDK_KEY_D:
+            payment_number = gsb_data_payment_get_number_by_name ( _("Direct deposit"),
+                        account_number );
+            if ( payment_number )
+                gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
+
+            return TRUE;
+            break;
+        case GDK_KEY_h:
+        case GDK_KEY_H:
+            payment_number = gsb_data_payment_get_number_by_name ( _("Check"),
+                        account_number );
+            if ( payment_number )
+                gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
+
+            return TRUE;
+            break;
+        case GDK_KEY_l:
+        case GDK_KEY_L:
+            payment_number = gsb_data_payment_get_number_by_name ( _("Cash withdrawal"),
+                        account_number );
+            if ( payment_number )
+                gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
+
+            return TRUE;
+            break;
+
+        case GDK_KEY_p:
+        case GDK_KEY_P:
+            payment_number = gsb_data_payment_get_number_by_name ( _("Direct debit"),
+                        account_number );
+            if ( payment_number )
+                gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
+
+            return TRUE;
+            break;
+        case GDK_KEY_t:
+        case GDK_KEY_T:
+        case GDK_KEY_v:
+        case GDK_KEY_V:
+            payment_number = gsb_data_payment_get_number_by_name ( _("Transfer"),
+                        account_number );
+            if ( payment_number )
+                gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
+
+            return TRUE;
+            break;
+        }
+    }
+
+    return FALSE;
+}
 
-		case GDK_KEY_Up:
-			element_suivant = gsb_form_widget_next_element ( account_number,
-					element_number,
-					GSB_UP );
-			gsb_form_widget_set_focus ( element_suivant );
-			return TRUE;
-			break;
 
-		case GDK_KEY_Down:
-			element_suivant = gsb_form_widget_next_element ( account_number,
-					element_number,
-					GSB_DOWN );
-			gsb_form_widget_set_focus ( element_suivant );
-			return TRUE;
-			break;
+/** 
+ * called when the user finishes the edition of the form
+ * this function works for transaction and scheduled transactions,
+ * it add/modify the transaction in the form
+ * 
+ * \param none
+ * 
+ * \return FALSE
+ * */
+gboolean gsb_form_finish_edition ( void )
+{
+    gint transaction_number;
+    GSList *payee_list;
+    GSList *list_tmp;
+    gint account_number;
+    gint new_transaction;
+    gboolean is_transaction;
+    gboolean execute_scheduled = FALSE;
+    gint saved_scheduled_number = 0;
+    gint source_transaction_number = -1;
+    gint nbre_passage = 0;
+    gint mother_number;
+
+    devel_debug (NULL);
+
+    /* get the number of the transaction, stored in the form (< 0 if new ) */
+    transaction_number = GPOINTER_TO_INT (g_object_get_data ( G_OBJECT ( transaction_form ),
+                                "transaction_number_in_form" ));
+
+    /* set a debug here, if transaction_number is 0, should look for where it comes */
+    if (!transaction_number)
+        notice_debug ("Coming in gsb_form_finish_edition with a 0 number of transaction. "
+                        "This is a bug,\nplease try to do it again and report the bug.");
+
+    account_number = gsb_form_get_account_number ();
+
+    /* check if we finish a transaction or a scheduled transaction
+     * we have to decide if it's a transaction or a scheduled transaction,
+     * and if it's a scheduled, if we execute it (and create transaction) or work on it*/
+    if (gsb_form_get_origin () == ORIGIN_VALUE_SCHEDULED
+     ||
+     gsb_form_get_origin () == ORIGIN_VALUE_HOME )
+    {
+        if (g_object_get_data ( G_OBJECT (transaction_form), "execute_scheduled"))
+        {
+           /* we want to execute the scheduled transaction */
+           is_transaction = TRUE;
+           execute_scheduled = TRUE;
+
+           /* we need to keep the number of scheduled, to check later if there is
+            * some children and modifie the scheduled transaction */
+           saved_scheduled_number = transaction_number;
+           /* as it's a new transaction, do the same as a white line */
+           transaction_number = -1;
+        }
+        else
+            is_transaction = FALSE;
+    }
+    else
+        is_transaction = TRUE;
+
+    /* a new transaction has a number < 0
+     * -1 for the general white line
+     *  -2, -3, ... for the white lines of scheduled transactions
+     *  or it's an execution of scheduled transaction */
+    if ( transaction_number < 0 ) 
+        new_transaction = 1;
+    else
+        new_transaction = 0;
+
+    /* check if the datas are ok */
+    if ( !gsb_form_validate_form_transaction (transaction_number, is_transaction))
+        return FALSE;
+
+    /* if the party is a report, we make as transactions as the number of parties in the
+     * report. So we create a list with the party's numbers or -1 if it's a normal
+     * party */
+    payee_list = gsb_form_transaction_get_parties_list_from_report ();
+
+    /* now we go throw the list */
+    list_tmp = payee_list;
+
+    while ( list_tmp )
+    {
+        if ( GPOINTER_TO_INT (list_tmp -> data) == -1 )
+            /* it's a normal party, we set the list_tmp to NULL */
+            list_tmp = NULL;
+        else
+        {
+            /* it's a report, so each time we come here we set the parti's combofix to the
+             * party of the report */
+
+            if ( !list_tmp -> data )
+            {
+                dialogue_error ( _("No payee selected for this report."));
+                return FALSE;
+            }
+            else
+            {
+                GtkWidget *widget;
+                gint payment_number;
+
+                if ( nbre_passage == 0 )
+                {
+                    widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_PARTY );
+                    gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
+                                gsb_data_payee_get_name ( GPOINTER_TO_INT (
+                                list_tmp -> data ), TRUE ) );
+                    gsb_form_widget_set_empty ( GTK_WIDGET ( GTK_COMBOFIX ( widget ) -> entry ), FALSE );
+                }
+                else
+                {
+                    transaction_number = gsb_data_transaction_new_transaction ( account_number );
+
+                    gsb_data_transaction_copy_transaction ( source_transaction_number,
+                                    transaction_number, TRUE );
+                    gsb_data_transaction_set_party_number ( transaction_number,
+                                    GPOINTER_TO_INT ( list_tmp -> data ) );
+
+                    /* if it's not the first party and the method of payment has to change its number (cheque),
+                     * we increase the number. as we are in a party's list, it's always a new transactio, 
+                     * so we know that it's not the first if transaction_number is not 0 */
+
+                    payment_number = gsb_data_transaction_get_method_of_payment_number (
+                                    source_transaction_number);
+
+                    if ( gsb_data_payment_get_automatic_numbering ( payment_number ) )
+                    {
+                        gchar *tmpstr;
+
+                        tmpstr = gsb_data_payment_incremente_last_number ( payment_number,
+                                        nbre_passage );
+                        gsb_data_transaction_set_method_of_payment_content (
+                                        transaction_number,
+                                        tmpstr );
+                        g_free ( tmpstr ) ;
+                    }
+                    gsb_transactions_list_append_new_transaction ( transaction_number, TRUE);
+                }
+                nbre_passage++;
+            }
+
+            list_tmp = list_tmp -> next;
+            if ( list_tmp == NULL )
+                break;
+            else if ( nbre_passage > 1 )
+                continue;
+        }
+
+        /* now we create the transaction if necessary and set the mother in case of child of split */
+        if ( new_transaction )
+        {
+            /* it's a new transaction, we create it, and set the mother if necessary */
+            gint mother_transaction = 0;
+
+            /* if we are on a white child (ie number < -1, -1 is only for the general white line),
+             * get the mother of transaction */
+            if ( transaction_number < -1 )
+                mother_transaction = gsb_data_mix_get_mother_transaction_number (
+                                            transaction_number, is_transaction);
+            transaction_number = gsb_data_mix_new_transaction (account_number, is_transaction);
+            if ( source_transaction_number == -1 )
+                source_transaction_number = transaction_number;
+
+            gsb_data_mix_set_mother_transaction_number ( transaction_number,
+                                 mother_transaction,
+                                 is_transaction );
+
+            /* si l'opération mère est rapprochée on marque aussi la fille */
+            if ( mother_transaction
+             &&
+             gsb_data_transaction_get_marked_transaction ( mother_transaction ) == OPERATION_RAPPROCHEE )
+            {
+                gsb_data_transaction_set_marked_transaction ( transaction_number, OPERATION_RAPPROCHEE );
+                gsb_data_transaction_set_reconcile_number ( transaction_number,
+                        gsb_data_transaction_get_reconcile_number ( mother_transaction ) );
+            }
+        }
+
+        /* take the datas in the form, except the category */
+        gsb_form_take_datas_from_form ( transaction_number, is_transaction );
+
+        /* si l'opération est une opération planifiée exécutée on met en forme TRANSACTION_FORM_CHEQUE */
+        if ( execute_scheduled )
+        {
+            gint payment_number;
+
+            payment_number = gsb_data_transaction_get_method_of_payment_number ( transaction_number );
+
+            if ( gsb_data_payment_get_automatic_numbering ( payment_number ) )
+            {
+                gchar *tmp_str;
+
+                tmp_str = gsb_data_payment_incremente_last_number ( payment_number, 1 );
+                gsb_data_transaction_set_method_of_payment_content (
+                                transaction_number,
+                                tmp_str );
+                g_free ( tmp_str ) ;
+            }
+        }
+
+        /* perhaps the currency button is not shown
+         * in that case, we give the account currency to that transaction */
+        if ( new_transaction
+             &&
+             !gsb_form_widget_get_widget (TRANSACTION_FORM_DEVISE))
+            gsb_data_mix_set_currency_number ( transaction_number,
+                               gsb_data_account_get_currency (account_number),
+                               is_transaction );
+
+        /* get the category and do the stuff with that (contra-transaction...) */
+        gsb_form_get_categories ( transaction_number,
+                      new_transaction,
+                      is_transaction );
+
+        /* for the rest we need to split for transactions/scheduled */
+        if (is_transaction)
+        {
+            /* it's a transaction or an execution of scheduled transaction */
+            if ( new_transaction )
+            {
+            gint split_transaction_number;
+
+            gsb_transactions_list_append_new_transaction (transaction_number, TRUE);
+
+            /* if it's a real new transaction and if it's a split, we ask if the user wants
+             * to recover previous children */
+            if ( gsb_data_transaction_get_split_of_transaction (transaction_number)
+                 &&
+                 !execute_scheduled
+                 &&
+                 gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (form_button_recover_split))
+                 &&
+                 (split_transaction_number = gsb_form_transactions_look_for_last_party ( gsb_data_transaction_get_party_number (transaction_number),
+                                                     transaction_number,
+                                                     gsb_data_transaction_get_account_number(transaction_number))))
+                gsb_form_transaction_recover_splits_of_transaction ( transaction_number,
+                                         split_transaction_number);
+            }
+            else
+            {
+            /* update a transaction */
+            gsb_transactions_list_update_transaction (transaction_number);
+
+            /* we are on a modification of transaction, but if the modified transaction is a split
+             * and has no children (ie only white line), we assume the user wants now fill the children, so we will do the
+             * same as for a new transaction : open the expander and select the white line */
+            if (transaction_list_get_n_children (transaction_number) == 1)
+            {
+                new_transaction = TRUE;
+                gsb_transactions_list_switch_expander (transaction_number);
+            }
+            }
+        }
+        else
+        {
+            /* it's a scheduled transaction */
+            gsb_form_scheduler_get_scheduler_part (transaction_number);
+
+            if (new_transaction)
+            {
+            gint split_transaction_number;
+
+            gsb_scheduler_list_append_new_scheduled ( transaction_number,
+                                  gsb_scheduler_list_get_end_date_scheduled_showed ());
+            /* recover if necessary previous children */
+            if (gsb_data_scheduled_get_split_of_scheduled (transaction_number)
+                &&
+                gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (form_button_recover_split))
+                &&
+                (split_transaction_number = gsb_form_transactions_look_for_last_party ( gsb_data_scheduled_get_party_number (transaction_number),
+                                                    0,
+                                                    gsb_data_scheduled_get_account_number(transaction_number))))
+                gsb_form_scheduler_recover_splits_of_transaction ( transaction_number,
+                                           split_transaction_number);
+            }
+            else
+            gsb_scheduler_list_update_transaction_in_list (transaction_number);
+
+            /* needed for the two in case of we change the date */
+            gsb_scheduler_list_set_background_color (gsb_scheduler_list_get_tree_view ());
+            gsb_calendar_update ();
+        }
+    }
+    g_slist_free ( payee_list );
+
+    /* if it's a reconciliation and we modify a transaction, check
+     * the amount of marked transactions */
+    if ( is_transaction && run.equilibrage )
+    {
+        if (new_transaction)
+            /* we are reconciling and it's a new transaction, so need to show the checkbox */
+            transaction_list_show_toggle_mark (TRUE);
+        else
+        {
+            gsb_reconcile_update_amounts (NULL, NULL);
+        }
+    }
+
+    /* if we executed a scheduled transation, need to increase the date of the scheduled
+     * and execute the children if it's a split */
+    if (execute_scheduled)
+    {
+        gint increase_result;
+
+        /* first, check if it's a scheduled split and execute the childrent */
+        if ( gsb_data_scheduled_get_split_of_scheduled (saved_scheduled_number) )
+            gsb_scheduler_execute_children_of_scheduled_transaction ( saved_scheduled_number,
+                        transaction_number );
+ 
+        /* now we can increase the scheduled transaction */
+        increase_result = gsb_scheduler_increase_scheduled ( saved_scheduled_number );
+
+        /* the next step is to update the list, but do it only if we are on the scheduled
+         * list, else we needn't because the update will be done when going to that list */
+        if (gsb_gui_navigation_get_current_page () == GSB_SCHEDULER_PAGE)
+        {
+            if (increase_result)
+                gsb_scheduler_list_update_transaction_in_list ( saved_scheduled_number );
+
+            gsb_scheduler_list_set_background_color ( gsb_scheduler_list_get_tree_view () );
+        }
+    }
+
+    /* if it was a new transaction, do the stuff to do another new transaction */
+    if ( new_transaction && !execute_scheduled )
+    {
+        /* we are on a new transaction, if that transaction is a split,
+         * we give the focus to the new white line created for that and
+         * edit it, for that we need to open the transaction to select the
+         * white line, and set it as current transaction */
+        if ( gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction))
+        {
+            /* it's a split */
+            gint white_line_number;
+
+            white_line_number = gsb_data_mix_get_white_line (transaction_number, is_transaction);
+            if ( is_transaction )
+                transaction_list_select ( white_line_number );
+            else
+                gsb_scheduler_list_select (white_line_number);
+        }
+
+        /* it was a new transaction, we save the last date entry */
+        gsb_date_set_last_date ( gtk_entry_get_text (
+                        GTK_ENTRY ( gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE ) ) ) );
+
+        /* we need to use edit_transaction to make a new child split if necessary */
+        if ( is_transaction)
+            gsb_transactions_list_edit_transaction (
+                        gsb_data_account_get_current_transaction_number ( account_number ) );
+        else
+            gsb_scheduler_list_edit_transaction ( gsb_scheduler_list_get_current_scheduled_number ( ) );
+    }
+    else
+        gsb_form_hide ();
+
+    /* on sort de la saisie des opérations filles si variance == 0 */
+    if ( ( mother_number = gsb_data_mix_get_mother_transaction_number ( transaction_number, is_transaction ) ) )
+    {
+        if ( is_transaction
+         &&
+         transaction_list_get_variance ( gsb_data_account_get_current_transaction_number ( account_number ) ) )
+            transaction_list_select ( mother_number );
+        else if ( !is_transaction && !execute_scheduled && gsb_data_scheduled_get_variance ( mother_number ) )
+            gsb_scheduler_list_select ( mother_number );
+    }
+
+    /* if it was a modification of transaction, we need to update the sort and colors
+     * (done automatically for new transaction) */
+    if ( is_transaction && !new_transaction )
+        gsb_transactions_list_update_tree_view (account_number, TRUE);
+
+    /* show the warnings */
+    if ( is_transaction )
+    {
+        affiche_dialogue_soldes_minimaux ();
+        update_transaction_in_trees ( transaction_number );
+        if ( gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_POINTEE )
+        {
+            gsb_navigation_update_statement_label ( account_number );
+            mise_a_jour_liste_comptes_accueil = 1;
+        }
+    }
+
+    /* as we modify or create a transaction, we invalidate the current report */
+    gsb_report_set_current ( 0 );
+
+    /* force the update module budget */
+    gsb_data_account_set_bet_maj ( account_number, BET_MAJ_ALL );
+
+    gsb_file_set_modified ( TRUE );
+
+    /* If the origin of the operation is a model, so we select the new transaction */
+    if ( GPOINTER_TO_INT (g_object_get_data ( G_OBJECT ( transaction_form ),
+     "transaction_selected_in_form" ) ) == -1 )
+    {
+        transaction_list_select ( transaction_number );
+        return FALSE;
+    }
+
+    if ( execute_scheduled )
+    {
+        GtkTreeSelection *selection;
+        GtkTreePath *path;
+
+        selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( gsb_scheduler_list_get_tree_view ( ) ) );
+        path = gtk_tree_path_new_from_string ( "0" );
+        gtk_tree_selection_select_path ( selection, path );
+
+        gtk_tree_path_free ( path );
+    }
+
+    /* give the focus to the date widget */
+    if ( is_transaction )
+        gsb_form_widget_set_focus ( TRANSACTION_FORM_DATE );
+    else
+        gsb_scheduler_list_edit_transaction (gsb_scheduler_list_get_current_scheduled_number ());
+
+    return FALSE;
+}
 
-		case GDK_KEY_ISO_Left_Tab:
-			if ( element_number == TRANSACTION_FORM_CREDIT
-					|| element_number == TRANSACTION_FORM_DEBIT )
-			{
-				if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
-					return TRUE;
-			}
 
-			element_suivant = gsb_form_widget_next_element ( account_number,
-					element_number,
-					GSB_LEFT );
+/**
+ * check if the transaction/scheduled transaction in the form is correct
+ *
+ * \param transaction_number can be -2 for a new daughter scheduled transaction, 0 for a new transaction
+ * 		or any number corresponding to an older transaction
+ * \param is_transaction TRUE if it's for a transaction, FALSE for a scheduled transaction
+ *
+ * \return TRUE or FALSE
+ * */
+gboolean gsb_form_validate_form_transaction ( gint transaction_number,
+                        gboolean is_transaction )
+{
+    GtkWidget *widget;
+    GtkWidget *date_widget;
+    gchar* tmpstr;
+    gint mother_number;
+    gint account_number;
+
+    devel_debug_int ( transaction_number );
+
+    account_number = gsb_form_get_account_number ( );
+
+    /* check if it's a daughter split */
+    mother_number = gsb_data_mix_get_mother_transaction_number ( transaction_number, is_transaction );
+
+    /* begin to work with dates */
+    date_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE );
+
+    /* check the date exists */
+    if ( gsb_form_widget_check_empty ( date_widget ) )
+    {
+        dialogue_error ( _("You must enter a date.") );
+        return (FALSE);
+    }
+
+    /* check the date ok */
+    if ( !gsb_date_check_entry ( date_widget ) )
+    {
+        tmpstr = g_strdup_printf ( _("Invalid date %s"),
+					   gtk_entry_get_text ( GTK_ENTRY ( date_widget ) ) );
+        dialogue_error ( tmpstr );
+        g_free( tmpstr );
+        gtk_editable_select_region ( GTK_EDITABLE ( date_widget ), 0, -1 );
+        gtk_widget_grab_focus ( date_widget );
+
+        return (FALSE);
+    }
+    else
+    {
+        if ( save_form_date )
+            g_date_free ( save_form_date );
+        save_form_date = gsb_date_copy ( gsb_calendar_entry_get_date ( date_widget ) );
+    }
+
+    /* work with value date */
+    widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_VALUE_DATE );
+
+    if ( widget && ! gsb_form_widget_check_empty ( widget ) )
+    {
+        if ( !gsb_date_check_entry ( widget ) )
+        {
+            tmpstr = g_strdup_printf ( _("Invalid value date %s"),
+                           gtk_entry_get_text (GTK_ENTRY (widget)));
+            dialogue_error ( tmpstr );
+            g_free ( tmpstr );
+            gtk_editable_select_region ( GTK_EDITABLE ( widget ), 0, -1 );
+            gtk_widget_grab_focus ( widget );
+
+            return (FALSE);
+        }
+        else if ( is_transaction
+         && gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_RAPPROCHEE
+         && mother_number == 0 )
+        {
+            GDate *value_date;
+            const GDate *init_date;
+            const GDate *final_date;
+            gint reconcile_number;
+
+            value_date = gsb_calendar_entry_get_date ( widget );
+            reconcile_number = gsb_data_transaction_get_reconcile_number ( transaction_number );
+            init_date = gsb_data_reconcile_get_init_date ( reconcile_number );
+            final_date = gsb_data_reconcile_get_final_date ( reconcile_number );
+            if ( g_date_compare ( value_date, init_date ) < 0
+             ||
+             g_date_compare ( value_date, final_date ) > 0 )
+            {
+                tmpstr = g_strdup_printf ( _("Beware the date must be between %s and %s"),
+                                    gsb_format_gdate ( init_date ),
+                                    gsb_format_gdate ( final_date ) );
+                dialogue_hint ( tmpstr, _("Invalid date") );
+
+                g_free( tmpstr );
+
+                gsb_calendar_entry_set_color ( widget, FALSE );
+                gtk_editable_select_region ( GTK_EDITABLE ( widget ), 0, -1 );
+                gtk_widget_grab_focus ( widget );
+
+                return FALSE;
+            }
+        }
+    }
+    else    /* contrôle de la date de l'opération rapprochée si pas de date de valeur */
+    {
+        if ( is_transaction
+         && gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_RAPPROCHEE
+         && mother_number == 0 )
+        {
+            const GDate *final_date;
+            gint reconcile_number;
+
+            reconcile_number = gsb_data_transaction_get_reconcile_number ( transaction_number );
+            final_date = gsb_data_reconcile_get_final_date ( reconcile_number );
+            if ( g_date_compare ( save_form_date, final_date ) > 0 )
+            {
+                tmpstr = g_strdup_printf ( _("The date must be less than or equal to %s"),
+                                    gsb_format_gdate ( final_date ) );
+                dialogue_hint ( tmpstr, _("Invalid date") );
+
+                g_free( tmpstr );
+
+                gsb_calendar_entry_set_color ( date_widget, FALSE );
+                gtk_editable_select_region ( GTK_EDITABLE ( date_widget ), 0, -1 );
+                gtk_widget_grab_focus ( date_widget );
+
+                return FALSE;
+            }
+        }
+    }
+
+    /* check if debit or credit is > 0 */
+    widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_DEBIT );
+
+    if ( widget && mother_number )
+    {
+        gsb_real number = null_real;
+
+        if ( gsb_form_widget_check_empty ( widget ) == FALSE )
+            number = utils_real_get_from_string ( gtk_entry_get_text ( GTK_ENTRY ( widget ) ) );
+            
+	    if ( gsb_form_widget_check_empty ( widget ) == TRUE
+         ||
+         number.mantissa == 0 )
+        {
+            widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT );
+            number = utils_real_get_from_string ( gtk_entry_get_text ( GTK_ENTRY ( widget ) ) );
+
+            if ( gsb_form_widget_check_empty ( widget ) == TRUE
+             ||
+             number.mantissa == 0 )
+            {
+                dialogue_error ( _("You must enter an amount.") );
+
+                return (FALSE);
+            }
+        }
+    }
+    
+    /* now work with the categories */
+    widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CATEGORY);
+
+    /* check if it's a daughter split that the category is not a split of transaction */
+    if ( widget
+	 &&
+	 !gsb_form_widget_check_empty (GTK_COMBOFIX (widget) -> entry)
+	 &&
+	 mother_number
+	 &&
+	 !strcmp ( gtk_combofix_get_text (GTK_COMBOFIX (widget)),
+		   _("Split of transaction")))
+    {
+	dialogue_error ( _("You cannot set split of transaction in category for a daughter "
+                        "of a split of transaction.") );
+	return (FALSE);
+    }
+
+    /* check it's not a transfer on itself and the contra-account exists
+     * !!! widget is already set to the category, don't change it before */
+    if ( widget
+	 &&
+	 !gsb_form_widget_check_empty (GTK_COMBOFIX (widget) -> entry))
+    {
+	gint account_transfer;
+
+	account_transfer = gsb_form_check_for_transfer (gtk_combofix_get_text (GTK_COMBOFIX (widget)));
+
+	switch (account_transfer)
+	{
+	    /* if the check returns -3, it's not a transfer, so it's a normal category */
+	    case -3:
+		break;
 
-			if ( element_number == TRANSACTION_FORM_VALUE_DATE )
-			{
-				widget_prov = gsb_form_widget_get_widget (
-						TRANSACTION_FORM_VALUE_DATE);
-
-				if (strlen (gtk_entry_get_text (GTK_ENTRY (widget_prov))) == 0 )
-				{
-					gsb_form_widget_set_empty ( widget_prov, TRUE );
-					gtk_entry_set_text ( GTK_ENTRY ( widget_prov ), _("Value date") );
-				}
-				gsb_form_widget_set_focus ( element_suivant );
-			}
+		/* if the check returns -2, it's a deleted account (refuse for scheduled transaction)*/
+	    case -2:
+		if (is_transaction)
+		{
+		    gsb_data_transaction_set_category_number ( transaction_number,
+							       0 );
+		    gsb_data_transaction_set_sub_category_number ( transaction_number,
+								   0 );
+		    gsb_data_transaction_set_contra_transaction_number ( transaction_number,
+									 -1);
+		}
+		else
+		{
+		    dialogue_error ( _("Cannot associate a transfer to a deleted account in a scheduled transaction."));
+		    return FALSE;
+		}
+		break;
 
-			gsb_form_widget_set_focus ( element_suivant );
-			return TRUE;
-			break;
+		/* if the check returns -1, it's a non existant account */
+	    case -1:
+		dialogue_error ( _("There is no associated account for this transfer or associated account is invalid.") );
+		return (FALSE);
+		break;
 
-		case GDK_KEY_Tab :
-			if ( element_number == TRANSACTION_FORM_CREDIT
-					|| element_number == TRANSACTION_FORM_DEBIT )
-			{
-				if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
-					return TRUE;
-			}
+		/* all other values are a number of account */
+	    default :
+		if (account_transfer == account_number)
+		{
+		    dialogue_error ( _("Can't issue a transfer its own account.") );
+		    return (FALSE);
+		}
+		if ( gsb_data_account_get_closed_account (account_transfer) )
+		{
+		    dialogue_error ( _("Can't issue a transfer on a closed account." ));
+		    return ( FALSE );
+		}
+	}
+    }
 
-			element_suivant = gsb_form_widget_next_element ( account_number,
-					element_number,
-					GSB_RIGHT );
+    /* for the automatic method of payment entry (especially cheques)
+     * check if not used before (only for new transaction) */
+    widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
 
-			/* if element = value_date fix the bug 578 */
-			if ( element_number == TRANSACTION_FORM_VALUE_DATE )
-			{
-				widget_prov = gsb_form_widget_get_widget (
-						TRANSACTION_FORM_VALUE_DATE);
-
-				if (strlen (gtk_entry_get_text ( GTK_ENTRY ( widget_prov ) ) ) == 0 )
-				{
-					gsb_form_widget_set_empty ( widget_prov, TRUE );
-					gtk_entry_set_text ( GTK_ENTRY ( widget_prov ), _("Value date") );
-				}
-				gsb_form_widget_set_focus ( element_suivant );
-			}
+    if ( widget
+	 &&
+	 gtk_widget_get_visible (widget))
+    {
+	GtkWidget *combo_box;
+	gint payment;
 
-			if ( element_suivant == -2 )
-				gsb_form_finish_edition();
-			else
-				gsb_form_widget_set_focus ( element_suivant );
-			return TRUE;
-			break;
+	combo_box = gsb_form_widget_get_widget (TRANSACTION_FORM_TYPE);
+	payment = gsb_payment_method_get_selected_number (combo_box);
 
-		case GDK_KEY_KP_Enter :
-		case GDK_KEY_Return :
+	if (gsb_data_payment_get_automatic_numbering (payment))
+	{
+	    /* check if there is something in */
+
+	    if ( gsb_form_widget_check_empty ( widget ) )
+	    {
+            if ( !question_yes_no ( _("Selected method of payment has an automatic incremental number\n"
+                        "but doesn't contain any number.\nContinue anyway?"),
+                        GTK_RESPONSE_CANCEL ) )
+                return (FALSE);
+	    }
+	    else if ( mother_number == 0 )
+	    {
+		/* check that the number is not used */
+		gint tmp_transaction_number;
+		
+		tmp_transaction_number = gsb_data_transaction_check_content_payment (
+                                    payment,
+                                    gtk_entry_get_text ( GTK_ENTRY ( widget ) ) );
+
+		if ( tmp_transaction_number
+         &&
+         tmp_transaction_number != transaction_number
+         &&
+         !question_yes_no ( _("Warning: this cheque number is already used.\nContinue anyway?"),
+         GTK_RESPONSE_CANCEL ) )
+		    return FALSE;
+	    }
+	}
+    }
 
-			/* need to check here if we are performing a scheduled transaction in home page
-			 * or another transaction, because if we are in home page, cannot finish like that,
-			 * we need to finish with the dialog wich contains the form */
-			if (gsb_gui_navigation_get_current_page () == GSB_HOME_PAGE)
-			{
-				GtkWidget *tmp_widget;
-
-				/* ok, we are on the home page. the best way is to send the response ok
-				 * to the dialog */
-				tmp_widget = widget;
-
-				do
-				{
-					tmp_widget = gtk_widget_get_parent (GTK_WIDGET (tmp_widget));
-				}
-				while ( GTK_IS_WIDGET (tmp_widget)
-						&&
-						!GTK_IS_DIALOG (tmp_widget));
-				gtk_dialog_response (GTK_DIALOG (tmp_widget), GTK_RESPONSE_OK);
-				return TRUE;
-			}
-			else
-			{
-				if ( element_number == TRANSACTION_FORM_CREDIT
-						|| element_number == TRANSACTION_FORM_DEBIT )
-				{
-					if ( gsb_form_widget_amount_entry_validate ( element_number ) == FALSE )
-						return TRUE;
-				}
+    /* check if the payee is a report, it must be a new transaction */
+    widget = gsb_form_widget_get_widget (TRANSACTION_FORM_PARTY);
 
-				widget_prov = gsb_form_widget_get_widget ( TRANSACTION_FORM_PARTY );
+    if (widget)
+    {
+	if (!strncmp ( gtk_combofix_get_text (GTK_COMBOFIX (widget)),
+		       _("Report"),
+		       strlen (_("Report"))))
+	{
+	    gchar **tab_char;
 
-				if ( GTK_IS_COMBOFIX ( widget_prov ) )
-					gsb_form_transaction_complete_form_by_payee ( gtk_combofix_get_text (
-							GTK_COMBOFIX ( widget_prov ) ) );
+	    /* check if it's a new transaction */
+	    if (transaction_number > 0)
+	    {
+		dialogue_error ( _("A transaction with a multiple payee must be a new one.") );
+		return (FALSE);
+	    }
+	    if ( mother_number > 0 )
+	    {
+		dialogue_error ( _("A transaction with a multiple payee cannot be a split child.") );
+		return (FALSE);
+	    }
 
-				gsb_form_finish_edition ();
-				return TRUE;
-			}
-			break;
+	    /* check if the report exists */
+	    tab_char = g_strsplit ( gtk_combofix_get_text (GTK_COMBOFIX (widget)),
+				    " : ",
+				    2 );
 
-		case GDK_KEY_KP_Add:
-		case GDK_KEY_plus:
-		case GDK_KEY_equal:		/* This should make all our US users happy */
-			/* increase the check of 1 */
-			if (element_number == TRANSACTION_FORM_CHEQUE)
-			{
-				increment_decrement_champ ( widget,
-						1 );
-				return TRUE;
-			}
-			break;
+	    if (!tab_char[1])
+	    {
+		dialogue_error  ( _("The word \"Report\" is reserved. Please use another one."));
+		g_strfreev (tab_char);
+		return FALSE;
+	    }
 
-		case GDK_KEY_KP_Subtract:
-		case GDK_KEY_minus:
-			/* decrease the check of 1 */
-			if (element_number == TRANSACTION_FORM_CHEQUE)
-			{
-				increment_decrement_champ ( widget,
-						-1 );
-				return TRUE;
-			}
-			break;
+	    if (!gsb_data_report_get_report_by_name (tab_char[1]))
+	    {
+		dialogue_error ( _("Invalid multiple payee.") );
+		g_strfreev (tab_char);
+		return (FALSE);
+	    }
+	    g_strfreev (tab_char);
 	}
+    }
+    return ( TRUE );
+}
 
-	if ( element_number == TRANSACTION_FORM_TYPE )
-	{
-		gint payment_number;
-
-		switch ( ev -> keyval )
-		{
-		case GDK_KEY_c:
-		case GDK_KEY_C:
-			payment_number = gsb_data_payment_get_number_by_name ( _("Credit card"),
-					account_number );
-			if ( payment_number )
-				gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
-
-			return TRUE;
-			break;
-		case GDK_KEY_d:
-		case GDK_KEY_D:
-			payment_number = gsb_data_payment_get_number_by_name ( _("Direct deposit"),
-					account_number );
-			if ( payment_number )
-				gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
-
-			return TRUE;
-			break;
-		case GDK_KEY_h:
-		case GDK_KEY_H:
-			payment_number = gsb_data_payment_get_number_by_name ( _("Check"),
-					account_number );
-			if ( payment_number )
-				gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
-
-			return TRUE;
-			break;
-		case GDK_KEY_l:
-		case GDK_KEY_L:
-			payment_number = gsb_data_payment_get_number_by_name ( _("Cash withdrawal"),
-					account_number );
-			if ( payment_number )
-				gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
-
-			return TRUE;
-			break;
 
-		case GDK_KEY_p:
-		case GDK_KEY_P:
-			payment_number = gsb_data_payment_get_number_by_name ( _("Direct debit"),
-					account_number );
-			if ( payment_number )
-				gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
-
-			return TRUE;
-			break;
-		case GDK_KEY_t:
-		case GDK_KEY_T:
-		case GDK_KEY_v:
-		case GDK_KEY_V:
-			payment_number = gsb_data_payment_get_number_by_name ( _("Transfer"),
-					account_number );
-			if ( payment_number )
-				gsb_payment_method_set_combobox_history ( widget, payment_number, TRUE );
-
-			return TRUE;
-			break;
-		}
-	}
-
-	return FALSE;
-}
-
-
-/** 
- * called when the user finishes the edition of the form
- * this function works for transaction and scheduled transactions,
- * it add/modify the transaction in the form
+/**
+ * get the datas in the form and set them in the transaction/scheduled transaction in param
  * 
- * \param none
+ * \param transaction_number the transaction to modify
+ * \param is_transaction TRUE if it's for a transaction, FALSE for a scheduled transaction
  * 
- * \return FALSE
+ * \return
  * */
-gboolean gsb_form_finish_edition ( void )
+void gsb_form_take_datas_from_form ( gint transaction_number,
+                        gboolean is_transaction )
 {
-	gint transaction_number;
-	GSList *payee_list;
-	GSList *list_tmp;
-	gint account_number;
-	gint new_transaction;
-	gboolean is_transaction;
-	gboolean execute_scheduled = FALSE;
-	gint saved_scheduled_number = 0;
-	gint source_transaction_number = -1;
-	gint nbre_passage = 0;
-	gint mother_number;
-
-	devel_debug (NULL);
-
-	/* get the number of the transaction, stored in the form (< 0 if new ) */
-	transaction_number = GPOINTER_TO_INT (g_object_get_data ( G_OBJECT ( transaction_form ),
-			"transaction_number_in_form" ));
-
-	/* set a debug here, if transaction_number is 0, should look for where it comes */
-	if (!transaction_number)
-		notice_debug ("Coming in gsb_form_finish_edition with a 0 number of transaction. "
-				"This is a bug,\nplease try to do it again and report the bug.");
-
-	account_number = gsb_form_get_account_number ();
-
-	/* check if we finish a transaction or a scheduled transaction
-	 * we have to decide if it's a transaction or a scheduled transaction,
-	 * and if it's a scheduled, if we execute it (and create transaction) or work on it*/
-	if (gsb_form_get_origin () == ORIGIN_VALUE_SCHEDULED
-			||
-			gsb_form_get_origin () == ORIGIN_VALUE_HOME )
-	{
-		if (g_object_get_data ( G_OBJECT (transaction_form), "execute_scheduled"))
-		{
-			/* we want to execute the scheduled transaction */
-			is_transaction = TRUE;
-			execute_scheduled = TRUE;
-
-			/* we need to keep the number of scheduled, to check later if there is
-			 * some children and modifie the scheduled transaction */
-			saved_scheduled_number = transaction_number;
-			/* as it's a new transaction, do the same as a white line */
-			transaction_number = -1;
-		}
-		else
-			is_transaction = FALSE;
-	}
-	else
-		is_transaction = TRUE;
-
-	/* a new transaction has a number < 0
-	 * -1 for the general white line
-	 *  -2, -3, ... for the white lines of scheduled transactions
-	 *  or it's an execution of scheduled transaction */
-	if ( transaction_number < 0 )
-		new_transaction = 1;
-	else
-		new_transaction = 0;
+    GSList *tmp_list;
+    GDate *date;
+    GDate *value_date;
+    GrisbiAppConf *conf;
 
-	/* check if the datas are ok */
-	if ( !gsb_form_validate_form_transaction (transaction_number, is_transaction))
-		return FALSE;
+    devel_debug_int (transaction_number);
 
-	/* if the party is a report, we make as transactions as the number of parties in the
-	 * report. So we create a list with the party's numbers or -1 if it's a normal
-	 * party */
-	payee_list = gsb_form_transaction_get_parties_list_from_report ();
+    /* we set a date variable to avoid to parse 2 times, one time for the date,
+     * and perhaps a second time with the financial year
+     * (cannot take it from the transaction if the fyear field is before the date field...) */
+    /* get the date first, because the financial year will use it and it can set before the date in the form */
+    date = gsb_calendar_entry_get_date ( gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE ) );
 
-	/* now we go throw the list */
-	list_tmp = payee_list;
-
-	while ( list_tmp )
-	{
-		if ( GPOINTER_TO_INT (list_tmp -> data) == -1 )
-			/* it's a normal party, we set the list_tmp to NULL */
-			list_tmp = NULL;
-		else
-		{
-			/* it's a report, so each time we come here we set the parti's combofix to the
-			 * party of the report */
-
-			if ( !list_tmp -> data )
-			{
-				dialogue_error ( _("No payee selected for this report."));
-				return FALSE;
-			}
-			else
-			{
-				GtkWidget *widget;
-				gint payment_number;
-
-				if ( nbre_passage == 0 )
-				{
-					widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_PARTY );
-					gtk_combofix_set_text ( GTK_COMBOFIX ( widget ),
-							gsb_data_payee_get_name ( GPOINTER_TO_INT (
-									list_tmp -> data ), TRUE ) );
-					gsb_form_widget_set_empty ( GTK_WIDGET ( GTK_COMBOFIX ( widget ) -> entry ), FALSE );
-				}
-				else
-				{
-					transaction_number = gsb_data_transaction_new_transaction ( account_number );
-
-					gsb_data_transaction_copy_transaction ( source_transaction_number,
-							transaction_number, TRUE );
-					gsb_data_transaction_set_party_number ( transaction_number,
-							GPOINTER_TO_INT ( list_tmp -> data ) );
-
-					/* if it's not the first party and the method of payment has to change its number (cheque),
-					 * we increase the number. as we are in a party's list, it's always a new transactio,
-					 * so we know that it's not the first if transaction_number is not 0 */
-
-					payment_number = gsb_data_transaction_get_method_of_payment_number (
-							source_transaction_number);
-
-					if ( gsb_data_payment_get_automatic_numbering ( payment_number ) )
-					{
-						gchar *tmpstr;
-
-						tmpstr = gsb_data_payment_incremente_last_number ( payment_number,
-								nbre_passage );
-						gsb_data_transaction_set_method_of_payment_content (
-								transaction_number,
-								tmpstr );
-						g_free ( tmpstr ) ;
-					}
-					gsb_transactions_list_append_new_transaction ( transaction_number, TRUE);
-				}
-				nbre_passage++;
-			}
-
-			list_tmp = list_tmp -> next;
-			if ( list_tmp == NULL )
-				break;
-			else if ( nbre_passage > 1 )
-				continue;
-		}
-
-		/* now we create the transaction if necessary and set the mother in case of child of split */
-		if ( new_transaction )
-		{
-			/* it's a new transaction, we create it, and set the mother if necessary */
-			gint mother_transaction = 0;
-
-			/* if we are on a white child (ie number < -1, -1 is only for the general white line),
-			 * get the mother of transaction */
-			if ( transaction_number < -1 )
-				mother_transaction = gsb_data_mix_get_mother_transaction_number (
-						transaction_number, is_transaction);
-			transaction_number = gsb_data_mix_new_transaction (account_number, is_transaction);
-			if ( source_transaction_number == -1 )
-				source_transaction_number = transaction_number;
-
-			gsb_data_mix_set_mother_transaction_number ( transaction_number,
-					mother_transaction,
-					is_transaction );
-
-			/* si l'opération mère est rapprochée on marque aussi la fille */
-			if ( mother_transaction
-					&&
-					gsb_data_transaction_get_marked_transaction ( mother_transaction ) == OPERATION_RAPPROCHEE )
-			{
-				gsb_data_transaction_set_marked_transaction ( transaction_number, OPERATION_RAPPROCHEE );
-				gsb_data_transaction_set_reconcile_number ( transaction_number,
-						gsb_data_transaction_get_reconcile_number ( mother_transaction ) );
-			}
-		}
+    /* as financial year can be taken with value date, need to get the value date now too,
+     * if TRANSACTION_FORM_VALUE_DATE doesn't exist, value_date will be NULL */
+    value_date = gsb_calendar_entry_get_date (gsb_form_widget_get_widget (TRANSACTION_FORM_VALUE_DATE));
 
-		/* take the datas in the form, except the category */
-		gsb_form_take_datas_from_form ( transaction_number, is_transaction );
+    tmp_list = gsb_form_widget_get_list ();
 
-		/* si l'opération est une opération planifiée exécutée on met en forme TRANSACTION_FORM_CHEQUE */
-		if ( execute_scheduled )
-		{
-			gint payment_number;
+    while (tmp_list)
+    {
+	struct_element *element;
 
-			payment_number = gsb_data_transaction_get_method_of_payment_number ( transaction_number );
+	element = tmp_list -> data;
 
-			if ( gsb_data_payment_get_automatic_numbering ( payment_number ) )
-			{
-				gchar *tmp_str;
+	switch (element -> element_number)
+	{
+	    case TRANSACTION_FORM_DATE:
+		/* set date before */
+		gsb_data_mix_set_date ( transaction_number, date, is_transaction );
 
-				tmp_str = gsb_data_payment_incremente_last_number ( payment_number, 1 );
-				gsb_data_transaction_set_method_of_payment_content (
-						transaction_number,
-						tmp_str );
-				g_free ( tmp_str ) ;
-			}
-		}
+		break;
 
-		/* perhaps the currency button is not shown
-		 * in that case, we give the account currency to that transaction */
-		if ( new_transaction
-				&&
-				!gsb_form_widget_get_widget (TRANSACTION_FORM_DEVISE))
-			gsb_data_mix_set_currency_number ( transaction_number,
-					gsb_data_account_get_currency (account_number),
-					is_transaction );
-
-		/* get the category and do the stuff with that (contra-transaction...) */
-		gsb_form_get_categories ( transaction_number,
-				new_transaction,
-				is_transaction );
-
-		/* for the rest we need to split for transactions/scheduled */
-		if (is_transaction)
-		{
-			/* it's a transaction or an execution of scheduled transaction */
-			if ( new_transaction )
-			{
-				gint split_transaction_number;
-
-				gsb_transactions_list_append_new_transaction (transaction_number, TRUE);
-
-				/* if it's a real new transaction and if it's a split, we ask if the user wants
-				 * to recover previous children */
-				if ( gsb_data_transaction_get_split_of_transaction (transaction_number)
-						&&
-						!execute_scheduled
-						&&
-						gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (form_button_recover_split))
-				&&
-				(split_transaction_number = gsb_form_transactions_look_for_last_party ( gsb_data_transaction_get_party_number (transaction_number),
-						transaction_number,
-						gsb_data_transaction_get_account_number(transaction_number))))
-					gsb_form_transaction_recover_splits_of_transaction ( transaction_number,
-							split_transaction_number);
-			}
-			else
-			{
-				/* update a transaction */
-				gsb_transactions_list_update_transaction (transaction_number);
-
-				/* we are on a modification of transaction, but if the modified transaction is a split
-				 * and has no children (ie only white line), we assume the user wants now fill the children, so we will do the
-				 * same as for a new transaction : open the expander and select the white line */
-				if (transaction_list_get_n_children (transaction_number) == 1)
-				{
-					new_transaction = TRUE;
-					gsb_transactions_list_switch_expander (transaction_number);
-				}
-			}
-		}
+	    case TRANSACTION_FORM_VALUE_DATE:
+		if (gsb_form_widget_check_empty (element -> element_widget)) 
+		    gsb_data_mix_set_value_date ( transaction_number, NULL, is_transaction );
 		else
-		{
-			/* it's a scheduled transaction */
-			gsb_form_scheduler_get_scheduler_part (transaction_number);
-
-			if (new_transaction)
-			{
-				gint split_transaction_number;
-
-				gsb_scheduler_list_append_new_scheduled ( transaction_number,
-						gsb_scheduler_list_get_end_date_scheduled_showed ());
-				/* recover if necessary previous children */
-				if (gsb_data_scheduled_get_split_of_scheduled (transaction_number)
-						&&
-						gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (form_button_recover_split))
-						&&
-						(split_transaction_number = gsb_form_transactions_look_for_last_party ( gsb_data_scheduled_get_party_number (transaction_number),
-								0,
-								gsb_data_scheduled_get_account_number(transaction_number))))
-					gsb_form_scheduler_recover_splits_of_transaction ( transaction_number,
-							split_transaction_number);
-			}
-			else
-				gsb_scheduler_list_update_transaction_in_list (transaction_number);
-
-			/* needed for the two in case of we change the date */
-			gsb_scheduler_list_set_background_color (gsb_scheduler_list_get_tree_view ());
-			gsb_calendar_update ();
-		}
-	}
-	g_slist_free ( payee_list );
+		    gsb_data_mix_set_value_date ( transaction_number,
+						  gsb_calendar_entry_get_date (element -> element_widget),
+						  is_transaction );
+		break;
 
-	/* if it's a reconciliation and we modify a transaction, check
-	 * the amount of marked transactions */
-	if ( is_transaction && run.equilibrage )
-	{
-		if (new_transaction)
-			/* we are reconciling and it's a new transaction, so need to show the checkbox */
-			transaction_list_show_toggle_mark (TRUE);
+        case TRANSACTION_FORM_EXERCICE:
+        conf = grisbi_app_get_conf ( );
+        if (conf->affichage_exercice_automatique && value_date)
+        {
+            if ( gsb_form_widget_check_empty ( gsb_form_widget_get_widget (
+             TRANSACTION_FORM_VALUE_DATE) ) )
+                gsb_data_mix_set_financial_year_number ( transaction_number,
+                        gsb_fyear_get_fyear_from_combobox (
+                        element -> element_widget, date ), is_transaction );
+            else
+                gsb_data_mix_set_financial_year_number ( transaction_number,
+                        gsb_fyear_get_fyear_from_combobox (
+                        element -> element_widget, value_date ), is_transaction );
+        }
+        else
+            gsb_data_mix_set_financial_year_number ( transaction_number,
+                        gsb_fyear_get_fyear_from_combobox (
+                        element -> element_widget, date ), is_transaction) ;
+
+        break;
+
+	    case TRANSACTION_FORM_PARTY:
+		if ( gsb_form_widget_check_empty ( element -> element_widget ) )
+		    gsb_data_mix_set_party_number ( transaction_number, 0, is_transaction );
 		else
 		{
-			gsb_reconcile_update_amounts (NULL, NULL);
+		    gsb_data_mix_set_party_number ( transaction_number, 
+                        gsb_data_payee_get_number_by_name (
+                        gtk_combofix_get_text ( GTK_COMBOFIX ( element -> element_widget ) ),
+                        TRUE ), is_transaction );
 		}
-	}
-
-	/* if we executed a scheduled transation, need to increase the date of the scheduled
-	 * and execute the children if it's a split */
-	if (execute_scheduled)
-	{
-		gint increase_result;
-
-		/* first, check if it's a scheduled split and execute the childrent */
-		if ( gsb_data_scheduled_get_split_of_scheduled (saved_scheduled_number) )
-			gsb_scheduler_execute_children_of_scheduled_transaction ( saved_scheduled_number,
-					transaction_number );
-
-		/* now we can increase the scheduled transaction */
-		increase_result = gsb_scheduler_increase_scheduled ( saved_scheduled_number );
+		break;
 
-		/* the next step is to update the list, but do it only if we are on the scheduled
-		 * list, else we needn't because the update will be done when going to that list */
-		if (gsb_gui_navigation_get_current_page () == GSB_SCHEDULER_PAGE)
-		{
-			if (increase_result)
-				gsb_scheduler_list_update_transaction_in_list ( saved_scheduled_number );
+	    case TRANSACTION_FORM_DEBIT:
+		if (!gsb_form_widget_check_empty (element -> element_widget))
+        {
+            gsb_form_check_auto_separator (element -> element_widget);
+		    gsb_data_mix_set_amount ( transaction_number, gsb_real_opposite (
+                        gsb_utils_edit_calculate_entry ( element -> element_widget )),
+                        is_transaction);
+        }
+		break;
 
-			gsb_scheduler_list_set_background_color ( gsb_scheduler_list_get_tree_view () );
-		}
-	}
+	    case TRANSACTION_FORM_CREDIT:
+		if (!gsb_form_widget_check_empty (element -> element_widget)) 
+        {
+            gsb_form_check_auto_separator (element -> element_widget);
+		    gsb_data_mix_set_amount ( transaction_number,
+                        gsb_utils_edit_calculate_entry ( element -> element_widget ),
+                        is_transaction);
+        }
+		break;
 
-	/* if it was a new transaction, do the stuff to do another new transaction */
-	if ( new_transaction && !execute_scheduled )
-	{
-		/* we are on a new transaction, if that transaction is a split,
-		 * we give the focus to the new white line created for that and
-		 * edit it, for that we need to open the transaction to select the
-		 * white line, and set it as current transaction */
-		if ( gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction))
+	    case TRANSACTION_FORM_BUDGET:
+		if (gsb_form_widget_check_empty (element -> element_widget)) 
 		{
-			/* it's a split */
-			gint white_line_number;
-
-			white_line_number = gsb_data_mix_get_white_line (transaction_number, is_transaction);
-			if ( is_transaction )
-				transaction_list_select ( white_line_number );
-			else
-				gsb_scheduler_list_select (white_line_number);
+		    gsb_data_mix_set_budgetary_number ( transaction_number, 0, is_transaction );
+		    gsb_data_mix_set_sub_budgetary_number ( transaction_number, 0, is_transaction );
 		}
-
-		/* it was a new transaction, we save the last date entry */
-		gsb_date_set_last_date ( gtk_entry_get_text (
-				GTK_ENTRY ( gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE ) ) ) );
-
-		/* we need to use edit_transaction to make a new child split if necessary */
-		if ( is_transaction)
-			gsb_transactions_list_edit_transaction (
-					gsb_data_account_get_current_transaction_number ( account_number ) );
 		else
-			gsb_scheduler_list_edit_transaction ( gsb_scheduler_list_get_current_scheduled_number ( ) );
-	}
-	else
-		gsb_form_hide ();
-
-	/* on sort de la saisie des opérations filles si variance == 0 */
-	if ( ( mother_number = gsb_data_mix_get_mother_transaction_number ( transaction_number, is_transaction ) ) )
-	{
-		if ( is_transaction
-				&&
-				transaction_list_get_variance ( gsb_data_account_get_current_transaction_number ( account_number ) ) )
-			transaction_list_select ( mother_number );
-		else if ( !is_transaction && !execute_scheduled && gsb_data_scheduled_get_variance ( mother_number ) )
-			gsb_scheduler_list_select ( mother_number );
-	}
-
-	/* if it was a modification of transaction, we need to update the sort and colors
-	 * (done automatically for new transaction) */
-	if ( is_transaction && !new_transaction )
-		gsb_transactions_list_update_tree_view (account_number, TRUE);
-
-	/* show the warnings */
-	if ( is_transaction )
-	{
-		affiche_dialogue_soldes_minimaux ();
-		update_transaction_in_trees ( transaction_number );
-		if ( gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_POINTEE )
-		{
-			gsb_navigation_update_statement_label ( account_number );
-			mise_a_jour_liste_comptes_accueil = 1;
-		}
-	}
-
-	/* as we modify or create a transaction, we invalidate the current report */
-	gsb_report_set_current ( 0 );
-
-	/* force the update module budget */
-	gsb_data_account_set_bet_maj ( account_number, BET_MAJ_ALL );
-
-	gsb_file_set_modified ( TRUE );
-
-	/* If the origin of the operation is a model, so we select the new transaction */
-	if ( GPOINTER_TO_INT (g_object_get_data ( G_OBJECT ( transaction_form ),
-			"transaction_selected_in_form" ) ) == -1 )
-	{
-		transaction_list_select ( transaction_number );
-		return FALSE;
-	}
-
-	if ( execute_scheduled )
-	{
-		GtkTreeSelection *selection;
-		GtkTreePath *path;
-
-		selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( gsb_scheduler_list_get_tree_view ( ) ) );
-		path = gtk_tree_path_new_from_string ( "0" );
-		gtk_tree_selection_select_path ( selection, path );
-
-		gtk_tree_path_free ( path );
-	}
-
-	/* give the focus to the date widget */
-	if ( is_transaction )
-		gsb_form_widget_set_focus ( TRANSACTION_FORM_DATE );
-	else
-		gsb_scheduler_list_edit_transaction (gsb_scheduler_list_get_current_scheduled_number ());
-
-	return FALSE;
-}
-
-
-/**
- * check if the transaction/scheduled transaction in the form is correct
- *
- * \param transaction_number can be -2 for a new daughter scheduled transaction, 0 for a new transaction
- * 		or any number corresponding to an older transaction
- * \param is_transaction TRUE if it's for a transaction, FALSE for a scheduled transaction
- *
- * \return TRUE or FALSE
- * */
-gboolean gsb_form_validate_form_transaction ( gint transaction_number,
-		gboolean is_transaction )
-{
-	GtkWidget *widget;
-	GtkWidget *date_widget;
-	gchar* tmpstr;
-	gint mother_number;
-	gint account_number;
-
-	devel_debug_int ( transaction_number );
-
-	account_number = gsb_form_get_account_number ( );
-
-	/* check if it's a daughter split */
-	mother_number = gsb_data_mix_get_mother_transaction_number ( transaction_number, is_transaction );
-
-	/* begin to work with dates */
-	date_widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE );
-
-	/* check the date exists */
-	if ( gsb_form_widget_check_empty ( date_widget ) )
-	{
-		dialogue_error ( _("You must enter a date.") );
-		return (FALSE);
-	}
-
-	/* check the date ok */
-	if ( !gsb_date_check_entry ( date_widget ) )
-	{
-		tmpstr = g_strdup_printf ( _("Invalid date %s"),
-				gtk_entry_get_text ( GTK_ENTRY ( date_widget ) ) );
-		dialogue_error ( tmpstr );
-		g_free( tmpstr );
-		gtk_editable_select_region ( GTK_EDITABLE ( date_widget ), 0, -1 );
-		gtk_widget_grab_focus ( date_widget );
-
-		return (FALSE);
-	}
-	else
-	{
-		if ( save_form_date )
-			g_date_free ( save_form_date );
-		save_form_date = gsb_date_copy ( gsb_calendar_entry_get_date ( date_widget ) );
-	}
-
-	/* work with value date */
-	widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_VALUE_DATE );
+		    gsb_data_budget_set_budget_from_string ( transaction_number,
+							     gtk_combofix_get_text ( GTK_COMBOFIX ( element -> element_widget )),
+							     is_transaction );
+		break;
 
-	if ( widget && ! gsb_form_widget_check_empty ( widget ) )
-	{
-		if ( !gsb_date_check_entry ( widget ) )
+	    case TRANSACTION_FORM_NOTES:
+		if (gsb_form_widget_check_empty (element -> element_widget)) 
+		    gsb_data_mix_set_notes ( transaction_number, NULL, is_transaction );
+		else
 		{
-			tmpstr = g_strdup_printf ( _("Invalid value date %s"),
-					gtk_entry_get_text (GTK_ENTRY (widget)));
-			dialogue_error ( tmpstr );
-			g_free ( tmpstr );
-			gtk_editable_select_region ( GTK_EDITABLE ( widget ), 0, -1 );
-			gtk_widget_grab_focus ( widget );
-
-			return (FALSE);
+		    gchar* tmpstr = my_strdup ( gtk_entry_get_text ( GTK_ENTRY ( element -> element_widget )));
+		    gsb_data_mix_set_notes ( transaction_number, tmpstr , is_transaction);
+		    g_free ( tmpstr );
 		}
-		else if ( is_transaction
-				&& gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_RAPPROCHEE
-				&& mother_number == 0 )
-		{
-			GDate *value_date;
-			const GDate *init_date;
-			const GDate *final_date;
-			gint reconcile_number;
-
-			value_date = gsb_calendar_entry_get_date ( widget );
-			reconcile_number = gsb_data_transaction_get_reconcile_number ( transaction_number );
-			init_date = gsb_data_reconcile_get_init_date ( reconcile_number );
-			final_date = gsb_data_reconcile_get_final_date ( reconcile_number );
-			if ( g_date_compare ( value_date, init_date ) < 0
-					||
-					g_date_compare ( value_date, final_date ) > 0 )
-			{
-				tmpstr = g_strdup_printf ( _("Beware the date must be between %s and %s"),
-						gsb_format_gdate ( init_date ),
-						gsb_format_gdate ( final_date ) );
-				dialogue_hint ( tmpstr, _("Invalid date") );
-
-				g_free( tmpstr );
-
-				gsb_calendar_entry_set_color ( widget, FALSE );
-				gtk_editable_select_region ( GTK_EDITABLE ( widget ), 0, -1 );
-				gtk_widget_grab_focus ( widget );
+		break;
 
-				return FALSE;
-			}
-		}
-	}
-	else    /* contrôle de la date de l'opération rapprochée si pas de date de valeur */
-	{
-		if ( is_transaction
-				&& gsb_data_transaction_get_marked_transaction ( transaction_number ) == OPERATION_RAPPROCHEE
-				&& mother_number == 0 )
+	    case TRANSACTION_FORM_TYPE:
+		/* set the type only if visible */
+		if ( gtk_widget_get_visible (element -> element_widget))
 		{
-			const GDate *final_date;
-			gint reconcile_number;
-
-			reconcile_number = gsb_data_transaction_get_reconcile_number ( transaction_number );
-			final_date = gsb_data_reconcile_get_final_date ( reconcile_number );
-			if ( g_date_compare ( save_form_date, final_date ) > 0 )
-			{
-				tmpstr = g_strdup_printf ( _("The date must be less than or equal to %s"),
-						gsb_format_gdate ( final_date ) );
-				dialogue_hint ( tmpstr, _("Invalid date") );
-
-				g_free( tmpstr );
+		    GtkWidget *widget_tmp;
+		    gint payment_number;
 
-				gsb_calendar_entry_set_color ( date_widget, FALSE );
-				gtk_editable_select_region ( GTK_EDITABLE ( date_widget ), 0, -1 );
-				gtk_widget_grab_focus ( date_widget );
+		    payment_number = gsb_payment_method_get_selected_number (element -> element_widget);
 
-				return FALSE;
-			}
-		}
-	}
+		    gsb_data_mix_set_method_of_payment_number ( transaction_number, payment_number, is_transaction);
 
-	/* check if debit or credit is > 0 */
-	widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_DEBIT );
+		    /* set the number of cheque only if visible */
+		    widget_tmp = gsb_form_widget_get_widget (TRANSACTION_FORM_CHEQUE);
+		    if ( gtk_widget_get_visible (widget_tmp)
+			 &&
+			 !gsb_form_widget_check_empty (widget_tmp))
+		    {
+			gsb_data_mix_set_method_of_payment_content ( transaction_number, gtk_entry_get_text (GTK_ENTRY (widget_tmp)), is_transaction);
 
-	if ( widget && mother_number )
-	{
-		gsb_real number = null_real;
-
-		if ( gsb_form_widget_check_empty ( widget ) == FALSE )
-			number = utils_real_get_from_string ( gtk_entry_get_text ( GTK_ENTRY ( widget ) ) );
-
-		if ( gsb_form_widget_check_empty ( widget ) == TRUE
-				||
-				number.mantissa == 0 )
-		{
-			widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CREDIT );
-			number = utils_real_get_from_string ( gtk_entry_get_text ( GTK_ENTRY ( widget ) ) );
-
-			if ( gsb_form_widget_check_empty ( widget ) == TRUE
-					||
-					number.mantissa == 0 )
-			{
-				dialogue_error ( _("You must enter an amount.") );
-
-				return (FALSE);
-			}
+			/* get the last number to increase next time */
+			if ( is_transaction
+			     &&
+			     gsb_data_payment_get_automatic_numbering ( payment_number ) )
+			    gsb_data_payment_set_last_number ( payment_number,
+							       gtk_entry_get_text (GTK_ENTRY ( widget_tmp ) ) );
+		    }
+		    else
+			gsb_data_mix_set_method_of_payment_content ( transaction_number, NULL, is_transaction);
 		}
-	}
-
-	/* now work with the categories */
-	widget = gsb_form_widget_get_widget (TRANSACTION_FORM_CATEGORY);
-
-	/* check if it's a daughter split that the category is not a split of transaction */
-	if ( widget
-			&&
-			!gsb_form_widget_check_empty (GTK_COMBOFIX (widget) -> entry)
-			&&
-			mother_number
-			&&
-			!strcmp ( gtk_combofix_get_text (GTK_COMBOFIX (widget)),
-					_("Split of transaction")))
-	{
-		dialogue_error ( _("You cannot set split of transaction in category for a daughter "
-				"of a split of transaction.") );
-		return (FALSE);
-	}
-
-	/* check it's not a transfer on itself and the contra-account exists
-	 * !!! widget is already set to the category, don't change it before */
-	if ( widget
-			&&
-			!gsb_form_widget_check_empty (GTK_COMBOFIX (widget) -> entry))
-	{
-		gint account_transfer;
-
-		account_transfer = gsb_form_check_for_transfer (gtk_combofix_get_text (GTK_COMBOFIX (widget)));
-
-		switch (account_transfer)
+		else
 		{
-		/* if the check returns -3, it's not a transfer, so it's a normal category */
-		case -3:
-			break;
-
-			/* if the check returns -2, it's a deleted account (refuse for scheduled transaction)*/
-		case -2:
-			if (is_transaction)
-			{
-				gsb_data_transaction_set_category_number ( transaction_number,
-						0 );
-				gsb_data_transaction_set_sub_category_number ( transaction_number,
-						0 );
-				gsb_data_transaction_set_contra_transaction_number ( transaction_number,
-						-1);
-			}
-			else
-			{
-				dialogue_error ( _("Cannot associate a transfer to a deleted account in a scheduled transaction."));
-				return FALSE;
-			}
-			break;
-
-			/* if the check returns -1, it's a non existant account */
-		case -1:
-			dialogue_error ( _("There is no associated account for this transfer or associated account is invalid.") );
-			return (FALSE);
-			break;
-
-			/* all other values are a number of account */
-		default :
-			if (account_transfer == account_number)
-			{
-				dialogue_error ( _("Can't issue a transfer its own account.") );
-				return (FALSE);
-			}
-			if ( gsb_data_account_get_closed_account (account_transfer) )
-			{
-				dialogue_error ( _("Can't issue a transfer on a closed account." ));
-				return ( FALSE );
-			}
-			break;
+		    gsb_data_mix_set_method_of_payment_number ( transaction_number, 0, is_transaction );
+		    gsb_data_mix_set_method_of_payment_content ( transaction_number, NULL, is_transaction);
 		}
-	}
-
-	/* for the automatic method of payment entry (especially cheques)
-	 * check if not used before (only for new transaction) */
-	widget = gsb_form_widget_get_widget ( TRANSACTION_FORM_CHEQUE );
-
-	if ( widget
-			&&
-			gtk_widget_get_visible (widget))
-	{
-		GtkWidget *combo_box;
-		gint payment;
-
-		combo_box = gsb_form_widget_get_widget (TRANSACTION_FORM_TYPE);
-		payment = gsb_payment_method_get_selected_number (combo_box);
+		break;
 
-		if (gsb_data_payment_get_automatic_numbering (payment))
-		{
-			/* check if there is something in */
+	    case TRANSACTION_FORM_CONTRA:
+		/* here only for scheduled transaction */
+		if (!is_transaction && gtk_widget_get_visible (element -> element_widget))
+		    gsb_data_scheduled_set_contra_method_of_payment_number ( transaction_number,
+									     gsb_payment_method_get_selected_number (element -> element_widget));
+		break;
 
-			if ( gsb_form_widget_check_empty ( widget ) )
-			{
-				if ( !question_yes_no ( _("Selected method of payment has an automatic incremental number\n"
-						"but doesn't contain any number.\nContinue anyway?"),
-						GTK_RESPONSE_CANCEL ) )
-					return (FALSE);
-			}
-			else if ( mother_number == 0 )
-			{
-				/* check that the number is not used */
-				gint tmp_transaction_number;
-
-				tmp_transaction_number = gsb_data_transaction_check_content_payment (
-						payment,
-						gtk_entry_get_text ( GTK_ENTRY ( widget ) ) );
-
-				if ( tmp_transaction_number
-						&&
-						tmp_transaction_number != transaction_number
-						&&
-						!question_yes_no ( _("Warning: this cheque number is already used.\nContinue anyway?"),
-								GTK_RESPONSE_CANCEL ) )
-					return FALSE;
-			}
-		}
-	}
+	    case TRANSACTION_FORM_DEVISE:
+		gsb_data_mix_set_currency_number ( transaction_number, 
+                        gsb_currency_get_currency_from_combobox (
+                        element -> element_widget), is_transaction );
+		if (is_transaction)
+		    gsb_currency_check_for_change ( transaction_number );
 
-	/* check if the payee is a report, it must be a new transaction */
-	widget = gsb_form_widget_get_widget (TRANSACTION_FORM_PARTY);
+		break;
 
-	if (widget)
-	{
-		if (!strncmp ( gtk_combofix_get_text (GTK_COMBOFIX (widget)),
-				_("Report"),
-				strlen (_("Report"))))
+	    case TRANSACTION_FORM_BANK:
+		if (gsb_form_widget_check_empty (element -> element_widget)) 
+		    gsb_data_mix_set_bank_references ( transaction_number, NULL, is_transaction);
+		else
 		{
-			gchar **tab_char;
-
-			/* check if it's a new transaction */
-			if (transaction_number > 0)
-			{
-				dialogue_error ( _("A transaction with a multiple payee must be a new one.") );
-				return (FALSE);
-			}
-			if ( mother_number > 0 )
-			{
-				dialogue_error ( _("A transaction with a multiple payee cannot be a split child.") );
-				return (FALSE);
-			}
-
-			/* check if the report exists */
-			tab_char = g_strsplit ( gtk_combofix_get_text (GTK_COMBOFIX (widget)),
-					" : ",
-					2 );
-
-			if (!tab_char[1])
-			{
-				dialogue_error  ( _("The word \"Report\" is reserved. Please use another one."));
-				g_strfreev (tab_char);
-				return FALSE;
-			}
-
-			if (!gsb_data_report_get_report_by_name (tab_char[1]))
-			{
-				dialogue_error ( _("Invalid multiple payee.") );
-				g_strfreev (tab_char);
-				return (FALSE);
-			}
-			g_strfreev (tab_char);
+		    gchar* tmpstr = my_strdup ( gtk_entry_get_text (GTK_ENTRY(element -> element_widget)));
+		    gsb_data_mix_set_bank_references ( transaction_number, tmpstr, is_transaction);
+		    g_free ( tmpstr );
 		}
-	}
-	return ( TRUE );
-}
-
-
-/**
- * get the datas in the form and set them in the transaction/scheduled transaction in param
- * 
- * \param transaction_number the transaction to modify
- * \param is_transaction TRUE if it's for a transaction, FALSE for a scheduled transaction
- * 
- * \return
- * */
-void gsb_form_take_datas_from_form ( gint transaction_number,
-		gboolean is_transaction )
-{
-	GSList *tmp_list;
-	GDate *date;
-	GDate *value_date;
-
-	devel_debug_int (transaction_number);
-
-	/* we set a date variable to avoid to parse 2 times, one time for the date,
-	 * and perhaps a second time with the financial year
-	 * (cannot take it from the transaction if the fyear field is before the date field...) */
-	/* get the date first, because the financial year will use it and it can set before the date in the form */
-	date = gsb_calendar_entry_get_date ( gsb_form_widget_get_widget ( TRANSACTION_FORM_DATE ) );
-
-	/* as financial year can be taken with value date, need to get the value date now too,
-	 * if TRANSACTION_FORM_VALUE_DATE doesn't exist, value_date will be NULL */
-	value_date = gsb_calendar_entry_get_date (gsb_form_widget_get_widget (TRANSACTION_FORM_VALUE_DATE));
-
-	tmp_list = gsb_form_widget_get_list ();
-
-	while (tmp_list)
-	{
-		struct_element *element;
-
-		element = tmp_list -> data;
+		break;
 
-		switch (element -> element_number)
+	    case TRANSACTION_FORM_VOUCHER:
+		if (gsb_form_widget_check_empty (element -> element_widget)) 
+		    gsb_data_mix_set_voucher ( transaction_number, NULL, is_transaction);
+		else
 		{
-		case TRANSACTION_FORM_DATE:
-			/* set date before */
-			gsb_data_mix_set_date ( transaction_number, date, is_transaction );
-
-			break;
-
-		case TRANSACTION_FORM_VALUE_DATE:
-			if (gsb_form_widget_check_empty (element -> element_widget))
-				gsb_data_mix_set_value_date ( transaction_number, NULL, is_transaction );
-			else
-				gsb_data_mix_set_value_date ( transaction_number,
-						gsb_calendar_entry_get_date (element -> element_widget),
-						is_transaction );
-			break;
-
-		case TRANSACTION_FORM_EXERCICE:
-			if (etat.affichage_exercice_automatique && value_date)
-			{
-				if ( gsb_form_widget_check_empty ( gsb_form_widget_get_widget (
-						TRANSACTION_FORM_VALUE_DATE) ) )
-					gsb_data_mix_set_financial_year_number ( transaction_number,
-							gsb_fyear_get_fyear_from_combobox (
-									element -> element_widget, date ), is_transaction );
-				else
-					gsb_data_mix_set_financial_year_number ( transaction_number,
-							gsb_fyear_get_fyear_from_combobox (
-									element -> element_widget, value_date ), is_transaction );
-			}
-			else
-				gsb_data_mix_set_financial_year_number ( transaction_number,
-						gsb_fyear_get_fyear_from_combobox (
-								element -> element_widget, date ), is_transaction);
-
-			break;
-
-		case TRANSACTION_FORM_PARTY:
-			if (gsb_form_widget_check_empty (element -> element_widget))
-				gsb_data_mix_set_party_number ( transaction_number, 0, is_transaction );
-			else
-			{
-				gsb_data_mix_set_party_number ( transaction_number,
-						gsb_data_payee_get_number_by_name (
-								gtk_combofix_get_text ( GTK_COMBOFIX ( element -> element_widget ) ),
-								TRUE ), is_transaction );
-			}
-			break;
-
-		case TRANSACTION_FORM_DEBIT:
-			if (!gsb_form_widget_check_empty (element -> element_widget))
-			{
-				gsb_form_check_auto_separator (element -> element_widget);
-				gsb_data_mix_set_amount ( transaction_number, gsb_real_opposite (
-						gsb_utils_edit_calculate_entry ( element -> element_widget )),
-						is_transaction);
-			}
-			break;
-
-		case TRANSACTION_FORM_CREDIT:
-			if (!gsb_form_widget_check_empty (element -> element_widget))
-			{
-				gsb_form_check_auto_separator (element -> element_widget);
-				gsb_data_mix_set_amount ( transaction_number,
-						gsb_utils_edit_calculate_entry ( element -> element_widget ),
-						is_transaction);
-			}
-			break;
-
-		case TRANSACTION_FORM_BUDGET:
-			if (gsb_form_widget_check_empty (element -> element_widget))
-			{
-				gsb_data_mix_set_budgetary_number ( transaction_number, 0, is_transaction );
-				gsb_data_mix_set_sub_budgetary_number ( transaction_number, 0, is_transaction );
-			}
-			else
-				gsb_data_budget_set_budget_from_string ( transaction_number,
-						gtk_combofix_get_text ( GTK_COMBOFIX ( element -> element_widget )),
-						is_transaction );
-			break;
-
-		case TRANSACTION_FORM_NOTES:
-			if (gsb_form_widget_check_empty (element -> element_widget))
-				gsb_data_mix_set_notes ( transaction_number, NULL, is_transaction );
-			else
-			{
-				gchar* tmpstr = my_strdup ( gtk_entry_get_text ( GTK_ENTRY ( element -> element_widget )));
-				gsb_data_mix_set_notes ( transaction_number, tmpstr , is_transaction);
-				g_free ( tmpstr );
-			}
-			break;
-
-		case TRANSACTION_FORM_TYPE:
-			/* set the type only if visible */
-			if ( gtk_widget_get_visible (element -> element_widget))
-			{
-				GtkWidget *widget_tmp;
-				gint payment_number;
-
-				payment_number = gsb_payment_method_get_selected_number (element -> element_widget);
-
-				gsb_data_mix_set_method_of_payment_number ( transaction_number, payment_number, is_transaction);
-
-				/* set the number of cheque only if visible */
-				widget_tmp = gsb_form_widget_get_widget (TRANSACTION_FORM_CHEQUE);
-				if ( gtk_widget_get_visible (widget_tmp)
-						&&
-						!gsb_form_widget_check_empty (widget_tmp))
-				{
-					gsb_data_mix_set_method_of_payment_content ( transaction_number, gtk_entry_get_text (GTK_ENTRY (widget_tmp)), is_transaction);
-
-					/* get the last number to increase next time */
-					if ( is_transaction
-							&&
-							gsb_data_payment_get_automatic_numbering ( payment_number ) )
-						gsb_data_payment_set_last_number ( payment_number,
-								gtk_entry_get_text (GTK_ENTRY ( widget_tmp ) ) );
-				}
-				else
-					gsb_data_mix_set_method_of_payment_content ( transaction_number, NULL, is_transaction);
-			}
-			else
-			{
-				gsb_data_mix_set_method_of_payment_number ( transaction_number, 0, is_transaction );
-				gsb_data_mix_set_method_of_payment_content ( transaction_number, NULL, is_transaction);
-			}
-			break;
-
-		case TRANSACTION_FORM_CONTRA:
-			/* here only for scheduled transaction */
-			if (!is_transaction && gtk_widget_get_visible (element -> element_widget))
-				gsb_data_scheduled_set_contra_method_of_payment_number ( transaction_number,
-						gsb_payment_method_get_selected_number (element -> element_widget));
-			break;
-
-		case TRANSACTION_FORM_DEVISE:
-			gsb_data_mix_set_currency_number ( transaction_number,
-					gsb_currency_get_currency_from_combobox (
-							element -> element_widget), is_transaction );
-			if (is_transaction)
-				gsb_currency_check_for_change ( transaction_number );
-
-			break;
-
-		case TRANSACTION_FORM_BANK:
-			if (gsb_form_widget_check_empty (element -> element_widget))
-				gsb_data_mix_set_bank_references ( transaction_number, NULL, is_transaction);
-			else
-			{
-				gchar* tmpstr = my_strdup ( gtk_entry_get_text (GTK_ENTRY(element -> element_widget)));
-				gsb_data_mix_set_bank_references ( transaction_number, tmpstr, is_transaction);
-				g_free ( tmpstr );
-			}
-			break;
-
-		case TRANSACTION_FORM_VOUCHER:
-			if (gsb_form_widget_check_empty (element -> element_widget))
-				gsb_data_mix_set_voucher ( transaction_number, NULL, is_transaction);
-			else
-			{
-				gchar* tmpstr = my_strdup ( gtk_entry_get_text ( GTK_ENTRY ( element -> element_widget )));
-				gsb_data_mix_set_voucher ( transaction_number, tmpstr, is_transaction);
-				g_free ( tmpstr );
-			}
-			break;
+		    gchar* tmpstr = my_strdup ( gtk_entry_get_text ( GTK_ENTRY ( element -> element_widget )));
+		    gsb_data_mix_set_voucher ( transaction_number, tmpstr, is_transaction);
+		    g_free ( tmpstr );
 		}
-		tmp_list = tmp_list -> next;
+		break;
 	}
+	tmp_list = tmp_list -> next;
+    }
 }
 
 
@@ -3293,200 +3303,199 @@ void gsb_form_take_datas_from_form ( gint transaction_number,
  * \return FALSE
  * */
 gboolean gsb_form_get_categories ( gint transaction_number,
-		gint new_transaction,
-		gboolean is_transaction )
+                        gint new_transaction,
+                        gboolean is_transaction )
 {
-	GtkWidget *category_combofix;
+    GtkWidget *category_combofix;
 
-	devel_debug_int (transaction_number);
+    devel_debug_int (transaction_number);
 
-	if ( !gsb_data_form_check_for_value ( TRANSACTION_FORM_CATEGORY ))
-		return FALSE;
+    if ( !gsb_data_form_check_for_value ( TRANSACTION_FORM_CATEGORY ))
+	return FALSE;
 
-	category_combofix = gsb_form_widget_get_widget (TRANSACTION_FORM_CATEGORY);
+    category_combofix = gsb_form_widget_get_widget (TRANSACTION_FORM_CATEGORY);
 
-	if (gsb_form_widget_check_empty (category_combofix))
-	{
-		/* there is no category */
-		gsb_data_mix_set_category_number (transaction_number, 0, is_transaction);
-		gsb_data_mix_set_sub_category_number (transaction_number, 0, is_transaction);
+    if (gsb_form_widget_check_empty (category_combofix))
+    {
+	/* there is no category */
+	gsb_data_mix_set_category_number (transaction_number, 0, is_transaction);
+	gsb_data_mix_set_sub_category_number (transaction_number, 0, is_transaction);
 
-		/* if it's a scheduled transaction, we need to set account_transfer to -1 */
-		if (!is_transaction)
-			gsb_data_scheduled_set_account_number_transfer (transaction_number, -1);
-	}
-	else
-	{
-		gchar *string;
-		gint contra_transaction_number;
+	/* if it's a scheduled transaction, we need to set account_transfer to -1 */
+	if (!is_transaction)
+	    gsb_data_scheduled_set_account_number_transfer (transaction_number, -1);
+    }
+    else
+    {
+	gchar *string;
+	gint contra_transaction_number;
 
-		/* On protège la chaine pendant toute l'opération */
-		string = g_strdup ( gtk_combofix_get_text ( GTK_COMBOFIX ( category_combofix ) ) );
+    /* On protège la chaine pendant toute l'opération */
+	string = g_strdup ( gtk_combofix_get_text ( GTK_COMBOFIX ( category_combofix ) ) );
 
-		if ( strcmp ( string, _("Split of transaction") ) )
+	if ( strcmp ( string, _("Split of transaction") ) )
+	{
+	    /* it's not a split of transaction, if it was one, we delete the
+	     * transaction's daughters */
+	    gint account_transfer;
+
+	    /* carreful : must set == 1 and not != 0 because if problem to get the result,
+	     * that function returns -1 */
+	    if ( !new_transaction
+		 &&
+		 gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction) == 1)
+	    {
+		/* we try to modify a split to a non split transaction */
+		GSList *children_list;
+
+		/* get the number list of children */
+		children_list = gsb_data_mix_get_children (transaction_number, TRUE, is_transaction);
+
+		/* if there is some children, we ask to be sure and delete them */
+		if (children_list)
 		{
-			/* it's not a split of transaction, if it was one, we delete the
-			 * transaction's daughters */
-			gint account_transfer;
-
-			/* carreful : must set == 1 and not != 0 because if problem to get the result,
-			 * that function returns -1 */
-			if ( !new_transaction
-					&&
-					gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction) == 1)
-			{
-				/* we try to modify a split to a non split transaction */
-				GSList *children_list;
-
-				/* get the number list of children */
-				children_list = gsb_data_mix_get_children (transaction_number, TRUE, is_transaction);
-
-				/* if there is some children, we ask to be sure and delete them */
-				if (children_list)
-				{
-					GSList *save_children_list;
-
-					if (!question_yes_no_hint ( _("Modifying a transaction"),
-							_("You are trying to change a split of transaction to another kind of transaction.\n"
-									"There is some children to that transaction, if you continue, the children will "
-									"be deleted.\nAre you sure ?"),
-									GTK_RESPONSE_OK ))
-						return FALSE;
-
-					save_children_list = children_list;
-
-					do
-					{
-						gint transaction_number_tmp;
-
-						transaction_number_tmp = GPOINTER_TO_INT ( save_children_list -> data );
-
-						if ( is_transaction )
-							gsb_transactions_list_delete_transaction (transaction_number_tmp, FALSE);
-						else
-							gsb_scheduler_list_delete_scheduled_transaction (transaction_number_tmp,
-									FALSE);
-
-						save_children_list = save_children_list -> next;
-					}
-					while ( save_children_list );
-
-					g_slist_free (save_children_list);
-				}
-				gsb_data_mix_set_split_of_transaction ( transaction_number,
-						0, is_transaction );
-			}
+		    GSList *save_children_list;
 
-			/* now, check if it's a transfer or a normal category */
-			account_transfer = gsb_form_check_for_transfer (string);
-			switch (account_transfer)
-			{
-			/* if the check returns -3, it's not a transfer, so it's a normal category */
-			case -3:
-				/* if it's a modification, check if before it was not a transfer and delete
-				 * the contra-transaction if necessary */
-				if (!new_transaction)
-				{
-					if (is_transaction)
-					{
-						contra_transaction_number = gsb_data_transaction_get_contra_transaction_number (transaction_number);
-						if (contra_transaction_number > 0)
-						{
-							/* it was a transfer, we delete the contra-transaction */
-							gsb_data_transaction_set_contra_transaction_number ( contra_transaction_number,
-									0);
-							gsb_transactions_list_delete_transaction (contra_transaction_number, FALSE );
-							gsb_data_transaction_set_contra_transaction_number ( transaction_number,
-									0);
-						}
-					}
-					else
-						/* if the scheduled transaction was a transfer, it is not anymore, remove that */
-						gsb_data_scheduled_set_account_number_transfer (transaction_number, 0);
-				}
-				gsb_data_category_fill_transaction_by_string ( transaction_number,
-						string, is_transaction );
-				break;
-
-			case -2:
-				/* if the check returns -2, it's a deleted account, so set -1 for transaction number transfer
-				 * normally cannot come here if scheduled transaction, but in case,
-				 * we set data_mix to protect */
-				gsb_data_mix_set_transaction_number_transfer ( transaction_number,
-						-1, is_transaction );
-				/* we don't set any break here, so with the case -1 the
-				 * category will be set to 0 (!! let the case -1 after here) */
-
-			case -1:
-				/* if the check returns -1, it's a transfert to non existant account,
-				 * so do nothing */
-				gsb_data_mix_set_category_number ( transaction_number,
-						0, is_transaction );
-				gsb_data_mix_set_sub_category_number ( transaction_number,
-						0, is_transaction );
-				break;
-
-				/* all other values are a number of account */
-			default :
-				/* need to check a lot of things and create the contra-transaction for a transaction,
-				 * but nothing to do for a scheduled transaction because no contra-transaction */
-				if (is_transaction)
-					gsb_form_transaction_validate_transfer ( transaction_number,
-							new_transaction,
-							account_transfer );
-				else
-					gsb_data_scheduled_set_account_number_transfer (transaction_number, account_transfer);
-				break;
-			}
+		    if (!question_yes_no_hint ( _("Modifying a transaction"),
+						_("You are trying to change a split of transaction to another kind of transaction.\n"
+                        "There is some children to that transaction, if you continue, the children will "
+                        "be deleted.\nAre you sure ?"),
+						GTK_RESPONSE_OK ))
+			return FALSE;
+
+		    save_children_list = children_list;
+
+		    do
+		    {
+                gint transaction_number_tmp;
+
+                transaction_number_tmp = GPOINTER_TO_INT ( save_children_list -> data );
+
+                if ( is_transaction )
+                    gsb_transactions_list_delete_transaction (transaction_number_tmp, FALSE);
+                else
+                    gsb_scheduler_list_delete_scheduled_transaction (transaction_number_tmp,
+                                FALSE);
+
+                save_children_list = save_children_list -> next;
+		    }
+		    while ( save_children_list );
+
+		    g_slist_free (save_children_list);
 		}
-		else
-		{
-			/* it's a split of transaction */
-			/* if it was a transfer, we delete the contra-transaction */
-			gint contra_transaction_number = gsb_data_transaction_get_contra_transaction_number (transaction_number);
-			if ( is_transaction
-					&&
-					!new_transaction
-					&&
-					contra_transaction_number > 0 )
+		gsb_data_mix_set_split_of_transaction ( transaction_number,
+							    0, is_transaction );
+	    }
+
+	    /* now, check if it's a transfer or a normal category */
+	    account_transfer = gsb_form_check_for_transfer (string);
+	    switch (account_transfer)
+	    {
+		/* if the check returns -3, it's not a transfer, so it's a normal category */
+		case -3:
+		    /* if it's a modification, check if before it was not a transfer and delete
+		     * the contra-transaction if necessary */
+		    if (!new_transaction)
+		    {
+			if (is_transaction)
 			{
+			    contra_transaction_number = gsb_data_transaction_get_contra_transaction_number (transaction_number);
+			    if (contra_transaction_number > 0)
+			    {
+				/* it was a transfer, we delete the contra-transaction */
 				gsb_data_transaction_set_contra_transaction_number ( contra_transaction_number,
-						0);
+										     0);
 				gsb_transactions_list_delete_transaction (contra_transaction_number, FALSE );
-
 				gsb_data_transaction_set_contra_transaction_number ( transaction_number,
-						0);
+										     0);
+			    }
 			}
+			else
+			    /* if the scheduled transaction was a transfer, it is not anymore, remove that */
+			    gsb_data_scheduled_set_account_number_transfer (transaction_number, 0);
+		    }
+		    gsb_data_category_fill_transaction_by_string ( transaction_number,
+								   string, is_transaction );
+		    break;
 
-			/* if it's a modification of a transaction and it was not a split,
-			 * but it is now, we add a white line as first child */
-			if (!new_transaction
-					&&
-					!gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction))
-			{
-				if (!is_transaction)
-					gsb_scheduler_list_append_new_scheduled ( gsb_data_scheduled_new_white_line (transaction_number),
-							gsb_data_scheduled_get_limit_date (transaction_number ));
-			}
+		case -2:
+		    /* if the check returns -2, it's a deleted account, so set -1 for transaction number transfer
+		     * normally cannot come here if scheduled transaction, but in case,
+		     * we set data_mix to protect */
+		    gsb_data_mix_set_transaction_number_transfer ( transaction_number,
+								   -1, is_transaction );
+		    /* we don't set any break here, so with the case -1 the 
+		     * category will be set to 0 (!! let the case -1 after here) */
 
-			gsb_data_mix_set_split_of_transaction ( transaction_number,
-					1, is_transaction );
-			gsb_data_mix_set_category_number ( transaction_number,
-					0, is_transaction );
-			gsb_data_mix_set_sub_category_number ( transaction_number,
-					0, is_transaction );
-
-			/* normally the following widgets are hidden for a split, but if the user really
-			 * want he can annoy us and set an budget for example, and after cry because problems
-			 * in reports... so, erase here budget and financial year, if ever they are defined */
-			gsb_data_mix_set_budgetary_number (transaction_number, 0, is_transaction);
-			gsb_data_mix_set_sub_budgetary_number (transaction_number, 0, is_transaction);
-			gsb_data_mix_set_voucher (transaction_number, NULL, is_transaction);
-		}
-		g_free ( string );
+		case -1:
+		    /* if the check returns -1, it's a transfert to non existant account,
+		     * so do nothing */
+		    gsb_data_mix_set_category_number ( transaction_number,
+						       0, is_transaction );
+		    gsb_data_mix_set_sub_category_number ( transaction_number,
+							   0, is_transaction );
+		    break;
+
+		    /* all other values are a number of account */
+		default :
+		    /* need to check a lot of things and create the contra-transaction for a transaction,
+		     * but nothing to do for a scheduled transaction because no contra-transaction */
+		    if (is_transaction)
+			gsb_form_transaction_validate_transfer ( transaction_number,
+								 new_transaction,
+								 account_transfer );
+		    else
+			gsb_data_scheduled_set_account_number_transfer (transaction_number, account_transfer);
+	    }
+	}
+	else
+	{
+	    /* it's a split of transaction */
+	    /* if it was a transfer, we delete the contra-transaction */
+	    gint contra_transaction_number = gsb_data_transaction_get_contra_transaction_number (transaction_number);
+	    if ( is_transaction
+		 &&
+		 !new_transaction
+		 &&
+		 contra_transaction_number > 0 )
+	    {
+		gsb_data_transaction_set_contra_transaction_number ( contra_transaction_number,
+								     0);
+		gsb_transactions_list_delete_transaction (contra_transaction_number, FALSE );
+
+		gsb_data_transaction_set_contra_transaction_number ( transaction_number,
+								     0);
+	    }
+
+	    /* if it's a modification of a transaction and it was not a split,
+	     * but it is now, we add a white line as first child */
+	    if (!new_transaction
+		&&
+		!gsb_data_mix_get_split_of_transaction (transaction_number, is_transaction))
+	    {
+		if (!is_transaction)
+		    gsb_scheduler_list_append_new_scheduled ( gsb_data_scheduled_new_white_line (transaction_number),
+							      gsb_data_scheduled_get_limit_date (transaction_number ));
+	    }
+
+	    gsb_data_mix_set_split_of_transaction ( transaction_number,
+							1, is_transaction );
+	    gsb_data_mix_set_category_number ( transaction_number,
+					       0, is_transaction );
+	    gsb_data_mix_set_sub_category_number ( transaction_number,
+						   0, is_transaction );
+
+	    /* normally the following widgets are hidden for a split, but if the user really
+	     * want he can annoy us and set an budget for example, and after cry because problems
+	     * in reports... so, erase here budget and financial year, if ever they are defined */
+	    gsb_data_mix_set_budgetary_number (transaction_number, 0, is_transaction);
+	    gsb_data_mix_set_sub_budgetary_number (transaction_number, 0, is_transaction);
+	    gsb_data_mix_set_voucher (transaction_number, NULL, is_transaction);
 	}
+        g_free ( string );
+    }
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -3500,40 +3509,42 @@ gboolean gsb_form_get_categories ( gint transaction_number,
  * */
 gboolean gsb_form_escape_form ( void )
 {
-	devel_debug (NULL);
+    GrisbiAppConf *conf;
 
-	switch ( gsb_form_get_origin ())
-	{
+    devel_debug (NULL);
+    conf = grisbi_app_get_conf ( );
+
+    switch ( gsb_form_get_origin ())
+    {
 	case ORIGIN_VALUE_OTHER:
-		notice_debug ("Should not come here... (gsb_form_escape_form)");
-		gtk_widget_grab_focus ( gsb_gui_navigation_get_tree_view ( ) );
-		break;
+	    notice_debug ("Should not come here... (gsb_form_escape_form)");
+	    gtk_widget_grab_focus ( gsb_gui_navigation_get_tree_view ( ) );
+	    break;
 
 	case ORIGIN_VALUE_HOME:
-		gtk_widget_grab_focus ( run.window );
-		break;
+	    gtk_widget_grab_focus ( GTK_WIDGET ( grisbi_app_get_active_window ( NULL ) ) );
+	    break;
 
 	case ORIGIN_VALUE_SCHEDULED:
-		gtk_widget_grab_focus (gsb_scheduler_list_get_tree_view ());
-		break;
+	    gtk_widget_grab_focus (gsb_scheduler_list_get_tree_view ());
+	    break;
 
 	default:
-		gtk_widget_grab_focus (gsb_transactions_list_get_tree_view());
-		break;
-	}
-
-	/* in all case clean the scheduler part of the form */
-	gsb_form_scheduler_clean ();
-
-	if ( etat.formulaire_toujours_affiche )
-	{
-		gsb_form_clean ( gsb_form_get_account_number ( ) );
-	}
-	else
-	{
-		gtk_expander_set_expanded ( GTK_EXPANDER ( form_expander ), FALSE );
-	}
-	return FALSE;
+	    gtk_widget_grab_focus (gsb_transactions_list_get_tree_view());
+    }
+
+    /* in all case clean the scheduler part of the form */
+    gsb_form_scheduler_clean ();
+
+    if ( conf->formulaire_toujours_affiche )
+    {
+        gsb_form_clean ( gsb_form_get_account_number ( ) );
+    }
+    else
+    {
+        gtk_expander_set_expanded ( GTK_EXPANDER ( form_expander ), FALSE );
+    }
+    return FALSE;
 }
 
 
@@ -3548,86 +3559,86 @@ gboolean gsb_form_escape_form ( void )
  * \return FALSE
  * */
 gboolean gsb_form_allocate_size ( GtkWidget *table,
-		GtkAllocation *allocation,
-		gpointer null )
+                        GtkAllocation *allocation,
+                        gpointer null )
 {
-	gint row, column;
-	gint account_number;
-	GtkWidget *widget;
-
-	if (! gsb_form_is_visible ( ) )
-		return FALSE;
-
-	if ( allocation == NULL )
-		return FALSE;
-
-	account_number = gsb_form_get_account_number ();
-	if ( account_number == -2 )
-		return FALSE;
-
-	if (saved_allocation_size == allocation -> width)
+    gint row, column;
+    gint account_number;
+    GtkWidget *widget;
+
+    if (! gsb_form_is_visible ( ) )
+        return FALSE;
+
+    if ( allocation == NULL )
+        return FALSE;
+
+    account_number = gsb_form_get_account_number ();
+    if ( account_number == -2 )
+        return FALSE;
+
+    if (saved_allocation_size == allocation -> width)
+    {
+        saved_allocation_size = 0;
+        return FALSE;
+    }
+    saved_allocation_size = allocation -> width;
+
+    /* set the size for all columns - 1 to avoid recursive call to that function,
+     * so the last column size is set to be beautiful, but in fact, it's just the extra-space */
+    for ( row=0 ; row < gsb_data_form_get_nb_rows (account_number) - 1 ; row++ )
+	for ( column=0 ; column < gsb_data_form_get_nb_columns (account_number) ; column++ )
 	{
-		saved_allocation_size = 0;
-		return FALSE;
+	    widget = gsb_form_widget_get_widget ( gsb_data_form_get_value ( account_number,
+									    column,
+									    row ));
+	    if ( widget )
+		gtk_widget_set_size_request ( widget,
+				       gsb_data_form_get_width_column (account_number,
+								       column ) * allocation -> width / 100,
+				       -1 );
 	}
-	saved_allocation_size = allocation -> width;
 
-	/* set the size for all columns - 1 to avoid recursive call to that function,
-	 * so the last column size is set to be beautiful, but in fact, it's just the extra-space */
-	for ( row=0 ; row < gsb_data_form_get_nb_rows (account_number) - 1 ; row++ )
-		for ( column=0 ; column < gsb_data_form_get_nb_columns (account_number) ; column++ )
-		{
-			widget = gsb_form_widget_get_widget ( gsb_data_form_get_value ( account_number,
-					column,
-					row ));
-			if ( widget )
-				gtk_widget_set_size_request ( widget,
-						gsb_data_form_get_width_column (account_number,
-								column ) * allocation -> width / 100,
-								-1 );
-		}
-
-	for ( column = 0 ; column < 6 ; column++ )
-	{
-		gint width_percent = 0;
-
-		widget = gsb_form_scheduler_get_element_widget(column);
-
-		if (widget)
-		{
-			switch (column)
-			{
-			case SCHEDULED_FORM_ACCOUNT:
-				width_percent = 30;
-				break;
-
-			case SCHEDULED_FORM_AUTO:
-				width_percent = 16;
-				break;
-
-			case SCHEDULED_FORM_FREQUENCY_BUTTON:
-				width_percent = 16;
-				break;
-
-			case SCHEDULED_FORM_LIMIT_DATE:
-				width_percent = 12;
-				break;
+    for ( column = 0 ; column < 6 ; column++ )
+    {
+	gint width_percent = 0;
 
-			case SCHEDULED_FORM_FREQUENCY_USER_ENTRY:
-				width_percent = 7;
-				break;
+	widget = gsb_form_scheduler_get_element_widget(column);
 
-			case SCHEDULED_FORM_FREQUENCY_USER_BUTTON:
-				width_percent = 12;
-				break;
-			}
-			if (widget && GTK_IS_WIDGET (widget))
-				gtk_widget_set_size_request ( widget,
-						width_percent * allocation -> width / 100,
-						-1 );
-		}
+	if (widget)
+	{
+	    switch (column)
+	    {
+		case SCHEDULED_FORM_ACCOUNT:
+		    width_percent = 30;
+		    break;
+
+		case SCHEDULED_FORM_AUTO:
+		    width_percent = 16;
+		    break;
+
+		case SCHEDULED_FORM_FREQUENCY_BUTTON:
+		    width_percent = 16;
+		    break;
+
+		case SCHEDULED_FORM_LIMIT_DATE:
+		    width_percent = 12;
+		    break;
+
+		case SCHEDULED_FORM_FREQUENCY_USER_ENTRY:
+		    width_percent = 7;
+		    break;
+
+		case SCHEDULED_FORM_FREQUENCY_USER_BUTTON:
+		    width_percent = 12;
+		    break;
+	    }
+	    if (widget && GTK_IS_WIDGET (widget))
+		gtk_widget_set_size_request ( widget,
+				       width_percent * allocation -> width / 100,
+				       -1 );
 	}
-	return FALSE;
+    }
+    return FALSE;
 }
 
 
@@ -3642,34 +3653,34 @@ gboolean gsb_form_allocate_size ( GtkWidget *table,
  * \return FALSE
  * */
 gboolean gsb_form_button_press ( GtkWidget *vbox,
-		GdkEventButton *ev,
-		gpointer null )
+                        GdkEventButton *ev,
+                        gpointer null )
 {
-	GtkWidget *menu, *menu_item;
+    GtkWidget *menu, *menu_item;
 
-	devel_debug (NULL);
+    devel_debug (NULL);
 
-	if ( ev -> button != RIGHT_BUTTON )
-		return FALSE;
+    if ( ev -> button != RIGHT_BUTTON )
+	return FALSE;
 
-	menu = gtk_menu_new ();
+    menu = gtk_menu_new ();
 
-	/* propose to configure the form */
-	menu_item = gtk_image_menu_item_new_with_label ( _("Configure the form") );
-	gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM(menu_item),
-			gtk_image_new_from_stock ( GTK_STOCK_PROPERTIES,
-					GTK_ICON_SIZE_MENU ));
-	g_signal_connect ( G_OBJECT(menu_item),
-			"activate",
-			G_CALLBACK (gsb_preferences_menu_open),
-			GINT_TO_POINTER (TRANSACTION_FORM_PAGE));
-	gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
+    /* propose to configure the form */
+    menu_item = gtk_image_menu_item_new_with_label ( _("Configure the form") );
+    gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM(menu_item),
+				    gtk_image_new_from_stock ( GTK_STOCK_PROPERTIES,
+							       GTK_ICON_SIZE_MENU ));
+    g_signal_connect ( G_OBJECT(menu_item),
+		       "activate",
+		       G_CALLBACK (gsb_preferences_menu_open),
+		       GINT_TO_POINTER (TRANSACTION_FORM_PAGE));
+    gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
 
-	/* Finish all. */
-	gtk_widget_show_all (menu);
-	gtk_menu_popup ( GTK_MENU(menu), NULL, NULL, NULL, NULL, 3, gtk_get_current_event_time());
+    /* Finish all. */
+    gtk_widget_show_all (menu);
+    gtk_menu_popup ( GTK_MENU(menu), NULL, NULL, NULL, NULL, 3, gtk_get_current_event_time());
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -3678,28 +3689,28 @@ gboolean gsb_form_button_press ( GtkWidget *vbox,
  *
  * \param element_number
  * \param GSList *list
- *
+  *
  * \return a GtkWidget * or NULL
  * */
 GtkWidget *gsb_form_get_element_widget_from_list ( gint element_number,
-		GSList *list )
+                        GSList *list )
 {
-	GSList *list_tmp;
+    GSList *list_tmp;
 
-	list_tmp = list;
+    list_tmp = list;
 
-	while (list_tmp)
-	{
-		struct_element *element;
+    while (list_tmp)
+    {
+        struct_element *element;
 
-		element = list_tmp -> data;
-		if (element -> element_number == element_number)
-			return element -> element_widget;
+        element = list_tmp -> data;
+        if (element -> element_number == element_number)
+            return element -> element_widget;
 
-		list_tmp = list_tmp -> next;
-	}
+        list_tmp = list_tmp -> next;
+    }
 
-	return NULL;
+    return NULL;
 }
 
 
@@ -3712,46 +3723,46 @@ GtkWidget *gsb_form_get_element_widget_from_list ( gint element_number,
  * */
 gboolean gsb_form_initialise_transaction_form ( void )
 {
-	gint row, column;
-	gint rows_number, columns_number;
-	gint form_account_number;
-	gint account_number;
+    gint row, column;
+    gint rows_number, columns_number;
+    gint form_account_number;
+    gint account_number;
 
-	devel_debug (NULL);
+    devel_debug (NULL);
 
-	/* get the form of the first account */
+    /* get the form of the first account */
 	form_account_number = gsb_data_account_first_number ();
-	account_number = gsb_data_account_first_number ( );
+    account_number = gsb_data_account_first_number ( );
 
-	rows_number = gsb_data_form_get_nb_rows (form_account_number);
-	columns_number = gsb_data_form_get_nb_columns (form_account_number);
+    rows_number = gsb_data_form_get_nb_rows (form_account_number);
+    columns_number = gsb_data_form_get_nb_columns (form_account_number);
 
-	gtk_table_resize ( GTK_TABLE (form_transaction_part),
-			rows_number,
-			columns_number );
+    gtk_table_resize ( GTK_TABLE (form_transaction_part),
+		       rows_number,
+		       columns_number );
 
-	for ( row=0 ; row < rows_number ; row++ )
-		for ( column=0 ; column < columns_number ; column++ )
-		{
-			GtkWidget *widget;
-			gint element;
-
-			element = gsb_data_form_get_value ( form_account_number, column, row );
-			widget = gsb_form_widget_create ( element, account_number );
-
-			if ( !widget )
-				continue;
-
-			gtk_table_attach ( GTK_TABLE (form_transaction_part),
-					widget,
-					column, column+1,
-					row, row+1,
-					gsb_form_get_element_expandable ( element ),
-					gsb_form_get_element_expandable ( element ),
-					0, 0);
-		}
+    for ( row=0 ; row < rows_number ; row++ )
+	for ( column=0 ; column < columns_number ; column++ )
+	{
+	    GtkWidget *widget;
+	    gint element;
+
+        element = gsb_data_form_get_value ( form_account_number, column, row );
+		widget = gsb_form_widget_create ( element, account_number );
+
+	    if ( !widget )
+		continue;
+
+	    gtk_table_attach ( GTK_TABLE (form_transaction_part),
+			       widget,
+			       column, column+1,
+			       row, row+1,
+			       gsb_form_get_element_expandable ( element ),
+			       gsb_form_get_element_expandable ( element ),
+			       0, 0);
+	}
 
-	return FALSE;
+    return FALSE;
 }
 
 
diff --git a/src/gsb_form_transaction.c b/src/gsb_form_transaction.c
index 05dc034..6b21759 100644
--- a/src/gsb_form_transaction.c
+++ b/src/gsb_form_transaction.c
@@ -37,6 +37,7 @@
 /*START_INCLUDE*/
 #include "gsb_form_transaction.h"
 #include "etats_calculs.h"
+#include "grisbi_app.h"
 #include "gsb_currency.h"
 #include "gsb_data_account.h"
 #include "gsb_data_currency_link.h"
@@ -80,8 +81,10 @@ gboolean gsb_form_transaction_complete_form_by_payee ( const gchar *payee_name )
     gint transaction_number = 0;
     gint account_number;
     GSList *tmp_list;
+    GrisbiAppConf *conf;
 
     devel_debug (payee_name);
+    conf = grisbi_app_get_conf ( );
 
     if ( !strlen (payee_name))
     return FALSE;
@@ -127,7 +130,7 @@ gboolean gsb_form_transaction_complete_form_by_payee ( const gchar *payee_name )
         return TRUE;
 
     /* find the last transaction with that payee */
-    if ( conf.automatic_completion_payee )
+    if ( conf->automatic_completion_payee )
     transaction_number = gsb_form_transactions_look_for_last_party ( payee_number,
                         0,
                         account_number );
@@ -175,13 +178,13 @@ gboolean gsb_form_transaction_complete_form_by_payee ( const gchar *payee_name )
         gsb_data_transaction_get_split_of_transaction (transaction_number))
         {
             gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON ( form_button_recover_split ),
-                        conf.automatic_recover_splits );
+                        conf->automatic_recover_splits );
             gtk_widget_show ( form_button_recover_split );
         }
     }
-    else if ( ( element -> element_number == TRANSACTION_FORM_CREDIT && !conf.automatic_erase_credit_debit )
+    else if ( ( element -> element_number == TRANSACTION_FORM_CREDIT && !conf->automatic_erase_credit_debit )
          ||
-         ( element -> element_number == TRANSACTION_FORM_DEBIT && !conf.automatic_erase_credit_debit ) )
+         ( element -> element_number == TRANSACTION_FORM_DEBIT && !conf->automatic_erase_credit_debit ) )
     {
         gsb_form_fill_element ( element -> element_number,
                         account_number,
@@ -263,36 +266,39 @@ gint gsb_form_transactions_look_for_last_party ( gint no_party,
     GSList *list_tmp_transactions;
     gint last_transaction_with_party_in_account = 0;
     gint last_transaction_with_party_not_in_account = 0;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     list_tmp_transactions = gsb_data_transaction_get_complete_transactions_list ();
 
     while ( list_tmp_transactions )
     {
-	gint transaction_number_tmp;
-	transaction_number_tmp = gsb_data_transaction_get_transaction_number (list_tmp_transactions -> data);
+        gint transaction_number_tmp;
+        transaction_number_tmp = gsb_data_transaction_get_transaction_number (list_tmp_transactions -> data);
 
-	if ( gsb_data_transaction_get_party_number (transaction_number_tmp) == no_party
-	     &&
-	     transaction_number_tmp != no_new_transaction
-	     &&
-	     !gsb_data_transaction_get_mother_transaction_number (transaction_number_tmp))
-	{
-	    /* we are on a transaction with the same party, it's also a split, so we keep it */
-	    if ( gsb_data_transaction_get_account_number (transaction_number_tmp) == account_number)
-		last_transaction_with_party_in_account = transaction_number_tmp;
-	    else
-		last_transaction_with_party_not_in_account = transaction_number_tmp;
-	}
-	list_tmp_transactions = list_tmp_transactions -> next;
+        if ( gsb_data_transaction_get_party_number (transaction_number_tmp) == no_party
+             &&
+             transaction_number_tmp != no_new_transaction
+             &&
+             !gsb_data_transaction_get_mother_transaction_number (transaction_number_tmp))
+        {
+            /* we are on a transaction with the same party, it's also a split, so we keep it */
+            if ( gsb_data_transaction_get_account_number (transaction_number_tmp) == account_number)
+            last_transaction_with_party_in_account = transaction_number_tmp;
+            else
+            last_transaction_with_party_not_in_account = transaction_number_tmp;
+        }
+        list_tmp_transactions = list_tmp_transactions -> next;
     }
 
     if ( last_transaction_with_party_in_account )
-	return last_transaction_with_party_in_account;
+        return last_transaction_with_party_in_account;
 
     /* if we don't want to complete with a transaction in another account,
      * go away here */
-    if ( conf.limit_completion_to_current_account )
-	return 0;
+    if ( conf->limit_completion_to_current_account )
+        return 0;
 
     return last_transaction_with_party_not_in_account;
 }
diff --git a/src/gsb_form_widget.c b/src/gsb_form_widget.c
index d9f323e..1720b04 100644
--- a/src/gsb_form_widget.c
+++ b/src/gsb_form_widget.c
@@ -36,6 +36,7 @@
 
 /*START_INCLUDE*/
 #include "gsb_form_widget.h"
+#include "grisbi_app.h"
 #include "gsb_calendar_entry.h"
 #include "gsb_color.h"
 #include "gsb_currency.h"
@@ -513,92 +514,94 @@ gint gsb_form_widget_next_element ( gint account_number,
     gint form_column_number;
     gint form_row_number;
     
-    if ( !gsb_data_form_look_for_value ( account_number,
-					 element_number,
-					 &row,
-					 &column ))
-	return -1;
+    if ( !gsb_data_form_look_for_value ( account_number, element_number, &row, &column ) )
+        return -1;
 
     form_column_number = gsb_data_form_get_nb_columns (account_number);
     form_row_number = gsb_data_form_get_nb_rows (account_number);
 
-    while ( !gsb_form_widget_can_focus (return_value_number)) 
+    while ( !gsb_form_widget_can_focus (return_value_number))
     {
-	switch ( direction )
-	{
-	    case GSB_LEFT:
-		if ( !column && !row )
-		{
-		    /* we are at the upper left, go on the bottom right */
-		    column = form_column_number;
-		    row = form_row_number -1; 
-		}
-
-		if ( --column == -1 )
-		{
-		    column = form_column_number - 1;
-		    row--;
-		}
-		return_value_number = gsb_data_form_get_value ( account_number,
-								column,
-								row );
-		break;
-
-	    case GSB_RIGHT:
-		if ( column == (form_column_number - 1)
-		     &&
-		     row == (form_row_number - 1))
-		{
-		    /* we are on the bottom right, we finish the edition or
-		     * go to the upper left */
-		    if ( !conf.entree )
-		    {
-			return_value_number = -2;
-			continue;
-		    }
-		    column = -1;
-		    row = 0; 
-		}
-
-		if ( ++column == form_column_number )
-		{
-		    column = 0;
-		    row++;
-		}
-		return_value_number = gsb_data_form_get_value ( account_number,
-								column,
-								row );
-		break;
-
-	    case GSB_UP:
-		if ( !row )
-		{
-		    return_value_number = -1;
-		    continue;
-		}
-
-		row--;
-		return_value_number = gsb_data_form_get_value ( account_number,
-								column,
-								row );
-		break;
-
-	    case GSB_DOWN:
-		if ( row == (form_row_number - 1))
-		{
-		    return_value_number = -1;
-		    continue;
-		}
-		row++;
-		return_value_number = gsb_data_form_get_value ( account_number,
-								column,
-								row );
-		break;
-
-	    default:
-		return_value_number = -1;
-	}
+        switch ( direction )
+        {
+            case GSB_LEFT:
+            if ( !column && !row )
+            {
+                /* we are at the upper left, go on the bottom right */
+                column = form_column_number;
+                row = form_row_number -1;
+            }
+
+            if ( --column == -1 )
+            {
+                column = form_column_number - 1;
+                row--;
+            }
+            return_value_number = gsb_data_form_get_value ( account_number,
+                                    column,
+                                    row );
+            break;
+
+            case GSB_RIGHT:
+            if ( column == (form_column_number - 1)
+                 &&
+                 row == (form_row_number - 1))
+            {
+                GrisbiAppConf *conf;
+
+                conf = grisbi_app_get_conf ( );
+
+                /* we are on the bottom right, we finish the edition or
+                 * go to the upper left */
+                if ( !conf->entree )
+                {
+                    return_value_number = -2;
+                    continue;
+                }
+                column = -1;
+                row = 0;
+            }
+
+            if ( ++column == form_column_number )
+            {
+                column = 0;
+                row++;
+            }
+            return_value_number = gsb_data_form_get_value ( account_number,
+                                    column,
+                                    row );
+            break;
+
+            case GSB_UP:
+            if ( !row )
+            {
+                return_value_number = -1;
+                continue;
+            }
+
+            row--;
+            return_value_number = gsb_data_form_get_value ( account_number,
+                                    column,
+                                    row );
+            break;
+
+            case GSB_DOWN:
+            if ( row == (form_row_number - 1))
+            {
+                return_value_number = -1;
+                continue;
+            }
+            row++;
+            return_value_number = gsb_data_form_get_value ( account_number,
+                                    column,
+                                    row );
+            break;
+
+            default:
+            return_value_number = -1;
+        }
     }
+
     return return_value_number;
 }
 
diff --git a/src/gsb_reconcile.c b/src/gsb_reconcile.c
index 1442ae8..8084af7 100644
--- a/src/gsb_reconcile.c
+++ b/src/gsb_reconcile.c
@@ -40,6 +40,8 @@
 #include "gsb_reconcile.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "gsb_color.h"
 #include "gsb_calendar_entry.h"
 #include "gsb_data_account.h"
@@ -670,9 +672,10 @@ void gsb_reconcile_sensitive ( gboolean sensitive )
 {
     GtkUIManager *ui_manager;
 
-    ui_manager = gsb_menu_get_ui_manager ( );
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
+
     gtk_widget_set_sensitive ( gsb_gui_navigation_get_tree_view ( ), sensitive );
-    gsb_gui_sensitive_headings (sensitive);
+    gsb_gui_sensitive_headings ( sensitive );
     /* add by pbiava 02/11/2009 */
     gtk_widget_set_sensitive ( gtk_ui_manager_get_widget ( ui_manager, 
                               "/menubar/ViewMenu/ShowReconciled/" ),
diff --git a/src/gsb_scheduler.c b/src/gsb_scheduler.c
index d36a609..b2ea4f3 100644
--- a/src/gsb_scheduler.c
+++ b/src/gsb_scheduler.c
@@ -35,6 +35,7 @@
 /*START_INCLUDE*/
 #include "gsb_scheduler.h"
 #include "accueil.h"
+#include "grisbi_app.h"
 #include "gsb_currency.h"
 #include "gsb_data_fyear.h"
 #include "gsb_data_payment.h"
@@ -65,11 +66,6 @@ extern GSList *scheduled_transactions_taken;
 extern GSList *scheduled_transactions_to_take;
 /*END_EXTERN*/
 
-/** number of days before the scheduled to execute it */
-gint nb_days_before_scheduled;
-
-/** warn/execute scheduled at expiration (FALSE) or of the month (TRUE) */
-gboolean execute_scheduled_of_month;
 
 /**
  * set the next date in the scheduled transaction
@@ -454,32 +450,34 @@ void gsb_scheduler_check_scheduled_transactions_time_limit ( void )
     GDate *date;
     GSList *tmp_list;
     gboolean automatic_transactions_taken = FALSE;
+    GrisbiAppConf *conf;
 
     devel_debug (NULL);
 
+    conf = grisbi_app_get_conf ( );
+
     /* the scheduled transactions to take will be check here,
      * but the scheduled transactions taken will be add to the already appended ones */
 
     scheduled_transactions_to_take = NULL;
 
-    /* get the date today + nb_days_before_scheduled */
+    /* get the date today + conf->nb_days_before_scheduled */
 
     /* the date untill we execute the scheduled transactions is :
      * - either today + nb_days_before_scheduled if warn n days before the scheduled
      * - either the end of the month in nb_days_before_scheduled days (so current month or next month)
      *   */
     date = gdate_today ();
-    g_date_add_days ( date,
-		      nb_days_before_scheduled );
+    g_date_add_days ( date, conf->nb_days_before_scheduled );
     /* now date is in nb_days_before_scheduled, if we want the transactions of the month,
      * we change date to the end of its month */
-    if (execute_scheduled_of_month)
+    if ( conf->execute_scheduled_of_month )
     {
-	gint last_day;
-	
-	last_day = g_date_get_days_in_month ( g_date_get_month (date),
-					      g_date_get_year (date));
-	g_date_set_day (date, last_day);
+        gint ay (date, last_day);    ( g_date_get_month (date),  ansactions of the month,  next month)  ata);   ), is_transaction);  ),  number),  ,  he \"%s\" option in preferences."),  ));        ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                  last_day;
+        
+        last_day = g_date_get_days_in_month ( g_date_get_month ( date ),
+                        g_date_get_year ( date ) );
+        g_date_set_day ( date, last_day );
     }
 
     /* check all the scheduled transactions,
diff --git a/src/gsb_scheduler_list.c b/src/gsb_scheduler_list.c
index e5f530b..73d8945 100644
--- a/src/gsb_scheduler_list.c
+++ b/src/gsb_scheduler_list.c
@@ -41,6 +41,7 @@
 #include "gsb_scheduler_list.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "gsb_calendar.h"
 #include "gsb_color.h"
@@ -258,11 +259,14 @@ GtkWidget *gsb_scheduler_list_create_list ( void )
 GtkWidget *creation_barre_outils_echeancier ( void )
 {
     GtkWidget *hbox, *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     hbox = gtk_hbox_new ( FALSE, 0 );
 
     /* Common actions */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 					       _("_New scheduled"),
 					       "new-scheduled.png",
 					       G_CALLBACK (gsb_scheduler_list_edit_transaction),
@@ -271,7 +275,7 @@ GtkWidget *creation_barre_outils_echeancier ( void )
 				  _("Prepare form to create a new scheduled transaction"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    scheduler_button_delete = gsb_automem_stock_button_new ( etat.display_toolbar,
+    scheduler_button_delete = gsb_automem_stock_button_new ( conf->display_toolbar,
 							    GTK_STOCK_DELETE,
 							    _("Delete"),
 							    G_CALLBACK ( gsb_scheduler_list_delete_scheduled_transaction_by_menu ),
@@ -281,7 +285,7 @@ GtkWidget *creation_barre_outils_echeancier ( void )
 				  _("Delete selected scheduled transaction"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), scheduler_button_delete, FALSE, FALSE, 0 );
 
-    scheduler_button_edit = gsb_automem_stock_button_new ( etat.display_toolbar,
+    scheduler_button_edit = gsb_automem_stock_button_new ( conf->display_toolbar,
 							  GTK_STOCK_EDIT,
 							  _("Edit"),
 							  G_CALLBACK ( gsb_scheduler_list_edit_transaction ),
@@ -292,7 +296,7 @@ GtkWidget *creation_barre_outils_echeancier ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), scheduler_button_edit, FALSE, FALSE, 0 );
 
     /* Display/hide comments */
-    scheduler_display_hide_comments = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    scheduler_display_hide_comments = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 									_("Comments"),
 									"comments.png",
 									G_CALLBACK ( gsb_scheduler_list_show_notes ),
@@ -303,7 +307,7 @@ GtkWidget *creation_barre_outils_echeancier ( void )
 			 FALSE, FALSE, 0 );
 
     /* Execute transaction */
-    scheduler_button_execute = gsb_automem_stock_button_new ( etat.display_toolbar,
+    scheduler_button_execute = gsb_automem_stock_button_new ( conf->display_toolbar,
 							     GTK_STOCK_EXECUTE,
 							     _("Execute"),
 							     G_CALLBACK ( gsb_scheduler_list_execute_transaction ),
@@ -313,7 +317,7 @@ GtkWidget *creation_barre_outils_echeancier ( void )
 				  _("Execute current scheduled transaction"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), scheduler_button_execute, FALSE, FALSE, 0 );
 
-    button = gsb_automem_stock_button_menu_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_menu_new ( conf->display_toolbar,
 						GTK_STOCK_SELECT_COLOR, _("View"),
 						G_CALLBACK (popup_scheduled_view_mode_menu),
 						NULL );
@@ -1701,6 +1705,9 @@ gboolean gsb_scheduler_list_selection_changed ( GtkTreeSelection *selection,
 {
     gint tmp_number = 0;
     gint account_number;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* wanted to set that function in gsb_scheduler_list_button_press but g_signal_connect_after
      * seems not to work in that case... */
@@ -1711,8 +1718,8 @@ gboolean gsb_scheduler_list_selection_changed ( GtkTreeSelection *selection,
     if (tmp_number)
         last_scheduled_number = tmp_number;
 
-    /* if conf.show_transaction_selected_in_form => edit the scheduled transaction */
-    if ( tmp_number != 0 && conf.show_transaction_selected_in_form )
+    /* if conf->show_transaction_selected_in_form => edit the scheduled transaction */
+    if ( tmp_number != 0 && conf->show_transaction_selected_in_form )
             gsb_scheduler_list_edit_transaction (tmp_number);
     else if ( tmp_number == 0 )
     {
@@ -2120,7 +2127,7 @@ gboolean gsb_scheduler_list_popup_custom_periodicity_dialog (void)
     int i;
 
     dialog = gtk_dialog_new_with_buttons ( _("Show scheduled transactions"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_DIALOG_MODAL,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_APPLY, GTK_RESPONSE_OK,
diff --git a/src/gsb_select_icon.c b/src/gsb_select_icon.c
index bf64537..56378d7 100644
--- a/src/gsb_select_icon.c
+++ b/src/gsb_select_icon.c
@@ -32,11 +32,12 @@
 /*START_INCLUDE*/
 #include "gsb_select_icon.h"
 #include "dialog.h"
-#include "utils_str.h"
+#include "grisbi_app.h"
+#include "gsb_dirs.h"
 #include "structures.h"
 #include "utils.h"
+#include "utils_str.h"
 #include "erreur.h"
-#include "gsb_dirs.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
@@ -163,7 +164,7 @@ gchar *gsb_select_icon_create_window ( gchar *name_icon )
 
     path_icon = g_path_get_dirname ( name_icon );
     dialog = gtk_dialog_new_with_buttons ( _("Browse icons"),
-                            GTK_WINDOW ( run.window ),
+                            GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                             GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                             GTK_STOCK_CANCEL,
                             GTK_RESPONSE_REJECT,
diff --git a/src/gsb_status.c b/src/gsb_status.c
index 1288b14..414a882 100644
--- a/src/gsb_status.c
+++ b/src/gsb_status.c
@@ -33,6 +33,8 @@
 
 /*START_INCLUDE*/
 #include "gsb_status.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "main.h"
 #include "structures.h"
 #include "utils.h"
@@ -44,61 +46,25 @@
 /*START_EXTERN*/
 /*END_EXTERN*/
 
-/** Status bar displayed in the bottom of Grisbi window.  */
-static GtkWidget *main_statusbar = NULL;
-
-/** Context ID from the GtkStatusBar. */
-static guint context_id;
-
-/** Message ID from the GtkStatusBar.  */
-static guint message_id = -1;
-
-/** Optional progress bar in main status bar.  */
-/*
-static GtkWidget * progress_bar = NULL;
-*/
-
-/** Timer ID of the timeout responsible for updating the
- * GtkProgressBar.  */
-/*
-static gint timer_id;
-*/
-
 /** Window under cursor at the time the cursor animation changed. */
 static GdkWindow *tracked_window;
 
 
 /**
- * Create and return a new GtkStatusBar to hold various status
- * information.
- *
- * \return	A newly allocated GtkStatusBar.
- */
-GtkWidget * gsb_new_statusbar ()
-{
-    main_statusbar = gtk_statusbar_new ();
-    context_id = gtk_statusbar_get_context_id ( GTK_STATUSBAR ( main_statusbar ), "Grisbi" );
-    message_id = -1;
-
-    gtk_widget_show_all ( main_statusbar );
-
-    return main_statusbar;
-}
-
-
-
-/**
  * Display a message in the status bar.
  *
- * \param message	Message to display.
+ * \param message   Message to display.
  */
-void gsb_status_message ( gchar * message )
+void gsb_status_message ( gchar *message )
 {
-    if ( ! main_statusbar || ! GTK_IS_STATUSBAR ( main_statusbar ) )
-        return;
+    GrisbiApp *app;
+    GrisbiWindow *window;
+
+    app = grisbi_app_get_default ( );
+    window = grisbi_app_get_active_window ( app );
 
     gsb_status_clear ();
-    message_id = gtk_statusbar_push ( GTK_STATUSBAR ( main_statusbar ), context_id, message );
+    grisbi_window_statusbar_push ( window, message );
 
     /* force status message to be displayed NOW */
     update_gui ( );
@@ -111,14 +77,12 @@ void gsb_status_message ( gchar * message )
  */
 void gsb_status_clear (  )
 {
-    if ( ! main_statusbar || ! GTK_IS_STATUSBAR ( main_statusbar ) )
-        return;
+    GrisbiApp *app;
+    GrisbiWindow *window;
 
-    if ( message_id >= 0 )
-    {
-        gtk_statusbar_remove ( GTK_STATUSBAR ( main_statusbar ), context_id, message_id );
-        message_id = -1;
-    }
+    app = grisbi_app_get_default ( );
+    window = grisbi_app_get_active_window ( app );
+    grisbi_window_statusbar_remove ( window );
 
     /* force status message to be displayed NOW */
     update_gui ( );
@@ -138,7 +102,7 @@ void gsb_status_wait ( gboolean force_update )
     GdkWindow *current_window;
     GdkWindow *run_window;
 
-    run_window = gtk_widget_get_window ( run.window );
+    run_window = gtk_widget_get_window ( GTK_WIDGET ( grisbi_app_get_active_window ( NULL ) ) );
 
     gdk_window_set_cursor ( run_window,
                         gdk_cursor_new_for_display ( gdk_display_get_default ( ),
@@ -178,10 +142,10 @@ void gsb_status_wait ( gboolean force_update )
  */
 void gsb_status_stop_wait ( gboolean force_update )
 {
-    if ( !run.window )
+    if ( !grisbi_app_get_active_window ( NULL ) )
         return;
 
-    gdk_window_set_cursor ( gtk_widget_get_window ( run.window ), NULL );
+    gdk_window_set_cursor ( gtk_widget_get_window ( GTK_WIDGET ( grisbi_app_get_active_window ( NULL ) ) ), NULL );
 
     if ( tracked_window && gdk_window_is_visible ( tracked_window ) )
     {
diff --git a/src/gsb_status.h b/src/gsb_status.h
index 8b0bab1..ccf9df9 100644
--- a/src/gsb_status.h
+++ b/src/gsb_status.h
@@ -7,7 +7,6 @@
 /* END_INCLUDE_H */
 
 /* START_DECLARATION */
-GtkWidget * gsb_new_statusbar ();
 void gsb_status_clear (  );
 void gsb_status_message ( gchar * message );
 void gsb_status_stop_wait ( gboolean force_update );
diff --git a/src/gsb_transactions_list.c b/src/gsb_transactions_list.c
index f020fd9..d5723b5 100644
--- a/src/gsb_transactions_list.c
+++ b/src/gsb_transactions_list.c
@@ -37,6 +37,8 @@
 #include "custom_list.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "gsb_account.h"
 #include "gsb_automem.h"
 #include "gsb_data_account.h"
@@ -279,24 +281,29 @@ void gsb_transactions_list_update_tree_view ( gint account_number,
                         gboolean keep_selected_transaction )
 {
     gint selected_transaction = 0;
+    GrisbiAppConf *conf;
 
-    /* called sometimes with gsb_gui_navigation_get_current_account, so check we are 
+    /* called sometimes with gsb_gui_navigation_get_current_account, so check we are
      * on an account */
     if ( account_number == -1 )
         return;
 
+    conf = grisbi_app_get_conf ( );
+
     if ( keep_selected_transaction )
         selected_transaction = transaction_list_select_get ( );
     transaction_list_filter ( account_number );
     transaction_list_set_balances ( );
     transaction_list_sort ();
     transaction_list_colorize ();
-    if ( conf.show_transaction_gives_balance )
+    if ( conf->show_transaction_gives_balance )
         transaction_list_set_color_jour ( account_number );
     if ( keep_selected_transaction )
         transaction_list_select ( selected_transaction );
     else
         transaction_list_select ( -1 );
+
+    /* return */
 }
 
 
@@ -334,12 +341,15 @@ GtkWidget *creation_barre_outils_transaction ( void )
     GtkWidget *hbox, *menu, *button;
     GtkWidget *alignement;
     gint account_number;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* Hbox */
     hbox = gtk_hbox_new ( FALSE, 0 );
 
     /* Add various icons */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 					       _("New transaction"),
 					       "new-transaction.png",
 					       G_CALLBACK ( new_transaction ),
@@ -348,7 +358,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
 				  _("Blank the form to create a new transaction"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_DELETE, 
 					   _("Delete"),
 					   G_CALLBACK ( remove_transaction ),
@@ -357,7 +367,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
 				  _("Delete selected transaction"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_EDIT,
 					   _("Edit"),
 					   G_CALLBACK ( gsb_transactions_list_edit_current_transaction ),
@@ -366,7 +376,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
 				  _("Edit current transaction"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 					       _("Reconcile"),
 					       "reconciliation.png",
 					       G_CALLBACK (gsb_reconcile_run_reconciliation),
@@ -376,7 +386,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
     /* This stuff needs GTK+ 2.10 to work. */
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					    GTK_STOCK_PRINT,
 					    _("Print"),
 					    G_CALLBACK (print_transactions_list),
@@ -385,7 +395,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
 				  _("Print the transactions list"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
 
-    menu = gsb_automem_stock_button_menu_new ( etat.display_toolbar,
+    menu = gsb_automem_stock_button_menu_new ( conf->display_toolbar,
 					      GTK_STOCK_SELECT_COLOR, _("View"),
 					      G_CALLBACK (popup_transaction_view_mode_menu),
 					      NULL );
@@ -393,7 +403,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
 				  _("Change display mode of the list"));
     gtk_box_pack_start ( GTK_BOX(hbox), menu, FALSE, FALSE, 0 );
 
-    menu_import_rules = gsb_automem_stock_button_menu_new ( etat.display_toolbar,
+    menu_import_rules = gsb_automem_stock_button_menu_new ( conf->display_toolbar,
 							    GTK_STOCK_EXECUTE, _("Import rules"),
 							    G_CALLBACK (popup_transaction_rules_menu),
 							    NULL );
@@ -404,7 +414,7 @@ GtkWidget *creation_barre_outils_transaction ( void )
     alignement = gtk_alignment_new ( 1, 0, 0, 0 );
     gtk_box_pack_start ( GTK_BOX ( hbox ), alignement, TRUE, TRUE, 0 );
 
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 					       _("Recreates archive"),
 					       "archive_24.png",
 					       G_CALLBACK ( gsb_transactions_list_hide_transactions_in_archive_line ),
@@ -1647,8 +1657,10 @@ gboolean gsb_transactions_list_key_press ( GtkWidget *widget,
 void gsb_transactions_list_selection_changed ( gint new_selected_transaction )
 {
     gint account_number;
+    GrisbiAppConf *conf;
 
     devel_debug_int (new_selected_transaction);
+    conf = grisbi_app_get_conf ( );
 
     /* the white number has no account number, so we take the current account */
     if ( new_selected_transaction != -1 )
@@ -1668,7 +1680,7 @@ void gsb_transactions_list_selection_changed ( gint new_selected_transaction )
 
     /* show the content of the transaction in the form,
      * only if the form is shown */
-    if ( conf.show_transaction_selected_in_form
+    if ( conf->show_transaction_selected_in_form
     &&
     gsb_form_is_visible () )
         gsb_form_fill_by_transaction (new_selected_transaction, TRUE, FALSE);
@@ -2004,7 +2016,7 @@ gint gsb_transactions_list_choose_reconcile ( gint account_number,
     gint reconcile_number;
 
     dialog = gtk_dialog_new_with_buttons ( _("Selection of a reconciliation"),
-					   GTK_WINDOW ( run.window ),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
 					   GTK_DIALOG_MODAL,
 					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 					   GTK_STOCK_OK, GTK_RESPONSE_OK,
@@ -2191,28 +2203,30 @@ gboolean gsb_transactions_list_delete_transaction ( gint transaction_number,
     gchar *tmpstr;
     gint account_number;
     gint msg_no = 0;
+    GrisbiAppConf *conf;
 
     devel_debug_int (transaction_number);
+    conf = grisbi_app_get_conf ( );
 
     /* we cannot delete the general white line (-1), but all the others white lines are possibles
      * if show_warning it FALSE (ie this is automatic, and not done by user action */
     if ( !transaction_number
-	 ||
-	 transaction_number == -1 )
-	return FALSE;
+     ||
+     transaction_number == -1 )
+        return FALSE;
 
     /* if we cannot ask for a white line, so this shouldn't append,
      * if we want to delete a child white line, show_warning must be FALSE (force) */
     if ( show_warning
-	 &&
-	 transaction_number < 0 )
-	return FALSE;
+     &&
+     transaction_number < 0 )
+        return FALSE;
 
     /* if the transaction is archived, cannot delete it */
     if (gsb_data_transaction_get_archive_number (transaction_number))
     {
-	dialogue_error ( _("Impossible to delete an archived transaction.") );
-	return FALSE;
+        dialogue_error ( _("Impossible to delete an archived transaction.") );
+        return FALSE;
     }
 
     account_number = gsb_data_transaction_get_account_number (transaction_number);
@@ -2220,11 +2234,11 @@ gboolean gsb_transactions_list_delete_transaction ( gint transaction_number,
     /* check if the transaction is not reconciled */
     if ( gsb_transactions_list_check_mark (transaction_number))
     {
-	dialogue_error ( _("Impossible to delete a reconciled transaction.\nThe transaction, "
-                        "the contra-transaction or the children if it is a split are "
-                        "reconciled. You can remove the reconciliation with Ctrl R if "
-                        "it is really necessary.") );
-	return FALSE;
+        dialogue_error ( _("Impossible to delete a reconciled transaction.\nThe transaction, "
+                            "the contra-transaction or the children if it is a split are "
+                            "reconciled. You can remove the reconciliation with Ctrl R if "
+                            "it is really necessary.") );
+        return FALSE;
     }
 
     /* show a warning */
@@ -2262,11 +2276,11 @@ gboolean gsb_transactions_list_delete_transaction ( gint transaction_number,
     }
 
     /* move the selection */
-    if (transaction_list_select_get () == transaction_number)
+    if ( transaction_list_select_get ( ) == transaction_number )
     {
-	transaction_list_select_down (FALSE);
-	gsb_data_account_set_current_transaction_number ( account_number,
-							  transaction_list_select_get ());
+        transaction_list_select_down ( FALSE );
+        gsb_data_account_set_current_transaction_number ( account_number,
+                        transaction_list_select_get ( ) );
     }
 
     /* delete the transaction from the tree view,
@@ -2282,14 +2296,15 @@ gboolean gsb_transactions_list_delete_transaction ( gint transaction_number,
 
     /* update the tree view */
     transaction_list_colorize ();
-    if ( conf.show_transaction_gives_balance )
+    if ( conf->show_transaction_gives_balance )
         transaction_list_set_color_jour ( account_number );
+
     transaction_list_set_balances ();
     transaction_list_select (gsb_data_account_get_current_transaction_number (account_number));
 
     /* if we are reconciling, update the amounts */
     if ( run.equilibrage )
-	gsb_reconcile_update_amounts (NULL, NULL);
+        gsb_reconcile_update_amounts (NULL, NULL);
 
     /* we will update the home page */
     mise_a_jour_liste_comptes_accueil = 1;
@@ -2298,7 +2313,7 @@ gboolean gsb_transactions_list_delete_transaction ( gint transaction_number,
 
     /* We blank form. */
     if (show_warning)
-	gsb_form_escape_form ();
+        gsb_form_escape_form ();
 
     gsb_file_set_modified ( TRUE );
     return TRUE;
@@ -3476,8 +3491,10 @@ gboolean gsb_transactions_list_change_sort_column ( GtkTreeViewColumn *tree_view
     GSList *tmp_list;
     gint selected_transaction;
     gint element_number;
+    GrisbiAppConf *conf;
 
     devel_debug (NULL);
+    conf = grisbi_app_get_conf ( );
 
     account_number = gsb_gui_navigation_get_current_account ();
     transaction_list_sort_get_column ( &current_column, &sort_type );
@@ -3561,11 +3578,13 @@ gboolean gsb_transactions_list_change_sort_column ( GtkTreeViewColumn *tree_view
     transaction_list_set_balances ();
     transaction_list_sort ();
     transaction_list_colorize ();
-    if ( conf.show_transaction_gives_balance )
+    if ( conf->show_transaction_gives_balance )
         transaction_list_set_color_jour ( account_number );
     transaction_list_select (selected_transaction);
 
     gsb_file_set_modified ( TRUE );
+
+    /* return */
     return FALSE;
 }
 
@@ -4279,8 +4298,9 @@ GtkWidget *gsb_transactions_list_get_toolbar ( void )
  */
 gboolean change_aspect_liste ( gint demande )
 {
-    GtkUIManager *ui_manager = gsb_menu_get_ui_manager ( );
+    GtkUIManager *ui_manager;
 
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
     switch ( demande )
     {
 	case 0:
diff --git a/src/gsb_transactions_list_sort.c b/src/gsb_transactions_list_sort.c
index e345f9d..9bd804f 100644
--- a/src/gsb_transactions_list_sort.c
+++ b/src/gsb_transactions_list_sort.c
@@ -36,6 +36,8 @@
 
 /*START_INCLUDE*/
 #include "gsb_transactions_list_sort.h"
+#include "custom_list.h"
+#include "grisbi_app.h"
 #include "gsb_data_account.h"
 #include "gsb_data_archive_store.h"
 #include "gsb_data_budget.h"
@@ -47,7 +49,6 @@
 #include "navigation.h"
 #include "gsb_real.h"
 #include "gsb_transactions_list.h"
-#include "custom_list.h"
 #include "structures.h"
 #include "erreur.h"
 /*END_INCLUDE*/
@@ -510,10 +511,14 @@ gint gsb_transactions_list_sort_by_no ( gint transaction_number_1,
 gint gsb_transactions_list_sort_by_date ( gint transaction_number_1,
                         gint transaction_number_2 )
 {
-    if ( conf.transactions_list_secondary_sorting == 1 )
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
+    if ( conf->transactions_list_secondary_sorting == 1 )
         return gsb_transactions_list_sort_by_date_and_amount (
                         transaction_number_1, transaction_number_2 );
-    else if ( conf.transactions_list_secondary_sorting == 2 )
+    else if ( conf->transactions_list_secondary_sorting == 2 )
         return gsb_transactions_list_sort_by_date_and_party (
                         transaction_number_1, transaction_number_2 );
     else
@@ -537,15 +542,18 @@ gint gsb_transactions_list_sort_by_value_date ( gint transaction_number_1,
     gint return_value;
     const GDate *value_date_1 = NULL;
     const GDate *value_date_2 = NULL;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
    /* need to work a little more here because value date is not obligatory filled,
      * if we compare 2 transactions and 1 has no value date, set the value date before */
     value_date_1 = gsb_data_transaction_get_value_date ( transaction_number_1 );
-    if ( !value_date_1 && !conf.transactions_list_primary_sorting )
+    if ( !value_date_1 && !conf->transactions_list_primary_sorting )
         value_date_1 = gsb_data_transaction_get_date ( transaction_number_1 );
 
     value_date_2 = gsb_data_transaction_get_value_date ( transaction_number_2 );
-    if ( !value_date_2 && !conf.transactions_list_primary_sorting )
+    if ( !value_date_2 && !conf->transactions_list_primary_sorting )
         value_date_2 = gsb_data_transaction_get_date ( transaction_number_2 );
 
     if ( value_date_1 )
@@ -1173,13 +1181,17 @@ gint gsb_transactions_list_sort_initial (CustomRecord **a,
 gint gsb_transactions_list_sort_initial_by_secondary_key ( gint transaction_number_1,
                         gint transaction_number_2 )
 {
-    if ( conf.transactions_list_secondary_sorting == 1 )
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
+    if ( conf->transactions_list_secondary_sorting == 1 )
         return gsb_transactions_list_sort_by_amount (
                         transaction_number_1, transaction_number_2 );
-    else if ( conf.transactions_list_secondary_sorting == 2 )
+    else if ( conf->transactions_list_secondary_sorting == 2 )
         return gsb_transactions_list_sort_by_party (
                         transaction_number_1, transaction_number_2 );
-    else if ( conf.transactions_list_secondary_sorting == 3 )
+    else if ( conf->transactions_list_secondary_sorting == 3 )
         return gsb_transactions_list_sort_by_date_and_no (
                         transaction_number_1, transaction_number_2 );
     else
diff --git a/src/help.c b/src/help.c
index 048bccf..7519bd9 100644
--- a/src/help.c
+++ b/src/help.c
@@ -31,6 +31,7 @@
 
 /*START_INCLUDE*/
 #include "help.h"
+#include "grisbi_app.h"
 #include "gsb_plugins.h"
 #include "gsb_select_icon.h"
 #include "structures.h"
@@ -218,7 +219,7 @@ NULL};
     gtk_window_set_position ( GTK_WINDOW ( about ), GTK_WIN_POS_CENTER_ON_PARENT );
     gtk_window_set_resizable ( GTK_WINDOW ( about ), TRUE );
     gtk_window_set_modal ( GTK_WINDOW ( about ), TRUE );
-    gtk_window_set_transient_for ( GTK_WINDOW ( about ), GTK_WINDOW ( run.window ) );
+    gtk_window_set_transient_for ( GTK_WINDOW ( about ), GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ) );
 
     g_free ( plugins );
     g_free ( version_to_string );
diff --git a/src/import.c b/src/import.c
index a3d57f5..a17c334 100644
--- a/src/import.c
+++ b/src/import.c
@@ -33,20 +33,18 @@
 
 /*START_INCLUDE*/
 #include "import.h"
-#include "utils.h"
+#include "accueil.h"
 #include "bet_data.h"
-#include "import_csv.h"
 #include "dialog.h"
-#include "utils_file_selection.h"
+#include "grisbi_app.h"
 #include "gsb_account.h"
 #include "gsb_account_property.h"
 #include "gsb_assistant.h"
 #include "gsb_assistant_file.h"
 #include "gsb_automem.h"
-#include "utils_buttons.h"
 #include "gsb_combo_box.h"
-#include "gsb_currency_config.h"
 #include "gsb_currency.h"
+#include "gsb_currency_config.h"
 #include "gsb_data_account.h"
 #include "gsb_data_budget.h"
 #include "gsb_data_category.h"
@@ -57,31 +55,34 @@
 #include "gsb_data_payee.h"
 #include "gsb_data_payment.h"
 #include "gsb_data_transaction.h"
-#include "utils_dates.h"
+#include "gsb_dirs.h"
 #include "gsb_file.h"
 #include "gsb_file_util.h"
 #include "gsb_form_scheduler.h"
 #include "gsb_form_transaction.h"
 #include "gsb_form_widget.h"
-#include "navigation.h"
-#include "menu.h"
-#include "tiers_onglet.h"
 #include "gsb_real.h"
 #include "gsb_status.h"
-#include "utils_str.h"
 #include "gsb_transactions_list.h"
 #include "gtk_combofix.h"
-#include "traitement_variables.h"
+#include "import_csv.h"
 #include "main.h"
-#include "accueil.h"
+#include "menu.h"
+#include "navigation.h"
 #include "parametres.h"
 #include "qif.h"
+#include "structures.h"
+#include "tiers_onglet.h"
+#include "traitement_variables.h"
 #include "transaction_list.h"
+#include "utils.h"
+#include "utils_buttons.h"
+#include "utils_dates.h"
 #include "utils_files.h"
+#include "utils_file_selection.h"
 #include "utils_real.h"
-#include "structures.h"
+#include "utils_str.h"
 #include "erreur.h"
-#include "gsb_dirs.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
@@ -1421,7 +1422,7 @@ gint gsb_import_add_currency ( struct struct_compte_importation * compte )
     g_free ( tmpstr );
     g_free ( tmpstr2 );
 
-    dialog = gtk_message_dialog_new ( GTK_WINDOW ( run.window ),
+    dialog = gtk_message_dialog_new ( GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_MESSAGE_QUESTION,
                         GTK_BUTTONS_YES_NO,
@@ -1498,6 +1499,9 @@ void traitement_operations_importees ( void )
 {
     GSList *list_tmp;
     gint new_file;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* when come here, all the currencies are already created
      * and init_variables is already called
@@ -1572,7 +1576,7 @@ void traitement_operations_importees ( void )
     }
 
     /* MAJ du solde du compte nécessaire suivant date des opérations existantes */
-    if ( conf.balances_with_scheduled == FALSE )
+    if ( conf->balances_with_scheduled == FALSE )
         gsb_data_account_set_balances_are_dirty ( account_number );
     /* MAJ des données du module bet */
     gsb_data_account_set_bet_maj ( account_number, BET_MAJ_ALL );
@@ -2264,7 +2268,7 @@ void confirmation_enregistrement_ope_import ( struct struct_compte_importation *
                         _("Confirmation of importation of transactions in: %s"),
                         gsb_data_account_get_name ( account_number ) );
     dialog = gtk_dialog_new_with_buttons ( tmpstr,
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL,
                         GTK_STOCK_SELECT_ALL, -12,
                         _("Unselect all"), -13,
@@ -3236,7 +3240,7 @@ void gsb_import_show_orphan_transactions ( GSList *orphan_list,
                         gsb_data_account_get_name ( account_number ) );
 
     dialog = gtk_dialog_new_with_buttons ( tmp_str,
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_STOCK_SELECT_ALL, GTK_RESPONSE_ACCEPT,
                         GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
@@ -4370,6 +4374,9 @@ gboolean gsb_import_by_rule ( gint rule )
     gint account_number;
     gchar **array;
     gint i=0;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     charmap_imported = my_strdup ( gsb_data_import_rule_get_charmap ( rule ));
     array = gsb_import_by_rule_ask_filename (rule);
@@ -4515,7 +4522,7 @@ gboolean gsb_import_by_rule ( gint rule )
     mise_a_jour_accueil (FALSE);
 
     /* MAJ du solde du compte nécessaire suivant date des opérations existantes */
-    if ( conf.balances_with_scheduled == FALSE )
+    if ( conf->balances_with_scheduled == FALSE )
         gsb_data_account_set_balances_are_dirty ( account_number );
 
     /* force the update module budget */
@@ -4549,7 +4556,7 @@ gchar **gsb_import_by_rule_ask_filename ( gint rule )
     return NULL;
 
     dialog = gtk_dialog_new_with_buttons (_("Import a file with a rule"),
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT,
                         GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
@@ -4663,7 +4670,8 @@ gboolean gsb_import_by_rule_get_file ( GtkWidget *button,
 
     rule = GPOINTER_TO_INT ( g_object_get_data (G_OBJECT (entry), "rule"));
     enc = gsb_data_import_rule_get_charmap ( rule );
-    filenames = gsb_import_create_file_chooser ( enc, run.window );
+    filenames = gsb_import_create_file_chooser ( enc, 
+                        GTK_WIDGET ( grisbi_app_get_active_window ( NULL ) ) );
     if (!filenames)
     return FALSE;
 
@@ -4920,7 +4928,7 @@ GtkWidget *gsb_import_progress_bar_affiche ( struct struct_compte_importation *i
     progress = gtk_window_new ( GTK_WINDOW_TOPLEVEL );
     gtk_window_set_decorated ( GTK_WINDOW ( progress ), FALSE );
 
-    assistant = g_object_get_data ( G_OBJECT ( run.window ), "assistant" );
+    assistant = g_object_get_data ( G_OBJECT ( grisbi_app_get_active_window ( NULL ) ), "assistant" );
     gtk_window_set_modal ( GTK_WINDOW ( assistant ), FALSE );
     gtk_window_set_transient_for ( GTK_WINDOW ( progress ), GTK_WINDOW ( assistant ) );
     gtk_window_set_modal ( GTK_WINDOW ( progress ), TRUE );
diff --git a/src/imputation_budgetaire.c b/src/imputation_budgetaire.c
index 80061b4..0ae5ec4 100644
--- a/src/imputation_budgetaire.c
+++ b/src/imputation_budgetaire.c
@@ -34,6 +34,7 @@
 #include "imputation_budgetaire.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_autofunc.h"
 #include "gsb_automem.h"
 #include "gsb_data_budget.h"
@@ -53,6 +54,7 @@
 #include "utils.h"
 #include "utils_buttons.h"
 #include "utils_file_selection.h"
+#include "utils_gtkbuilder.h"
 #include "utils_str.h"
 #include "erreur.h"
 /*END_INCLUDE*/
@@ -60,10 +62,10 @@
 /*START_STATIC*/
 static void appui_sur_ajout_imputation ( GtkTreeModel * model, GtkButton *button );
 static gboolean budgetary_line_drag_data_get ( GtkTreeDragSource * drag_source, GtkTreePath * path,
-		GtkSelectionData * selection_data );
+					GtkSelectionData * selection_data );
 static gboolean budgetary_line_list_button_press ( GtkWidget *tree_view,
-		GdkEventButton *ev,
-		gpointer null );
+                        GdkEventButton *ev,
+                        gpointer null );
 static void budgetary_line_list_popup_context_menu ( void );
 static gboolean edit_budgetary_line ( GtkTreeView * view );
 static void exporter_ib ( void );
@@ -98,149 +100,149 @@ static struct metatree_hold_position *budgetary_hold_position;
  */
 GtkWidget *budgetary_lines_create_list ( void )
 {
-	GtkWidget *scroll_window;
-	GtkWidget *vbox;
-	GtkTreeViewColumn *column;
-	GtkCellRenderer *cell;
-	GtkTreeDragDestIface * dst_iface;
-	GtkTreeDragSourceIface * src_iface;
-	static GtkTargetEntry row_targets[] = {
-			{ "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
-	};
-
-	/* We create the gtktreeview and model early so that they can be referenced. */
-	budgetary_line_tree = gtk_tree_view_new();
-
-	/* set the color of selected row */
-	utils_set_tree_view_selection_and_text_color ( budgetary_line_tree );
-
-	budgetary_line_tree_model = gtk_tree_store_new ( META_TREE_NUM_COLUMNS,
-			META_TREE_COLUMN_TYPES );
-
-	/* We create the main vbox */
-	vbox = gtk_vbox_new ( FALSE, 5 );
-	gtk_widget_show ( vbox );
-
-	/* on y ajoute la barre d'outils */
-	budgetary_toolbar = gtk_handle_box_new ( );
-	gtk_widget_show ( budgetary_toolbar );
-	gtk_box_pack_start ( GTK_BOX ( vbox ), budgetary_toolbar, FALSE, FALSE, 0 );
-
-	/* création de l'arbre principal */
-	scroll_window = gtk_scrolled_window_new ( NULL, NULL );
-	gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scroll_window ),
-			GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC );
-	gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW(scroll_window),
-			GTK_SHADOW_IN );
-	gtk_box_pack_start ( GTK_BOX ( vbox ), scroll_window, TRUE, TRUE, 0 );
-	gtk_widget_show ( scroll_window );
-
-	/* Create model */
-	gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE(budgetary_line_tree_model),
-			META_TREE_TEXT_COLUMN, GTK_SORT_ASCENDING );
-	gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE(budgetary_line_tree_model),
-			META_TREE_TEXT_COLUMN, metatree_sort_column,
-			NULL, NULL );
-	g_object_set_data ( G_OBJECT ( budgetary_line_tree_model), "metatree-interface",
-			budgetary_line_get_metatree_interface ( ) );
-
-	/* Create container + TreeView */
-	gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (budgetary_line_tree), TRUE);
-	gtk_tree_view_enable_model_drag_source(GTK_TREE_VIEW(budgetary_line_tree),
-			GDK_BUTTON1_MASK, row_targets, 1,
-			GDK_ACTION_MOVE | GDK_ACTION_COPY );
-	gtk_tree_view_enable_model_drag_dest ( GTK_TREE_VIEW(budgetary_line_tree), row_targets,
-			1, GDK_ACTION_MOVE | GDK_ACTION_COPY );
-	gtk_tree_view_set_reorderable (GTK_TREE_VIEW(budgetary_line_tree), TRUE);
-	gtk_tree_selection_set_mode ( gtk_tree_view_get_selection ( GTK_TREE_VIEW(budgetary_line_tree)),
-			GTK_SELECTION_SINGLE );
-	gtk_tree_view_set_model (GTK_TREE_VIEW (budgetary_line_tree),
-			GTK_TREE_MODEL (budgetary_line_tree_model));
-	g_object_unref ( G_OBJECT(budgetary_line_tree_model));
-	g_object_set_data ( G_OBJECT(budgetary_line_tree_model), "tree-view",
+    GtkWidget *scroll_window;
+    GtkWidget *vbox;
+    GtkTreeViewColumn *column;
+    GtkCellRenderer *cell;
+    GtkTreeDragDestIface * dst_iface;
+    GtkTreeDragSourceIface * src_iface;
+    static GtkTargetEntry row_targets[] = {
+	{ "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
+    };
+
+    /* We create the gtktreeview and model early so that they can be referenced. */
+    budgetary_line_tree = gtk_tree_view_new();
+
+    /* set the color of selected row */
+    utils_set_tree_view_selection_and_text_color ( budgetary_line_tree );
+
+    budgetary_line_tree_model = gtk_tree_store_new ( META_TREE_NUM_COLUMNS,
+						     META_TREE_COLUMN_TYPES );
+
+    /* We create the main vbox */
+    vbox = gtk_vbox_new ( FALSE, 5 );
+    gtk_widget_show ( vbox );
+
+    /* on y ajoute la barre d'outils */
+    budgetary_toolbar = gtk_handle_box_new ( );
+    gtk_widget_show ( budgetary_toolbar );
+    gtk_box_pack_start ( GTK_BOX ( vbox ), budgetary_toolbar, FALSE, FALSE, 0 );
+
+    /* création de l'arbre principal */
+    scroll_window = gtk_scrolled_window_new ( NULL, NULL );
+    gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( scroll_window ),
+				     GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC );
+    gtk_scrolled_window_set_shadow_type ( GTK_SCROLLED_WINDOW(scroll_window),
+					  GTK_SHADOW_IN );
+    gtk_box_pack_start ( GTK_BOX ( vbox ), scroll_window, TRUE, TRUE, 0 );
+    gtk_widget_show ( scroll_window );
+
+    /* Create model */
+    gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE(budgetary_line_tree_model),
+                        META_TREE_TEXT_COLUMN, GTK_SORT_ASCENDING );
+    gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE(budgetary_line_tree_model),
+                        META_TREE_TEXT_COLUMN, metatree_sort_column,
+                        NULL, NULL );
+    g_object_set_data ( G_OBJECT ( budgetary_line_tree_model), "metatree-interface",
+                        budgetary_line_get_metatree_interface ( ) );
+
+    /* Create container + TreeView */
+    gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (budgetary_line_tree), TRUE);
+    gtk_tree_view_enable_model_drag_source(GTK_TREE_VIEW(budgetary_line_tree),
+					   GDK_BUTTON1_MASK, row_targets, 1,
+					   GDK_ACTION_MOVE | GDK_ACTION_COPY );
+    gtk_tree_view_enable_model_drag_dest ( GTK_TREE_VIEW(budgetary_line_tree), row_targets,
+					   1, GDK_ACTION_MOVE | GDK_ACTION_COPY );
+    gtk_tree_view_set_reorderable (GTK_TREE_VIEW(budgetary_line_tree), TRUE);
+    gtk_tree_selection_set_mode ( gtk_tree_view_get_selection ( GTK_TREE_VIEW(budgetary_line_tree)),
+				  GTK_SELECTION_SINGLE );
+    gtk_tree_view_set_model (GTK_TREE_VIEW (budgetary_line_tree),
+			     GTK_TREE_MODEL (budgetary_line_tree_model));
+    g_object_unref ( G_OBJECT(budgetary_line_tree_model));
+    g_object_set_data ( G_OBJECT(budgetary_line_tree_model), "tree-view",
 			budgetary_line_tree );
 
-	/* Make category column */
-	cell = gtk_cell_renderer_text_new ();
-	column = gtk_tree_view_column_new_with_attributes (_("Budgetary line"), cell,
-			"text", META_TREE_TEXT_COLUMN,
-			"weight", META_TREE_FONT_COLUMN,
-			"cell-background-gdk", META_TREE_BACKGROUND_COLOR,
-			NULL);
-	gtk_tree_view_append_column ( GTK_TREE_VIEW ( budgetary_line_tree ),
-			GTK_TREE_VIEW_COLUMN ( column ) );
-
-	/* Make account column */
-	cell = gtk_cell_renderer_text_new ();
-	column = gtk_tree_view_column_new_with_attributes (_("Account"), cell,
-			"text", META_TREE_ACCOUNT_COLUMN,
-			"weight", META_TREE_FONT_COLUMN,
-			"cell-background-gdk", META_TREE_BACKGROUND_COLOR,
-			NULL);
-	gtk_tree_view_append_column ( GTK_TREE_VIEW ( budgetary_line_tree ),
-			GTK_TREE_VIEW_COLUMN ( column ) );
-
-	/* Make amount column */
-	cell = gtk_cell_renderer_text_new ();
-	column = gtk_tree_view_column_new_with_attributes (_("Amount"), cell,
-			"text", META_TREE_BALANCE_COLUMN,
-			"weight", META_TREE_FONT_COLUMN,
-			"xalign", META_TREE_XALIGN_COLUMN,
-			"cell-background-gdk", META_TREE_BACKGROUND_COLOR,
-			NULL);
-	gtk_tree_view_column_set_alignment ( column, 1.0 );
-	gtk_tree_view_append_column ( GTK_TREE_VIEW ( budgetary_line_tree ),
-			GTK_TREE_VIEW_COLUMN ( column ) );
-
-	gtk_container_add ( GTK_CONTAINER ( scroll_window ), budgetary_line_tree );
-	gtk_widget_show ( budgetary_line_tree );
-
-	/* Connect to signals */
-	g_signal_connect ( G_OBJECT ( budgetary_line_tree ),
-			"row-collapsed",
-			G_CALLBACK ( division_column_collapsed ),
-			NULL );
-
-	g_signal_connect ( G_OBJECT ( budgetary_line_tree ),
-			"row-expanded",
-			G_CALLBACK ( division_column_expanded ),
-			NULL );
-
-	g_signal_connect( G_OBJECT ( budgetary_line_tree ),
-			"row-activated",
-			G_CALLBACK ( division_activated ),
-			NULL );
-
-	g_signal_connect ( G_OBJECT ( budgetary_line_tree ),
-			"button-press-event",
-			G_CALLBACK ( budgetary_line_list_button_press ),
-			NULL );
-
-	dst_iface = GTK_TREE_DRAG_DEST_GET_IFACE (budgetary_line_tree_model);
-	if ( dst_iface )
-	{
-		dst_iface -> drag_data_received = &division_drag_data_received;
-		dst_iface -> row_drop_possible = &division_row_drop_possible;
-	}
-
-	src_iface = GTK_TREE_DRAG_SOURCE_GET_IFACE (budgetary_line_tree_model);
-	if ( src_iface )
-	{
-		gtk_selection_add_target (budgetary_line_tree,
-				GDK_SELECTION_PRIMARY,
-				GDK_SELECTION_TYPE_ATOM,
-				1);
-		src_iface -> drag_data_get = &budgetary_line_drag_data_get;
-	}
-
-	g_signal_connect ( gtk_tree_view_get_selection ( GTK_TREE_VIEW(budgetary_line_tree)),
-			"changed", G_CALLBACK(metatree_selection_changed),
-			budgetary_line_tree_model );
-
-	/* création de la structure de sauvegarde de la position */
-	budgetary_hold_position = g_malloc0 ( sizeof ( struct metatree_hold_position ) );
-
-	return ( vbox );
+    /* Make category column */
+    cell = gtk_cell_renderer_text_new ();
+    column = gtk_tree_view_column_new_with_attributes (_("Budgetary line"), cell,
+						       "text", META_TREE_TEXT_COLUMN,
+						       "weight", META_TREE_FONT_COLUMN,
+                               "cell-background-gdk", META_TREE_BACKGROUND_COLOR,
+						       NULL);
+    gtk_tree_view_append_column ( GTK_TREE_VIEW ( budgetary_line_tree ),
+				  GTK_TREE_VIEW_COLUMN ( column ) );
+
+    /* Make account column */
+    cell = gtk_cell_renderer_text_new ();
+    column = gtk_tree_view_column_new_with_attributes (_("Account"), cell,
+						       "text", META_TREE_ACCOUNT_COLUMN,
+						       "weight", META_TREE_FONT_COLUMN,
+                               "cell-background-gdk", META_TREE_BACKGROUND_COLOR,
+						       NULL);
+    gtk_tree_view_append_column ( GTK_TREE_VIEW ( budgetary_line_tree ),
+				  GTK_TREE_VIEW_COLUMN ( column ) );
+
+    /* Make amount column */
+    cell = gtk_cell_renderer_text_new ();
+    column = gtk_tree_view_column_new_with_attributes (_("Amount"), cell,
+						       "text", META_TREE_BALANCE_COLUMN,
+						       "weight", META_TREE_FONT_COLUMN,
+						       "xalign", META_TREE_XALIGN_COLUMN,
+                               "cell-background-gdk", META_TREE_BACKGROUND_COLOR,
+						       NULL);
+    gtk_tree_view_column_set_alignment ( column, 1.0 );
+    gtk_tree_view_append_column ( GTK_TREE_VIEW ( budgetary_line_tree ),
+				  GTK_TREE_VIEW_COLUMN ( column ) );
+
+    gtk_container_add ( GTK_CONTAINER ( scroll_window ), budgetary_line_tree );
+    gtk_widget_show ( budgetary_line_tree );
+
+    /* Connect to signals */
+    g_signal_connect ( G_OBJECT ( budgetary_line_tree ),
+                        "row-collapsed",
+                        G_CALLBACK ( division_column_collapsed ),
+                        NULL );
+
+    g_signal_connect ( G_OBJECT ( budgetary_line_tree ),
+                        "row-expanded",
+                        G_CALLBACK ( division_column_expanded ),
+                        NULL );
+
+    g_signal_connect( G_OBJECT ( budgetary_line_tree ),
+                        "row-activated",
+                        G_CALLBACK ( division_activated ),
+                        NULL );
+
+    g_signal_connect ( G_OBJECT ( budgetary_line_tree ),
+                        "button-press-event",
+                        G_CALLBACK ( budgetary_line_list_button_press ),
+                        NULL );
+
+    dst_iface = GTK_TREE_DRAG_DEST_GET_IFACE (budgetary_line_tree_model);
+    if ( dst_iface )
+    {
+	dst_iface -> drag_data_received = &division_drag_data_received;
+	dst_iface -> row_drop_possible = &division_row_drop_possible;
+    }
+
+    src_iface = GTK_TREE_DRAG_SOURCE_GET_IFACE (budgetary_line_tree_model);
+    if ( src_iface )
+    {
+	gtk_selection_add_target (budgetary_line_tree,
+				  GDK_SELECTION_PRIMARY,
+				  GDK_SELECTION_TYPE_ATOM,
+				  1);
+	src_iface -> drag_data_get = &budgetary_line_drag_data_get;
+    }
+
+    g_signal_connect ( gtk_tree_view_get_selection ( GTK_TREE_VIEW(budgetary_line_tree)),
+		       "changed", G_CALLBACK(metatree_selection_changed),
+		       budgetary_line_tree_model );
+
+    /* création de la structure de sauvegarde de la position */
+    budgetary_hold_position = g_malloc0 ( sizeof ( struct metatree_hold_position ) );
+
+    return ( vbox );
 }
 /* **************************************************************************************************** */
 
@@ -254,107 +256,107 @@ GtkWidget *budgetary_lines_create_list ( void )
  * */
 void budgetary_lines_fill_list ( void )
 {
-	GSList *budget_list;
-	GtkTreeIter iter_budgetary_line, iter_sub_budgetary_line;
-	GtkTreeSelection *selection;
+    GSList *budget_list;
+    GtkTreeIter iter_budgetary_line, iter_sub_budgetary_line;
+    GtkTreeSelection *selection;
 
-	devel_debug (NULL);
+    devel_debug (NULL);
 
-	/** First, remove previous tree */
-	gtk_tree_store_clear ( GTK_TREE_STORE (budgetary_line_tree_model));
+    /** First, remove previous tree */
+    gtk_tree_store_clear ( GTK_TREE_STORE (budgetary_line_tree_model));
 
-	/* Compute budget balances. */
-	gsb_data_budget_update_counters ();
+    /* Compute budget balances. */
+    gsb_data_budget_update_counters ();
 
-	/** Then, populate tree with budgetary lines. */
-	budget_list = gsb_data_budget_get_budgets_list ();
+    /** Then, populate tree with budgetary lines. */
+    budget_list = gsb_data_budget_get_budgets_list ();
+    
+    /* add first the empty budget */
+    budget_list = g_slist_prepend ( budget_list,
+				    gsb_data_budget_get_empty_budget ());
 
-	/* add first the empty budget */
-	budget_list = g_slist_prepend ( budget_list,
-			gsb_data_budget_get_empty_budget ());
+    while ( budget_list )
+    {
+	gint budget_number;
 
-	while ( budget_list )
-	{
-		gint budget_number;
-
-		budget_number = gsb_data_budget_get_no_budget (budget_list -> data);
-
-		gtk_tree_store_append ( GTK_TREE_STORE ( budgetary_line_tree_model ), &iter_budgetary_line, NULL);
-		fill_division_row ( GTK_TREE_MODEL ( budgetary_line_tree_model ),
-				budgetary_line_get_metatree_interface ( ),
-				&iter_budgetary_line,
-				budget_number );
-
-		/** Each budget has sub budgetary lines. */
-		if ( budget_number )
-		{
-			GSList *sub_budget_list;
-
-			sub_budget_list = gsb_data_budget_get_sub_budget_list ( budget_number );
-
-			while ( sub_budget_list )
-			{
-				gint sub_budget_number;
-
-				sub_budget_number = gsb_data_budget_get_no_sub_budget (sub_budget_list -> data);
-
-				gtk_tree_store_append ( GTK_TREE_STORE (budgetary_line_tree_model),
-						&iter_sub_budgetary_line, &iter_budgetary_line);
-				fill_sub_division_row ( GTK_TREE_MODEL ( budgetary_line_tree_model ),
-						budgetary_line_get_metatree_interface ( ),
-						&iter_sub_budgetary_line,
-						budget_number,
-						sub_budget_number );
-
-				sub_budget_list = sub_budget_list -> next;
-			}
-		}
-
-		/* add the no-sub-budget only if budget exists */
-		if (budget_number)
-		{
-			gtk_tree_store_append ( GTK_TREE_STORE ( budgetary_line_tree_model ),
-					&iter_sub_budgetary_line,
-					&iter_budgetary_line );
-			fill_sub_division_row ( GTK_TREE_MODEL(budgetary_line_tree_model),
-					budgetary_line_get_metatree_interface ( ),
-					&iter_sub_budgetary_line,
-					budget_number,
-					0 );
-		}
-		budget_list = budget_list -> next;
-	}
-	/* replace le curseur sur la division, sub_division ou opération initiale */
-	if ( budgetary_hold_position -> path )
+	budget_number = gsb_data_budget_get_no_budget (budget_list -> data);
+
+	gtk_tree_store_append ( GTK_TREE_STORE ( budgetary_line_tree_model ), &iter_budgetary_line, NULL);
+	fill_division_row ( GTK_TREE_MODEL ( budgetary_line_tree_model ),
+                        budgetary_line_get_metatree_interface ( ),
+                        &iter_budgetary_line,
+                        budget_number );
+
+	/** Each budget has sub budgetary lines. */
+	if ( budget_number )
 	{
-		if ( budgetary_hold_position -> expand )
-		{
-			GtkTreePath *ancestor;
-
-			ancestor = gtk_tree_path_copy ( budgetary_hold_position -> path );
-			gtk_tree_path_up ( ancestor );
-			gtk_tree_view_expand_to_path ( GTK_TREE_VIEW ( budgetary_line_tree ), ancestor );
-			gtk_tree_path_free (ancestor );
-		}
-		/* on colorise les lignes du tree_view */
-		utils_set_tree_view_background_color ( budgetary_line_tree, META_TREE_BACKGROUND_COLOR );
-		selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( budgetary_line_tree ) );
-		gtk_tree_selection_select_path ( selection, budgetary_hold_position -> path );
-		gtk_tree_view_scroll_to_cell ( GTK_TREE_VIEW ( budgetary_line_tree ),
-				budgetary_hold_position -> path,
-				NULL, TRUE, 0.5, 0.5 );
+	    GSList *sub_budget_list;
+
+	    sub_budget_list = gsb_data_budget_get_sub_budget_list ( budget_number );
+
+	    while ( sub_budget_list )
+	    {
+		gint sub_budget_number;
+
+		sub_budget_number = gsb_data_budget_get_no_sub_budget (sub_budget_list -> data);
+
+		gtk_tree_store_append ( GTK_TREE_STORE (budgetary_line_tree_model),
+				       &iter_sub_budgetary_line, &iter_budgetary_line);
+		fill_sub_division_row ( GTK_TREE_MODEL ( budgetary_line_tree_model ),
+                        budgetary_line_get_metatree_interface ( ),
+                        &iter_sub_budgetary_line,
+                        budget_number,
+                        sub_budget_number );
+
+		sub_budget_list = sub_budget_list -> next;
+	    }
 	}
-	else
+
+	/* add the no-sub-budget only if budget exists */
+	if (budget_number)
 	{
-		gchar *title;
-
-		/* on colorise les lignes du tree_view */
-		utils_set_tree_view_background_color ( budgetary_line_tree, META_TREE_BACKGROUND_COLOR );
-		title = g_strdup(_("Budgetary lines"));
-		gsb_gui_headings_update_title ( title );
-		g_free ( title );
-		gsb_gui_headings_update_suffix ( "" );
+	    gtk_tree_store_append ( GTK_TREE_STORE ( budgetary_line_tree_model ),
+                        &iter_sub_budgetary_line,
+                        &iter_budgetary_line );
+	    fill_sub_division_row ( GTK_TREE_MODEL(budgetary_line_tree_model),
+                        budgetary_line_get_metatree_interface ( ),
+                        &iter_sub_budgetary_line,
+                        budget_number,
+                        0 );
 	}
+	budget_list = budget_list -> next;
+    }
+    /* replace le curseur sur la division, sub_division ou opération initiale */
+    if ( budgetary_hold_position -> path )
+    {
+        if ( budgetary_hold_position -> expand )
+        {
+            GtkTreePath *ancestor;
+
+            ancestor = gtk_tree_path_copy ( budgetary_hold_position -> path );
+            gtk_tree_path_up ( ancestor );
+            gtk_tree_view_expand_to_path ( GTK_TREE_VIEW ( budgetary_line_tree ), ancestor );
+            gtk_tree_path_free (ancestor );
+        }
+        /* on colorise les lignes du tree_view */
+        utils_set_tree_view_background_color ( budgetary_line_tree, META_TREE_BACKGROUND_COLOR );
+        selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+        gtk_tree_selection_select_path ( selection, budgetary_hold_position -> path );
+        gtk_tree_view_scroll_to_cell ( GTK_TREE_VIEW ( budgetary_line_tree ),
+                        budgetary_hold_position -> path,
+                        NULL, TRUE, 0.5, 0.5 );
+    }
+    else
+    {
+        gchar *title;
+
+        /* on colorise les lignes du tree_view */
+        utils_set_tree_view_background_color ( budgetary_line_tree, META_TREE_BACKGROUND_COLOR );
+	    title = g_strdup(_("Budgetary lines"));
+        gsb_gui_headings_update_title ( title );
+        g_free ( title );
+        gsb_gui_headings_update_suffix ( "" );
+    }
 }
 
 
@@ -371,15 +373,15 @@ void budgetary_lines_fill_list ( void )
  * \return FALSE, to allow future processing by the callback chain.
  */
 gboolean budgetary_line_drag_data_get ( GtkTreeDragSource * drag_source, GtkTreePath * path,
-		GtkSelectionData * selection_data )
+					GtkSelectionData * selection_data )
 {
-	if ( path )
-	{
-		gtk_tree_set_row_drag_data (selection_data,
-				GTK_TREE_MODEL(budgetary_line_tree_model), path);
-	}
+    if ( path )
+    {
+	gtk_tree_set_row_drag_data (selection_data,
+				    GTK_TREE_MODEL(budgetary_line_tree_model), path);
+    }
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -392,12 +394,12 @@ gboolean budgetary_line_drag_data_get ( GtkTreeDragSource * drag_source, GtkTree
  * */
 gboolean gsb_budget_update_combofix ( gboolean force )
 {
-	if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_BUDGET ) || force )
-		gtk_combofix_set_list ( GTK_COMBOFIX ( gsb_form_widget_get_widget (
-				TRANSACTION_FORM_BUDGET ) ),
-				gsb_data_budget_get_name_list ( TRUE, TRUE ) );
+    if ( gsb_data_form_check_for_value ( TRANSACTION_FORM_BUDGET ) || force )
+        gtk_combofix_set_list ( GTK_COMBOFIX ( gsb_form_widget_get_widget (
+                        TRANSACTION_FORM_BUDGET ) ),
+                        gsb_data_budget_get_name_list ( TRUE, TRUE ) );
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -407,45 +409,45 @@ gboolean gsb_budget_update_combofix ( gboolean force )
  */
 void budgetary_lines_exporter_list ( void )
 {
-	GtkWidget *dialog;
-	gint resultat;
-	gchar *nom_ib;
-
-	dialog = gtk_file_chooser_dialog_new ( _("Export the budgetary lines"),
-			GTK_WINDOW ( run.window ),
-			GTK_FILE_CHOOSER_ACTION_SAVE,
-			GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-			GTK_STOCK_SAVE, GTK_RESPONSE_OK,
-			NULL);
-
-	gtk_file_chooser_set_current_name ( GTK_FILE_CHOOSER ( dialog ),  _("Budgetary-lines.igsb"));
-	gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER ( dialog ), gsb_file_get_last_path () );
-	gtk_file_chooser_set_do_overwrite_confirmation ( GTK_FILE_CHOOSER ( dialog ), TRUE);
-	gtk_window_set_position ( GTK_WINDOW ( dialog ), GTK_WIN_POS_CENTER_ON_PARENT );
-
-	resultat = gtk_dialog_run ( GTK_DIALOG ( dialog ));
-
-	switch ( resultat )
-	{
+    GtkWidget *dialog;
+    gint resultat;
+    gchar *nom_ib;
+
+    dialog = gtk_file_chooser_dialog_new ( _("Export the budgetary lines"),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
+					   GTK_FILE_CHOOSER_ACTION_SAVE,
+					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+					   GTK_STOCK_SAVE, GTK_RESPONSE_OK,
+					   NULL);
+
+    gtk_file_chooser_set_current_name ( GTK_FILE_CHOOSER ( dialog ),  _("Budgetary-lines.igsb"));
+    gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER ( dialog ), gsb_file_get_last_path () );
+    gtk_file_chooser_set_do_overwrite_confirmation ( GTK_FILE_CHOOSER ( dialog ), TRUE);
+    gtk_window_set_position ( GTK_WINDOW ( dialog ), GTK_WIN_POS_CENTER_ON_PARENT );
+
+    resultat = gtk_dialog_run ( GTK_DIALOG ( dialog ));
+
+    switch ( resultat )
+    {
 	case GTK_RESPONSE_OK :
-		nom_ib = file_selection_get_filename ( GTK_FILE_CHOOSER ( dialog ));
-		gsb_file_update_last_path (file_selection_get_last_directory (GTK_FILE_CHOOSER (dialog), TRUE));
-		gtk_widget_destroy ( GTK_WIDGET ( dialog ));
+	    nom_ib = file_selection_get_filename ( GTK_FILE_CHOOSER ( dialog ));
+	    gsb_file_update_last_path (file_selection_get_last_directory (GTK_FILE_CHOOSER (dialog), TRUE));
+	    gtk_widget_destroy ( GTK_WIDGET ( dialog ));
 
-		/* vérification que c'est possible est faite par la boite de dialogue */
+	    /* vérification que c'est possible est faite par la boite de dialogue */
 
-		if ( !gsb_file_others_save_budget ( nom_ib ))
-		{
-			dialogue_error ( _("Cannot save file.") );
-			return;
-		}
+	    if ( !gsb_file_others_save_budget ( nom_ib ))
+	    {
+		dialogue_error ( _("Cannot save file.") );
+		return;
+	    }
 
-		break;
+	    break;
 
 	default :
-		gtk_widget_destroy ( GTK_WIDGET ( dialog ));
-		return;
-	}
+	    gtk_widget_destroy ( GTK_WIDGET ( dialog ));
+	    return;
+    }
 }
 /* **************************************************************************************************** */
 
@@ -454,92 +456,92 @@ void budgetary_lines_exporter_list ( void )
 /* **************************************************************************************************** */
 void budgetary_lines_importer_list ( void )
 {
-	GtkWidget *dialog;
-	gint resultat;
-	gchar *budget_name;
-	gint last_transaction_number;
-	GtkFileFilter * filter;
-
-	dialog = gtk_file_chooser_dialog_new ( _("Import budgetary lines"),
-			GTK_WINDOW ( run.window ),
-			GTK_FILE_CHOOSER_ACTION_OPEN,
-			GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
-			GTK_STOCK_OPEN, GTK_RESPONSE_OK,
-			NULL);
-
-	gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER ( dialog ), gsb_file_get_last_path () );
-	gtk_window_set_position ( GTK_WINDOW ( dialog ), GTK_WIN_POS_CENTER_ON_PARENT );
-
-	filter = gtk_file_filter_new ();
-	gtk_file_filter_set_name ( filter, _("Grisbi budgetary lines files (*.igsb)") );
-	gtk_file_filter_add_pattern ( filter, "*.igsb" );
-	gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
-	gtk_file_chooser_set_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
-
-	filter = gtk_file_filter_new ();
-	gtk_file_filter_set_name ( filter, _("Grisbi category files (*.cgsb)") );
-	gtk_file_filter_add_pattern ( filter, "*.cgsb" );
-	gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
-
-	filter = gtk_file_filter_new ();
-	gtk_file_filter_set_name ( filter, _("All files") );
-	gtk_file_filter_add_pattern ( filter, "*" );
-	gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
-
-	resultat = gtk_dialog_run ( GTK_DIALOG ( dialog ));
-
-	if ( resultat != GTK_RESPONSE_OK  )
-	{
-		gtk_widget_destroy ( dialog );
-		return;
-	}
-
-	budget_name = file_selection_get_filename ( GTK_FILE_CHOOSER ( dialog ));
-	gsb_file_update_last_path (file_selection_get_last_directory (GTK_FILE_CHOOSER (dialog), TRUE));
-	gtk_widget_destroy ( GTK_WIDGET ( dialog ));
-
-	last_transaction_number = gsb_data_transaction_get_last_number();
-
-	/* on permet de remplacer/fusionner la liste */
-
-	dialog = dialogue_special_no_run ( GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
-			make_hint ( _("Merge imported budgetary lines with existing?"),
-					( last_transaction_number ?
-							_("File already contains budgetary lines.  If you decide to continue, existing budgetary lines will be merged with imported ones.") :
-							_("File does not contain budgetary lines.  "
-									"If you decide to continue, existing budgetary lines will be merged with imported ones.  "
-									"Once performed, there is no undo for this.\n"
-									"You may also decide to replace existing budgetary lines with imported ones." ) ) ) );
-
-	if ( !last_transaction_number)
-		gtk_dialog_add_buttons ( GTK_DIALOG(dialog),
-				_("Replace existing"), 2,
-				NULL );
-
+    GtkWidget *dialog;
+    gint resultat;
+    gchar *budget_name;
+    gint last_transaction_number;
+    GtkFileFilter * filter;
+
+    dialog = gtk_file_chooser_dialog_new ( _("Import budgetary lines"),
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
+					   GTK_FILE_CHOOSER_ACTION_OPEN,
+					   GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+					   GTK_STOCK_OPEN, GTK_RESPONSE_OK,
+					   NULL);
+
+    gtk_file_chooser_set_current_folder ( GTK_FILE_CHOOSER ( dialog ), gsb_file_get_last_path () );
+    gtk_window_set_position ( GTK_WINDOW ( dialog ), GTK_WIN_POS_CENTER_ON_PARENT );
+
+    filter = gtk_file_filter_new ();
+    gtk_file_filter_set_name ( filter, _("Grisbi budgetary lines files (*.igsb)") );
+    gtk_file_filter_add_pattern ( filter, "*.igsb" );
+    gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
+    gtk_file_chooser_set_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
+
+    filter = gtk_file_filter_new ();
+    gtk_file_filter_set_name ( filter, _("Grisbi category files (*.cgsb)") );
+    gtk_file_filter_add_pattern ( filter, "*.cgsb" );
+    gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
+
+    filter = gtk_file_filter_new ();
+    gtk_file_filter_set_name ( filter, _("All files") );
+    gtk_file_filter_add_pattern ( filter, "*" );
+    gtk_file_chooser_add_filter ( GTK_FILE_CHOOSER ( dialog ), filter );
+
+    resultat = gtk_dialog_run ( GTK_DIALOG ( dialog ));
+
+    if ( resultat != GTK_RESPONSE_OK  )
+    {
+	gtk_widget_destroy ( dialog );
+	return;
+    }
+
+    budget_name = file_selection_get_filename ( GTK_FILE_CHOOSER ( dialog ));
+    gsb_file_update_last_path (file_selection_get_last_directory (GTK_FILE_CHOOSER (dialog), TRUE));
+    gtk_widget_destroy ( GTK_WIDGET ( dialog ));
+
+    last_transaction_number = gsb_data_transaction_get_last_number();
+
+    /* on permet de remplacer/fusionner la liste */
+
+    dialog = dialogue_special_no_run ( GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
+				       make_hint ( _("Merge imported budgetary lines with existing?"),
+						   ( last_transaction_number ?
+						     _("File already contains budgetary lines.  If you decide to continue, existing budgetary lines will be merged with imported ones.") :
+						     _("File does not contain budgetary lines.  "
+						       "If you decide to continue, existing budgetary lines will be merged with imported ones.  "
+						       "Once performed, there is no undo for this.\n"
+						       "You may also decide to replace existing budgetary lines with imported ones." ) ) ) );
+
+    if ( !last_transaction_number)
 	gtk_dialog_add_buttons ( GTK_DIALOG(dialog),
-			GTK_STOCK_CANCEL, 0,
-			GTK_STOCK_OK, 1,
-			NULL );
-
-	resultat = gtk_dialog_run ( GTK_DIALOG ( dialog ));
-	gtk_widget_destroy ( GTK_WIDGET ( dialog ));
-
-	switch ( resultat )
-	{
-	case 2 :
-		/* we want to replace the list */
-		if ( !last_transaction_number )
-			gsb_data_budget_init_variables ();
-
-	case 1 :
-		if ( g_str_has_suffix ( budget_name, ".cgsb" ) )
-			gsb_file_others_load_budget_from_category ( budget_name );
-		else
-			gsb_file_others_load_budget ( budget_name );
-		break;
+				 _("Replace existing"), 2,
+				 NULL );
+
+    gtk_dialog_add_buttons ( GTK_DIALOG(dialog),
+			     GTK_STOCK_CANCEL, 0,
+			     GTK_STOCK_OK, 1,
+			     NULL );
+
+    resultat = gtk_dialog_run ( GTK_DIALOG ( dialog ));
+    gtk_widget_destroy ( GTK_WIDGET ( dialog ));
+
+    switch ( resultat )
+    {
+	    case 2 :
+            /* we want to replace the list */
+            if ( !last_transaction_number )
+                gsb_data_budget_init_variables ();
+
+        case 1 :
+            if ( g_str_has_suffix ( budget_name, ".cgsb" ) )
+                gsb_file_others_load_budget_from_category ( budget_name );
+            else
+                gsb_file_others_load_budget ( budget_name );
+	    break;
 	default :
-		return;
-	}
+	    return;
+    }
 }
 
 
@@ -553,92 +555,95 @@ void budgetary_lines_importer_list ( void )
  */
 GtkWidget *creation_barre_outils_ib ( void )
 {
-	GtkWidget *hbox, *button;
-
-	/* Hbox */
-	hbox = gtk_hbox_new ( FALSE, 0 );
-
-	/* New budgetary line button */
-	button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
-			_("New\nbudgetary line"), "new-ib.png",
-			G_CALLBACK ( appui_sur_ajout_imputation ),
-			budgetary_line_tree_model );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Create a new budgetary line") );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-	g_object_set_data ( G_OBJECT ( button ), "type", GINT_TO_POINTER (1) );
-
-	/* New sub budgetary line button */
-	button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
-			_("New sub\nbudgetary line"),
-			"new-sub-ib.png",
-			G_CALLBACK ( appui_sur_ajout_imputation ),
-			budgetary_line_tree_model );
-	metatree_register_widget_as_linked ( GTK_TREE_MODEL ( budgetary_line_tree_model ), button, "selection" );
-	metatree_register_widget_as_linked ( GTK_TREE_MODEL ( budgetary_line_tree_model ), button, "sub-division" );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Create a new sub-budgetary line") );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-	g_object_set_data ( G_OBJECT ( button ), "type", GINT_TO_POINTER (2) );
-
-	/* Import button */
-	button = gsb_automem_stock_button_new ( etat.display_toolbar,
-			GTK_STOCK_OPEN,
-			_("Import"),
-			G_CALLBACK ( budgetary_lines_importer_list ),
-			NULL );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ),
-			_("Import a Grisbi budgetary line file (.igsb)"
-					" or create from a list of categories (.cgsb)" ) );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-
-	/* Export button */
-	button = gsb_automem_stock_button_new ( etat.display_toolbar,
-			GTK_STOCK_SAVE,
-			_("Export"),
-			G_CALLBACK ( budgetary_lines_exporter_list ),
-			NULL );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ),
-			_("Export a Grisbi budgetary line file (.igsb)") );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-
-	/* Delete button */
-	button = gsb_automem_stock_button_new ( etat.display_toolbar,
-			GTK_STOCK_DELETE, _("Delete"),
-			G_CALLBACK ( supprimer_division ),
-			budgetary_line_tree );
-	metatree_register_widget_as_linked ( GTK_TREE_MODEL ( budgetary_line_tree_model ), button, "selection" );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Delete selected budgetary line") );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-
-	/* Properties button */
-	button = gsb_automem_stock_button_new ( etat.display_toolbar,
-			GTK_STOCK_EDIT, _("Edit"),
-			G_CALLBACK ( edit_budgetary_line ),
-			budgetary_line_tree );
-	metatree_register_widget_as_linked ( GTK_TREE_MODEL(budgetary_line_tree_model), button, "selection" );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Edit selected budgetary line") );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-
-	/* View button */
-	button = gsb_automem_stock_button_menu_new ( etat.display_toolbar,
-			GTK_STOCK_SELECT_COLOR,
-			_("View"),
-			G_CALLBACK(popup_budgetary_line_view_mode_menu),
-			NULL );
-
-	gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Change display mode") );
-	gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
-
-	gtk_widget_show_all ( hbox );
-
-	metatree_set_linked_widgets_sensitive ( GTK_TREE_MODEL ( budgetary_line_tree_model ), FALSE, "selection" );
-
-	return ( hbox );
+    GtkWidget *hbox, *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
+    /* Hbox */
+    hbox = gtk_hbox_new ( FALSE, 0 );
+
+    /* New budgetary line button */
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
+                                _("New\nbudgetary line"), "new-ib.png",
+                                G_CALLBACK ( appui_sur_ajout_imputation ),
+                                budgetary_line_tree_model );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Create a new budgetary line") );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+    g_object_set_data ( G_OBJECT ( button ), "type", GINT_TO_POINTER (1) );
+
+    /* New sub budgetary line button */
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
+                                _("New sub\nbudgetary line"),
+                                "new-sub-ib.png",
+                                G_CALLBACK ( appui_sur_ajout_imputation ),
+                                budgetary_line_tree_model );
+    metatree_register_widget_as_linked ( GTK_TREE_MODEL ( budgetary_line_tree_model ), button, "selection" );
+    metatree_register_widget_as_linked ( GTK_TREE_MODEL ( budgetary_line_tree_model ), button, "sub-division" );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Create a new sub-budgetary line") );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+    g_object_set_data ( G_OBJECT ( button ), "type", GINT_TO_POINTER (2) );
+
+    /* Import button */
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
+                                GTK_STOCK_OPEN,
+                                _("Import"),
+                                G_CALLBACK ( budgetary_lines_importer_list ),
+                                NULL );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ),
+                        _("Import a Grisbi budgetary line file (.igsb)"
+                        " or create from a list of categories (.cgsb)" ) );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+
+    /* Export button */
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
+                                GTK_STOCK_SAVE,
+                                _("Export"),
+                                G_CALLBACK ( budgetary_lines_exporter_list ),
+                                NULL );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ),
+                        _("Export a Grisbi budgetary line file (.igsb)") );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+
+    /* Delete button */
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
+                                GTK_STOCK_DELETE, _("Delete"),
+                                G_CALLBACK ( supprimer_division ),
+                                budgetary_line_tree );
+    metatree_register_widget_as_linked ( GTK_TREE_MODEL ( budgetary_line_tree_model ), button, "selection" );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Delete selected budgetary line") );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+
+    /* Properties button */
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
+                                GTK_STOCK_EDIT, _("Edit"),
+                                G_CALLBACK ( edit_budgetary_line ),
+                                budgetary_line_tree );
+    metatree_register_widget_as_linked ( GTK_TREE_MODEL(budgetary_line_tree_model), button, "selection" );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Edit selected budgetary line") );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+
+    /* View button */
+    button = gsb_automem_stock_button_menu_new ( conf->display_toolbar,
+                                GTK_STOCK_SELECT_COLOR,
+                                _("View"),
+                                G_CALLBACK(popup_budgetary_line_view_mode_menu),
+                                NULL );
+
+    gtk_widget_set_tooltip_text ( GTK_WIDGET ( button ), _("Change display mode") );
+    gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
+
+    gtk_widget_show_all ( hbox );
+
+    metatree_set_linked_widgets_sensitive ( GTK_TREE_MODEL ( budgetary_line_tree_model ), FALSE, "selection" );
+
+    return ( hbox );
 }
 
 
@@ -649,18 +654,18 @@ GtkWidget *creation_barre_outils_ib ( void )
  */
 void budgetary_lines_update_toolbar_list ( void )
 {
-	GList *list = NULL;
+    GList *list = NULL;
 
-	list = gtk_container_get_children ( GTK_CONTAINER ( budgetary_toolbar ) );
+    list = gtk_container_get_children ( GTK_CONTAINER ( budgetary_toolbar ) );
 
-	if ( list )
-	{
-		gtk_container_remove ( GTK_CONTAINER ( budgetary_toolbar ),
-				GTK_WIDGET ( list -> data ) );
-		g_list_free ( list );
-	}
+    if ( list )
+    {
+        gtk_container_remove ( GTK_CONTAINER ( budgetary_toolbar ),
+                               GTK_WIDGET ( list -> data ) );
+        g_list_free ( list );
+    }
 
-	gtk_container_add ( GTK_CONTAINER ( budgetary_toolbar ), creation_barre_outils_ib () );
+    gtk_container_add ( GTK_CONTAINER ( budgetary_toolbar ), creation_barre_outils_ib () );
 }
 
 
@@ -674,35 +679,35 @@ void budgetary_lines_update_toolbar_list ( void )
  */
 gboolean popup_budgetary_line_view_mode_menu ( GtkWidget * button )
 {
-	GtkWidget *menu, *menu_item;
+    GtkWidget *menu, *menu_item;
 
-	menu = gtk_menu_new ();
+    menu = gtk_menu_new ();
 
-	/* Edit transaction */
-	menu_item = gtk_image_menu_item_new_with_label ( _("Budgetary line view") );
-	g_signal_connect ( G_OBJECT(menu_item), "activate",
-			G_CALLBACK(expand_arbre_division), (gpointer) 0 );
-	g_object_set_data ( G_OBJECT(menu_item), "tree-view", budgetary_line_tree );
-	gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
+    /* Edit transaction */
+    menu_item = gtk_image_menu_item_new_with_label ( _("Budgetary line view") );
+    g_signal_connect ( G_OBJECT(menu_item), "activate",
+		       G_CALLBACK(expand_arbre_division), (gpointer) 0 );
+    g_object_set_data ( G_OBJECT(menu_item), "tree-view", budgetary_line_tree );
+    gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
 
-	menu_item = gtk_image_menu_item_new_with_label ( _("Sub-budgetary line view") );
-	g_signal_connect ( G_OBJECT(menu_item), "activate",
-			G_CALLBACK(expand_arbre_division), (gpointer) 1 );
-	g_object_set_data ( G_OBJECT(menu_item), "tree-view", budgetary_line_tree );
-	gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
+    menu_item = gtk_image_menu_item_new_with_label ( _("Sub-budgetary line view") );
+    g_signal_connect ( G_OBJECT(menu_item), "activate",
+		       G_CALLBACK(expand_arbre_division), (gpointer) 1 );
+    g_object_set_data ( G_OBJECT(menu_item), "tree-view", budgetary_line_tree );
+    gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
 
-	menu_item = gtk_image_menu_item_new_with_label ( _("Complete view") );
-	g_signal_connect ( G_OBJECT(menu_item), "activate",
-			G_CALLBACK(expand_arbre_division), (gpointer) 2 );
-	g_object_set_data ( G_OBJECT(menu_item), "tree-view", budgetary_line_tree );
-	gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
+    menu_item = gtk_image_menu_item_new_with_label ( _("Complete view") );
+    g_signal_connect ( G_OBJECT(menu_item), "activate",
+		       G_CALLBACK(expand_arbre_division), (gpointer) 2 );
+    g_object_set_data ( G_OBJECT(menu_item), "tree-view", budgetary_line_tree );
+    gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
 
-	gtk_widget_show_all ( menu );
+    gtk_widget_show_all ( menu );
 
-	gtk_menu_popup ( GTK_MENU(menu), NULL, button, set_popup_position, button, 1,
-			gtk_get_current_event_time());
+    gtk_menu_popup ( GTK_MENU(menu), NULL, button, set_popup_position, button, 1,
+		     gtk_get_current_event_time());
 
-	return FALSE;
+    return FALSE;
 }
 
 
@@ -713,175 +718,183 @@ gboolean popup_budgetary_line_view_mode_menu ( GtkWidget * button )
  */
 gboolean edit_budgetary_line ( GtkTreeView * view )
 {
-	GtkWidget * dialog, *label, *entry;
-	GtkTreeSelection * selection;
-	GtkTreeModel * model;
-	GtkTreeIter iter;
-	gint budget_number = -1, sub_budget_number = -1;
-	gchar * title;
-	GtkTreeIter *div_iter;
-
-	static GtkBuilder *widget_builder = NULL;
-
-	selection = gtk_tree_view_get_selection ( view );
-	if ( selection && gtk_tree_selection_get_selected(selection, &model, &iter))
-	{
-		gtk_tree_model_get ( model, &iter,
-				META_TREE_NO_DIV_COLUMN, &budget_number,
-				META_TREE_NO_SUB_DIV_COLUMN, &sub_budget_number,
-				-1 );
-	}
-
-	if ( !selection || budget_number <= 0 )
-		return FALSE;
-
-	if ( sub_budget_number > 0 )
-		title = g_strdup_printf ( _("Properties for %s"),
-				gsb_data_budget_get_sub_budget_name ( budget_number,
-						sub_budget_number,
-						_("No sub-budget defined" )));
-	else
-		title = g_strdup_printf ( _("Properties for %s"),
-				gsb_data_budget_get_name ( budget_number,
-						0,
-						_("No budget defined") ));
-
-	/* New GtkBuilder Creation*/
-	widget_builder = gtk_builder_new ( );
-
-	if ( widget_builder == NULL )
-		return NULL;
-
-
-	if ( sub_budget_number > 0 )
-	{
-		/* widget paddingbox XML loading */
-		if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "dlg_edit_without_radio.ui" ) )
-			return NULL;
-
-		entry = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "entry" ));
-
-		gtk_entry_set_text ( GTK_ENTRY ( entry ),
-				gsb_data_budget_get_sub_budget_name ( budget_number,
-						sub_budget_number,
-						NULL ) );
-	}
-	else
-	{
-		/* widget paddingbox XML loading */
-		if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "dlg_edit_with_radio.ui" ) )
-			return NULL;
-
-		entry = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "entry" ));
-
-		gtk_entry_set_text ( GTK_ENTRY ( entry ),
-				gsb_data_budget_get_name ( budget_number, 0, NULL ) );
-
-		if (gsb_data_budget_get_type (budget_number))
-			gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( gtk_builder_get_object ( widget_builder, "Debit_radiobutton" ) ), TRUE );
-		else
-			gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON ( gtk_builder_get_object ( widget_builder, "Credit_radiobutton" ) ), TRUE );
-
-		g_object_set_data (G_OBJECT (gtk_builder_get_object ( widget_builder, "Debit_radiobutton" )),
-				"number_for_func", GINT_TO_POINTER (budget_number));
-
-		g_signal_connect ( G_OBJECT (gtk_builder_get_object ( widget_builder, "Debit_radiobutton" )), "toggled",
-				G_CALLBACK (gsb_autofunc_checkbutton_changed), G_CALLBACK (gsb_data_budget_set_type));
-
-	}
-
-	/* Get the needed widgets*/
-	dialog = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "dialog_edit_category" ));
-	label = GTK_WIDGET (gtk_builder_get_object ( widget_builder, "label" ));
-
-	//Set Title
-	gtk_label_set_label(GTK_LABEL(label),title);
-	g_free ( title );
-
-	gtk_widget_show_all ( dialog );
+    GtkWidget * dialog, *paddingbox, *table, *label, *entry, *hbox, *radiogroup;
+    GtkTreeSelection * selection;
+    GtkTreeModel * model;
+    GtkTreeIter iter;
+    gint budget_number = -1, sub_budget_number = -1;
+    gchar * title;
+    GtkTreeIter *div_iter;
+
+    selection = gtk_tree_view_get_selection ( view );
+    if ( selection && gtk_tree_selection_get_selected(selection, &model, &iter))
+    {
+	gtk_tree_model_get ( model, &iter,
+			     META_TREE_NO_DIV_COLUMN, &budget_number,
+			     META_TREE_NO_SUB_DIV_COLUMN, &sub_budget_number,
+			     -1 );
+    }
+
+    if ( !selection || budget_number <= 0 )
+	return FALSE;
 
-	while ( 1 )
+    if ( sub_budget_number > 0 )
+	title = g_strdup_printf ( _("Properties for %s"),
+				  gsb_data_budget_get_sub_budget_name ( budget_number,
+									sub_budget_number,
+									_("No sub-budget defined" )));
+    else
+	title = g_strdup_printf ( _("Properties for %s"),
+				  gsb_data_budget_get_name ( budget_number,
+							     0,
+							     _("No budget defined") ));
+
+    dialog = gtk_dialog_new_with_buttons ( title ,
+					   GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
+					   GTK_DIALOG_MODAL,
+					   GTK_STOCK_CANCEL, GTK_RESPONSE_NO,
+					   GTK_STOCK_APPLY, GTK_RESPONSE_OK,
+					   NULL );
+
+    gtk_window_set_position ( GTK_WINDOW ( dialog ), GTK_WIN_POS_CENTER_ON_PARENT );
+    gtk_window_set_resizable ( GTK_WINDOW ( dialog ), FALSE );
+
+    /* Ugly dance to avoid side effects on dialog's vbox. */
+    hbox = gtk_hbox_new ( FALSE, 0 );
+    gtk_box_pack_start ( GTK_BOX ( dialog_get_content_area ( dialog ) ), hbox, FALSE, FALSE, 0 );
+    paddingbox = new_paddingbox_with_title ( hbox, TRUE, title );
+    gtk_container_set_border_width ( GTK_CONTAINER(hbox), 6 );
+    gtk_container_set_border_width ( GTK_CONTAINER(paddingbox), 6 );
+
+    table = gtk_table_new ( 0, 2, FALSE );
+    gtk_box_pack_start ( GTK_BOX ( paddingbox ), table, FALSE, FALSE, 6 );
+    gtk_table_set_col_spacings ( GTK_TABLE(table), 6 );
+    gtk_table_set_row_spacings ( GTK_TABLE(table), 6 );
+
+    /* Name entry */
+    label = gtk_label_new ( _("Name"));
+    gtk_misc_set_alignment ( GTK_MISC ( label ), 0.0, 0.5 );
+    gtk_table_attach ( GTK_TABLE(table), label, 0, 1, 0, 1,
+		       GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0 );
+
+    entry = gtk_entry_new ( );
+    if ( sub_budget_number > 0 )
+    {
+	gtk_entry_set_text ( GTK_ENTRY ( entry ),
+			     gsb_data_budget_get_sub_budget_name ( budget_number,
+								   sub_budget_number,
+								   NULL ) );
+    }
+    else
+    {
+	gtk_entry_set_text ( GTK_ENTRY ( entry ),
+			     gsb_data_budget_get_name ( budget_number, 0, NULL ) );
+    }
+
+    gtk_widget_set_size_request ( entry, 400, -1 );
+    gtk_table_attach ( GTK_TABLE(table), entry, 1, 2, 0, 1, GTK_EXPAND|GTK_FILL, 0, 0, 0 );
+
+    if ( sub_budget_number <= 0 )
+    {
+	/* Description entry */
+	label = gtk_label_new ( _("Type"));
+	gtk_misc_set_alignment ( GTK_MISC ( label ), 0.0, 0.5 );
+	gtk_table_attach ( GTK_TABLE(table), label, 0, 1, 1, 2,
+			   GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0 );
+
+	radiogroup = gsb_autofunc_radiobutton_new ( _("Credit"), _("Debit"),
+						    gsb_data_budget_get_type (budget_number),
+						    NULL, NULL,
+						    G_CALLBACK (gsb_data_budget_set_type), budget_number);
+	gtk_table_attach ( GTK_TABLE(table), radiogroup,
+			   1, 2, 1, 2, GTK_EXPAND|GTK_FILL, 0, 0, 0 );
+    }
+
+    gtk_widget_show_all ( dialog );
+    g_free ( title );
+
+    while ( 1 )
+    {
+	if ( gtk_dialog_run ( GTK_DIALOG(dialog) ) != GTK_RESPONSE_OK )
 	{
-		if ( gtk_dialog_run ( GTK_DIALOG(dialog) ) != GTK_RESPONSE_OK )
-		{
-			sortie_edit_budgetary_line = TRUE;
-			gtk_widget_destroy ( GTK_WIDGET ( dialog ) );
-			return FALSE;
-		}
-
-		if ( ( sub_budget_number > 0 &&
-				gsb_data_budget_get_sub_budget_number_by_name ( budget_number,
-						gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-						FALSE ) &&
-						gsb_data_budget_get_sub_budget_number_by_name ( budget_number,
-								gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-								FALSE ) != sub_budget_number) ||
-								( sub_budget_number <= 0 &&
-										gsb_data_budget_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-												FALSE, 0 ) &&
-												gsb_data_budget_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
-														FALSE, 0 ) != budget_number ) )
-		{
-			gchar * message;
-			if ( sub_budget_number > 0 )
-			{
-				message = g_strdup_printf ( _("You tried to rename current sub-budgetary line to '%s' "
-						"but this sub-budgetary line already exists.  Please "
-						"choose another name."),
-						gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
-			}
-			else
-			{
-				message = g_strdup_printf ( _("You tried to rename current budgetary line to '%s' "
-						"but this budgetary line already exists.  Please "
-						"choose another name."),
-						gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
-			}
-			dialogue_warning_hint ( message, _("Budgetary line already exists") );
-			g_free ( message );
-		}
-		else
-		{
-			if ( sub_budget_number > 0 )
-			{
-				gsb_data_budget_set_sub_budget_name ( budget_number,
-						sub_budget_number,
-						gtk_entry_get_text ( GTK_ENTRY (entry)));
-			}
-			else
-			{
-				gsb_data_budget_set_name ( budget_number,
-						gtk_entry_get_text ( GTK_ENTRY (entry)));
-			}
-			break;
-		}
+        sortie_edit_budgetary_line = TRUE;
+	    gtk_widget_destroy ( GTK_WIDGET ( dialog ) );
+	    return FALSE;
 	}
 
-	gtk_widget_destroy ( GTK_WIDGET ( dialog ) );
-
-	if ( sub_budget_number > 0 )
+	if ( ( sub_budget_number > 0 &&
+	       gsb_data_budget_get_sub_budget_number_by_name ( budget_number,
+							       gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+							       FALSE ) &&
+	       gsb_data_budget_get_sub_budget_number_by_name ( budget_number,
+							       gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+							       FALSE ) != sub_budget_number) ||
+	     ( sub_budget_number <= 0 &&
+	       gsb_data_budget_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+						    FALSE, 0 ) &&
+	       gsb_data_budget_get_number_by_name ( gtk_entry_get_text ( GTK_ENTRY ( entry ) ),
+						    FALSE, 0 ) != budget_number ) )
 	{
-		div_iter = get_iter_from_div ( model, budget_number, sub_budget_number );
-		fill_sub_division_row ( model,
-				budgetary_line_get_metatree_interface ( ),
-				div_iter,
-				budget_number,
-				sub_budget_number );
+	    gchar * message;
+	    if ( sub_budget_number > 0 )
+	    {
+		message = g_strdup_printf ( _("You tried to rename current sub-budgetary line to '%s' "
+					      "but this sub-budgetary line already exists.  Please "
+					      "choose another name."),
+					    gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
+	    }
+	    else
+	    {
+		message = g_strdup_printf ( _("You tried to rename current budgetary line to '%s' "
+					      "but this budgetary line already exists.  Please "
+					      "choose another name."),
+					    gtk_entry_get_text ( GTK_ENTRY ( entry ) ) );
+	    }
+	    dialogue_warning_hint ( message, _("Budgetary line already exists") );
+	    g_free ( message );
 	}
 	else
 	{
-		div_iter = get_iter_from_div ( model, budget_number, 0 );
-		fill_division_row ( model,
-				budgetary_line_get_metatree_interface ( ),
-				div_iter,
-				budget_number );
+	    if ( sub_budget_number > 0 )
+	    {
+		gsb_data_budget_set_sub_budget_name ( budget_number,
+						      sub_budget_number,
+						      gtk_entry_get_text ( GTK_ENTRY (entry)));
+	    }
+	    else
+	    {
+		gsb_data_budget_set_name ( budget_number,
+					   gtk_entry_get_text ( GTK_ENTRY (entry)));
+	    }
+	    break;
 	}
-	gtk_tree_iter_free ( div_iter );
-
-	/* update the transactions list */
-	transaction_list_update_element ( ELEMENT_BUDGET );
-
-	return TRUE;
+    }
+
+    gtk_widget_destroy ( GTK_WIDGET ( dialog ) );
+
+    if ( sub_budget_number > 0 )
+    {
+	div_iter = get_iter_from_div ( model, budget_number, sub_budget_number );
+	fill_sub_division_row ( model,
+                        budgetary_line_get_metatree_interface ( ),
+                        div_iter,
+                        budget_number,
+                        sub_budget_number );
+    }
+    else
+    {
+	div_iter = get_iter_from_div ( model, budget_number, 0 );
+	fill_division_row ( model,
+                        budgetary_line_get_metatree_interface ( ),
+                        div_iter,
+                        budget_number );
+    }
+    gtk_tree_iter_free ( div_iter );
+
+    /* update the transactions list */
+    transaction_list_update_element ( ELEMENT_BUDGET );
+
+    return TRUE;
 }
 
 
@@ -892,21 +905,21 @@ gboolean edit_budgetary_line ( GtkTreeView * view )
  */
 void appui_sur_ajout_imputation ( GtkTreeModel * model, GtkButton *button )
 {
-	gint type;
-
-	type = GPOINTER_TO_INT ( g_object_get_data ( G_OBJECT (button), "type" ) );
-	if ( type == 1 )
-		metatree_new_division ( model );
-	else
-	{
-		appui_sur_ajout_sub_division ( model );
-		selectionne_sub_budgetary ( model );
-	}
-	sortie_edit_budgetary_line = FALSE;
-	edit_budgetary_line ( GTK_TREE_VIEW ( budgetary_line_tree ) );
-	if ( sortie_edit_budgetary_line )
-		supprimer_division ( GTK_TREE_VIEW ( budgetary_line_tree ) );
-	sortie_edit_budgetary_line = FALSE;
+    gint type;
+
+    type = GPOINTER_TO_INT ( g_object_get_data ( G_OBJECT (button), "type" ) );
+    if ( type == 1 )
+        metatree_new_division ( model );
+    else
+    {
+        appui_sur_ajout_sub_division ( model );
+        selectionne_sub_budgetary ( model );
+    }
+    sortie_edit_budgetary_line = FALSE;
+    edit_budgetary_line ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+    if ( sortie_edit_budgetary_line )
+        supprimer_division ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+    sortie_edit_budgetary_line = FALSE;
 }
 
 
@@ -917,54 +930,54 @@ void appui_sur_ajout_imputation ( GtkTreeModel * model, GtkButton *button )
  */
 void selectionne_sub_budgetary ( GtkTreeModel * model )
 {
-	GtkTreeSelection * selection;
-	GtkTreeIter parent;
-	GtkTreeIter iter;
+    GtkTreeSelection * selection;
+    GtkTreeIter parent;
+    GtkTreeIter iter;
 	GtkTreePath * path;
-	gchar * name;
-	gint budget_number = -1, sub_budget_number = -1;
-	gint i = 0,j = 0;
-
-	selection = gtk_tree_view_get_selection (
-			GTK_TREE_VIEW (budgetary_line_tree) );
-	if ( selection && gtk_tree_selection_get_selected (
-			selection, &model, &parent ) )
-	{
-		gtk_tree_model_get ( model, &parent,
-				META_TREE_NO_DIV_COLUMN, &budget_number,
-				META_TREE_NO_SUB_DIV_COLUMN, &sub_budget_number,
-				-1 );
-	}
-
-	if ( !selection || budget_number <= 0 )
-		return;
-
-	if ( sub_budget_number > 0 )
-		return;
-
-	name =  my_strdup (_("New sub-budget"));
-	sub_budget_number = gsb_data_budget_get_sub_budget_number_by_name (
-			budget_number, name, FALSE );
-	j = gtk_tree_model_iter_n_children ( model, &parent );
-	for (i = 0; i < j; i++ )
-	{
-		gint numero;
-
-		gtk_tree_model_iter_nth_child ( model, &iter, &parent, i );
-		gtk_tree_model_get ( model, &iter,
-				META_TREE_NO_SUB_DIV_COLUMN, &numero,
-				-1 );
-		if ( numero == sub_budget_number )
-			break;
-	}
-	path = gtk_tree_model_get_path ( model, &iter );
-	gtk_tree_view_expand_to_path ( GTK_TREE_VIEW (budgetary_line_tree), path );
-	selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (budgetary_line_tree) );
-	gtk_tree_selection_select_path ( selection, path );
-	gtk_tree_view_scroll_to_cell ( GTK_TREE_VIEW (budgetary_line_tree), path,
-			NULL, TRUE, 0.5, 0.5 );
-	gtk_tree_path_free ( path );
-	g_free ( name );
+    gchar * name;
+    gint budget_number = -1, sub_budget_number = -1;
+    gint i = 0,j = 0;
+
+    selection = gtk_tree_view_get_selection ( 
+                        GTK_TREE_VIEW (budgetary_line_tree) );
+    if ( selection && gtk_tree_selection_get_selected (
+                        selection, &model, &parent ) )
+    {
+	gtk_tree_model_get ( model, &parent,
+                        META_TREE_NO_DIV_COLUMN, &budget_number,
+                        META_TREE_NO_SUB_DIV_COLUMN, &sub_budget_number,
+                        -1 );
+    }
+
+    if ( !selection || budget_number <= 0 )
+        return;
+
+    if ( sub_budget_number > 0 )
+        return;
+
+    name =  my_strdup (_("New sub-budget"));
+    sub_budget_number = gsb_data_budget_get_sub_budget_number_by_name ( 
+                        budget_number, name, FALSE );
+    j = gtk_tree_model_iter_n_children ( model, &parent );
+    for (i = 0; i < j; i++ )
+    {
+        gint numero;
+
+        gtk_tree_model_iter_nth_child ( model, &iter, &parent, i );
+        gtk_tree_model_get ( model, &iter,
+                        META_TREE_NO_SUB_DIV_COLUMN, &numero,
+                        -1 );
+        if ( numero == sub_budget_number )
+            break;
+    }
+    path = gtk_tree_model_get_path ( model, &iter );
+    gtk_tree_view_expand_to_path ( GTK_TREE_VIEW (budgetary_line_tree), path );
+    selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW (budgetary_line_tree) );
+    gtk_tree_selection_select_path ( selection, path );
+    gtk_tree_view_scroll_to_cell ( GTK_TREE_VIEW (budgetary_line_tree), path,
+                        NULL, TRUE, 0.5, 0.5 );
+    gtk_tree_path_free ( path );
+    g_free ( name );
 }
 
 
@@ -975,7 +988,7 @@ void selectionne_sub_budgetary ( GtkTreeModel * model )
  */
 GtkTreePath *budgetary_hold_position_get_path ( void )
 {
-	return gtk_tree_path_copy ( budgetary_hold_position -> path );
+    return gtk_tree_path_copy ( budgetary_hold_position -> path );
 }
 
 /**
@@ -985,9 +998,9 @@ GtkTreePath *budgetary_hold_position_get_path ( void )
  */
 gboolean budgetary_hold_position_set_path ( GtkTreePath *path )
 {
-	budgetary_hold_position -> path = gtk_tree_path_copy ( path );
+    budgetary_hold_position -> path = gtk_tree_path_copy ( path );
 
-	return TRUE;
+    return TRUE;
 }
 /**
  * sauvegarde l'attribut expand.
@@ -996,9 +1009,9 @@ gboolean budgetary_hold_position_set_path ( GtkTreePath *path )
  */
 gboolean budgetary_hold_position_set_expand ( gboolean expand )
 {
-	budgetary_hold_position -> expand = expand;
+    budgetary_hold_position -> expand = expand;
 
-	return TRUE;
+    return TRUE;
 }
 
 
@@ -1011,66 +1024,69 @@ gboolean budgetary_hold_position_set_expand ( gboolean expand )
  * \return FALSE
  * */
 gboolean budgetary_line_list_button_press ( GtkWidget *tree_view,
-		GdkEventButton *ev,
-		gpointer null )
+                        GdkEventButton *ev,
+                        gpointer null )
 {
-	if ( ev -> button == RIGHT_BUTTON )
-	{
-		budgetary_line_list_popup_context_menu ( );
-
-		return TRUE;
-	}
-	else if ( ev -> type == GDK_2BUTTON_PRESS )
-	{
-		GtkTreeSelection *selection;
-		GtkTreeModel *model;
-		GtkTreeIter iter;
-		GtkTreePath *path = NULL;
-		enum meta_tree_row_type type_division;
-
-		type_division = metatree_get_row_type_from_tree_view ( tree_view );
-		if ( type_division == META_TREE_TRANSACTION )
-			return FALSE;
-
-		selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( tree_view ) );
-		if ( selection && gtk_tree_selection_get_selected (selection, &model, &iter ) )
-			path = gtk_tree_model_get_path  ( model, &iter);
-
-		if ( conf.metatree_action_2button_press == 0 || type_division == META_TREE_DIV )
-		{
-			if ( gtk_tree_view_row_expanded ( GTK_TREE_VIEW ( tree_view ), path ) )
-				gtk_tree_view_collapse_row ( GTK_TREE_VIEW ( tree_view ), path );
-			else
-				gtk_tree_view_expand_row ( GTK_TREE_VIEW ( tree_view ), path, FALSE );
-
-			gtk_tree_path_free ( path );
-			return FALSE;
-		}
-		else if ( conf.metatree_action_2button_press == 1 )
-		{
-			edit_budgetary_line ( GTK_TREE_VIEW ( tree_view ) );
-
-			gtk_tree_path_free ( path );
-			return TRUE;
-		}
-		else
-		{
-			if ( type_division == META_TREE_SUB_DIV || type_division == META_TREE_TRANS_S_S_DIV )
-			{
-				path = gtk_tree_model_get_path  ( model, &iter);
-				gtk_tree_view_collapse_row ( GTK_TREE_VIEW ( tree_view ), path );
-
-				gtk_tree_path_free ( path );
-
-				metatree_manage_sub_divisions ( tree_view );
-				return TRUE;
-			}
-			else
-				return FALSE;
-		}
-	}
-
-	return FALSE;
+    if ( ev -> button == RIGHT_BUTTON )
+    {
+        budgetary_line_list_popup_context_menu ( );
+
+        return TRUE;
+    }
+    else if ( ev -> type == GDK_2BUTTON_PRESS )
+    {
+        GtkTreeSelection *selection;
+        GtkTreeModel *model;
+        GtkTreeIter iter;
+        GtkTreePath *path = NULL;
+        enum meta_tree_row_type type_division;
+        GrisbiAppConf *conf;
+
+        conf = grisbi_app_get_conf ( );
+
+        type_division = metatree_get_row_type_from_tree_view ( tree_view );
+        if ( type_division == META_TREE_TRANSACTION )
+            return FALSE;
+
+        selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( tree_view ) );
+        if ( selection && gtk_tree_selection_get_selected (selection, &model, &iter ) )
+            path = gtk_tree_model_get_path  ( model, &iter);
+
+        if ( conf->metatree_action_2button_press == 0 || type_division == META_TREE_DIV )
+        {
+            if ( gtk_tree_view_row_expanded ( GTK_TREE_VIEW ( tree_view ), path ) )
+                gtk_tree_view_collapse_row ( GTK_TREE_VIEW ( tree_view ), path );
+            else
+                gtk_tree_view_expand_row ( GTK_TREE_VIEW ( tree_view ), path, FALSE );
+
+            gtk_tree_path_free ( path );
+            return FALSE;
+        }
+        else if ( conf->metatree_action_2button_press == 1 )
+        {
+            edit_budgetary_line ( GTK_TREE_VIEW ( tree_view ) );
+
+            gtk_tree_path_free ( path );
+            return TRUE;
+        }
+        else
+        {
+            if ( type_division == META_TREE_SUB_DIV || type_division == META_TREE_TRANS_S_S_DIV )
+            {
+                    path = gtk_tree_model_get_path  ( model, &iter);
+                    gtk_tree_view_collapse_row ( GTK_TREE_VIEW ( tree_view ), path );
+
+                    gtk_tree_path_free ( path );
+
+                metatree_manage_sub_divisions ( tree_view );
+                return TRUE;
+            }
+            else
+                return FALSE;
+        }
+    }
+
+    return FALSE;
 }
 
 
@@ -1082,71 +1098,71 @@ gboolean budgetary_line_list_button_press ( GtkWidget *tree_view,
  */
 void budgetary_line_list_popup_context_menu ( void )
 {
-	GtkWidget *menu;
-	GtkWidget *menu_item;
-	gchar *title;
-	enum meta_tree_row_type type_division;
-
-	type_division = metatree_get_row_type_from_tree_view ( budgetary_line_tree );
-
-	if ( type_division == META_TREE_TRANSACTION
-			||
-			type_division == META_TREE_INVALID )
-		return;
-
-	menu = gtk_menu_new ();
-
-	if ( type_division == META_TREE_DIV || type_division == META_TREE_SUB_DIV )
-	{
-
-		/* Edit transaction */
-		if ( type_division == META_TREE_DIV )
-			title = g_strdup ( _("Edit selected budgetary line") );
-		else
-			title = g_strdup ( _("Edit selected sub-budgetary line") );
-
-		menu_item = gtk_image_menu_item_new_with_label ( title );
-		gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
-				gtk_image_new_from_stock ( GTK_STOCK_EDIT,
-						GTK_ICON_SIZE_MENU ) );
-		g_signal_connect_swapped ( G_OBJECT ( menu_item ),
-				"activate",
-				G_CALLBACK ( edit_budgetary_line ),
-				budgetary_line_tree );
-		gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
-
-		g_free ( title );
-	}
-
-	if ( type_division == META_TREE_SUB_DIV || type_division == META_TREE_TRANS_S_S_DIV )
-	{
-		/* Manage sub_divisions */
-		if ( type_division == META_TREE_SUB_DIV )
-		{
-			/* Separator */
-			gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), gtk_separator_menu_item_new ( ) );
-			title = g_strdup ( _("Manage sub-budgetary line") );
-		}
-		else
-			title = g_strdup ( _("Transfer all transactions in another sub-budgetary line") );
-
-		menu_item = gtk_image_menu_item_new_with_label ( title );
-		gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
-				gtk_image_new_from_stock ( GTK_STOCK_CONVERT,
-						GTK_ICON_SIZE_MENU ) );
-		g_signal_connect_swapped ( G_OBJECT ( menu_item ),
-				"activate",
-				G_CALLBACK ( metatree_manage_sub_divisions ),
-				budgetary_line_tree );
-		gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
-
-		g_free ( title );
-	}
-
-	/* Finish all. */
-	gtk_widget_show_all ( menu );
-
-	gtk_menu_popup ( GTK_MENU ( menu ), NULL, NULL, NULL, NULL, 3, gtk_get_current_event_time ( ) );
+    GtkWidget *menu;
+    GtkWidget *menu_item;
+    gchar *title;
+    enum meta_tree_row_type type_division;
+
+    type_division = metatree_get_row_type_from_tree_view ( budgetary_line_tree );
+
+    if ( type_division == META_TREE_TRANSACTION
+     ||
+     type_division == META_TREE_INVALID )
+        return;
+
+    menu = gtk_menu_new ();
+
+    if ( type_division == META_TREE_DIV || type_division == META_TREE_SUB_DIV )
+    {
+
+        /* Edit transaction */
+        if ( type_division == META_TREE_DIV )
+            title = g_strdup ( _("Edit selected budgetary line") );
+        else
+            title = g_strdup ( _("Edit selected sub-budgetary line") );
+
+        menu_item = gtk_image_menu_item_new_with_label ( title );
+        gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
+                            gtk_image_new_from_stock ( GTK_STOCK_EDIT,
+                            GTK_ICON_SIZE_MENU ) );
+        g_signal_connect_swapped ( G_OBJECT ( menu_item ),
+                            "activate",
+                            G_CALLBACK ( edit_budgetary_line ),
+                            budgetary_line_tree );
+        gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
+
+        g_free ( title );
+    }
+
+    if ( type_division == META_TREE_SUB_DIV || type_division == META_TREE_TRANS_S_S_DIV )
+    {
+        /* Manage sub_divisions */
+        if ( type_division == META_TREE_SUB_DIV )
+        {
+            /* Separator */
+            gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), gtk_separator_menu_item_new ( ) );
+            title = g_strdup ( _("Manage sub-budgetary line") );
+        }
+        else
+            title = g_strdup ( _("Transfer all transactions in another sub-budgetary line") );
+
+        menu_item = gtk_image_menu_item_new_with_label ( title );
+        gtk_image_menu_item_set_image ( GTK_IMAGE_MENU_ITEM ( menu_item ),
+                        gtk_image_new_from_stock ( GTK_STOCK_CONVERT,
+                        GTK_ICON_SIZE_MENU ) );
+        g_signal_connect_swapped ( G_OBJECT ( menu_item ),
+                        "activate",
+                        G_CALLBACK ( metatree_manage_sub_divisions ),
+                        budgetary_line_tree );
+        gtk_menu_shell_append ( GTK_MENU_SHELL ( menu ), menu_item );
+
+        g_free ( title );
+    }
+
+    /* Finish all. */
+    gtk_widget_show_all ( menu );
+
+    gtk_menu_popup ( GTK_MENU ( menu ), NULL, NULL, NULL, NULL, 3, gtk_get_current_event_time ( ) );
 }
 
 
@@ -1157,7 +1173,7 @@ void budgetary_line_list_popup_context_menu ( void )
  */
 GtkTreeStore *budgetary_lines_get_tree_store ( void )
 {
-	return budgetary_line_tree_model;
+    return budgetary_line_tree_model;
 }
 
 
@@ -1168,7 +1184,7 @@ GtkTreeStore *budgetary_lines_get_tree_store ( void )
  */
 GtkWidget *budgetary_lines_get_tree_view ( void )
 {
-	return budgetary_line_tree;
+    return budgetary_line_tree;
 }
 
 
@@ -1179,15 +1195,15 @@ GtkWidget *budgetary_lines_get_tree_view ( void )
  */
 void budgetary_lines_new_budgetary_line ( void )
 {
-	metatree_new_division ( GTK_TREE_MODEL ( budgetary_line_tree_model ) );
-
-	sortie_edit_budgetary_line = FALSE;
-	edit_budgetary_line ( GTK_TREE_VIEW ( budgetary_line_tree ) );
-	if ( sortie_edit_budgetary_line )
-	{
-		supprimer_division ( GTK_TREE_VIEW ( budgetary_line_tree ) );
-		sortie_edit_budgetary_line = FALSE;
-	}
+    metatree_new_division ( GTK_TREE_MODEL ( budgetary_line_tree_model ) );
+
+    sortie_edit_budgetary_line = FALSE;
+    edit_budgetary_line ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+    if ( sortie_edit_budgetary_line )
+    {
+        supprimer_division ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+        sortie_edit_budgetary_line = FALSE;
+    }
 }
 
 
@@ -1198,7 +1214,7 @@ void budgetary_lines_new_budgetary_line ( void )
  */
 void budgetary_lines_delete_budgetary_line ( void )
 {
-	supprimer_division ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+    supprimer_division ( GTK_TREE_VIEW ( budgetary_line_tree ) );
 }
 
 
@@ -1209,7 +1225,7 @@ void budgetary_lines_delete_budgetary_line ( void )
  */
 void budgetary_lines_edit_budgetary_line ( void )
 {
-	edit_budgetary_line ( GTK_TREE_VIEW ( budgetary_line_tree ) );
+    edit_budgetary_line ( GTK_TREE_VIEW ( budgetary_line_tree ) );
 }
 
 
diff --git a/src/include.h b/src/include.h
index 2644c5a..5b9e708 100644
--- a/src/include.h
+++ b/src/include.h
@@ -3,15 +3,4 @@
 #define _INCLUDE_H (1)
 
 
-/* The following lines revert back to FPRINTF on Windows Systems(LIBINTL_FPRINTF seems BUGGY) */
-#ifdef _WIN32
-# undef fprintf
-#endif
-
-/* g_fopen returns an incompatible pointer on windows with MSVC. This is a fix*/
-#ifdef _MSC_VER
-#undef g_fopen
-#define g_fopen fopen
-#endif
-
 #endif /* _INCLUDE_H */
diff --git a/src/main.c b/src/main.c
index d1e7e07..2a1bc38 100644
--- a/src/main.c
+++ b/src/main.c
@@ -29,7 +29,6 @@
 #include <config.h>
 #endif
 
-#include "include.h"
 #include <stdlib.h>
 #include <glib/gi18n.h>
 #include <glib/gprintf.h>
@@ -39,6 +38,7 @@
 #include "main.h"
 #include "accueil.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_assistant_first.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
@@ -50,6 +50,7 @@
 #include "gsb_status.h"
 #include "import.h"
 #include "menu.h"
+#include "parse_cmdline.h"
 #include "structures.h"
 #include "tip.h"
 #include "traitement_variables.h"
@@ -58,77 +59,22 @@
 #include "erreur.h"
 /*END_INCLUDE*/
 
-#ifdef GTKOSXAPPLICATION
-#include <gtkosxapplication.h>
-
-#include "grisbi_osx.h"
-#endif  /* GTKOSXAPPLICATION */
-
-/* including resources so that the exe generated with MSVC has the right icon. */
-#ifdef G_OS_WIN32
-#include "resource.h"
-
-int APIENTRY wWinMain(HINSTANCE hInstance,
-                     HINSTANCE hPrevInstance,
-                     LPWSTR    lpCmdLine,
-                     int       nCmdShow)
-{
-	int argc, nLen, i;
-	LPWSTR * argvP;
-	char ** argv;
-	argvP = CommandLineToArgvW(GetCommandLineW(), &(argc));
-	argv = malloc (argc* sizeof(char *));
-	for (i = 0 ; i<argc ; i++)
-	{
-		nLen = WideCharToMultiByte(CP_UTF8, 0,argvP[i], -1, NULL, 0, NULL, NULL);
-		argv[i] = malloc((nLen + 1) * sizeof(char));
-		WideCharToMultiByte(CP_UTF8, 0, argvP[i], -1, argv[i], nLen, NULL, NULL);
-	}
-	return main(argc, argv);
-}
-#endif /* G_OS_WIN32 */
 
 /*START_STATIC*/
 static gboolean gsb_main_change_state_window ( GtkWidget *window,
                         GdkEventWindowState *event,
                         gpointer null );
-static GtkWidget *gsb_main_create_main_menu ( GtkWidget *vbox );
-static GtkWidget *gsb_main_create_main_window ( void );
-static void gsb_main_grisbi_shutdown ( void );
+static void gsb_main_grisbi_shutdown ( GrisbiCommandLine *command_line );
 static gboolean gsb_main_init_app ( void );
 static void gsb_main_load_file_if_necessary ( gchar *filename );
 static gboolean gsb_main_print_environment_var ( void );
-static gint gsb_main_set_debug_level ( void );
-static gint gsb_main_setup_command_line_options ( int argc, char **argv );
-static void gsb_main_show_version ( void );
+static gint gsb_main_set_debug_level ( GrisbiCommandLine *command_line );
 static void gsb_main_trappe_signal_sigsegv ( void );
 static gboolean gsb_main_window_delete_event (GtkWidget *window, gpointer data);
 static void gsb_main_window_destroy_event ( GObject* obj, gpointer data);
 static void gsb_main_window_set_size_and_position ( void );
-
-static void main_mac_osx ( int argc, char **argv );
-static void main_linux ( int argc, char **argv );
-static void main_win_32 (  int argc, char **argv );
 /*END_STATIC*/
 
-/* Fenetre principale de grisbi */
-static GtkWidget *main_window = NULL;
-
-/* Options pour grisbi */
-static gint debug_level = -1;
-static gchar *file = NULL;
-
-static const GOptionEntry options [] =
-{
-    { "version", 'v', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK,
-     gsb_main_show_version, N_("Show the application's version"), NULL },
-
-    { "debug", 'd', 0, G_OPTION_ARG_INT, &debug_level, N_("Debug mode: level 0-5"), NULL },
-
-    { "file", 'f', 0, G_OPTION_ARG_FILENAME, &file, N_("[FILE]"), NULL },
-
-    {NULL}
-};
 
 /*START_EXTERN*/
 extern gchar *nom_fichier_comptes;
@@ -138,6 +84,9 @@ extern gchar *titre_fichier;
 /* variables initialisées lors de l'exécution de grisbi */
 struct gsb_run_t run;
 
+/* Options pour grisbi */
+static gint debug_level = -1;
+
 /**
  * Main function
  *
@@ -146,318 +95,88 @@ struct gsb_run_t run;
  *
  * @return Nothing
  */
-int main ( int argc, char **argv )
-{
-#ifdef G_OS_WIN32
-    main_win_32 (  argc, argv );
-#else
-    #ifdef GTKOSXAPPLICATION
-        main_mac_osx ( argc, argv );
-    #else
-        main_linux ( argc, argv );
-    #endif /* GTKOSXAPPLICATION || linux */
-#endif /* G_OS_WIN32 */
-
-    exit ( 0 );
-}
-
-
-/**
- *
- *
- *
- *
- * */
-void main_linux ( int argc, char **argv )
+gint main ( int argc, char **argv )
 {
-    GtkWidget *vbox;
+    GrisbiApp *app;
+    GrisbiWindow *window;
+    GrisbiCommandLine *command_line;
     gint return_value;
-    gboolean first_use = FALSE;
 
     /* Init type system */
     g_type_init ();
 
+    /* Init glib threads asap */
+    if ( g_thread_get_initialized () )
+        g_thread_init ( NULL );
+
     /* initialisation des différents répertoires */
-    gsb_dirs_init ( );
+    gsb_dirs_init ();
 
     /* Setup locale/gettext */
     setlocale ( LC_ALL, "" );
-    bindtextdomain ( PACKAGE, gsb_dirs_get_locale_dir ( ) );
+    bindtextdomain ( PACKAGE, gsb_dirs_get_locale_dir () );
     bind_textdomain_codeset ( PACKAGE, "UTF-8" );
     textdomain ( PACKAGE );
 
     /* Setup command line options */
-    return_value = gsb_main_setup_command_line_options ( argc, argv );
-    if ( return_value )
-        exit ( return_value );
+    command_line = grisbi_command_line_get_default ();
 
-    /* initialisation de la variable locale pour les devises */
-    gsb_locale_init ( );
-
-    /* initialisation du nom du fichier de configuration */
-    gsb_config_initialise_conf_filename ( );
+    return_value = grisbi_command_line_parse ( command_line, argc, argv );
+    if ( return_value == 1 )
+        exit ( return_value );
 
     /* initialisation du mode de débogage */
-    if ( gsb_main_set_debug_level ( ) )
-    {
-        initialize_debugging ( );
-        gsb_main_print_environment_var ( );
-    }
-
-    /* initialisation de gtk. arguments à NULL car traités au dessus */
-    gtk_init ( NULL, NULL );
-
-    /* initialisation libgoffice */
-    libgoffice_init ( );
-    /* Initialize plugins manager pour goffice */
-    go_plugins_init (NULL, NULL, NULL, NULL, TRUE, GO_TYPE_PLUGIN_LOADER_MODULE);
-
-    /* on commence par détourner le signal SIGSEGV */
-    gsb_main_trappe_signal_sigsegv ( );
-
-    /* initialise les données de l'application */
-    first_use = gsb_main_init_app ( );
-
-    /* create the toplevel window and the main menu */
-    vbox = gsb_main_create_main_window ( );
-    gsb_main_create_main_menu ( vbox );
-    gsb_main_window_set_size_and_position ( );
-
-    gtk_widget_show ( main_window );
-
-    if ( IS_DEVELOPMENT_VERSION )
-        dialog_message ( "development-version", VERSION );
-
-    /* check the command line, if there is something to open */
-    gsb_main_load_file_if_necessary ( file );
-
-    if ( first_use && !nom_fichier_comptes )
-        gsb_assistant_first_run ();
-    else
-        display_tip ( FALSE );
-
-    gtk_main ();
-
-    gsb_main_grisbi_shutdown ( );
-
-    exit ( 0 );
-}
-
+    debug_level = gsb_main_set_debug_level ( command_line );
+    initialize_debugging ();
 
-/**
- *
- *
- *
- *
- * */
-void main_mac_osx ( int argc, char **argv )
-{
-#ifdef GTKOSXAPPLICATION
-    GtkWidget *vbox;
-    GtkWidget *menubar;
-    GdkPixbuf *pixbuf;
-    gint return_value;
-    gboolean first_use = FALSE;
-    GtkOSXApplication *theApp;
-
-    /* Init type system */
-    g_type_init ();
-
-    /* initialisation des différents répertoires */
-    gsb_dirs_init ( );
-
-    /* Setup locale/gettext */
-    setlocale ( LC_ALL, "" );
-    bindtextdomain ( PACKAGE, gsb_dirs_get_locale_dir ( ) );
-    bind_textdomain_codeset ( PACKAGE, "UTF-8" );
-    textdomain ( PACKAGE );
-
-    /* Setup command line options */
-    return_value = gsb_main_setup_command_line_options ( argc, argv );
-    if ( return_value )
-        exit ( return_value );
-
-    /* initialisation de la variable locale pour les devises */
+    /* initialisation et sortie si nécessaire de la variable locale pour les devises */
     gsb_locale_init ( );
+    if ( debug_level > 0 )
+        gsb_main_print_environment_var ();
 
     /* initialisation du nom du fichier de configuration */
-    gsb_config_initialise_conf_filename ( );
-
-    /* initialisation du mode de débogage */
-    if ( gsb_main_set_debug_level ( ) )
-    {
-        initialize_debugging ( );
-        gsb_main_print_environment_var ( );
-    }
+    gsb_config_initialise_conf_filename ( grisbi_command_line_get_config_file ( command_line ) );
 
     /* initialisation de gtk. arguments à NULL car traités au dessus */
     gtk_init ( NULL, NULL );
 
-    /* initialisation libgoffice */
-    libgoffice_init ( );
-    /* Initialize plugins manager pour goffice */
-    go_plugins_init (NULL, NULL, NULL, NULL, TRUE, GO_TYPE_PLUGIN_LOADER_MODULE);
-
-    /* init the app */
-    theApp = g_object_new ( GTK_TYPE_OSX_APPLICATION, NULL );
+    /* initialisation de libgoffice et des plugins pour goffice*/
+    libgoffice_init ();
+    go_plugins_init ( NULL, NULL, NULL, NULL, TRUE, GO_TYPE_PLUGIN_LOADER_MODULE );
 
     /* on commence par détourner le signal SIGSEGV */
-    gsb_main_trappe_signal_sigsegv ( );
-
-    /* initialise les données de l'application */
-    first_use = gsb_main_init_app ( );
-
-    vbox = gsb_main_create_main_window ( );
-    {
-        gboolean falseval = FALSE;
-        gboolean trueval = TRUE;
-
-        g_signal_connect ( theApp,
-                        "NSApplicationDidBecomeActive",
-                        G_CALLBACK ( grisbi_osx_app_active_cb ),
-                        &trueval );
-        g_signal_connect ( theApp,
-                        "NSApplicationWillResignActive",
-                        G_CALLBACK ( grisbi_osx_app_active_cb ),
-                        &falseval);
-        g_signal_connect ( theApp,
-                        "NSApplicationBlockTermination",
-                        G_CALLBACK ( gsb_main_grisbi_close ),
-                        NULL);
-        g_signal_connect ( theApp,
-                        "NSApplicationWillTerminate",
-                        G_CALLBACK ( gsb_main_window_destroy_event ),
-                        NULL );
-    }
-    menubar = gsb_main_create_main_menu ( vbox );
-    grisbi_osx_init_menus ( main_window, menubar );
-    gsb_main_window_set_size_and_position ( );
-
-    gtk_widget_show ( main_window );
-
-#if IS_DEVELOPMENT_VERSION == 1
-    dialog_message ( "development-version", VERSION );
-#endif
-    
-    /* check the command line, if there is something to open */
-    gsb_main_load_file_if_necessary ( file );
-
-    if ( first_use && !nom_fichier_comptes )
-        gsb_assistant_first_run ();
-    else
-        display_tip ( FALSE );
-
-    if ( quartz_application_get_bundle_id ( ) == NULL )
-    {
-        pixbuf = gdk_pixbuf_new_from_file ( g_build_filename 
-                        (gsb_dirs_get_pixmaps_dir ( ), "grisbi-logo.png", NULL), NULL );
-        if ( pixbuf )
-            gtk_osxapplication_set_dock_icon_pixbuf ( theApp, pixbuf );
-    }
-
-    gtk_osxapplication_set_use_quartz_accelerators ( theApp, TRUE );
-
-    gtk_osxapplication_ready ( theApp );
-
-    gtk_main ();
-
-    g_object_unref ( theApp );
-
-    gsb_main_grisbi_shutdown ( );
-
-    exit ( 0 );
-
-#endif /* GTKOSXAPPLICATION */
-}
-
-
-/**
- *
- *
- *
- *
- * */
-void main_win_32 (  int argc, char **argv )
-{
-#ifdef G_OS_WIN32
-    GtkWidget *vbox;
-    gint return_value;
-    gboolean first_use = FALSE;
-
-    /* Retrieve exception information and store them under grisbi.rpt file!
-     * see http://jrfonseca.dyndns.org/projects/gnu-win32/software/drmingw/index.html for more information */
-    LoadLibrary("exchndl.dll");
-
-     /* needed to be able to use the "common" installation of GTK libraries */
-    win32_make_sure_the_gtk2_dlls_path_is_in_PATH();
+    gsb_main_trappe_signal_sigsegv ();
 
-    /* Init type system */
-    g_type_init ();
-
-    /* initialisation des différents répertoires */
-    gsb_dirs_init ( );
-
-    /* Setup locale/gettext */
-    setlocale ( LC_ALL, "" );
-    bindtextdomain ( PACKAGE, gsb_dirs_get_locale_dir ( ) );
-    bind_textdomain_codeset ( PACKAGE, "UTF-8" );
-    textdomain ( PACKAGE );
-
-    /* Setup command line options */
-    return_value = gsb_main_setup_command_line_options ( argc, argv );
-    if ( return_value )
-        exit ( return_value );
-
-    /* initialisation de la variable locale pour les devises */
-    gsb_locale_init ( );
-
-    /* initialisation du nom du fichier de configuration */
-    gsb_config_initialise_conf_filename ( );
-
-    /* initialisation de gtk. arguments à NULL car traités au dessus */
-    gtk_init ( NULL, NULL );
-/*     win32_parse_gtkrc ( "gtkrc" );  */
-
-    /* initialisation libgoffice */
-    libgoffice_init ( );
-    /* Initialize plugins manager pour goffice */
-    go_plugins_init (NULL, NULL, NULL, NULL, TRUE, GO_TYPE_PLUGIN_LOADER_MODULE);
-
-    /* initialise les données de l'application */
-    first_use = gsb_main_init_app ( );
+    /* création de l'application */
+    app = grisbi_app_get_default ();
 
     /* create the toplevel window and the main menu */
-    vbox = gsb_main_create_main_window ( );
-    gsb_main_create_main_menu ( vbox );
-    gsb_main_window_set_size_and_position ( );
+    window = grisbi_app_create_window ( app, NULL );
 
-    gtk_widget_show ( main_window );
+    gtk_widget_show ( GTK_WIDGET ( window ) );
 
-#if IS_DEVELOPMENT_VERSION == 1
-    dialog_message ( "development-version", VERSION );
-#endif
+    if ( IS_DEVELOPMENT_VERSION )
+        dialog_message ( "development-version", VERSION );
 
     /* check the command line, if there is something to open */
-    gsb_main_load_file_if_necessary ( file );
+/*     gsb_main_load_file_if_necessary ( file );  */
 
-    if ( first_use && !nom_fichier_comptes )
+    if ( grisbi_app_get_first_use ( app ) )
         gsb_assistant_first_run ();
     else
         display_tip ( FALSE );
 
     gtk_main ();
 
-    gsb_main_grisbi_shutdown ( );
+    gsb_main_grisbi_shutdown ( command_line );
 
+    /* return */
     exit ( 0 );
-
-#endif /* G_OS_WIN32 */
 }
 
 
-
 /**
- * gère le fait d'être en mode developpement sauf pour l'alerte
+ * affiche les variables d'environnement de Grisbi
  *
  *
  *
@@ -468,20 +187,20 @@ gboolean gsb_main_print_environment_var ( void )
 
     g_print ("\nGrisbi version %s\n\n", VERSION );
 
-    g_printf ("Variables d'environnement :\n" );
+    g_print ("Variables d'environnement :\n" );
 
     tmp_str = gsb_main_get_print_locale_var ( );
-    g_printf ("%s", tmp_str);
+    g_print ("%s", tmp_str);
 
     g_free ( tmp_str );
 
-    g_printf ( "gint64\n\tG_GINT64_MODIFIER = \"%s\"\n"
+    g_print ( "gint64\n\tG_GINT64_MODIFIER = \"%s\"\n"
                         "\t%"G_GINT64_MODIFIER"d\n\n",
                         G_GINT64_MODIFIER,
                         G_MAXINT64 );
 
     tmp_str = gsb_main_get_print_dir_var ( );
-    g_printf ("%s", tmp_str);
+    g_print ("%s", tmp_str);
 
     g_free ( tmp_str );
 
@@ -490,138 +209,6 @@ gboolean gsb_main_print_environment_var ( void )
 
 
 /**
- * charge le fichier de configuration et initialise les variabes.
- *
- *
- *
- * */
-gboolean gsb_main_init_app ( void )
-{
-    gboolean first_use = FALSE;
-    gchar *string;
-
-#ifdef HAVE_PLUGINS
-    gsb_plugins_scan_dir ( gsb_dirs_get_plugins_dir ( ) );
-#endif
-
-    /* create the icon of grisbi (set in the panel of gnome or other) */
-    string = g_build_filename ( gsb_dirs_get_pixmaps_dir ( ), "grisbi-logo.png", NULL );
-    if ( g_file_test ( string, G_FILE_TEST_EXISTS ) )
-        gtk_window_set_default_icon_from_file ( string, NULL );
-    g_free (string);
-
-    /* initialisation of the variables */
-    gsb_color_initialise_couleurs_par_defaut ( );
-    init_variables ();
-    register_import_formats ();
-
-    /* firt use ? */
-    if ( ! gsb_file_config_load_config () )
-        first_use = TRUE;
-
-    return first_use;
-}
-
-
-/**
- * crée la fenêtre principale de grisbi.
- *
- *
- *
- * */
-GtkWidget *gsb_main_create_main_window ( void )
-{
-    GtkWidget *vbox;
-    GtkWidget *status_bar;
-
-    /* create the toplevel window */
-    main_window = gtk_window_new ( GTK_WINDOW_TOPLEVEL );
-    run.window = main_window;
-
-    g_signal_connect ( G_OBJECT ( main_window ),
-                        "delete_event",
-                        G_CALLBACK ( gsb_main_window_delete_event ),
-                        NULL);
-    g_signal_connect ( G_OBJECT ( main_window ),
-                        "destroy",
-                        G_CALLBACK ( gsb_main_window_destroy_event ),
-                        NULL);
-    g_signal_connect ( G_OBJECT ( main_window ),
-                        "window-state-event",
-                        G_CALLBACK ( gsb_main_change_state_window ),
-                        NULL );
-    gtk_window_set_policy ( GTK_WINDOW ( main_window ), TRUE, TRUE, FALSE );
-/*     gtk_window_set_resizable ( GTK_WINDOW ( main_window ), TRUE );  */
-
-    /* create the main window : a vbox */
-    vbox = gtk_vbox_new ( FALSE, 0 );
-    g_object_set_data ( G_OBJECT ( main_window ), "main_vbox", vbox );
-    gtk_container_add ( GTK_CONTAINER ( main_window ), vbox );
-    g_signal_connect ( G_OBJECT ( vbox ),
-                        "destroy",
-                        G_CALLBACK ( gtk_widget_destroyed ),
-                        &vbox );
-    gtk_widget_show ( vbox );
-
-    /* We create the statusbar first. */
-    status_bar = gsb_new_statusbar ( );
-    gtk_box_pack_end ( GTK_BOX ( vbox ), status_bar, FALSE, FALSE, 0 );
-
-    return vbox;
-}
-
-/**
- * crée et initialise le menu de grisbi.
- *
- *
- *
- * */
-GtkWidget *gsb_main_create_main_menu ( GtkWidget *vbox )
-{
-    GtkWidget *menu_bar;
-    gchar *accel_filename;
-
-    /* create the menus */
-    menu_bar = init_menus ( vbox );
-
-    /* unsensitive the necessaries menus */
-    menus_sensitifs ( FALSE );
-
-    /* charge les raccourcis claviers */
-    accel_filename = g_build_filename ( gsb_dirs_get_user_config_dir ( ), "grisbi-accels", NULL );
-    gtk_accel_map_load ( accel_filename );
-    g_free ( accel_filename );
-
-    /* set the last opened files */
-    affiche_derniers_fichiers_ouverts ( );
-
-    return menu_bar;
-}
-
-/**
- * set size and position of the main window of grisbi.
- *
- *
- *
- * */
-void gsb_main_window_set_size_and_position ( void )
-{
-    /* set the size of the window */
-    if ( conf.main_width && conf.main_height )
-        gtk_window_set_default_size ( GTK_WINDOW ( main_window ), conf.main_width, conf.main_height );
-    else
-        gtk_window_set_default_size ( GTK_WINDOW ( main_window ), 900, 600 );
-
-    /* display window at position */
-    gtk_window_move ( GTK_WINDOW ( main_window ), conf.root_x, conf.root_y );
-
-    /* set the full screen if necessary */
-    if ( conf.full_screen )
-        gtk_window_maximize ( GTK_WINDOW ( main_window ) );
-}
-
-
-/**
  * detourne le signal SIGSEGV
  *
  *
@@ -637,6 +224,12 @@ void gsb_main_trappe_signal_sigsegv ( void )
     sig_sev.sa_flags = 0;
     sigemptyset ( &( sig_sev.sa_mask ) );
 
+    if ( sigaction ( SIGINT, &sig_sev, NULL ) )
+        g_print ( _("Error on sigaction: SIGINT won't be trapped\n") );
+
+    if ( sigaction ( SIGTERM, &sig_sev, NULL ) )
+        g_print ( _("Error on sigaction: SIGINT won't be trapped\n") );
+
     if ( sigaction ( SIGSEGV, &sig_sev, NULL ) )
         g_print ( _("Error on sigaction: SIGSEGV won't be trapped\n") );
 #endif /* G_OS_WIN32 */
@@ -651,29 +244,21 @@ void gsb_main_trappe_signal_sigsegv ( void )
  * */
 void gsb_main_load_file_if_necessary ( gchar *filename )
 {
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+
     /* check the command line, if there is something to open */
     if ( filename )
     {
-        if ( gsb_file_open_file ( filename ) )
-        {
-            if ( nom_fichier_comptes )
-                g_free ( nom_fichier_comptes );
-            nom_fichier_comptes = g_strdup ( filename );
-        }
-        else
-        {
-            if ( nom_fichier_comptes )
-                g_free ( nom_fichier_comptes );
-            nom_fichier_comptes = NULL;
-        }
+        gsb_file_open_file ( filename );
     }
     else
     {
         /* open the last file if needed, nom_fichier_comptes was filled while loading the configuration */
-        if ( conf.dernier_fichier_auto && nom_fichier_comptes )
+        if ( conf->dernier_fichier_auto && conf->tab_noms_derniers_fichiers_ouverts[0] )
         {
-            if ( !gsb_file_open_file ( nom_fichier_comptes ) )
-                g_free ( nom_fichier_comptes );
+            gsb_file_open_file ( conf->tab_noms_derniers_fichiers_ouverts[0] );
         }
     }
 
@@ -697,10 +282,14 @@ gboolean gsb_main_change_state_window ( GtkWidget *window,
 {
     if (event->changed_mask & GDK_WINDOW_STATE_MAXIMIZED)
     {
-	if (event->new_window_state & GDK_WINDOW_STATE_MAXIMIZED)
-	    conf.full_screen = TRUE;
-	else
-	    conf.full_screen = FALSE;
+        GrisbiAppConf *conf;
+
+        conf = grisbi_app_get_conf ( );
+
+        if (event->new_window_state & GDK_WINDOW_STATE_MAXIMIZED)
+            conf->full_screen = TRUE;
+        else
+            conf->full_screen = FALSE;
     }
     return FALSE;
 }
@@ -715,12 +304,21 @@ gboolean gsb_main_change_state_window ( GtkWidget *window,
  * */
 gboolean gsb_main_grisbi_close ( void )
 {
-    devel_debug (NULL);
+    GrisbiApp *app;
+    GrisbiWindow *main_window;
+    GrisbiAppConf *conf;
+
+    app = grisbi_app_get_default ( );
+    conf = grisbi_app_get_conf ( );
+
+    /* on récupère la fenetre active */
+    main_window = grisbi_app_get_active_window ( app );
+
     /* sauvegarde la position de la fenetre principale */
-    gtk_window_get_position ( GTK_WINDOW ( main_window ), &conf.root_x, &conf.root_y  );
+    gtk_window_get_position ( GTK_WINDOW ( main_window ), &conf->root_x, &conf->root_y );
 
-    if ( !gsb_main_window_delete_event ( main_window, NULL ) )
-        gtk_widget_destroy ( main_window );
+    if ( !gsb_main_window_delete_event ( GTK_WIDGET ( main_window ), NULL ) )
+        gtk_widget_destroy ( GTK_WIDGET ( main_window ) );
 
     /* clean finish of the debug file */
     if ( etat.debug_mode )
@@ -735,8 +333,10 @@ gboolean gsb_main_grisbi_close ( void )
  */
 static gboolean gsb_main_window_delete_event (GtkWidget *window, gpointer data)
 {
+    devel_debug (NULL);
+
     /* need to save the config before gsb_file_close */
-    gsb_file_config_save_config();
+/*    gsb_file_config_save_config (); */
 
     if (!gsb_file_close ())
         return TRUE;
@@ -748,9 +348,10 @@ static gboolean gsb_main_window_delete_event (GtkWidget *window, gpointer data)
  */
 static void gsb_main_window_destroy_event ( GObject* obj, gpointer data)
 {
-    free_variables();
+/*    free_variables();
     main_window = NULL;
     gtk_main_quit();
+*/
 }
 
 
@@ -766,8 +367,10 @@ gboolean gsb_main_set_grisbi_title ( gint account_number )
     gchar *titre = NULL;
     gint tmp_number;
     gboolean return_value;
-    
+    GrisbiAppConf *conf;
+
     devel_debug_int ( account_number );
+    conf = grisbi_app_get_conf ( );
 
     if ( nom_fichier_comptes == NULL )
     {
@@ -776,7 +379,7 @@ gboolean gsb_main_set_grisbi_title  ( gint account_number )  dow, gpointer data)  on */  /  ton" ) ), TRUE );  rted ones.") :   ,  he \"%s\" option in preferences."),  ));        ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                  ( gint account_number )
     }
     else
     {
-        switch ( conf.display_grisbi_title )
+        switch ( conf->display_grisbi_title )
         {
             case GSB_ACCOUNTS_TITLE:
                 if ( titre_fichier && strlen ( titre_fichier ) )
@@ -822,13 +425,14 @@ gboolean gsb_main_set_grisbi_title ( gint account_number )
             return_value = FALSE;
         }
     }
-    gtk_window_set_title ( GTK_WINDOW ( main_window ), titre_grisbi );
+/*     gtk_window_set_title ( GTK_WINDOW ( main_window ), titre_grisbi );  */
 
     gsb_main_page_update_homepage_title ( titre_grisbi );
 
     if ( titre_grisbi && strlen ( titre_grisbi ) > 0 )
         g_free ( titre_grisbi );
 
+    /* return */
     return return_value;
 }
 
@@ -920,16 +524,6 @@ gchar *gsb_main_get_print_dir_var ( void )
 
 
 /**
- * renvoie la fenêtre principale de Grisbi
- *
- *
- */
-GtkWidget *gsb_main_get_main_window ( void )
-{
-    return main_window;
-}
-
-/**
  * renvoie la version de Grisbi
  *
  * \param
@@ -969,11 +563,14 @@ gint gsb_main_get_debug_level ( void )
  *
  * \return debug_mode
  */
-gint gsb_main_set_debug_level ( void )
+gint gsb_main_set_debug_level ( GrisbiCommandLine *command_line )
 {
     gchar **tab;
     gint number = 0;
     gint number_1;
+    gint debug_level;
+
+    debug_level = grisbi_command_line_get_debug_level ( command_line );
 
     tab = g_strsplit ( VERSION, ".", 3 );
     number_1 = utils_str_atoi ( tab[1] );
@@ -996,63 +593,20 @@ gint gsb_main_set_debug_level ( void )
 
 
 /**
- * traite les arguments de la ligne de commande
- *
- * \param
- *
- * \return code de sortie 1 si erreur de traitement
- */
-gint gsb_main_setup_command_line_options ( int argc, char **argv )
-{
-    GOptionContext *context;
-    gint return_value = 0;
-    GError *error = NULL;
-
-    context = g_option_context_new ( _("- Personnal finances manager") );
-
-    g_option_context_set_summary ( context,
-                        N_("Grisbi can manage the accounts of a family or a small association.") );
-    g_option_context_set_translation_domain ( context, PACKAGE );
-
-    g_option_context_add_main_entries ( context, options, PACKAGE );
-    g_option_context_add_group ( context, gtk_get_option_group ( FALSE ));
-    g_option_context_set_translation_domain ( context, PACKAGE );
-
-    if ( !g_option_context_parse ( context, &argc, &argv, &error ) )
-    {
-        g_option_context_free ( context );
-        if (error)
-        {
-            g_print ("option parsing failed: %s\n", error->message);
-            g_error_free ( error );
-        }
-
-      return_value = 1;
-    }
-
-    g_option_context_free ( context );
-
-    return return_value;
-}
-
-
-/**
  *  procédure appelée après gtk_main_quit termine Grisbi
  *
  * \param
  *
  * \return
  */
-void gsb_main_grisbi_shutdown ( void )
+void gsb_main_grisbi_shutdown ( GrisbiCommandLine *command_line )
 {
-    gchar *filename;
+    devel_debug (NULL);
 
-    /* sauvegarde les raccourcis claviers */
-    filename = g_build_filename ( gsb_dirs_get_user_config_dir ( ), "grisbi-accels", NULL );
-    gtk_accel_map_save ( filename );
-    g_free ( filename );
+    g_object_unref ( command_line );
 
     /* libération de mémoire */
+    gsb_config_free_conf_filename ( );
     gsb_locale_shutdown ( );
     gsb_dirs_shutdown ( );
 
diff --git a/src/main.h b/src/main.h
index 5dc5774..8496325 100644
--- a/src/main.h
+++ b/src/main.h
@@ -9,11 +9,11 @@
 
 /* START_DECLARATION */
 gboolean gsb_main_get_debug_level ( void );
-GtkWidget *gsb_main_get_main_window ( void );
 gboolean gsb_main_grisbi_close ( void );
 gchar *gsb_main_get_print_dir_var ( void );
 gchar *gsb_main_get_print_locale_var ( void );
 gboolean gsb_main_set_grisbi_title ( gint account_number );
-int main (int argc, char **argv);
+void gsb_main_show_version ( void );
+gint main ( gint argc, gchar **argv );
 /* END_DECLARATION */
 #endif
diff --git a/src/menu.c b/src/menu.c
index 0d9ec0d..b39c31f 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -32,313 +32,41 @@
 
 /*START_INCLUDE*/
 #include "menu.h"
-#include "custom_list.h"
-#include "export.h"
 #include "fenetre_principale.h"
-#include "file_obfuscate_qif.h"
-#include "file_obfuscate.h"
+#include "grisbi_app.h"
 #include "gsb_account.h"
-#include "gsb_assistant_account.h"
-#include "gsb_assistant_archive.h"
-#include "gsb_assistant_archive_export.h"
-#include "gsb_data_account.h"
-#include "gsb_debug.h"
 #include "gsb_file.h"
 #include "gsb_form.h"
 #include "gsb_scheduler_list.h"
 #include "gsb_transactions_list.h"
-#include "help.h"
-#include "import.h"
-#include "main.h"
 #include "navigation.h"
-#include "parametres.h"
-#include "structures.h"
 #include "traitement_variables.h"
-#include "tip.h"
 #include "utils.h"
 #include "erreur.h"
 /*END_INCLUDE*/
 
 /*START_STATIC*/
-static gboolean gsb_gui_toggle_show_closed_accounts ( void );
-static gboolean gsb_gui_toggle_show_form ( void );
-
-static gboolean help_bugreport ( void );
-static gboolean help_manual ( void );
-static gboolean help_quick_start ( void );
-static gboolean help_translation ( void );
-static gboolean help_website ( void );
-static gboolean gsb_menu_reinit_largeur_col_menu ( void );
 /*END_STATIC*/
 
 
 
 /*START_EXTERN*/
-extern gchar **tab_noms_derniers_fichiers_ouverts;
 /*END_EXTERN*/
 
-
+/* variables globales */
 static gboolean block_menu_cb = FALSE;
-static GtkUIManager *ui_manager;
-static gint merge_id = -1;
 static gint recent_files_merge_id = -1;
 static gint move_to_account_merge_id = -1;
 
-static const gchar *ui_manager_buffer =
-"<ui>"
-"  <menubar>"
-"    <menu name='FileMenu' action='FileMenuAction' >"
-"      <menuitem name='New' action='NewAction'/>"
-"      <menuitem name='Open' action='OpenAction'/>"
-"      <menu name='RecentFiles' action='RecentFilesAction'>"
-"      </menu>"
-"      <separator/>"
-"      <menuitem name='Save' action='SaveAction'/>"
-"      <menuitem name='SaveAs' action='SaveAsAction'/>"
-"      <separator/>"
-"      <menuitem name='ImportFile' action='ImportFileAction'/>"
-"      <menuitem name='ExportFile' action='ExportFileAction'/>"
-"      <separator/>"
-"      <menuitem name='CreateArchive' action='CreateArchiveAction'/>"
-"      <menuitem name='ExportArchive' action='ExportArchiveAction'/>"
-"      <separator/>"
-"      <menuitem name='DebugFile' action='DebugFileAction'/>"
-"      <menuitem name='Obfuscate' action='ObfuscateAction'/>"
-"      <menuitem name='ObfuscateQif' action='ObfuscateQifAction'/>"
-"      <menuitem name='DebugMode' action='DebugModeAction'/>"
-"      <separator/>"
-"      <menuitem name='Close' action='CloseAction'/>"
-"      <menuitem name='Quit' action='QuitAction'/>"
-"    </menu>"
-"    <menu name='EditMenu' action='EditMenuAction' >"
-"      <menuitem name='EditTransaction' action='EditTransactionAction'/>"
-"      <separator/>"
-"      <menuitem name='NewTransaction' action='NewTransactionAction'/>"
-"      <menuitem name='RemoveTransaction' action='RemoveTransactionAction'/>"
-"      <menuitem name='TemplateTransaction' action='TemplateTransactionAction'/>"
-"      <menuitem name='CloneTransaction' action='CloneTransactionAction'/>"
-"      <separator/>"
-"      <menuitem name='ConvertToScheduled' action='ConvertToScheduledAction'/>"
-"      <menu name='MoveToAnotherAccount' action='MoveToAnotherAccountAction'>"
-"      </menu>"
-"   <separator/>"
-"       <menuitem name='NewAccount' action='NewAccountAction'/>"
-"       <menuitem name='RemoveAccount' action='RemoveAccountAction'/>"
-#ifndef GTKOSXAPPLICATION
-"      <separator/>"
-#endif
-"      <menuitem name='Preferences' action='PrefsAction'/>"
-"    </menu>"
-"    <menu name='ViewMenu' action='ViewMenuAction'>"
-"      <menuitem name='ShowTransactionForm' action='ShowTransactionFormAction'/>"
-"      <menuitem name='ShowReconciled' action='ShowReconciledAction'/>"
-"      <menuitem name='ShowArchived' action='ShowArchivedAction'/>"
-"      <menuitem name='ShowClosed' action='ShowClosedAction'/>"
-"      <separator/>"
-"      <menuitem name='ShowOneLine' action='ShowOneLineAction'/>"
-"      <menuitem name='ShowTwoLines' action='ShowTwoLinesAction'/>"
-"      <menuitem name='ShowThreeLines' action='ShowThreeLinesAction'/>"
-"      <menuitem name='ShowFourLines' action='ShowFourLinesAction'/>"
-"      <separator/>"
-"      <menuitem name='InitwidthCol' action='InitwidthColAction'/>"
-"    </menu>"
-"    <menu name='Help' action='HelpMenuAction' >"
-"      <menuitem name='Manual' action='ManualAction'/>"
-"      <menuitem name='QuickStart' action='QuickStartAction'/>"
-"      <menuitem name='Translation' action='TranslationAction'/>"
-"      <menuitem name='About' action='AboutAction'/>"
-"      <separator/>"
-"      <menuitem name='GrisbiWebsite' action='GrisbiWebsiteAction'/>"
-"      <menuitem name='ReportBug' action='ReportBugAction'/>"
-"      <separator/>"
-"      <menuitem name='Tip' action='TipAction'/>"
-"    </menu>"
-"  </menubar>"
-"</ui>";
-
-
-GtkWidget *init_menus ( GtkWidget *vbox )
-{
-    GtkWidget *menubar;
-    GtkActionGroup *actions;
-
-    /* remind of GtkActionEntry : name, stock_id, label, accelerator, tooltip, callback */
-    GtkActionEntry entries[] =
-    {
-        /* File menu */
-        {"FileMenuAction", NULL, _("_File"), NULL, NULL, NULL},
-	#ifdef GTKOSXAPPLICATION
-        { "NewAction", GTK_STOCK_NEW, _("_New account file..."), "<Meta>N", NULL,
-         G_CALLBACK ( gsb_file_new ) },
-        {"OpenAction",  GTK_STOCK_OPEN, _("_Open..."), "<Meta>O", NULL,
-         G_CALLBACK ( gsb_file_open_menu ) },
-        {"RecentFilesAction", NULL, _("_Recently opened files"), NULL, NULL, NULL },
-        {"SaveAction", GTK_STOCK_SAVE, _("_Save"), "<Meta>S", NULL,
-         G_CALLBACK ( gsb_file_save ) },
-	#else
-        { "NewAction", GTK_STOCK_NEW, _("_New account file..."), NULL, NULL,
-         G_CALLBACK ( gsb_file_new ) },
-        {"OpenAction",  GTK_STOCK_OPEN, _("_Open..."), NULL, NULL,
-         G_CALLBACK ( gsb_file_open_menu ) },
-        {"RecentFilesAction", NULL, _("_Recently opened files"), NULL, NULL, NULL },
-        {"SaveAction", GTK_STOCK_SAVE, _("_Save"), NULL, NULL,
-         G_CALLBACK ( gsb_file_save ) },
-	#endif
-        {"SaveAsAction", GTK_STOCK_SAVE_AS,	_("_Save as..."), NULL, NULL,
-         G_CALLBACK ( gsb_file_save_as ) },
-        {"ImportFileAction", GTK_STOCK_CONVERT,	_("_Import file..."), NULL, NULL,
-         G_CALLBACK ( importer_fichier ) },
-        { "ExportFileAction", GTK_STOCK_CONVERT, _("_Export accounts as QIF/CSV file..."), NULL, NULL,
-         G_CALLBACK ( export_accounts ) },
-        {"CreateArchiveAction", GTK_STOCK_CLEAR, _("Archive transactions..."), NULL, NULL,
-         G_CALLBACK ( gsb_assistant_archive_run_by_menu ) },
-        {"ExportArchiveAction",	GTK_STOCK_HARDDISK,	_("_Export an archive as GSB/QIF/CSV file..."), NULL, NULL,
-         G_CALLBACK ( gsb_assistant_archive_export_run ) },
-        {"DebugFileAction", GTK_STOCK_FIND, _("_Debug account file..."), "", NULL,
-         G_CALLBACK ( gsb_debug ) },
-        {"ObfuscateAction", GTK_STOCK_FIND, _("_Obfuscate account file..."), "", NULL,
-         G_CALLBACK ( file_obfuscate_run ) },
-        {"ObfuscateQifAction", GTK_STOCK_FIND, _("_Obfuscate QIF file..."), "", NULL,
-         G_CALLBACK ( file_obfuscate_qif_run ) },
-	#ifdef GTKOSXAPPLICATION
-        {"CloseAction", GTK_STOCK_CLOSE, _("_Close"), "<Meta>W", NULL,
-         G_CALLBACK ( gsb_file_close ) },
-	#else
-        {"CloseAction", GTK_STOCK_CLOSE, _("_Close"), NULL, NULL,
-         G_CALLBACK ( gsb_file_close ) },
-	#endif
-        {"QuitAction", GTK_STOCK_QUIT, _("_Quit"), NULL, NULL,
-         G_CALLBACK ( gsb_main_grisbi_close ) },
-
-        /* Editmenu */
-        {"EditMenuAction", NULL, _("_Edit"), NULL, NULL, NULL },
-        {"EditTransactionAction", GTK_STOCK_EDIT, _("_Edit transaction"), "", NULL,
-         G_CALLBACK ( gsb_transactions_list_edit_current_transaction ) },
-        {"NewTransactionAction", GTK_STOCK_NEW, _("_New transaction"), "", NULL,
-         G_CALLBACK ( new_transaction ) },
-        {"RemoveTransactionAction", GTK_STOCK_DELETE, _("_Remove transaction"), "", NULL,
-         G_CALLBACK ( remove_transaction ) },
-        {"TemplateTransactionAction", GTK_STOCK_COPY, _("Use selected transaction as a template"), "", NULL,
-         G_CALLBACK ( gsb_transactions_list_clone_template ) },
-        {"CloneTransactionAction", GTK_STOCK_COPY, _("_Clone transaction"), "", NULL,
-         G_CALLBACK ( clone_selected_transaction ) },
-        {"ConvertToScheduledAction", GTK_STOCK_CONVERT, _("Convert to _scheduled transaction"), NULL, NULL,
-         G_CALLBACK ( schedule_selected_transaction ) },
-        {"MoveToAnotherAccountAction", NULL, _("_Move transaction to another account"), NULL, NULL, NULL },
-        {"NewAccountAction", GTK_STOCK_NEW, _("_New account"), "", NULL,
-         G_CALLBACK ( gsb_assistant_account_run ) },
-        {"RemoveAccountAction", GTK_STOCK_DELETE, _("_Remove current account"), "", NULL,
-         G_CALLBACK ( gsb_account_delete ) },
-        {"PrefsAction", GTK_STOCK_PREFERENCES, _("_Preferences"), NULL, NULL,
-         G_CALLBACK ( preferences ) },
-
-        /* View menu */
-        {"ViewMenuAction", NULL, _("_View"), NULL, NULL, NULL },
-        {"InitwidthColAction", NULL, _("Reset the column width"), NULL, NULL,
-         G_CALLBACK ( gsb_menu_reinit_largeur_col_menu ) },
-
-        /* Help menu */
-        {"HelpMenuAction", NULL, _("_Help"), NULL, NULL, NULL },
-	#ifdef GTKOSXAPPLICATION
-        {"ManualAction", GTK_STOCK_HELP, _("_Manual"), "<Meta>H", NULL,
-         G_CALLBACK ( help_manual ) },
-	#else
-        {"ManualAction", GTK_STOCK_HELP, _("_Manual"), NULL, NULL,
-         G_CALLBACK ( help_manual ) },
-	#endif
-        {"QuickStartAction", NULL, _("_Quick start"), NULL, NULL,
-         G_CALLBACK ( help_quick_start ) },
-        {"TranslationAction", NULL, _("_Translation"), NULL, NULL,
-         G_CALLBACK ( help_translation ) },
-        {"AboutAction", GTK_STOCK_ABOUT, _("_About Grisbi..."), NULL, NULL,
-         G_CALLBACK ( a_propos ) },
-        {"GrisbiWebsiteAction", NULL, _("_Grisbi website"), NULL, NULL,
-         G_CALLBACK ( help_website ) },
-        {"ReportBugAction", NULL, _("_Report a bug"), NULL, NULL,
-         G_CALLBACK ( help_bugreport ) },
-        {"TipAction", GTK_STOCK_DIALOG_INFO, _("_Tip of the day"), NULL, NULL,
-         G_CALLBACK ( force_display_tip ) },
-    };
-
-    GtkRadioActionEntry radio_entries[] =
-    {
-        /* Name, StockID, Label, Accelerator, Tooltip, Value */
-        {"ShowOneLineAction", NULL, _("Show _one line per transaction"), NULL, NULL,
-         ONE_LINE_PER_TRANSACTION },
-        {"ShowTwoLinesAction", NULL, _("Show _two lines per transaction"), NULL, NULL,
-         TWO_LINES_PER_TRANSACTION },
-        {"ShowThreeLinesAction", NULL, _("Show _three lines per transaction"), NULL, NULL,
-         THREE_LINES_PER_TRANSACTION },
-        {"ShowFourLinesAction", NULL, _("Show _four lines per transaction"), NULL, NULL,
-         FOUR_LINES_PER_TRANSACTION },
-    };
-
-    GtkToggleActionEntry toggle_entries[] =
-    {
-        {"DebugModeAction", NULL, _("Debug mode"), NULL, NULL,
-         G_CALLBACK ( gsb_debug_start_log ), etat.debug_mode },
-        {"ShowTransactionFormAction", NULL, _("Show transaction _form"), NULL, NULL,
-         G_CALLBACK ( gsb_gui_toggle_show_form ), etat.formulaire_toujours_affiche },
-#ifdef GTKOSXAPPLICATION
-        {"ShowReconciledAction", NULL, _("Show _reconciled"), "<Meta>R", NULL,
-         G_CALLBACK ( gsb_gui_toggle_show_reconciled ), 0 },
-        {"ShowArchivedAction", NULL, _("Show _lines archives"), "<Meta>L", NULL,
-         G_CALLBACK ( gsb_gui_toggle_show_archived ), 0 },
-#else
-        {"ShowReconciledAction", NULL, _("Show _reconciled"), "<Alt>R", NULL,
-         G_CALLBACK ( gsb_gui_toggle_show_reconciled ), 0 },
-        {"ShowArchivedAction", NULL, _("Show _lines archives"), "<Alt>L", NULL,
-         G_CALLBACK ( gsb_gui_toggle_show_archived ), 0 },
-#endif
-        {"ShowClosedAction", NULL, _("Show _closed accounts"), NULL, NULL,
-         G_CALLBACK ( gsb_gui_toggle_show_closed_accounts ), etat.show_closed_accounts } 
-    };
-
-    ui_manager = gtk_ui_manager_new ();
-
-    actions = gtk_action_group_new ( "Actions" );
-
-    gtk_action_group_add_actions (actions,
-                        entries,
-                        G_N_ELEMENTS ( entries ),
-                        (gpointer) run.window );
-
-    gtk_action_group_add_radio_actions ( actions,
-                        radio_entries, 
-                        G_N_ELEMENTS ( radio_entries ), 
-                        -1,
-                        G_CALLBACK ( gsb_gui_toggle_line_view_mode ), 
-                        NULL );
-
-    gtk_action_group_add_toggle_actions ( actions,
-                        toggle_entries, 
-                        G_N_ELEMENTS ( toggle_entries ), 
-                        NULL );
-
-    gtk_ui_manager_insert_action_group ( ui_manager, actions, 0 );
-    merge_id = gtk_ui_manager_add_ui_from_string ( ui_manager,
-                        ui_manager_buffer, -1, NULL );
-
-#ifndef GTKOSXAPPLICATION
-    gtk_window_add_accel_group ( GTK_WINDOW ( run.window ),
-                        gtk_ui_manager_get_accel_group ( ui_manager ) );
-#endif /* GTKOSXAPPLICATION */
-
-    menubar = gtk_ui_manager_get_widget ( ui_manager, "/menubar" );
-    gtk_box_pack_start ( GTK_BOX ( vbox ),  menubar, FALSE, TRUE, 0 );
-
-    gsb_gui_sensitive_menu_item ( "/menubar/EditMenu/NewTransaction", FALSE );
-    gsb_menu_transaction_operations_set_sensitive ( FALSE );
-
-    return menubar;
-}
-
-
 /**
  * Blank the "Recent files submenu".
  */
 void efface_derniers_fichiers_ouverts ( void )
 {
+    GtkUIManager *ui_manager;
+
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
+
     gtk_ui_manager_remove_ui ( ui_manager, recent_files_merge_id );
 }
 
@@ -348,32 +76,40 @@ void efface_derniers_fichiers_ouverts ( void )
  */
 gboolean affiche_derniers_fichiers_ouverts ( void )
 {
+    GtkActionGroup *action_group;
+    GrisbiAppConf *conf;
+    GtkUIManager *ui_manager;
+    gint recent_files_merge_id = -1;
     gint i;
-    GtkActionGroup * action_group;
+
+    devel_debug (NULL);
+    conf = grisbi_app_get_conf ( );
 
     efface_derniers_fichiers_ouverts ();
 
-    if ( conf.nb_derniers_fichiers_ouverts > conf.nb_max_derniers_fichiers_ouverts )
+    if ( conf->nb_derniers_fichiers_ouverts > conf->nb_max_derniers_fichiers_ouverts )
     {
-        conf.nb_derniers_fichiers_ouverts = conf.nb_max_derniers_fichiers_ouverts;
+        conf->nb_derniers_fichiers_ouverts = conf->nb_max_derniers_fichiers_ouverts;
     }
 
-    if ( ! conf.nb_derniers_fichiers_ouverts || ! conf.nb_max_derniers_fichiers_ouverts )
+    if ( !conf->nb_derniers_fichiers_ouverts || !conf->nb_max_derniers_fichiers_ouverts )
     {
         return FALSE;
     }
 
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
+
     action_group = gtk_action_group_new ( "Group2" );
 
-    for ( i = 0 ; i < conf.nb_derniers_fichiers_ouverts ; i++ )
+    for ( i = 0 ; i < conf->nb_derniers_fichiers_ouverts ; i++ )
     {
         gchar *tmp_name;
         GtkAction *action;
 
         tmp_name = g_strdup_printf ( "LastFile%d", i );
 
-        action = gtk_action_new ( tmp_name, 
-                        tab_noms_derniers_fichiers_ouverts[i], 
+        action = gtk_action_new ( tmp_name,
+                        conf->tab_noms_derniers_fichiers_ouverts[i],
                         "",
                         "" );
         g_free ( tmp_name );
@@ -388,7 +124,7 @@ gboolean affiche_derniers_fichiers_ouverts ( void )
 
     recent_files_merge_id = gtk_ui_manager_new_merge_id ( ui_manager );
 
-    for ( i=0 ; i < conf.nb_derniers_fichiers_ouverts ; i++ )
+    for ( i=0 ; i < conf->nb_derniers_fichiers_ouverts ; i++ )
     {
         gchar *tmp_name;
         gchar *tmp_label;
@@ -397,8 +133,8 @@ gboolean affiche_derniers_fichiers_ouverts ( void )
         tmp_label = g_strdup_printf ( "_%d LastFile%d", i, i );
 
         gtk_ui_manager_add_ui ( ui_manager,
-                    recent_files_merge_id, 
-                    "/menubar/FileMenu/RecentFiles/",
+                    recent_files_merge_id,
+                    "/menubar/FileMenu/RecentFiles/FileRecentsPlaceholder",
                     tmp_label,
                     tmp_name,
                     GTK_UI_MANAGER_MENUITEM,
@@ -408,20 +144,12 @@ gboolean affiche_derniers_fichiers_ouverts ( void )
         g_free ( tmp_label );
     }
 
-    /* add a separator */
-    gtk_ui_manager_add_ui ( ui_manager,
-                    merge_id, 
-                    "/menubar/FileMenu/Open/",
-                    NULL,
-                    NULL,
-                    GTK_UI_MANAGER_SEPARATOR,
-                    FALSE );
-
     gtk_ui_manager_ensure_update ( ui_manager );
 
 #ifdef GTKOSXAPPLICATION
     grisbi_osx_app_update_menus_cb ( );
 #endif /* GTKOSXAPPLICATION */
+
     return FALSE;
 }
 
@@ -537,14 +265,17 @@ gboolean help_bugreport ( void )
  */
 gboolean gsb_gui_sensitive_menu_item ( gchar *item_name, gboolean state )
 {
-    GtkWidget * widget;
+    GtkWidget *widget;
+    GtkUIManager *ui_manager;
+
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
 
     widget = gtk_ui_manager_get_widget ( ui_manager, item_name );
     
     if ( widget && GTK_IS_WIDGET(widget) )
     {
-	gtk_widget_set_sensitive ( widget, state );
-	return TRUE;
+        gtk_widget_set_sensitive ( widget, state );
+        return TRUE;
     }
     return FALSE;
 }
@@ -658,7 +389,10 @@ gboolean gsb_gui_toggle_show_archived ( void )
  */
 gboolean gsb_gui_toggle_show_closed_accounts ( void )
 {
-    etat.show_closed_accounts = ! etat.show_closed_accounts;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
+    conf->show_closed_accounts = ! conf->show_closed_accounts;
 
     gsb_gui_navigation_create_account_list ( gsb_gui_navigation_get_model ( ) );
     gsb_gui_navigation_update_home_page ( );
@@ -681,49 +415,52 @@ gboolean gsb_menu_update_view_menu ( gint account_number )
 {
     gchar * item_name = NULL;
     gchar *tmpstr;
+    GtkUIManager *ui_manager;
 
     devel_debug_int (account_number);
 
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
+
     block_menu_cb = TRUE;
 
     /* update the showing of reconciled transactions */
     tmpstr = "/menubar/ViewMenu/ShowReconciled";
     gtk_toggle_action_set_active ( GTK_TOGGLE_ACTION (
-                        gtk_ui_manager_get_action ( ui_manager, tmpstr) ), 
-				        gsb_data_account_get_r ( account_number ) );
+                        gtk_ui_manager_get_action ( ui_manager, tmpstr) ),
+                        gsb_data_account_get_r ( account_number ) );
 
     tmpstr = "/menubar/ViewMenu/ShowTransactionForm";
     gtk_toggle_action_set_active ( GTK_TOGGLE_ACTION (
-                        gtk_ui_manager_get_action ( ui_manager, tmpstr) ), 
-				        gsb_form_is_visible ( ) );
+                        gtk_ui_manager_get_action ( ui_manager, tmpstr) ),
+                        gsb_form_is_visible ( ) );
 
     /* update the showing of archived transactions */
     tmpstr = "/menubar/ViewMenu/ShowArchived";
     gtk_toggle_action_set_active ( GTK_TOGGLE_ACTION (
-                        gtk_ui_manager_get_action ( ui_manager, tmpstr) ), 
-				        gsb_data_account_get_l ( account_number ) );
+                        gtk_ui_manager_get_action ( ui_manager, tmpstr) ),
+                        gsb_data_account_get_l ( account_number ) );
 
     /* update the number of line showed */
     switch ( gsb_data_account_get_nb_rows (account_number))
     {
-	default:
-	case 1 :
-	    item_name = "/menubar/ViewMenu/ShowOneLine";
-	    break;
-	case 2 :
-	    item_name = "/menubar/ViewMenu/ShowTwoLines";
-	    break;
-	case 3 :
-	    item_name = "/menubar/ViewMenu/ShowThreeLines";
-	    break;
-	case 4 :
-	    item_name = "/menubar/ViewMenu/ShowFourLines";
-	    break;
+        default:
+        case 1 :
+            item_name = "/menubar/ViewMenu/ShowOneLine";
+            break;
+        case 2 :
+            item_name = "/menubar/ViewMenu/ShowTwoLines";
+            break;
+        case 3 :
+            item_name = "/menubar/ViewMenu/ShowThreeLines";
+            break;
+        case 4 :
+            item_name = "/menubar/ViewMenu/ShowFourLines";
+            break;
     }
 
     gtk_toggle_action_set_active ( GTK_TOGGLE_ACTION (
                         gtk_ui_manager_get_action ( ui_manager, item_name ) ),
-				        TRUE );
+                        TRUE );
     block_menu_cb = FALSE;
 
     return FALSE;
@@ -740,10 +477,13 @@ gboolean gsb_menu_update_view_menu ( gint account_number )
 gboolean gsb_menu_update_accounts_in_menus ( void )
 {
     GSList *list_tmp;
-    GtkActionGroup * action_group;
+    GtkActionGroup *action_group;
+    GtkUIManager *ui_manager;
+
+    ui_manager = grisbi_window_get_ui_manager ( grisbi_app_get_active_window ( NULL ) );
 
-    if ( move_to_account_merge_id != -1 ) 
-	gtk_ui_manager_remove_ui ( ui_manager, move_to_account_merge_id );
+    if ( move_to_account_merge_id != -1 )
+        gtk_ui_manager_remove_ui ( ui_manager, move_to_account_merge_id );
 
     move_to_account_merge_id = gtk_ui_manager_new_merge_id ( ui_manager );
     action_group = gtk_action_group_new ( "Group3" );
@@ -753,38 +493,40 @@ gboolean gsb_menu_update_accounts_in_menus ( void )
 
     while ( list_tmp )
     {
-	gint i;
-
-	i = gsb_data_account_get_no_account ( list_tmp -> data );
-
-	if ( !gsb_data_account_get_closed_account ( i ))
-	{
-	    gchar * tmp_name = g_strdup_printf ( "MoveToAccount%d", i );
-	    gchar * account_name = gsb_data_account_get_name(i);
-	    GtkAction * action;
-
-	    if ( ! account_name )
-	    {
-		account_name = _("Unnamed account");
-	    }
-	    action = gtk_action_new ( tmp_name, account_name, "", "" );
-
-	    if ( gsb_gui_navigation_get_current_account () == i )
-		gtk_action_set_sensitive ( action, FALSE );
-
-	    gtk_action_group_add_action ( action_group, action );
-
-	    g_signal_connect ( action, "activate", 
-			       G_CALLBACK(move_selected_operation_to_account_nb), 
-			       GINT_TO_POINTER(i) );
-	    gtk_ui_manager_add_ui ( ui_manager, recent_files_merge_id, 
-				    "/menubar/EditMenu/MoveToAnotherAccount/",
-				    tmp_name, tmp_name,
-				    GTK_UI_MANAGER_MENUITEM, FALSE );
-	    g_free ( tmp_name );
-	}
-
-	list_tmp = list_tmp -> next;
+        gint i;
+
+        i = gsb_data_account_get_no_account ( list_tmp -> data );
+
+        if ( !gsb_data_account_get_closed_account ( i ))
+        {
+            gchar * tmp_name = g_strdup_printf ( "MoveToAccount%d", i );
+            gchar * account_name = gsb_data_account_get_name(i);
+            GtkAction * action;
+
+            if ( ! account_name )
+            {
+            account_name = _("Unnamed account");
+            }
+            action = gtk_action_new ( tmp_name, account_name, "", "" );
+
+            if ( gsb_gui_navigation_get_current_account () == i )
+            gtk_action_set_sensitive ( action, FALSE );
+
+            gtk_action_group_add_action ( action_group, action );
+
+            g_signal_connect ( action,
+                        "activate",
+                        G_CALLBACK ( move_selected_operation_to_account_nb ),
+                        GINT_TO_POINTER ( i ) );
+
+            gtk_ui_manager_add_ui ( ui_manager, recent_files_merge_id,
+                        "/menubar/EditMenu/MoveToAnotherAccount/",
+                        tmp_name, tmp_name,
+                        GTK_UI_MANAGER_MENUITEM, FALSE );
+            g_free ( tmp_name );
+        }
+
+        list_tmp = list_tmp -> next;
     }
 
     gtk_ui_manager_insert_action_group ( ui_manager, action_group, 2 );
@@ -794,7 +536,6 @@ gboolean gsb_menu_update_accounts_in_menus ( void )
 }
 
 
-
 /**
  * Set sensitiveness of all menu items that work on the selected transaction.
 
@@ -824,18 +565,6 @@ gboolean gsb_menu_transaction_operations_set_sensitive ( gboolean sensitive )
  *
  *
  **/
-GtkUIManager *gsb_menu_get_ui_manager ( void )
-{
-    return ui_manager;
-}
-
-
-/**
- *
- *
- *
- *
- **/
 gboolean gsb_menu_reinit_largeur_col_menu ( void )
 {
     gint current_page;
@@ -873,6 +602,53 @@ gboolean gsb_menu_set_block_menu_cb ( gboolean etat )
 }
 
 
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
+void gsb_menu_sensitive ( gboolean sensitif )
+{
+    GrisbiWindow *window;
+    GtkUIManager *ui_manager;
+    GtkActionGroup *actions;
+
+    devel_debug_int (sensitif);
+
+    window = grisbi_app_get_active_window ( NULL );
+    ui_manager = grisbi_app_get_active_ui_manager ( );
+
+
+    actions = grisbi_window_get_action_group ( window, "DivisionSensitiveActions" );
+    gtk_action_group_set_sensitive ( actions, sensitif );
+    actions = grisbi_window_get_action_group ( window, "FileDebugToggleAction" );
+    gtk_action_group_set_sensitive ( actions, sensitif );
+
+}
+
+
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
+void gsb_menu_full_screen_mode ( void )
+{
+    GrisbiWindow *window;
+    GrisbiAppConf *conf;
+
+    window = grisbi_app_get_active_window ( NULL );
+    conf = grisbi_app_get_conf ( );
+    if ( conf->full_screen )
+        gtk_window_unfullscreen ( GTK_WINDOW ( window ) );
+    else
+        gtk_window_fullscreen ( GTK_WINDOW ( window ) );
+}
+
 /* Local Variables: */
 /* c-basic-offset: 4 */
 /* End: */
diff --git a/src/menu.h b/src/menu.h
index 765bf75..ac0f884 100644
--- a/src/menu.h
+++ b/src/menu.h
@@ -26,12 +26,21 @@ void gsb_gui_toggle_line_view_mode ( GtkRadioAction *action,
                         GtkRadioAction *current,
                         gpointer user_data );
 gboolean gsb_gui_toggle_show_archived ( void );
+gboolean gsb_gui_toggle_show_closed_accounts ( void );
+gboolean gsb_gui_toggle_show_form ( void );
 gboolean gsb_gui_toggle_show_reconciled ( void );
+void gsb_menu_full_screen_mode ( void );
 GtkUIManager *gsb_menu_get_ui_manager ( void );
+gboolean gsb_menu_reinit_largeur_col_menu ( void );
+void gsb_menu_sensitive ( gboolean sensitif );
 gboolean gsb_menu_set_block_menu_cb ( gboolean etat );
 gboolean gsb_menu_transaction_operations_set_sensitive ( gboolean sensitive );
 gboolean gsb_menu_update_accounts_in_menus ( void );
 gboolean gsb_menu_update_view_menu ( gint account_number );
-GtkWidget *init_menus ( GtkWidget *vbox );
+gboolean help_bugreport ( void );
+gboolean help_manual ( void );
+gboolean help_quick_start ( void );
+gboolean help_translation ( void );
+gboolean help_website ( void );
 /* END_DECLARATION */
 #endif
diff --git a/src/navigation.c b/src/navigation.c
index 04affb7..0fa272c 100644
--- a/src/navigation.c
+++ b/src/navigation.c
@@ -1,6 +1,6 @@
 /* ************************************************************************** */
 /*                                                                            */
-/*     Copyright (C)	2000-2008 Cédric Auger (cedric at grisbi.org)            */
+/*     Copyright (C)    2000-2008 Cédric Auger (cedric at grisbi.org)            */
 /*          2003-2008 Benjamin Drieu (bdrieu at april.org)	                      */
 /*          http://www.grisbi.org                                             */
 /*                                                                            */
@@ -37,6 +37,8 @@
 #include "categories_onglet.h"
 #include "etats_onglet.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
+#include "grisbi_window.h"
 #include "gsb_account.h"
 #include "gsb_account_property.h"
 #include "gsb_assistant_account.h"
@@ -102,15 +104,15 @@ static gboolean gsb_gui_navigation_remove_report_iterator ( GtkTreeModel *model,
 static gboolean gsb_gui_navigation_select_line ( GtkTreeSelection *selection,
                         GtkTreeModel *model );
 static void gsb_gui_navigation_set_selection_branch ( GtkTreeSelection *selection,
-					    GtkTreeIter * iter, gint page,
-					    gint account_number, gpointer report );
+                        GtkTreeIter * iter, gint page,
+                        gint account_number, gpointer report );
 static void gsb_gui_navigation_set_navigation_pages ( GtkTreeModel *model,
                         gint type_page,
                         gint ordre );
-static void gsb_gui_navigation_set_selection_branch ( GtkTreeSelection *selection, 
-					    GtkTreeIter *iter,
+static void gsb_gui_navigation_set_selection_branch ( GtkTreeSelection *selection,
+                        GtkTreeIter *iter,
                         gint page,
-					    gint account_number,
+                        gint account_number,
                         gpointer report );
 static void gsb_gui_navigation_update_account_iter ( GtkTreeModel *model,
                         GtkTreeIter * account_iter,
@@ -158,9 +160,6 @@ enum navigation_cols {
     NAVIGATION_TOTAL,
 };
 
-/** Navigation tree view. */
-static GtkWidget *navigation_tree_view = NULL;
-
 /** Model of the navigation tree. */
 static GtkTreeModel *navigation_model = NULL;
 
@@ -190,7 +189,7 @@ static gboolean report_expander = FALSE;
 
 static GtkTargetEntry row_targets[] =
 {
-	{ "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
+    { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, 0 }
 };
 
 
@@ -200,52 +199,52 @@ static GtkTargetEntry row_targets[] =
  *
  * \return The newly allocated pane.
  */
-GtkWidget *gsb_gui_navigation_create_navigation_pane ( void )
+void gsb_gui_navigation_create_navigation_pane ( void )
 {
-    GtkWidget * sw, *vbox;
+    GtkWidget *vbox;
+    GtkWidget *sw;
+    GtkWidget *navigation_tree_view;
     GQueue *tmp_queue;
-    GtkCellRenderer * renderer;
-    GtkTreeDragDestIface * navigation_dst_iface;
-    GtkTreeDragSourceIface * navigation_src_iface;
-    GtkTreeViewColumn * column;
-	gint i;
+    GtkCellRenderer *renderer;
+    GtkTreeDragDestIface *navigation_dst_iface;
+    GtkTreeDragSourceIface *navigation_src_iface;
+    GtkTreeViewColumn *column;
+    gint i;
     gint xpad;
     gint ypad;
+    GrisbiAppConf *conf;
 
-    vbox = gtk_vbox_new ( FALSE, 6 );
+    conf = grisbi_app_get_conf ( );
 
-    sw = gtk_scrolled_window_new (NULL, NULL);
-    gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw), GTK_SHADOW_ETCHED_IN);
-    gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw), GTK_POLICY_NEVER,
-				    GTK_POLICY_AUTOMATIC);
+    vbox = grisbi_window_get_widget_by_name ( "vbox_left_panel" );
+    sw = grisbi_window_get_widget_by_name ( "sw_left_panel" );
 
     /* Create the view */
-    navigation_tree_view = gtk_tree_view_new ();
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     gtk_tree_view_set_headers_visible ( GTK_TREE_VIEW(navigation_tree_view), FALSE );
-    gtk_container_add ( GTK_CONTAINER(sw), navigation_tree_view );
-
-    navigation_model = GTK_TREE_MODEL ( gtk_tree_store_new ( NAVIGATION_TOTAL, 
-							    GDK_TYPE_PIXBUF,        /* NAVIGATION_PIX */
-							    G_TYPE_BOOLEAN,         /* NAVIGATION_PIX_VISIBLE */
-                                G_TYPE_STRING,          /* NAVIGATION_TEXT */ 
-							    G_TYPE_INT,             /* NAVIGATION_FONT */
-                                G_TYPE_INT,             /* NAVIGATION_PAGE */
-							    G_TYPE_INT,             /* NAVIGATION_ACCOUNT */
-                                G_TYPE_INT,             /* NAVIGATION_REPORT */
-							    G_TYPE_INT,             /* NAVIGATION_SENSITIVE */
-                                G_TYPE_INT ) );         /* NAVIGATION_ORDRE */
+
+    navigation_model = GTK_TREE_MODEL ( gtk_tree_store_new ( NAVIGATION_TOTAL,
+                        GDK_TYPE_PIXBUF,        /* NAVIGATION_PIX */
+                        G_TYPE_BOOLEAN,         /* NAVIGATION_PIX_VISIBLE */
+                        G_TYPE_STRING,          /* NAVIGATION_TEXT */
+                        G_TYPE_INT,             /* NAVIGATION_FONT */
+                        G_TYPE_INT,             /* NAVIGATION_PAGE */
+                        G_TYPE_INT,             /* NAVIGATION_ACCOUNT */
+                        G_TYPE_INT,             /* NAVIGATION_REPORT */
+                        G_TYPE_INT,             /* NAVIGATION_SENSITIVE */
+                        G_TYPE_INT ) );         /* NAVIGATION_ORDRE */
 
     gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE ( navigation_model ),
                         NAVIGATION_ORDRE, GTK_SORT_ASCENDING );
-    gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE ( navigation_model ), 
+    gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE ( navigation_model ),
                         NAVIGATION_ORDRE, navigation_sort_column,
                         NULL, NULL );
 
     /* Enable drag & drop */
     gtk_tree_view_enable_model_drag_source ( GTK_TREE_VIEW ( navigation_tree_view ),
-					    GDK_BUTTON1_MASK,
+                        GDK_BUTTON1_MASK,
                         row_targets, 1,
-					    GDK_ACTION_MOVE | GDK_ACTION_COPY );
+                        GDK_ACTION_MOVE | GDK_ACTION_COPY );
     gtk_tree_view_enable_model_drag_dest ( GTK_TREE_VIEW ( navigation_tree_view ),
                         row_targets,
                         1,
@@ -280,12 +279,12 @@ GtkWidget *gsb_gui_navigation_create_navigation_pane ( void )
                         G_CALLBACK ( gsb_gui_navigation_check_key_press ),
                         navigation_model );
 
-        g_signal_connect ( navigation_tree_view,
+    g_signal_connect ( navigation_tree_view,
                         "scroll-event",
                         G_CALLBACK ( gsb_gui_navigation_check_scroll ),
                         NULL );
 
-    if ( conf.active_scrolling_left_pane == 0 )
+    if ( conf->active_scrolling_left_pane == 0 )
         g_signal_handlers_block_by_func ( gsb_gui_navigation_get_tree_view ( ),
                         G_CALLBACK ( gsb_gui_navigation_check_scroll ),
                         NULL );
@@ -334,9 +333,6 @@ GtkWidget *gsb_gui_navigation_create_navigation_pane ( void )
         gsb_gui_navigation_set_navigation_pages ( navigation_model, page -> type_page, i );
     }
 
-    /* Finish tree. */
-    gtk_box_pack_start ( GTK_BOX(vbox), sw, TRUE, TRUE, 0 );
-
     /* Create calendar (hidden for now). */
     scheduler_calendar = gsb_calendar_new ();
     gtk_box_pack_end ( GTK_BOX(vbox), scheduler_calendar, FALSE, FALSE, 0 );
@@ -347,24 +343,23 @@ GtkWidget *gsb_gui_navigation_create_navigation_pane ( void )
 
     /* signals of tree_view */
     g_signal_connect ( G_OBJECT ( navigation_tree_view ),
-		                "button-press-event",
-		                G_CALLBACK ( gsb_gui_navigation_button_press ),
-		                NULL );
+                        "button-press-event",
+                        G_CALLBACK ( gsb_gui_navigation_button_press ),
+                        NULL );
 
     g_signal_connect ( G_OBJECT ( navigation_tree_view ),
-		                "row-collapsed",
-		                G_CALLBACK ( gsb_gui_navigation_activate_expander ),
-		                GINT_TO_POINTER ( 0 ) );
+                        "row-collapsed",
+                        G_CALLBACK ( gsb_gui_navigation_activate_expander ),
+                        GINT_TO_POINTER ( 0 ) );
     g_signal_connect ( G_OBJECT ( navigation_tree_view ),
-		                "row-expanded",
-		                G_CALLBACK ( gsb_gui_navigation_activate_expander ),
-		                GINT_TO_POINTER ( 1 ) );
+                        "row-expanded",
+                        G_CALLBACK ( gsb_gui_navigation_activate_expander ),
+                        GINT_TO_POINTER ( 1 ) );
 
-    gtk_widget_show_all ( vbox );
     gtk_widget_hide ( scheduler_calendar );
     gtk_widget_hide ( reconcile_panel );
 
-    return vbox;
+    /* return */
 }
 
 
@@ -380,22 +375,24 @@ GtkWidget *gsb_gui_navigation_create_navigation_pane ( void )
  * */
 gint gsb_gui_navigation_get_current_page ( void )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeSelection *selection;
     GtkTreeIter iter;
     gint page;
 
-    if (!navigation_tree_view)
-	return -1;
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
+    if ( !navigation_tree_view )
+        return -1;
 
-    selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (navigation_tree_view));
+    selection = gtk_tree_view_get_selection (GTK_TREE_VIEW ( navigation_tree_view ) );
 
-    if (!gtk_tree_selection_get_selected (selection, NULL, &iter))
-	return GSB_HOME_PAGE;
+    if ( !gtk_tree_selection_get_selected ( selection, NULL, &iter ) )
+        return GSB_HOME_PAGE;
 
-    gtk_tree_model_get ( GTK_TREE_MODEL (navigation_model),
-			 &iter,
-			 NAVIGATION_PAGE, &page,
-			 -1);
+    gtk_tree_model_get ( GTK_TREE_MODEL ( navigation_model ),
+                        &iter,
+                        NAVIGATION_PAGE, &page,
+                        -1 );
     return page;
 }
 
@@ -404,8 +401,8 @@ gint gsb_gui_navigation_get_current_page ( void )
 /**
  * return the account number selected
  * rem : this is only for account number of the transactions list,
- * 	if we want the current account number, for transactions or scheduled, go to
- * 	see gsb_form_get_account_number
+ * if we want the current account number, for transactions or scheduled, go to
+ * see gsb_form_get_account_number
  *
  * \param
  *
@@ -413,27 +410,29 @@ gint gsb_gui_navigation_get_current_page ( void )
  * */
 gint gsb_gui_navigation_get_current_account ( void )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeSelection *selection;
     GtkTreeIter iter;
     gint page;
     gint account_number;
 
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     if ( !navigation_tree_view )
-	return -1;
+        return -1;
 
-    selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (navigation_tree_view));
+    selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( navigation_tree_view ) );
 
-    if (! gtk_tree_selection_get_selected (selection, NULL, &iter))
-	return -1;
+    if (! gtk_tree_selection_get_selected ( selection, NULL, &iter ) )
+        return -1;
+
+    gtk_tree_model_get ( GTK_TREE_MODEL ( navigation_model ),
+                        &iter,
+                        NAVIGATION_PAGE, &page,
+                        NAVIGATION_ACCOUNT, &account_number,
+                        -1 );
 
-    gtk_tree_model_get ( GTK_TREE_MODEL (navigation_model),
-			 &iter,
-			 NAVIGATION_PAGE, &page,
-			 NAVIGATION_ACCOUNT, &account_number,
-			 -1);
-    
     if ( page == GSB_ACCOUNT_PAGE )
-	return account_number;
+        return account_number;
 
     return -1;
 }
@@ -447,8 +446,8 @@ gint gsb_gui_navigation_get_current_account ( void )
  * \param
  *
  * \return the last account number (become the current account number once the
- * 		switch is finished...)
- * 
+ *  switch is finished...)
+ *
  * */
 gint gsb_gui_navigation_get_last_account ( void )
 {
@@ -465,31 +464,35 @@ gint gsb_gui_navigation_get_last_account ( void )
  * */
 gint gsb_gui_navigation_get_current_report ( void )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeSelection *selection;
     GtkTreeIter iter;
     gint page;
 
-    if ( ! navigation_tree_view )
-    {
-	return 0;
-    }
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
+    if ( !navigation_tree_view )
+        return 0;
 
     selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (navigation_tree_view));
 
-    if (! gtk_tree_selection_get_selected (selection, NULL, &iter))
-	return 0;
+    if (! gtk_tree_selection_get_selected ( selection, NULL, &iter ) )
+        return 0;
+
+    gtk_tree_model_get ( GTK_TREE_MODEL ( navigation_model ),
+                        &iter,
+                        NAVIGATION_PAGE, &page,
+                        -1 );
 
-    gtk_tree_model_get ( GTK_TREE_MODEL (navigation_model),
-			 &iter,
-			 NAVIGATION_PAGE, &page,
-			 -1);
-    
-    if ( page == GSB_REPORTS_PAGE)
+    if ( page == GSB_REPORTS_PAGE )
     {
-	gint report_number;
-	gtk_tree_model_get (GTK_TREE_MODEL(navigation_model), &iter, NAVIGATION_REPORT, &report_number, -1);
+        gint report_number;
+
+        gtk_tree_model_get ( GTK_TREE_MODEL ( navigation_model ),
+                        &iter,
+                        NAVIGATION_REPORT, &report_number,
+                        -1 );
 
-	return report_number;
+        return report_number;
     }
 
     return -1;
@@ -501,14 +504,17 @@ gint gsb_gui_navigation_get_current_report ( void )
 /**
  * Create a list of tree items that are shortcuts to accounts.
  *
- * \param model		Tree model to insert items into.
- * \param account_iter	Parent iter.
+ * \param model Tree model to insert items into.
+ * \param account_iter Parent iter.
  */
 void gsb_gui_navigation_create_account_list ( GtkTreeModel *model )
 {
     GSList *list_tmp;
     GtkTreeIter parent, child;
     GtkTreePath *path;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     path = gsb_gui_navigation_get_page_path ( model, GSB_HOME_PAGE );
     gtk_tree_model_get_iter ( GTK_TREE_MODEL( model ), &parent, path );
@@ -525,8 +531,9 @@ void gsb_gui_navigation_create_account_list ( GtkTreeModel *model )
     {
         gint i = gsb_data_account_get_no_account ( list_tmp -> data );
 
-        if ( etat.show_closed_accounts || 
-             ! gsb_data_account_get_closed_account ( i ) )
+        if ( conf->show_closed_accounts
+         ||
+         !gsb_data_account_get_closed_account ( i ) )
         {
             gsb_gui_navigation_add_account ( i, FALSE );
         }
@@ -537,6 +544,9 @@ void gsb_gui_navigation_create_account_list ( GtkTreeModel *model )
     /* Expand stuff */
     if ( account_expander )
     {
+        GtkWidget *navigation_tree_view;
+
+        navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
         path = gtk_tree_model_get_path ( GTK_TREE_MODEL ( model ), &parent );
         gtk_tree_view_expand_to_path ( GTK_TREE_VIEW ( navigation_tree_view ), path );
         gtk_tree_path_free ( path );
@@ -548,8 +558,8 @@ void gsb_gui_navigation_create_account_list ( GtkTreeModel *model )
 /**
  * Create a list of tree items that are shortcuts to reports.
  *
- * \param model		Tree model to insert items into.
- * \param reports_iter	Parent iter.
+ * \param model Tree model to insert items into.
+ * \param reports_iter Parent iter.
  */
 void gsb_gui_navigation_create_report_list ( GtkTreeModel *model )
 {
@@ -576,8 +586,8 @@ void gsb_gui_navigation_create_report_list ( GtkTreeModel *model )
         report_number = gsb_data_report_get_report_number ( tmp_list -> data );
 
         gtk_tree_store_append ( GTK_TREE_STORE ( model ), &child, &parent);
-        gtk_tree_store_set(GTK_TREE_STORE(model), &child, 
-                        NAVIGATION_PIX_VISIBLE, FALSE, 
+        gtk_tree_store_set(GTK_TREE_STORE(model), &child,
+                        NAVIGATION_PIX_VISIBLE, FALSE,
                         NAVIGATION_TEXT, gsb_data_report_get_report_name ( report_number ),
                         NAVIGATION_FONT, 400,
                         NAVIGATION_PAGE, GSB_REPORTS_PAGE,
@@ -585,13 +595,16 @@ void gsb_gui_navigation_create_report_list ( GtkTreeModel *model )
                         NAVIGATION_SENSITIVE, 1,
                         NAVIGATION_REPORT, report_number,
                         -1 );
-	
+
         tmp_list = tmp_list -> next;
     }
 
     /* Expand stuff */
     if ( report_expander )
     {
+        GtkWidget *navigation_tree_view;
+
+        navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
         path = gtk_tree_model_get_path ( GTK_TREE_MODEL ( model ), &parent );
         gtk_tree_view_expand_to_path ( GTK_TREE_VIEW ( navigation_tree_view ), path );
         gtk_tree_path_free ( path );
@@ -606,9 +619,9 @@ void gsb_gui_navigation_create_report_list ( GtkTreeModel *model )
  *
  *
  */
-gboolean navigation_sort_column ( GtkTreeModel *model, 
+gboolean navigation_sort_column ( GtkTreeModel *model,
                         GtkTreeIter *a,
-                        GtkTreeIter *b, 
+                        GtkTreeIter *b,
                         gpointer user_data )
 {
     gint ordre_a, page_a, account_a, report_a;
@@ -617,14 +630,14 @@ gboolean navigation_sort_column ( GtkTreeModel *model,
     if ( ! model )
         return FALSE;
 
-    gtk_tree_model_get ( model, a, 
+    gtk_tree_model_get ( model, a,
                         NAVIGATION_PAGE, &page_a,
                         NAVIGATION_ACCOUNT, &account_a,
                         NAVIGATION_REPORT, &report_a,
                         NAVIGATION_ORDRE, &ordre_a,
                         -1 );
 
-    gtk_tree_model_get ( model, b, 
+    gtk_tree_model_get ( model, b,
                         NAVIGATION_PAGE, &page_b,
                         NAVIGATION_ACCOUNT, &account_b,
                         NAVIGATION_REPORT, &report_b,
@@ -653,29 +666,30 @@ gboolean navigation_sort_column ( GtkTreeModel *model,
  * Iterator that iterates over the navigation pane model and update
  * iter of account that is equal to `data'.
  *
- * \param tree_model	Pointer to the model of the navigation tree.
- * \param path		Not used.
- * \param iter		Current iter to test.
- * \param data		Number of an account to match against the
- *			NAVIGATION_ACCOUNT column of current iter.
+ * \param tree_model    Pointer to the model of the navigation tree.
+ * \param path          Not used.
+ * \param iter          Current iter to test.
+ * \param data          Number of an account to match against the
+ *                      NAVIGATION_ACCOUNT column of current iter.
  *
  * \return TRUE if this iter matches.
  */
-static gboolean gsb_gui_navigation_update_account_iterator ( GtkTreeModel *tree_model, 
-                        GtkTreePath *path, 
-                        GtkTreeIter *iter, 
+static gboolean gsb_gui_navigation_update_account_iterator ( GtkTreeModel *tree_model,
+                        GtkTreePath *path,
+                        GtkTreeIter *iter,
                         gpointer data )
 {
     gint account_number;
 
-    gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ), iter,
-			 NAVIGATION_ACCOUNT, &account_number, 
-			 -1 );
+    gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ),
+                        iter,
+                        NAVIGATION_ACCOUNT, &account_number,
+                        -1 );
 
     if ( account_number == GPOINTER_TO_INT ( data ) )
     {
-	gsb_gui_navigation_update_account_iter ( tree_model, iter, GPOINTER_TO_INT(data) );
-	return TRUE;
+        gsb_gui_navigation_update_account_iter ( tree_model, iter, GPOINTER_TO_INT ( data ) );
+        return TRUE;
     }
 
     return FALSE;
@@ -687,29 +701,30 @@ static gboolean gsb_gui_navigation_update_account_iterator ( GtkTreeModel *tree_
  * Iterator that iterates over the navigation pane model and update
  * iter of report that is equal to `data'.
  *
- * \param tree_model	Pointer to the model of the navigation tree.
- * \param path		Not used.
- * \param iter		Current iter to test.
- * \param data		Number of an report to match against the
- *			NAVIGATION_REPORT column of current iter.
+ * \param tree_model    Pointer to the model of the navigation tree.
+ * \param path          Not used.
+ * \param iter          Current iter to test.
+ * \param data          Number of an report to match against the
+ *                      NAVIGATION_REPORT column of current iter.
  *
  * \return TRUE if this iter matches.
  */
-static gboolean gsb_gui_navigation_update_report_iterator ( GtkTreeModel *tree_model, 
-                        GtkTreePath *path, 
-                        GtkTreeIter *iter, 
+static gboolean gsb_gui_navigation_update_report_iterator ( GtkTreeModel *tree_model,
+                        GtkTreePath *path,
+                        GtkTreeIter *iter,
                         gpointer data )
 {
     gint report_nb;
 
-    gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ), iter,
-			 NAVIGATION_REPORT, &report_nb, 
-			 -1 );
+    gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ),
+                        iter,
+                        NAVIGATION_REPORT, &report_nb,
+                        -1 );
 
     if ( report_nb == GPOINTER_TO_INT ( data ) )
     {
-	gsb_gui_navigation_update_report_iter ( tree_model, iter, GPOINTER_TO_INT ( data ));
-	return TRUE;
+        gsb_gui_navigation_update_report_iter ( tree_model, iter, GPOINTER_TO_INT ( data ) );
+        return TRUE;
     }
 
     return FALSE;
@@ -722,11 +737,11 @@ static gboolean gsb_gui_navigation_update_report_iterator ( GtkTreeModel *tree_m
  *
  * \param report_nb	Number of the report that has to be updated.
  */
-void gsb_gui_navigation_update_report ( gint report_number ) 
+void gsb_gui_navigation_update_report ( gint report_number )
 {
     gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model),
-			     (GtkTreeModelForeachFunc) gsb_gui_navigation_update_report_iterator,
-			     GINT_TO_POINTER ( report_number ) );
+                        (GtkTreeModelForeachFunc) gsb_gui_navigation_update_report_iterator,
+                        GINT_TO_POINTER ( report_number ) );
 }
 
 
@@ -734,21 +749,21 @@ void gsb_gui_navigation_update_report ( gint report_number )
 /**
  * Update contents of an iter with report data.
  *
- * \param model		Pointer to the model of the navigation tree.
- * \param report_iter	Iter to update.
- * \param data		Number of report as a reference.
+ * \param model         Pointer to the model of the navigation tree.
+ * \param report_iter   Iter to update.
+ * \param data          Number of report as a reference.
  */
-void gsb_gui_navigation_update_report_iter ( GtkTreeModel *model, 
+void gsb_gui_navigation_update_report_iter ( GtkTreeModel *model,
                         GtkTreeIter * report_iter,
                         gint report_number )
 {
-    gtk_tree_store_set(GTK_TREE_STORE(model), report_iter, 
-		       NAVIGATION_TEXT, gsb_data_report_get_report_name (report_number), 
-		       NAVIGATION_PAGE, GSB_REPORTS_PAGE,
-		       NAVIGATION_REPORT, report_number,
-		       NAVIGATION_ACCOUNT, -1,
-		       NAVIGATION_SENSITIVE, 1,
-		       -1 );
+    gtk_tree_store_set(GTK_TREE_STORE(model), report_iter,
+                        NAVIGATION_TEXT, gsb_data_report_get_report_name (report_number),
+                        NAVIGATION_PAGE, GSB_REPORTS_PAGE,
+                        NAVIGATION_REPORT, report_number,
+                        NAVIGATION_ACCOUNT, -1,
+                        NAVIGATION_SENSITIVE, 1,
+                        -1 );
 }
 
 
@@ -757,29 +772,29 @@ void gsb_gui_navigation_update_report_iter ( GtkTreeModel *model,
  * Iterator that iterates over the navigation pane model and remove
  * iter of report that is equal to `data'.
  *
- * \param tree_model	Pointer to the model of the navigation tree.
- * \param path		Not used.
- * \param iter		Current iter to test.
- * \param data		Number of an report to match against the
- *			NAVIGATION_REPORT column of current iter.
+ * \param tree_model    Pointer to the model of the navigation tree.
+ * \param path          Not used.
+ * \param iter          Current iter to test.
+ * \param data          Number of an report to match against the
+ *                      NAVIGATION_REPORT column of current iter.
  *
  * \return TRUE if this iter matches.
  */
-static gboolean gsb_gui_navigation_remove_report_iterator ( GtkTreeModel *tree_model, 
-                        GtkTreePath *path, 
-                        GtkTreeIter *iter, 
+static gboolean gsb_gui_navigation_remove_report_iterator ( GtkTreeModel *tree_model,
+                        GtkTreePath *path,
+                        GtkTreeIter *iter,
                         gpointer data )
 {
     gint report;
 
     gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ), iter,
-			 NAVIGATION_REPORT, &report, 
-			 -1 );
+                        NAVIGATION_REPORT, &report,
+                        -1 );
 
     if ( report == GPOINTER_TO_INT (data))
     {
-	gtk_tree_store_remove ( GTK_TREE_STORE(tree_model), iter );
-	return TRUE;
+        gtk_tree_store_remove ( GTK_TREE_STORE ( tree_model ), iter );
+        return TRUE;
     }
 
     return FALSE;
@@ -790,20 +805,22 @@ static gboolean gsb_gui_navigation_remove_report_iterator ( GtkTreeModel *tree_m
 /**
  * Add an report to the navigation pane.
  *
- * \param report_nb	Report ID to add.
+ * \param report_nb Report ID to add.
  */
 void gsb_gui_navigation_add_report ( gint report_number )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeIter parent, iter;
     GtkTreeSelection *selection;
     GtkTreePath *path;
 
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     path = gsb_gui_navigation_get_page_path ( navigation_model, GSB_REPORTS_PAGE );
     gtk_tree_model_get_iter ( GTK_TREE_MODEL( navigation_model ), &parent, path );
     gtk_tree_store_append ( GTK_TREE_STORE ( navigation_model ), &iter, &parent );
     gtk_tree_view_expand_to_path ( GTK_TREE_VIEW ( navigation_tree_view ), path );
 
-    gsb_gui_navigation_update_report_iter ( GTK_TREE_MODEL ( navigation_model ), &iter,  report_number );    
+    gsb_gui_navigation_update_report_iter ( GTK_TREE_MODEL ( navigation_model ), &iter,  report_number );
 
     selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( navigation_tree_view ) );
     gtk_tree_selection_select_iter ( selection, &iter );
@@ -814,13 +831,13 @@ void gsb_gui_navigation_add_report ( gint report_number )
 /**
  * Remove report from the navigation pane.
  *
- * \param report_nb	Report ID to add.
+ * \param report_nb Report ID to add.
  */
 void gsb_gui_navigation_remove_report ( gint report_number )
 {
-    gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model), 
-			     (GtkTreeModelForeachFunc) gsb_gui_navigation_remove_report_iterator, 
-			     GINT_TO_POINTER ( report_number ) );
+    gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model),
+                        (GtkTreeModelForeachFunc) gsb_gui_navigation_remove_report_iterator,
+                        GINT_TO_POINTER ( report_number ) );
 }
 
 
@@ -828,13 +845,13 @@ void gsb_gui_navigation_remove_report ( gint report_number )
 /**
  * Update information for an account in navigation pane.
  *
- * \param account_number	Number of the account that has to be updated.
+ * \param account_number    Number of the account that has to be updated.
  */
 void gsb_gui_navigation_update_account ( gint account_number )
 {
-    gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model), 
-			     (GtkTreeModelForeachFunc) gsb_gui_navigation_update_account_iterator, 
-			     GINT_TO_POINTER ( account_number ) );
+    gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model),
+                        (GtkTreeModelForeachFunc) gsb_gui_navigation_update_account_iterator,
+                        GINT_TO_POINTER ( account_number ) );
 }
 
 
@@ -842,11 +859,11 @@ void gsb_gui_navigation_update_account ( gint account_number )
 /**
  * Update contents of an iter with account data.
  *
- * \param model		Pointer to the model of the navigation tree.
- * \param account_iter	Iter to update.
- * \param data		Number of account as a reference.
+ * \param model         Pointer to the model of the navigation tree.
+ * \param account_iter  Iter to update.
+ * \param data          Number of account as a reference.
  */
-void gsb_gui_navigation_update_account_iter ( GtkTreeModel *model, 
+void gsb_gui_navigation_update_account_iter ( GtkTreeModel *model,
                         GtkTreeIter *account_iter,
                         gint account_number )
 {
@@ -854,10 +871,10 @@ void gsb_gui_navigation_update_account_iter ( GtkTreeModel *model,
 
     pixbuf = gsb_data_account_get_account_icon_pixbuf ( account_number );
 
-    gtk_tree_store_set ( GTK_TREE_STORE ( model ), account_iter, 
+    gtk_tree_store_set ( GTK_TREE_STORE ( model ), account_iter,
                         NAVIGATION_PIX, pixbuf,
-                        NAVIGATION_PIX_VISIBLE, TRUE, 
-                        NAVIGATION_TEXT, gsb_data_account_get_name ( account_number ), 
+                        NAVIGATION_PIX_VISIBLE, TRUE,
+                        NAVIGATION_TEXT, gsb_data_account_get_name ( account_number ),
                         NAVIGATION_FONT, 400,
                         NAVIGATION_PAGE, GSB_ACCOUNT_PAGE,
                         NAVIGATION_ACCOUNT, account_number,
@@ -872,29 +889,30 @@ void gsb_gui_navigation_update_account_iter ( GtkTreeModel *model,
  * Iterator that iterates over the navigation pane model and remove
  * iter of account that is equal to `data'.
  *
- * \param tree_model	Pointer to the model of the navigation tree.
- * \param path		Not used.
- * \param iter		Current iter to test.
- * \param data		Number of an account to match against the
- *			NAVIGATION_ACCOUNT column of current iter.
+ * \param tree_model    Pointer to the model of the navigation tree.
+ * \param path          Not used.
+ * \param iter          Current iter to test.
+ * \param data          Number of an account to match against the
+ *                      NAVIGATION_ACCOUNT column of current iter.
  *
  * \return TRUE if this iter matches.
  */
-static gboolean gsb_gui_navigation_remove_account_iterator ( GtkTreeModel *tree_model, 
-                        GtkTreePath *path, 
-                        GtkTreeIter *iter, 
+static gboolean gsb_gui_navigation_remove_account_iterator ( GtkTreeModel *tree_model,
+                        GtkTreePath *path,
+                        GtkTreeIter *iter,
                         gpointer data )
 {
     gint account_number;
 
-    gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ), iter,
-			 NAVIGATION_ACCOUNT, &account_number, 
-			 -1 );
+    gtk_tree_model_get ( GTK_TREE_MODEL ( tree_model ),
+                        iter,
+                        NAVIGATION_ACCOUNT, &account_number,
+                        -1 );
 
     if ( account_number == GPOINTER_TO_INT ( data ) )
     {
-	gtk_tree_store_remove ( GTK_TREE_STORE(tree_model), iter );
-	return TRUE;
+        gtk_tree_store_remove ( GTK_TREE_STORE ( tree_model ), iter );
+        return TRUE;
     }
 
     return FALSE;
@@ -905,7 +923,7 @@ static gboolean gsb_gui_navigation_remove_account_iterator ( GtkTreeModel *tree_
 /**
  * Add an account to the navigation pane.
  *
- * \param account_number	Account ID to add.
+ * \param account_number    Account ID to add.
  * \param switch_to_account TRUE to show the account, FALSE to just create it
  */
 void gsb_gui_navigation_add_account ( gint account_number,
@@ -918,12 +936,14 @@ void gsb_gui_navigation_add_account ( gint account_number,
     gtk_tree_model_get_iter ( GTK_TREE_MODEL( navigation_model ), &parent, path );
     gtk_tree_store_append ( GTK_TREE_STORE ( navigation_model ), &iter, &parent );
 
-    gsb_gui_navigation_update_account_iter ( GTK_TREE_MODEL ( navigation_model ), &iter, account_number );    
+    gsb_gui_navigation_update_account_iter ( GTK_TREE_MODEL ( navigation_model ), &iter, account_number );
 
     if ( switch_to_account )
     {
+        GtkWidget *navigation_tree_view;
         GtkTreeSelection * selection;
 
+        navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
         selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( navigation_tree_view ) );
         gtk_tree_selection_select_iter ( selection, &iter );
     }
@@ -931,22 +951,25 @@ void gsb_gui_navigation_add_account ( gint account_number,
 
 
 
-/** 
+/**
  * change the list of transactions, according to the new account
- * 
+ *
  * \param no_account a pointer on the number of the account we want to see
- * 
+ *
  * \return FALSE
  * */
 gboolean navigation_change_account ( gint new_account )
 {
     gint current_account;
     gchar *tmp_menu_path;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     devel_debug_int (new_account);
 
     if ( new_account < 0 )
-	return FALSE;
+        return FALSE;
 
     /* the selection on the navigation bar has already changed, so
      * have to use a buffer variable to get the last account */
@@ -963,11 +986,11 @@ gboolean navigation_change_account ( gint new_account )
 
     /* save the row_align of the last account */
     gsb_data_account_set_row_align ( current_account,
-				     gsb_transactions_list_get_row_align ( ) );
+                        gsb_transactions_list_get_row_align ( ) );
 
     /* set the appearance of the list according to the new account */
-    transaction_list_sort_set_column ( gsb_data_account_get_sort_column (new_account ),
-				      gsb_data_account_get_sort_type ( new_account ) );
+    transaction_list_sort_set_column ( gsb_data_account_get_sort_column ( new_account ),
+                        gsb_data_account_get_sort_type ( new_account ) );
     gsb_transactions_list_update_tree_view ( new_account, FALSE );
     transaction_list_select ( gsb_data_account_get_current_transaction_number ( new_account ) );
     gsb_transactions_list_set_row_align ( gsb_data_account_get_row_align ( new_account ) );
@@ -976,9 +999,9 @@ gboolean navigation_change_account ( gint new_account )
     gsb_navigation_update_statement_label ( new_account );
 
     tmp_menu_path = g_strconcat (
-        "/menubar/EditMenu/MoveToAnotherAccount/",
-        gsb_data_account_get_name (new_account),
-        NULL );
+                        "/menubar/EditMenu/MoveToAnotherAccount/",
+                        gsb_data_account_get_name (new_account),
+                        NULL );
     gsb_gui_sensitive_menu_item ( tmp_menu_path, FALSE );
     g_free ( tmp_menu_path );
 
@@ -995,7 +1018,7 @@ gboolean navigation_change_account ( gint new_account )
         gtk_widget_hide ( menu_import_rules );
 
     /* Update the title of the file if needed */
-    if ( conf.display_grisbi_title == GSB_ACCOUNT_HOLDER )
+    if ( conf->display_grisbi_title == GSB_ACCOUNT_HOLDER )
         gsb_main_set_grisbi_title ( new_account );
 
     bet_data_select_bet_pages ( new_account );
@@ -1030,7 +1053,7 @@ void gsb_navigation_update_statement_label ( gint account_number )
                                             reconcile_number ) );
         tmp_str2 = utils_real_get_string_with_currency ( amount,
                         gsb_data_account_get_currency ( account_number ), TRUE );
-        
+
         tmp_str = g_strconcat ( _("Last statement: "), tmp_str1, " - ",
                                _("Reconciled balance: "), tmp_str2, NULL );
         gtk_label_set_text ( GTK_LABEL ( label_last_statement ), tmp_str);
@@ -1042,7 +1065,7 @@ void gsb_navigation_update_statement_label ( gint account_number )
     {
         tmp_str2 = utils_real_get_string_with_currency (amount,
                         gsb_data_account_get_currency ( account_number ), TRUE );
-        
+
         tmp_str = g_strconcat ( _("Last statement: none"), " - ",
                                _("Reconciled balance: "), tmp_str2, NULL );
         gtk_label_set_text ( GTK_LABEL ( label_last_statement ), tmp_str);
@@ -1064,21 +1087,22 @@ void gsb_navigation_update_statement_label ( gint account_number )
  */
 void gsb_navigation_update_account_label ( gint account_number )
 {
-    gchar * title = NULL; 
+    gchar * title = NULL;
 
     title = g_strconcat ( _("Account"), " : ",
-			  gsb_data_account_get_name ( account_number ),
-			  NULL );
+                        gsb_data_account_get_name ( account_number ),
+                        NULL );
     if ( gsb_data_account_get_closed_account ( account_number ) )
     {
-	gchar* old_title = title;
-	title = g_strconcat ( title, " (", _("closed"), ")", NULL );
-	g_free ( old_title );
+        gchar* old_title = title;
+
+        title = g_strconcat ( title, " (", _("closed"), ")", NULL );
+        g_free ( old_title );
     }
 
     gsb_data_account_colorize_current_balance ( account_number );
     gsb_gui_headings_update_title ( title );
-    
+
     g_free ( title );
 }
 
@@ -1086,13 +1110,13 @@ void gsb_navigation_update_account_label ( gint account_number )
 /**
  * Remove account from the navigation pane.
  *
- * \param account_number	Account ID to remove.
+ * \param account_number    Account ID to remove.
  */
 void gsb_gui_navigation_remove_account ( gint account_number )
 {
-    gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model), 
-			     (GtkTreeModelForeachFunc) gsb_gui_navigation_remove_account_iterator, 
-			     GINT_TO_POINTER ( account_number ) );
+    gtk_tree_model_foreach ( GTK_TREE_MODEL(navigation_model),
+                        (GtkTreeModelForeachFunc) gsb_gui_navigation_remove_account_iterator,
+                        GINT_TO_POINTER ( account_number ) );
 }
 
 
@@ -1103,8 +1127,8 @@ void gsb_gui_navigation_remove_account ( gint account_number )
  * we must write here the changes to do when changing something in that selection,
  * not with a callback "switch-page" on the main notebook
  *
- * \param selection	The selection that triggered event.
- * \param model		Tree model associated to selection.
+ * \param selection The selection that triggered event.
+ * \param model     Tree model associated to selection.
  *
  * \return FALSE
  */
@@ -1128,39 +1152,39 @@ gboolean gsb_gui_navigation_select_line ( GtkTreeSelection *selection,
         menus_view_sensitifs ( FALSE );
     }
 
-    if ( page_number != GSB_SCHEDULER_PAGE ) 
+    if ( page_number != GSB_SCHEDULER_PAGE )
     {
-	gtk_widget_hide ( scheduler_calendar );
+        gtk_widget_hide ( scheduler_calendar );
     }
 
     switch ( page_number )
     {
-	case GSB_HOME_PAGE:
-	    notice_debug ("Home page selected");
+    case GSB_HOME_PAGE:
+        notice_debug ("Home page selected");
 
         title = g_strdup(_("My accounts"));
 
         gsb_gui_sensitive_menu_item ( "/menubar/ViewMenu/ShowClosed", TRUE );
 
-	    /* what to be done if switch to that page */
-	    mise_a_jour_accueil ( FALSE );
-	    gsb_form_set_expander_visible ( FALSE, FALSE );
-	    break;
+        /* what to be done if switch to that page */
+        mise_a_jour_accueil ( FALSE );
+        gsb_form_set_expander_visible ( FALSE, FALSE );
+        break;
 
-	case GSB_ACCOUNT_PAGE:
-	    notice_debug ("Account page selected");
+    case GSB_ACCOUNT_PAGE:
+        notice_debug ("Account page selected");
 
         menus_view_sensitifs ( TRUE );
-	    gsb_gui_sensitive_menu_item ( "/menubar/EditMenu/RemoveAccount", TRUE );
+        gsb_gui_sensitive_menu_item ( "/menubar/EditMenu/RemoveAccount", TRUE );
 
-	    account_number = gsb_gui_navigation_get_current_account ();
+        account_number = gsb_gui_navigation_get_current_account ();
 
         /* update title now -- different from others */
         gsb_navigation_update_account_label (account_number);
 
-	    /* what to be done if switch to that page */
-	    if (account_number >= 0 )
-	    {
+        /* what to be done if switch to that page */
+        if (account_number >= 0 )
+        {
             navigation_change_account ( account_number );
             gsb_account_property_fill_page ();
             clear_suffix = FALSE;
@@ -1168,106 +1192,106 @@ gboolean gsb_gui_navigation_select_line ( GtkTreeSelection *selection,
                 gsb_transaction_list_set_visible_archived_button ( TRUE );
             else
                 gsb_transaction_list_set_visible_archived_button ( FALSE );
-	    }
-	    gsb_menu_update_accounts_in_menus ();
-	    gsb_menu_update_view_menu ( account_number );
+        }
+        gsb_menu_update_accounts_in_menus ();
+        gsb_menu_update_view_menu ( account_number );
 
-	    /* set the form */
-        gsb_gui_on_account_switch_page ( GTK_NOTEBOOK ( account_page ),
+        /* set the form */
+        gsb_gui_on_account_switch_page ( GTK_NOTEBOOK ( gsb_gui_on_account_get_notebook ( ) ),
                         NULL,
-                        gtk_notebook_get_current_page ( GTK_NOTEBOOK ( account_page ) ),
+                        gtk_notebook_get_current_page ( GTK_NOTEBOOK ( gsb_gui_on_account_get_notebook ( ) ) ),
                         NULL );
-	    /* gsb_form_show ( FALSE ); */
+        /* gsb_form_show ( FALSE ); */
 
-	    buffer_last_account = account_number;
+        buffer_last_account = account_number;
 
-	    break;
+        break;
+
+    case GSB_SCHEDULER_PAGE:
+        notice_debug ("Scheduler page selected");
 
-	case GSB_SCHEDULER_PAGE:
-	    notice_debug ("Scheduler page selected");
+        title = g_strdup(_("Scheduled transactions"));
 
-	    title = g_strdup(_("Scheduled transactions"));
-        
-	    /* what to be done if switch to that page */
-	    /* update the list (can do that because short list, so very fast) */
-	    gsb_scheduler_list_fill_list (gsb_scheduler_list_get_tree_view ());
-	    gsb_scheduler_list_set_background_color (gsb_scheduler_list_get_tree_view ());
+        /* what to be done if switch to that page */
+        /* update the list (can do that because short list, so very fast) */
+        gsb_scheduler_list_fill_list (gsb_scheduler_list_get_tree_view ());
+        gsb_scheduler_list_set_background_color (gsb_scheduler_list_get_tree_view ());
 
-	    gsb_scheduler_list_select (gsb_scheduler_list_get_last_scheduled_number ());
+        gsb_scheduler_list_select (gsb_scheduler_list_get_last_scheduled_number ());
 
-	    /* set the form */
-	    gsb_form_set_expander_visible (TRUE, FALSE );
-	    gsb_form_scheduler_clean ();
-	    gsb_form_show ( FALSE );
+        /* set the form */
+        gsb_form_set_expander_visible (TRUE, FALSE );
+        gsb_form_scheduler_clean ();
+        gsb_form_show ( FALSE );
 
-	    /* show the calendar */
-	    gsb_calendar_update ();
-	    gtk_widget_show_all ( scheduler_calendar );
+        /* show the calendar */
+        gsb_calendar_update ();
+        gtk_widget_show_all ( scheduler_calendar );
 
         /* show menu InitwidthCol */
         gsb_gui_sensitive_menu_item ( "/menubar/ViewMenu/InitwidthCol", TRUE );
-	    break;
+        break;
 
-	case GSB_PAYEES_PAGE:
-	    notice_debug ("Payee page selected");
+    case GSB_PAYEES_PAGE:
+        notice_debug ("Payee page selected");
 
-	    /* what to be done if switch to that page */
-	    gsb_form_set_expander_visible (FALSE, FALSE );
+        /* what to be done if switch to that page */
+        gsb_form_set_expander_visible (FALSE, FALSE );
         payees_fill_list ();
         clear_suffix = FALSE;
-	    break;
+        break;
 
-	case GSB_SIMULATOR_PAGE:
-	    notice_debug ("Credits simulator page selected");
+    case GSB_SIMULATOR_PAGE:
+        notice_debug ("Credits simulator page selected");
 
-	    title = g_strdup(_("Credits simulator"));
+        title = g_strdup(_("Credits simulator"));
 
-	    /* what to be done if switch to that page */
+        /* what to be done if switch to that page */
         gsb_form_set_expander_visible (FALSE, FALSE);
         bet_finance_switch_simulator_page ( );
-	    break;
+        break;
 
-	case GSB_CATEGORIES_PAGE:
-	    notice_debug ("Category page selected");
+    case GSB_CATEGORIES_PAGE:
+        notice_debug ("Category page selected");
 
-	    /* what to be done if switch to that page */
-	    gsb_form_set_expander_visible (FALSE, FALSE );
+        /* what to be done if switch to that page */
+        gsb_form_set_expander_visible (FALSE, FALSE );
         categories_fill_list ();
         clear_suffix = FALSE;
-	    break;
+        break;
 
-	case GSB_BUDGETARY_LINES_PAGE:
-	    notice_debug ("Budgetary page selected");
+    case GSB_BUDGETARY_LINES_PAGE:
+        notice_debug ("Budgetary page selected");
 
-	    /* what to be done if switch to that page */
-	    gsb_form_set_expander_visible (FALSE, FALSE );
-		budgetary_lines_fill_list ();
+        /* what to be done if switch to that page */
+        gsb_form_set_expander_visible (FALSE, FALSE );
+        budgetary_lines_fill_list ();
         clear_suffix = FALSE;
-	    break;
+    break;
 
-	case GSB_REPORTS_PAGE:
-	    notice_debug ("Reports page selected");
+    case GSB_REPORTS_PAGE:
+        notice_debug ("Reports page selected");
 
-	    report_number = gsb_gui_navigation_get_current_report ();
+        report_number = gsb_gui_navigation_get_current_report ();
 
-	    if ( report_number >= 0 )
-		title = g_strconcat ( _("Report"), " : ", gsb_data_report_get_report_name (report_number), NULL );
-	    else
-		title = g_strdup(_("Reports"));
+        if ( report_number >= 0 )
+            title = g_strconcat ( _("Report"), " : ", gsb_data_report_get_report_name (report_number), NULL );
+        else
+            title = g_strdup(_("Reports"));
 
-	    /* what to be done if switch to that page */
-	    gsb_form_set_expander_visible ( FALSE, FALSE );
+        /* what to be done if switch to that page */
+        gsb_form_set_expander_visible ( FALSE, FALSE );
 
-	    if ( report_number > 0 )
+        if ( report_number > 0 )
             gsb_gui_update_gui_to_report ( report_number );
-	    else
+        else
             gsb_gui_unsensitive_report_widgets ();
-	    break;
+        break;
 
-	default:
-	    notice_debug ("B0rk page selected");
-	    title = g_strdup("B0rk");
-	    break;
+    default:
+        notice_debug ("B0rk page selected");
+        title = g_strdup("B0rk");
+        break;
     }
 
     /* title is set here if necessary */
@@ -1288,21 +1312,22 @@ gboolean gsb_gui_navigation_select_line ( GtkTreeSelection *selection,
  * Set the selection of the navigation list depending on desired
  * page and/or account or report.
  *
- * \param page		        Page to switch to.
- * \param account_number	If page is GSB_ACCOUNT_PAGE, switch to given
- *			account.
- * \param report	If page is GSB_REPORTS, switch to given
- *			report.
- * 
- * \return		TRUE on success.
+ * \param page              Page to switch to.
+ * \param account_number    If page is GSB_ACCOUNT_PAGE, switch to given account.
+ *
+ * \param report            If page is GSB_REPORTS, switch to given report.
+ *
+ * \return                  TRUE on success.
  */
 gboolean gsb_gui_navigation_set_selection ( gint page,
                         gint account_number,
                         gpointer report )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeIter iter;
     GtkTreeSelection *selection;
 
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW ( navigation_tree_view ) );
     g_return_val_if_fail ( selection, FALSE );
 
@@ -1327,52 +1352,54 @@ gboolean gsb_gui_navigation_set_selection ( gint page,
  * Set the selection of the navigation list depending on desired page
  * and/or account or report, but only for a branch of the tree.
  *
- * \param selection	Selection to set.
- * \param iter		Current iter to iterate over.
- * \param page		Page to switch to.
- * \param account_number	If page is GSB_ACCOUNT_PAGE, switch to given
- *			account.
- * \param report	If page is GSB_REPORTS, switch to given
- *			report.
- * 
- * \return		TRUE on success.
+ * \param selection         Selection to set.
+ * \param iter              Current iter to iterate over.
+ * \param page              Page to switch to.
+ * \param account_number    If page is GSB_ACCOUNT_PAGE, switch to given account.
+ * \param report            If page is GSB_REPORTS, switch to given report.
+ *
+ * \return                  TRUE on success.
  */
-void gsb_gui_navigation_set_selection_branch ( GtkTreeSelection *selection, 
-					    GtkTreeIter *iter,
-                        gint page, 
-					    gint account_number,
+void gsb_gui_navigation_set_selection_branch ( GtkTreeSelection *selection,
+                        GtkTreeIter *iter,
+                        gint page,
+                        gint account_number,
                         gpointer report )
 {
-    do 
+    do
     {
-	gint iter_page, iter_account_nb;
-	gpointer iter_report;
-
-	gtk_tree_model_get ( GTK_TREE_MODEL(navigation_model), iter, 
-			     NAVIGATION_REPORT, &iter_report, 
-			     NAVIGATION_ACCOUNT, &iter_account_nb,
-			     NAVIGATION_PAGE, &iter_page,
-			     -1 );
-
-	if ( iter_page == page &&
-	     ! ( page == GSB_ACCOUNT_PAGE && 
-		 iter_account_nb != account_number ) &&
-	     ! ( page == GSB_REPORTS_PAGE &&
-		 iter_report != report ) )
-	{
-	    gtk_tree_selection_select_iter ( selection, iter );
-	}
-
-	if ( gtk_tree_model_iter_has_child ( GTK_TREE_MODEL(navigation_model), iter ) )
-	{
-	    GtkTreeIter child;
-    
-	    gtk_tree_model_iter_children ( GTK_TREE_MODEL(navigation_model), &child, iter );
-	    gsb_gui_navigation_set_selection_branch ( selection, &child, 
-						      page, account_number, report );
-	}
+        gint iter_page, iter_account_nb;
+        gpointer iter_report;
+
+        gtk_tree_model_get ( GTK_TREE_MODEL ( navigation_model ), iter,
+                     NAVIGATION_REPORT, &iter_report,
+                     NAVIGATION_ACCOUNT, &iter_account_nb,
+                     NAVIGATION_PAGE, &iter_page,
+                     -1 );
+
+        if ( iter_page == page
+         &&
+         ! ( page == GSB_ACCOUNT_PAGE
+         &&
+         iter_account_nb != account_number )
+         &&
+         ! ( page == GSB_REPORTS_PAGE
+         &&
+         iter_report != report ) )
+        {
+            gtk_tree_selection_select_iter ( selection, iter );
+        }
+
+        if ( gtk_tree_model_iter_has_child ( GTK_TREE_MODEL ( navigation_model ), iter ) )
+        {
+            GtkTreeIter child;
+
+            gtk_tree_model_iter_children ( GTK_TREE_MODEL ( navigation_model ), &child, iter );
+            gsb_gui_navigation_set_selection_branch ( selection, &child,
+                                  page, account_number, report );
+        }
     }
-    while ( gtk_tree_model_iter_next ( GTK_TREE_MODEL(navigation_model), iter ) );
+    while ( gtk_tree_model_iter_next ( GTK_TREE_MODEL ( navigation_model ), iter ) );
 
     return;
 }
@@ -1386,14 +1413,16 @@ void gsb_gui_navigation_set_selection_branch ( GtkTreeSelection *selection,
  */
 gboolean gsb_gui_navigation_select_prev ( void )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeSelection * selection;
     GtkTreePath * path;
     GtkTreeModel * model;
     GtkTreeIter iter;
 
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW(navigation_tree_view) );
     g_return_val_if_fail ( selection, FALSE );
-    
+
     if ( !gtk_tree_selection_get_selected ( selection, &model, &iter ) )
         return TRUE;
     path = gtk_tree_model_get_path ( model, &iter );
@@ -1412,13 +1441,14 @@ gboolean gsb_gui_navigation_select_prev ( void )
              && gtk_tree_view_row_expanded ( GTK_TREE_VIEW ( navigation_tree_view ), path ) )
         {
             GtkTreeIter parent = iter;
-            gtk_tree_model_iter_nth_child ( model, &iter, &parent, 
-                                            gtk_tree_model_iter_n_children ( model, 
+
+            gtk_tree_model_iter_nth_child ( model, &iter, &parent,
+                                            gtk_tree_model_iter_n_children ( model,
                                                                              &parent ) - 1 );
             path = gtk_tree_model_get_path ( model, &iter );
         }
     }
-    
+
     gtk_tree_selection_select_path ( selection, path );
     gtk_tree_path_free ( path );
 
@@ -1434,14 +1464,16 @@ gboolean gsb_gui_navigation_select_prev ( void )
  */
 gboolean gsb_gui_navigation_select_next ( void )
 {
+    GtkWidget *navigation_tree_view;
     GtkTreeSelection *selection;
     GtkTreePath *path;
     GtkTreeModel *model;
     GtkTreeIter iter;
 
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     selection = gtk_tree_view_get_selection ( GTK_TREE_VIEW(navigation_tree_view) );
     g_return_val_if_fail ( selection, FALSE );
-    
+
     if ( !gtk_tree_selection_get_selected ( selection, &model, &iter ) )
         return TRUE;
 
@@ -1484,7 +1516,7 @@ gboolean gsb_gui_navigation_select_next ( void )
 
 
 
-/** 
+/**
  * Check the key pressed on the navigation tree view,
  * if need, stop the event to do another thing with that key
  *
@@ -1502,48 +1534,48 @@ gboolean gsb_gui_navigation_check_key_press ( GtkWidget *tree_view,
     GtkTreeIter iter;
     GtkTreePath *path;
 
-    if (! gtk_tree_selection_get_selected ( gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view)),
-					    NULL,
-					    &iter))
-	return FALSE;
+    if ( !gtk_tree_selection_get_selected ( gtk_tree_view_get_selection ( GTK_TREE_VIEW ( tree_view ) ),
+                        NULL,
+                        &iter ) )
+        return FALSE;
 
     gtk_tree_model_get (model, &iter, NAVIGATION_PAGE, &page, -1 );
     path = gtk_tree_model_get_path ( GTK_TREE_MODEL ( model ), &iter );
 
     switch ( page )
     {
-	case GSB_HOME_PAGE:
-	case GSB_REPORTS_PAGE:
+    case GSB_HOME_PAGE:
+    case GSB_REPORTS_PAGE:
             /* expand or collapse subtree */
-	    if (ev -> keyval == GDK_KEY_Right)
+        if (ev -> keyval == GDK_KEY_Right)
                 gtk_tree_view_expand_row ( GTK_TREE_VIEW ( tree_view ), path, FALSE );
-	    if (ev -> keyval == GDK_KEY_Left)
+        if (ev -> keyval == GDK_KEY_Left)
                 gtk_tree_view_collapse_row ( GTK_TREE_VIEW ( tree_view ), path );
-	    break;
-
-	case GSB_ACCOUNT_PAGE:
-	    /* when come here, if we press the right key, give the focus to the list */
-	    if (ev -> keyval == GDK_KEY_Right)
-		gtk_widget_grab_focus (gsb_transactions_list_get_tree_view ());
-	    break;
-
-	case GSB_PAYEES_PAGE:
-	    /* nothing to do here for now */
-	    break;
-
-	case GSB_CATEGORIES_PAGE:
-	    /* nothing to do here for now */
-	    break;
-
-	case GSB_BUDGETARY_LINES_PAGE:
-	    /* nothing to do here for now */
-	    break;
-
-	case GSB_SCHEDULER_PAGE:
-	    /* when come here, if we press the right key, give the focus to the list */
-	    if (ev -> keyval == GDK_KEY_Right)
-		gtk_widget_grab_focus (gsb_scheduler_list_get_tree_view ());
-	    break;
+        break;
+
+    case GSB_ACCOUNT_PAGE:
+        /* when come here, if we press the right key, give the focus to the list */
+        if (ev -> keyval == GDK_KEY_Right)
+        gtk_widget_grab_focus (gsb_transactions_list_get_tree_view ());
+        break;
+
+    case GSB_PAYEES_PAGE:
+        /* nothing to do here for now */
+        break;
+
+    case GSB_CATEGORIES_PAGE:
+        /* nothing to do here for now */
+        break;
+
+    case GSB_BUDGETARY_LINES_PAGE:
+        /* nothing to do here for now */
+        break;
+
+    case GSB_SCHEDULER_PAGE:
+        /* when come here, if we press the right key, give the focus to the list */
+        if (ev -> keyval == GDK_KEY_Right)
+        gtk_widget_grab_focus (gsb_scheduler_list_get_tree_view ());
+        break;
     }
 
     gtk_tree_path_free ( path );
@@ -1553,7 +1585,7 @@ gboolean gsb_gui_navigation_check_key_press ( GtkWidget *tree_view,
 
 
 
-/** 
+/**
  * Check mouse scrolling on the navigation tree view.
  *
  * \param tree_view the navigation tree_view
@@ -1587,9 +1619,9 @@ gboolean gsb_gui_navigation_check_scroll ( GtkWidget *tree_view,
  * Fill the drag & drop structure with the path of selected column.
  * This is an interface function called from GTK, much like a callback.
  *
- * \param drag_source		Not used.
- * \param path			Original path for the gtk selection.
- * \param selection_data	A pointer to the drag & drop structure.
+ * \param drag_source       Not used.
+ * \param path              Original path for the gtk selection.
+ * \param selection_data    A pointer to the drag & drop structure.
  *
  * \return FALSE, to allow future processing by the callback chain.
  */
@@ -1605,8 +1637,7 @@ gboolean navigation_tree_drag_data_get ( GtkTreeDragSource *drag_source,
 
     if ( path )
     {
-	gtk_tree_set_row_drag_data ( selection_data, GTK_TREE_MODEL(navigation_model), 
-				     path );
+        gtk_tree_set_row_drag_data ( selection_data, GTK_TREE_MODEL ( navigation_model ), path );
     }
 
     return FALSE;
@@ -1615,7 +1646,7 @@ gboolean navigation_tree_drag_data_get ( GtkTreeDragSource *drag_source,
 
 
 /**
- *  
+ *
  *
  */
 gboolean navigation_drag_data_received ( GtkTreeDragDest *drag_dest,
@@ -1639,16 +1670,16 @@ gboolean navigation_drag_data_received ( GtkTreeDragDest *drag_dest,
 
         gtk_tree_get_row_drag_data (selection_data, &model, &orig_path);
 
-        if ( gtk_tree_model_get_iter ( GTK_TREE_MODEL(model), &iter, dest_path ) ) 
-            gtk_tree_model_get (model , &iter, 
-                        NAVIGATION_REPORT, &dst_report, 
+        if ( gtk_tree_model_get_iter ( GTK_TREE_MODEL(model), &iter, dest_path ) )
+            gtk_tree_model_get (model , &iter,
+                        NAVIGATION_REPORT, &dst_report,
                         NAVIGATION_ACCOUNT, &dst_account,
                         NAVIGATION_ORDRE, &dst_ordre,
                         -1 );
 
         if ( gtk_tree_model_get_iter ( GTK_TREE_MODEL(model), &iter, orig_path ) )
-            gtk_tree_model_get ( model, &iter, 
-                        NAVIGATION_REPORT, &src_report, 
+            gtk_tree_model_get ( model, &iter,
+                        NAVIGATION_REPORT, &src_report,
                         NAVIGATION_ACCOUNT, &src_account,
                         NAVIGATION_ORDRE, &src_ordre,
                         -1 );
@@ -1669,7 +1700,7 @@ gboolean navigation_drag_data_received ( GtkTreeDragDest *drag_dest,
         /* update the tree view */
         gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE ( model ),
                         NAVIGATION_ORDRE, GTK_SORT_ASCENDING );
-        gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE ( model ), 
+        gtk_tree_sortable_set_sort_func ( GTK_TREE_SORTABLE ( model ),
                         NAVIGATION_ORDRE, navigation_sort_column,
                         NULL, NULL );
 
@@ -1687,7 +1718,7 @@ gboolean navigation_drag_data_received ( GtkTreeDragDest *drag_dest,
  *
  *
  */
-gboolean navigation_row_drop_possible ( GtkTreeDragDest *drag_dest, 
+gboolean navigation_row_drop_possible ( GtkTreeDragDest *drag_dest,
                         GtkTreePath *dest_path,
                         GtkSelectionData *selection_data )
 {
@@ -1703,15 +1734,15 @@ gboolean navigation_row_drop_possible ( GtkTreeDragDest *drag_dest,
         gtk_tree_get_row_drag_data ( selection_data, &model, &orig_path );
 
         if ( gtk_tree_model_get_iter ( model, &iter, orig_path ) )
-            gtk_tree_model_get ( model, &iter, 
-                        NAVIGATION_REPORT, &src_report, 
+            gtk_tree_model_get ( model, &iter,
+                        NAVIGATION_REPORT, &src_report,
                         NAVIGATION_ACCOUNT, &src_account,
                         NAVIGATION_ORDRE, &src_ordre,
                         -1 );
 
         if ( gtk_tree_model_get_iter ( model, &iter, dest_path ) )
-            gtk_tree_model_get ( model, &iter, 
-                        NAVIGATION_REPORT, &dst_report, 
+            gtk_tree_model_get ( model, &iter,
+                        NAVIGATION_REPORT, &dst_report,
                         NAVIGATION_ACCOUNT, &dst_account,
                         NAVIGATION_ORDRE, &dst_ordre,
                         -1 );
@@ -1757,6 +1788,9 @@ void gsb_gui_navigation_update_home_page ( void )
  */
 GtkWidget *gsb_gui_navigation_get_tree_view ( void )
 {
+    GtkWidget *navigation_tree_view;
+
+    navigation_tree_view = grisbi_window_get_widget_by_name ( "treeview_left_panel" );
     return navigation_tree_view;
 }
 
@@ -1814,17 +1848,6 @@ gboolean gsb_gui_navigation_move_ordre ( gint src_ordre,
  *
  *
  */
-void gsb_gui_navigation_init_tree_view ( void )
-{
-    navigation_tree_view = NULL;
-}
-
-
-/**
- *
- *
- *
- */
 GtkTreeModel *gsb_gui_navigation_get_model ( void )
 {
     if ( navigation_model )
@@ -1917,8 +1940,9 @@ void gsb_gui_navigation_free_pages_list ( void )
 
 /**
  * return a pointer on the first element of g_queue of navigation pages
- * 
+ *
  * \param none
+ *
  * \return a GList
  * */
 GQueue *gsb_gui_navigation_get_pages_list ( void )
diff --git a/src/navigation.h b/src/navigation.h
index f59a537..d0fe439 100644
--- a/src/navigation.h
+++ b/src/navigation.h
@@ -23,7 +23,7 @@ void gsb_gui_navigation_add_report ( gint report_number );
 gboolean gsb_gui_navigation_check_scroll ( GtkWidget *tree_view,
                         GdkEventScroll *ev );
 void gsb_gui_navigation_create_account_list ( GtkTreeModel *model );
-GtkWidget *gsb_gui_navigation_create_navigation_pane ( void );
+void gsb_gui_navigation_create_navigation_pane ( void );
 void gsb_gui_navigation_free_pages_list ( void );
 gint gsb_gui_navigation_get_current_account ( void );
 gint gsb_gui_navigation_get_current_page ( void );
@@ -33,7 +33,6 @@ GtkTreeModel *gsb_gui_navigation_get_model ( void );
 GQueue *gsb_gui_navigation_get_pages_list ( void );
 GtkWidget *gsb_gui_navigation_get_tree_view ( void );
 void gsb_gui_navigation_init_pages_list ( void );
-void gsb_gui_navigation_init_tree_view ( void );
 void gsb_gui_navigation_remove_account ( gint account_number );
 void gsb_gui_navigation_remove_report ( gint report_number );
 gboolean gsb_gui_navigation_select_next ( void );
@@ -51,7 +50,7 @@ gboolean navigation_change_account ( gint new_account );
 gboolean navigation_drag_data_received ( GtkTreeDragDest *drag_dest,
                         GtkTreePath *dest_path,
                         GtkSelectionData *selection_data );
-gboolean navigation_row_drop_possible ( GtkTreeDragDest *drag_dest, 
+gboolean navigation_row_drop_possible ( GtkTreeDragDest *drag_dest,
                         GtkTreePath *dest_path,
                         GtkSelectionData *selection_data );
 /* END_DECLARATION */
diff --git a/src/parametres.c b/src/parametres.c
index 56724e0..5f78c91 100644
--- a/src/parametres.c
+++ b/src/parametres.c
@@ -43,6 +43,7 @@
 #include "categories_onglet.h"
 #include "dialog.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_archive_config.h"
 #include "gsb_automem.h"
 #include "gsb_bank.h"
@@ -127,11 +128,9 @@ static gint width_spin_button = 50;
 /*START_EXTERN*/
 extern GtkWidget *account_page;
 extern struct conditional_message delete_msg[];
-extern gboolean execute_scheduled_of_month;
 extern struct conditional_message messages[];
 extern gint mise_a_jour_liste_comptes_accueil;
 extern gchar *nom_fichier_comptes;
-extern gint nb_days_before_scheduled;
 /*END_EXTERN*/
 
 
@@ -257,22 +256,24 @@ gboolean preferences ( gint page )
     GtkWidget *hbox, *tree;
     GtkTreeIter iter, iter2;
     GtkWidget *hpaned;
+    GrisbiAppConf *conf;
 
     devel_debug_int (page);
+    conf = grisbi_app_get_conf ( );
 
     if ( gsb_gui_navigation_get_current_page ( ) == - 1 )
         return FALSE;
 
     /* Create dialog */
     fenetre_preferences = gtk_dialog_new_with_buttons (_("Grisbi preferences"),
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL,
                         GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE,
                         NULL );
 
-    if ( conf.prefs_width )
+    if ( conf->prefs_width )
         gtk_window_set_default_size ( GTK_WINDOW ( fenetre_preferences ),
-                        conf.prefs_width, -1 );
+                        conf->prefs_width, -1 );
     gtk_window_set_position ( GTK_WINDOW ( fenetre_preferences ), GTK_WIN_POS_CENTER_ON_PARENT );
     gtk_window_set_resizable ( GTK_WINDOW ( fenetre_preferences ), TRUE );
 
@@ -616,7 +617,7 @@ gboolean preferences ( gint page )
         /* Hook some help function */
         break;
         default:
-        gtk_window_get_size ( GTK_WINDOW ( fenetre_preferences ), &conf.prefs_width, NULL );
+/*         gtk_window_get_size ( GTK_WINDOW ( fenetre_preferences ), &conf->prefs_width, NULL );  */
         gtk_widget_destroy ( GTK_WIDGET ( fenetre_preferences ));
         return FALSE;
     }
@@ -661,6 +662,9 @@ GtkWidget *onglet_messages_and_warnings ( void )
     GtkTreeViewColumn * column;
     gchar *tmpstr;
     int i;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Messages & warnings"), "warnings.png" );
 
@@ -669,7 +673,7 @@ GtkWidget *onglet_messages_and_warnings ( void )
 
     /* Display or not tips */
     tip_checkbox = gsb_automem_checkbutton_new ( _("Display tip of the day"),
-                        &(etat.show_tip),
+                        &conf->show_tip,
                         NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), tip_checkbox, FALSE, FALSE, 0 );
 
@@ -868,6 +872,9 @@ GtkWidget *onglet_fichier ( void )
     GtkWidget *label;
     GtkWidget *button;
     GtkWidget *dialog;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Files"), "files.png" );
 
@@ -877,16 +884,16 @@ GtkWidget *onglet_fichier ( void )
 
     /* Automatically load last file on startup? */
     button = gsb_automem_checkbutton_new (_("Automatically load last file on startup"),
-                        &conf.dernier_fichier_auto, NULL, NULL );
+                        &conf->dernier_fichier_auto, NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     button = gsb_automem_checkbutton_new (_("Automatically save on exit"),
-                        &conf.sauvegarde_auto, NULL, NULL);
+                        &conf->sauvegarde_auto, NULL, NULL);
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Warn if file is used by someone else? */
     button = gsb_automem_checkbutton_new ( _("Force saving of locked files"),
-                        &conf.force_enregistrement, NULL, NULL );
+                        &conf->force_enregistrement, NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* crypt the grisbi file */
@@ -896,7 +903,7 @@ GtkWidget *onglet_fichier ( void )
 
     /* Compression level of files */
     button = gsb_automem_checkbutton_new ( _("Compress Grisbi file"),
-                        &conf.compress_file, NULL, NULL );
+                        &conf->compress_file, NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Memorize last opened files in menu */
@@ -906,7 +913,7 @@ GtkWidget *onglet_fichier ( void )
     label = gtk_label_new ( _("Memorise last opened files: ") );
     gtk_box_pack_start ( GTK_BOX ( hbox ), label, FALSE, FALSE, 0 );
 
-    button = gsb_automem_spin_button_new ( &conf.nb_max_derniers_fichiers_ouverts,
+    button = gsb_automem_spin_button_new ( &conf->nb_max_derniers_fichiers_ouverts,
                         G_CALLBACK ( affiche_derniers_fichiers_ouverts ), NULL );
     gtk_widget_set_size_request ( button, width_spin_button, -1 );
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, FALSE, 0 );
@@ -916,22 +923,22 @@ GtkWidget *onglet_fichier ( void )
 
     /* Single backup file */
     button = gsb_automem_checkbutton_new ( _("Make a single backup file"),
-                        &conf.make_bakup_single_file, NULL, NULL );
+                        &conf->make_bakup_single_file, NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Compression level of backups */
     button = gsb_automem_checkbutton_new ( _("Compress Grisbi backup"),
-                        &conf.compress_backup, NULL, NULL );
+                        &conf->compress_backup, NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Backup at each opening? */
     button = gsb_automem_checkbutton_new ( _("Make a backup copy after opening files"),
-                        &conf.sauvegarde_demarrage, NULL, NULL);
+                        &conf->sauvegarde_demarrage, NULL, NULL);
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Automatic backup ? */
     button = gsb_automem_checkbutton_new (_("Make a backup copy before saving files"),
-                        &conf.make_backup, NULL, NULL);
+                        &conf->make_backup, NULL, NULL);
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), button, FALSE, FALSE, 0 );
 
     /* Automatic backup every x minutes */
@@ -939,11 +946,11 @@ GtkWidget *onglet_fichier ( void )
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0);
 
     button = gsb_automem_checkbutton_new (_("Make a backup copy every "),
-                        &conf.make_backup_every_minutes,
+                        &conf->make_backup_every_minutes,
                         G_CALLBACK (gsb_file_automatic_backup_start), NULL);
     gtk_box_pack_start ( GTK_BOX (hbox), button, FALSE, FALSE, 0 );
 
-    button = gsb_automem_spin_button_new ( &conf.make_backup_nb_minutes,
+    button = gsb_automem_spin_button_new ( &conf->make_backup_nb_minutes,
                         G_CALLBACK (gsb_file_automatic_backup_change_time), NULL );
     gtk_widget_set_size_request ( button, width_spin_button, -1 );
     gtk_box_pack_start ( GTK_BOX (hbox), button, FALSE, FALSE, 0 );
@@ -961,7 +968,7 @@ GtkWidget *onglet_fichier ( void )
     /* on passe par une fonction intermédiaire pour pallier à un bug
      * du gtk_file_chooser_button_new qui donne le répertoire home
      * lorsque l'on annule le choix du nouveau répertoire */
-    dialog = utils_files_create_file_chooser ( run.window,
+    dialog = utils_files_create_file_chooser ( GTK_WIDGET ( grisbi_app_get_active_window ( NULL ) ),
                         _("Select/Create backup directory") );
 
     button = gtk_file_chooser_button_new_with_dialog ( dialog );
@@ -985,7 +992,7 @@ GtkWidget *onglet_fichier ( void )
     gtk_box_pack_start ( GTK_BOX ( paddingbox ), hbox, FALSE, FALSE, 0);
 
     button = gsb_automem_checkbutton_new (_("Use the config file of version stable as model"),
-                        &conf.stable_config_file_model,
+                        &conf->stable_config_file_model,
                         NULL, NULL);
     gtk_box_pack_start ( GTK_BOX (hbox), button, FALSE, FALSE, 0 );
 #endif
@@ -1053,6 +1060,9 @@ GtkWidget *onglet_programmes (void)
     GtkWidget *vbox_pref, *label, *entry, *paddingbox, *table;
     GtkSizeGroup *size_group;
     gchar * text;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
 
@@ -1070,10 +1080,10 @@ GtkWidget *onglet_programmes (void)
     gtk_misc_set_alignment ( GTK_MISC ( label ), 0.0, 0.5 );
     gtk_table_attach ( GTK_TABLE(table), label, 0, 1, 0, 1,
                         GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0 );
-    entry = gsb_automem_entry_new ( &conf.browser_command, NULL, NULL );
+    entry = gsb_automem_entry_new ( &conf->browser_command, NULL, NULL );
     gtk_table_attach ( GTK_TABLE(table), entry, 1, 2, 0, 1, GTK_EXPAND|GTK_FILL, 0, 0, 0 );
 
-    text = make_blue ( g_strconcat ( 
+    text = make_blue ( g_strconcat (
                         _("You may use %s to expand the URL I.e:\n'firefox -remote %s'"),
                         NULL ) );
     label = gtk_label_new ( text );
@@ -1090,6 +1100,7 @@ GtkWidget *onglet_programmes (void)
     if ( ! assert_account_loaded() )
       gtk_widget_set_sensitive ( vbox_pref, FALSE );
 
+    /* return */
     return ( vbox_pref );
 }
 
@@ -1109,6 +1120,9 @@ static GtkWidget *gsb_config_scheduler_page ( void )
     GtkWidget *label;
     GtkWidget *entry;
     GtkWidget *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     vbox_pref = new_vbox_with_title_and_icon ( _("Scheduler"), "scheduler.png" );
 
@@ -1118,7 +1132,7 @@ static GtkWidget *gsb_config_scheduler_page ( void )
                         _("Scheduler warnings at Grisbi's opening"),
                         _("Warn/Execute the scheduled transactions arriving at expiration date"),
                         _("Warn/Execute the scheduled transactions of the month"),
-                        &execute_scheduled_of_month,
+                        &conf->execute_scheduled_of_month,
                         NULL, NULL );
 
     hbox = gtk_hbox_new ( FALSE, 0);
@@ -1128,7 +1142,7 @@ static GtkWidget *gsb_config_scheduler_page ( void )
                         _("Number of days before the warning or the execution: ") );
     gtk_box_pack_start ( GTK_BOX (hbox), label, FALSE, FALSE, 0 );
 
-    entry = gsb_automem_spin_button_new ( &nb_days_before_scheduled, NULL, NULL );
+    entry = gsb_automem_spin_button_new ( &conf->nb_days_before_scheduled, NULL, NULL );
     gtk_widget_set_size_request ( entry, width_spin_button, -1 );
 
     gtk_box_pack_start ( GTK_BOX (hbox), entry, FALSE, FALSE, 0 );
@@ -1147,8 +1161,11 @@ static GtkWidget *gsb_config_scheduler_page ( void )
 GtkWidget *onglet_metatree ( void )
 {
     GtkWidget *vbox_pref, *paddingbox, *total_currencies;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
-    vbox_pref = new_vbox_with_title_and_icon ( 
+    vbox_pref = new_vbox_with_title_and_icon (
                         _("Payees, categories and budgetaries"),
                         "organization.png" );
 
@@ -1172,9 +1189,9 @@ GtkWidget *onglet_metatree ( void )
                         _("Expand the line"),
                         _("Edit the line"),
                         _("Manage the line"),
-                        &conf.metatree_action_2button_press,
+                        &conf->metatree_action_2button_press,
                         G_CALLBACK ( gsb_config_onglet_metatree_action_changed ),
-                        &conf.metatree_action_2button_press,
+                        &conf->metatree_action_2button_press,
                         GTK_ORIENTATION_VERTICAL );
 
     return vbox_pref;
@@ -1643,7 +1660,8 @@ void gsb_localisation_update_affichage ( gin tion_changed ),  LL );  date"),  ,  ),  L );   n" ) ), TRUE );  rted ones.") :   ,  he \"%s\" option in preferences."),  ));        ’˜˜ä‘+  ÀÁmrÿ  €°ºä‘+          °¶mrÿ         €µmrÿ  k {ã‘+  6                    è     è!     è!     PÁmrÿ  ÀÁmrÿ  xT˜ä‘+          °·mrÿ          ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ         ÀOüä‘+  uŠ{ã‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          xT˜ä‘+          °·mrÿ          €¶mrÿ  k {ã‘+  à!     à!     PÁmrÿ  ÀÁmrÿ  Hxä‘+          ¸mrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ  `‚{ã‘+  Ámrÿ  €Ámrÿ  xÁmrÿ  8«œã‘+  Œp˜        ÀÁmrÿ  uŠ{ã‘+  €ª|ã‘+                  ¸mrÿ         `·mrÿ  k {ã‘+          G       H   I       J   K           M   N   O       P   PÁmrÿ  ÀÁmrÿ  HÕNä‘+          0ºmrÿ         ’‚{ã‘+          † {ã‘+  PÁmrÿ         0Oüä‘+  uŠ{ã‘+   `˜ä‘+   	,ä‘+   @üä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          HÕNä‘+          0ºmrÿ 
         p¸mrÿ  k {ã‘+  8ÕNä‘+          0ºmrÿ          ¸mrÿ  k {ã‘+  (ÕNä‘+          0ºmrÿ         иmrÿ  k {ã‘+  ÕNä‘+          0ºmrÿ          ¹mrÿ  k {ã‘+  	       ¨Nüä‘+  uŠ{ã‘+         ¨Iüä‘+  €³mrÿ          ŠX,ä‘+  e‰{ã‘+         ØDüä‘+   ¹mrÿ          yX,ä‘+  e‰{ã‘+          @üä‘+  йmrÿ          ZX,ä‘+  e‰{ã‘+  Ø,ä‘+   `˜ä‘+   	,ä‘+   @üä‘+  Ød˜ä‘+  ØDüä‘+  ¨Iüä‘+  €ª|ã‘+          8«œã‘+                        Í÷ã‘+  ÀÁmrÿ  p›+ä‘+          €»mrÿ          Pºmrÿ  k {ã‘+      5   6   7   8   :   <   =   >       ?       @   B   D       PÁmrÿ  ÀÁmrÿ  àÍôã‘+                 ÀÁmrÿ  uŠ{ã‘+         ¥œã‘+   ºmrÿ          Í÷ã‘+  e‰{ã‘+  ¥œã‘+          Õ_ at fÆS         Qöl±íÁãÃã‘+  ÀÁmrÿ  àÍôã‘+          ¼mrÿ         `»mrÿ  k {ã‘+  u]ÞÓ	4Q ÷U^Qʉ§ ¶uª¹ñìò*ēvPÁmrÿ  ÀÁmrÿ  HÁã‘+          dýã‘+           Ãmrÿ  ¦p_å‘+  ¦p_å‘+         ¶úã‘+  Ámrÿ  ÀÂmrÿ  xÁmrÿ  à½mrÿ  o˜ä‘+  uŠ{ã‘+  Ød˜ä‘+  @Ämrÿ  ¢p_å‘+  Ãmrÿ           ¾mr
 ÿ                 ÿÿÿÿÿÿÿÿ¢p_å‘+          ÈÁmrÿ                 t type_maj )
         kind_account kind;
 
         account_number = gsb_gui_navigation_get_current_account ( );
-        account_current_page = gtk_notebook_get_current_page ( GTK_NOTEBOOK ( account_page ) );
+        account_current_page = gtk_notebook_get_current_page (
+                        GTK_NOTEBOOK ( gsb_gui_on_account_get_notebook ( ) ) );
 
         kind = gsb_data_account_get_kind ( account_number );
         switch ( kind )
diff --git a/src/parametres_ui.c b/src/parametres_ui.c
new file mode 100644
index 0000000..4b54b74
--- /dev/null
+++ b/src/parametres_ui.c
@@ -0,0 +1,52 @@
+/* ************************************************************************** */
+/*                                                                            */
+/*     Copyright (C)    2001-2008 Cédric Auger (cedric at grisbi.org)            */
+/*          2003-2008 Benjamin Drieu (bdrieu at april.org)                       */
+/*          2009-2012 Pierre Biava (grisbi at pierre.biava.name)                 */
+/*          http://www.grisbi.org                                             */
+/*                                                                            */
+/*  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 */
+/*                                                                            */
+/* ************************************************************************** */
+
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+
+
+/*START_INCLUDE*/
+#include "parametres_ui.h"
+#include "parametres.h"
+#include "utils_gtkbuilder.h"
+/*END_INCLUDE*/
+
+
+/*START_STATIC*/
+/*END_STATIC*/
+
+
+
+/**
+ *
+ *
+ * \param
+ *
+ * \return
+ **/
+/* Local Variables: */
+/* c-basic-offset: 4 */
+/* End: */
diff --git a/src/parametres_ui.h b/src/parametres_ui.h
new file mode 100644
index 0000000..2b18ab1
--- /dev/null
+++ b/src/parametres_ui.h
@@ -0,0 +1,14 @@
+#ifndef _PARAMETRES_UI_H
+#define _PARAMETRES_UI_H (1)
+
+#include <gtk/gtk.h>
+
+/* START_INCLUDE_H */
+/* END_INCLUDE_H */
+
+
+/*START_DECLARATION*/
+
+/*END_DECLARATION*/
+
+#endif /* _PARAMETRES_UI_H */
diff --git a/src/parse_cmdline.c b/src/parse_cmdline.c
new file mode 100644
index 0000000..38f35b5
--- /dev/null
+++ b/src/parse_cmdline.c
@@ -0,0 +1,285 @@
+/* *******************************************************************************/
+/*                                                                               */
+/*     Copyright (C)    2000-2008 Cédric Auger (cedric at grisbi.org)               */
+/*                      2003-2008 Benjamin Drieu (bdrieu at april.org)              */
+/*          2008-2012 Pierre Biava (grisbi at pierre.biava.name)                    */
+/*          http://www.grisbi.org                                                */
+/*                                                                               */
+/*     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 */
+/*                                                                               */
+/* *******************************************************************************/
+
+/* Gedit a servi de modèle pour cet objet */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <glib/gi18n.h>
+
+/*START_INCLUDE*/
+#include "parse_cmdline.h"
+#include "dialog.h"
+#include "gsb_dirs.h"
+#include "main.h"
+/*END_INCLUDE*/
+
+#define GRISBI_COMMAND_LINE_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE((object), GRISBI_TYPE_COMMAND_LINE, GrisbiCommandLinePrivate))
+
+struct _GrisbiCommandLinePrivate
+{
+    gint debug_level;
+    gchar *config_file;
+    gchar **files_args;
+
+    gchar *conf_filename;
+    GSList *file_list;
+};
+
+G_DEFINE_TYPE (GrisbiCommandLine, grisbi_command_line, G_TYPE_INITIALLY_UNOWNED)
+
+static void grisbi_command_line_finalize ( GObject *object )
+{
+    GrisbiCommandLinePrivate *priv = GRISBI_COMMAND_LINE ( object )->priv;
+
+    g_free ( priv->config_file );
+    g_strfreev ( priv->files_args );
+    g_slist_free_full ( priv->file_list, g_object_unref );
+
+    G_OBJECT_CLASS ( grisbi_command_line_parent_class)->finalize ( object );
+}
+
+
+static void grisbi_command_line_class_init ( GrisbiCommandLineClass *klass )
+{
+    GObjectClass *object_class = G_OBJECT_CLASS ( klass );
+
+    object_class->finalize = grisbi_command_line_finalize;
+
+    g_type_class_add_private ( object_class, sizeof ( GrisbiCommandLinePrivate ) );
+}
+
+
+static void grisbi_command_line_init ( GrisbiCommandLine *self )
+{
+    self->priv = GRISBI_COMMAND_LINE_GET_PRIVATE ( self );
+
+    self->priv->debug_level = -1;
+}
+
+
+GrisbiCommandLine *grisbi_command_line_get_default ( void )
+{
+    GrisbiCommandLine *command_line;
+
+    command_line = g_object_new ( GRISBI_TYPE_COMMAND_LINE, NULL );
+
+    if ( g_object_is_floating ( command_line ) )
+    {
+        g_object_ref_sink ( command_line );
+    }
+    else
+    {
+        g_object_unref ( command_line );
+    }
+
+    return command_line;
+}
+
+
+/**
+ * cherche le nom_long d'un fichier de configuration passé en paramètre
+ *
+ * \param nom de l'option
+ *
+ * \return un nom valide ou NULL;
+ **/
+static gchar *grisbi_command_line_make_conf_filename ( gchar *config_file )
+{
+    gchar *tmp_name = NULL;
+
+    if ( g_file_test ( config_file, G_FILE_TEST_EXISTS ) )
+    {
+        tmp_name = g_strdup ( config_file );
+
+        return tmp_name;
+    }
+    else
+    {
+        tmp_name = g_build_filename ( gsb_dirs_get_user_config_dir (), config_file, NULL );
+        if ( g_file_test ( tmp_name, G_FILE_TEST_EXISTS ) )
+        {
+            return tmp_name;
+        }
+        else
+        {
+            g_free ( tmp_name );
+            tmp_name = g_build_filename ( gsb_dirs_get_home_dir (), config_file, NULL );
+            if ( g_file_test ( tmp_name, G_FILE_TEST_EXISTS ) )
+            {
+                return tmp_name;
+            }
+            else
+            {
+                g_free ( tmp_name );
+                return NULL;
+            }
+        }
+    }
+    return NULL;
+}
+
+
+static void grisbi_command_line_init_file_list ( GrisbiCommandLine *command_line )
+{
+    gint i;
+
+    if (!command_line->priv->files_args)
+    {
+        return;
+    }
+
+    for (i = 0; command_line->priv->files_args[i]; i++)
+    {
+        GFile *file;
+
+        file = g_file_new_for_commandline_arg ( command_line->priv->files_args[i] );
+
+        command_line->priv->file_list = g_slist_prepend ( command_line->priv->file_list, file );
+    }
+
+    command_line->priv->file_list = g_slist_reverse ( command_line->priv->file_list );
+}
+
+
+gint grisbi_command_line_parse ( GrisbiCommandLine *command_line,
+                        gint argc,
+                        gchar **argv )
+{
+    GOptionContext *context;
+    GError *error = NULL;
+    gchar *conf_filename;
+    gint return_value = 0;
+    const GOptionEntry options[] =
+    {
+        /* Version */
+        {
+            "version", 'v', G_OPTION_FLAG_NO_ARG, G_OPTION_ARG_CALLBACK,
+            gsb_main_show_version, N_("Show the application's version"), NULL
+        },
+
+        /* debug level */
+        {
+            "debug", 'd', 0, G_OPTION_ARG_INT, &command_line->priv->debug_level,
+            N_("Debug mode: level 0-5"), NULL
+        },
+
+        /* config file */
+        {
+            "file.conf", 'c', 0, G_OPTION_ARG_FILENAME, &command_line->priv->config_file,
+            N_("[FILE.CONF]"), NULL
+        },
+
+        /* Open a new window */
+/*         {
+ *             "new-window", 'w', 0, G_OPTION_ARG_NONE, &command_line->priv->new_window,
+ *             N_("Create a new top-level window in an existing instance of grisbi"), NULL
+ *         },
+ */
+
+        /* Run in the background */
+/*         {
+ *             "background", 'b', 0, G_OPTION_ARG_NONE, &command_line->priv->background,
+ *             N_("Run grisbi in the background"), NULL
+ *         },
+ */
+
+        /* collects files arguments */
+        {
+            G_OPTION_REMAINING, '\0', 0, G_OPTION_ARG_FILENAME_ARRAY, &command_line->priv->files_args,
+            NULL, N_("[FILE...]")
+        },
+
+        {NULL}
+    };
+
+    /* Setup command line options */
+    context = g_option_context_new ( _("- Personnal finances manager") );
+    g_option_context_set_summary ( context,
+                        N_("Grisbi can manage the accounts of a family or a small association.") );
+    g_option_context_set_translation_domain ( context, PACKAGE );
+
+    g_option_context_add_main_entries ( context, options, PACKAGE );
+    g_option_context_add_group ( context, gtk_get_option_group ( FALSE ) );
+    g_option_context_set_translation_domain ( context, PACKAGE );
+
+    if ( !g_option_context_parse ( context, &argc, &argv, &error ) )
+    {
+        if (error)
+        {
+            g_print ("option parsing failed: %s\n", error->message);
+            g_error_free ( error );
+        }
+
+        return_value = 1;
+    }
+
+    g_option_context_free (context);
+
+    /* test de la validité du fichier de configuration */
+    conf_filename = grisbi_command_line_make_conf_filename ( command_line->priv->config_file );
+    if ( conf_filename == NULL )
+    {
+        g_print ( _("Error loading file '%s'"), command_line->priv->config_file );
+
+        return_value = 1;
+    }
+
+    command_line->priv->conf_filename = conf_filename;
+
+    /* Constitution de la liste des fichiers */
+    grisbi_command_line_init_file_list ( command_line );
+
+    return return_value;
+}
+
+
+gchar *grisbi_command_line_get_config_file ( GrisbiCommandLine *command_line )
+{
+    g_return_val_if_fail ( GRISBI_IS_COMMAND_LINE ( command_line ), NULL );
+
+    return command_line->priv->conf_filename;
+}
+
+
+gint grisbi_command_line_get_debug_level ( GrisbiCommandLine *command_line )
+{
+    g_return_val_if_fail ( GRISBI_IS_COMMAND_LINE ( command_line ), 0 );
+
+    return command_line->priv->debug_level;
+}
+
+
+GSList *grisbi_command_line_get_file_list ( GrisbiCommandLine *command_line )
+{
+    g_return_val_if_fail ( GRISBI_IS_COMMAND_LINE ( command_line ), NULL );
+
+    return command_line->priv->file_list;
+}
+
+
+/* Local Variables: */
+/* c-basic-offset: 4 */
+/* End: */
diff --git a/src/parse_cmdline.h b/src/parse_cmdline.h
new file mode 100644
index 0000000..52f30d7
--- /dev/null
+++ b/src/parse_cmdline.h
@@ -0,0 +1,44 @@
+#ifndef   __PARSE_CMDLINE_H
+#define   __PARSE_CMDLINE_H (1)
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define GRISBI_TYPE_COMMAND_LINE            (grisbi_command_line_get_type ())
+#define GRISBI_COMMAND_LINE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GRISBI_TYPE_COMMAND_LINE, GrisbiCommandLine))
+#define GRISBI_COMMAND_LINE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GRISBI_TYPE_COMMAND_LINE, GrisbiCommandLineClass))
+#define GRISBI_IS_COMMAND_LINE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GRISBI_TYPE_COMMAND_LINE))
+#define GRISBI_IS_COMMAND_LINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GRISBI_TYPE_COMMAND_LINE))
+#define GRISBI_COMMAND_LINE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GRISBI_TYPE_COMMAND_LINE, GrisbiCommandLineClass))
+
+typedef struct _GrisbiCommandLine           GrisbiCommandLine;
+typedef struct _GrisbiCommandLineClass      GrisbiCommandLineClass;
+typedef struct _GrisbiCommandLinePrivate    GrisbiCommandLinePrivate;
+
+struct _GrisbiCommandLine
+{
+    GInitiallyUnowned parent;
+
+    GrisbiCommandLinePrivate *priv;
+};
+
+struct _GrisbiCommandLineClass
+{
+    GInitiallyUnownedClass parent_class;
+};
+
+GType grisbi_command_line_get_type ( void ) G_GNUC_CONST;
+
+GrisbiCommandLine *grisbi_command_line_get_default ( void );
+gint grisbi_command_line_parse ( GrisbiCommandLine *command_line,
+                        gint argc,
+                        gchar **argv );
+
+gchar *grisbi_command_line_get_config_file ( GrisbiCommandLine *command_line );
+gint grisbi_command_line_get_debug_level ( GrisbiCommandLine *command_line );
+GSList *grisbi_command_line_get_file_list ( GrisbiCommandLine *command_line );
+
+#endif  /* ifndef __PARSE_CMDLINE_H */
+
+
diff --git a/src/plugins/openssl/openssl.c b/src/plugins/openssl/openssl.c
index d13db07..625f68b 100644
--- a/src/plugins/openssl/openssl.c
+++ b/src/plugins/openssl/openssl.c
@@ -36,6 +36,7 @@
 /*START_INCLUDE*/
 #include "openssl.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "main.h"
 #include "structures.h"
 #include "erreur.h"
@@ -317,7 +318,7 @@ gchar *gsb_file_util_ask_for_crypt_key ( gchar * file_name, gchar * additional_m
     gint result;
 
     dialog = gtk_dialog_new_with_buttons ( _("Grisbi password"),
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                         GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
                         ( encrypt ? _("Crypt file") : _("Decrypt file") ), GTK_RESPONSE_OK,
diff --git a/src/print_dialog_config.c b/src/print_dialog_config.c
index 9886ada..7adfd57 100644
--- a/src/print_dialog_config.c
+++ b/src/print_dialog_config.c
@@ -34,6 +34,7 @@
 
 /*START_INCLUDE*/
 #include "print_dialog_config.h"
+#include "grisbi_app.h"
 #include "structures.h"
 #include "erreur.h"
 /*END_INCLUDE*/
@@ -86,11 +87,11 @@ void print_dialog_config ( GCallback begin_callback,
 
 
     res = gtk_print_operation_run (print, GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
-				   GTK_WINDOW ( run.window ), NULL);
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ), NULL);
 
     if (res == GTK_PRINT_OPERATION_RESULT_APPLY)
     {
-	settings = gtk_print_operation_get_print_settings (print);
+        settings = gtk_print_operation_get_print_settings (print);
     }
 
 }
diff --git a/src/structures.h b/src/structures.h
index 3caec00..4530f9d 100644
--- a/src/structures.h
+++ b/src/structures.h
@@ -22,6 +22,11 @@
 
 #define CSV_MAX_TOP_LINES 10	/** How many lines to show in CSV preview.  */
 
+typedef struct gsb_conf_t GrisbiAppConf;
+typedef struct gsb_etat_t GrisbiWindowConf;
+typedef struct gsb_run_t  GrisbiAppRun;
+
+
 /** structure etat
  * variables contenant juste 0 ou 1
  * FIXME : scinder cette structure en 3 parties :
@@ -43,10 +48,7 @@ struct gsb_etat_t
     gint reconcile_end_date;        /* Date initiale + 1 mois par défaut */
 
     /* formulaire */
-    gint formulaire_toujours_affiche;
-    gint affichage_exercice_automatique;    /* automatic fyear :0 to set according to the date, 2 according to value date */
     gint affiche_nb_ecritures_listes;
-    gint largeur_auto_colonnes;
     gint retient_affichage_par_compte;      /* à 1 si les caractéristiques de l'affichage (R, non R ...) diffèrent par compte */
 
     /* Fonts & logo */
@@ -54,9 +56,6 @@ struct gsb_etat_t
     gboolean is_pixmaps_dir;        /* TRUE if path_icon == gsb_dirs_get_pixmaps_dir ( ) */
     gchar *name_logo;
     
-    gint display_toolbar;           /** Display mode of toolbar. */
-    gboolean show_headings_bar;     /** Show headings bar or not. */
-    gboolean show_closed_accounts;
     gboolean automatic_separator;   /* TRUE if do automatic separator */
 
     /* Various display message stuff    */
@@ -96,10 +95,6 @@ struct gsb_etat_t
     /* variables sur l'échéancier */
     gint affichage_commentaire_echeancier;      /* à 1 si le commentaire est affiché */
 
-    /* Tips */
-    gint last_tip; 
-    gint show_tip; 
-
     /* variables pour les metatree */
     gint metatree_sort_transactions;        /* 1 = sorting by increasing date 2 = Sort by date descending */
     gint add_archive_in_total_balance;      /* Add transactions archived in the totals */
@@ -132,14 +127,28 @@ extern struct gsb_etat_t etat;
  */
 struct gsb_conf_t
 {
-    /* geometry */
+    /* IHM */
+    /* main window */
     gint root_x;                                    /* main_window x position */
     gint root_y;                                    /* main_window y position */
     gint main_width;                                /* main_window width */
     gint main_height;                               /* main_window height */
     gint full_screen;                               /* 1 to full screen, 0 else */
+    gint maximize_screen;                           /* 1 when window is maximized */
+    gint display_toolbar;                           /* Display mode of toolbar. */
+    gboolean show_headings_bar;                     /* Show headings bar or not. */
+
+    /* preferences */
     gint prefs_width;                               /* preferences width */
 
+    /* left_panel */
+    gint panel_width;                               /* left hpanel width */
+    gboolean active_scrolling_left_pane;            /* active mouse scrolling in the left panel. */
+
+    /* Tips */
+    gint last_tip; 
+    gint show_tip; 
+
     /* general part */
     gint r_modifiable;                              /* Changes in reconciled transactions */
     gint entree;                                    /* si etat.entree = 1, la touche entrée finit l'opération */ 
@@ -148,9 +157,9 @@ struct gsb_conf_t
     gchar *font_string;                             /* contain the description of the font, or NULL */
     gchar *browser_command;
     gint pluriel_final;                             /* 0 = finals 1 = finaux */
+    gboolean show_closed_accounts;
 
     gint display_grisbi_title;                      /* selection du titre principal de grisbi */
-    gboolean active_scrolling_left_pane;            /** active mouse scrolling in the left_pane. */
 
     /* files part */
     gint sauvegarde_demarrage;                      /* utilisé pour enregistrer le fichier s'il s'est bien ouvert */
@@ -161,6 +170,7 @@ struct gsb_conf_t
     gint force_enregistrement;                      /* à un si on force l'enregistrement */
     gint nb_max_derniers_fichiers_ouverts;          /* contient le nb max que peut contenir nb_derniers_fichiers_ouverts */
     gsize nb_derniers_fichiers_ouverts;             /* contient le nb de derniers fichiers ouverts */
+    gchar **tab_noms_derniers_fichiers_ouverts;     /* RecentFiles */
 
     /* backup part */
     gint make_backup;                               /* TRUE for create a backup when save file */
@@ -170,7 +180,9 @@ struct gsb_conf_t
     gint compress_backup;                           /* TRUE if we want to compress the backup */
 
     /* formulaire */
+    gint formulaire_toujours_affiche;
     gint automatic_completion_payee;                /* 1 pour autoriser la completion automatique des opérations */
+    gint affichage_exercice_automatique;            /* automatic fyear :0 to set according to the date, 2 according to value date */
     gboolean limit_completion_to_current_account;   /* Limit payee completion to current account or do a full search. */
     gboolean automatic_recover_splits;              /* 1 pour recréer automatiquement les sous opérations */
     gboolean automatic_erase_credit_debit;          /* 1 pour effacer les champs crédit et débit */
@@ -189,7 +201,11 @@ struct gsb_conf_t
     gboolean transactions_list_primary_sorting;     /* Primary sorting option for the transactions */
     gboolean transactions_list_secondary_sorting;   /* Secondary sorting option for the transactions */
 
-    /* variables for the list of transactions */
+    /* variables for the list of scheduled */
+    gint nb_days_before_scheduled;                  /* number of days before the scheduled to execute it */
+    gboolean execute_scheduled_of_month;            /* warn/execute scheduled at expiration (FALSE) or of the month (TRUE) */
+
+    /* variables for the list of divisions */
     gint metatree_action_2button_press;             /* 0 default gtk, 1 edit_function, 1 manage division if possible */
 
     /* archive stuff */
@@ -209,9 +225,6 @@ extern struct gsb_conf_t conf;
 
 struct gsb_run_t
 {
-    /* main window of grisbi */
-    GtkWidget *window;
-
     /* initialisation variables */
     gboolean new_crypted_file;      /* 0 à l'exécution de init_variables () 1 si new crypted file*/
 
diff --git a/src/tests/main_cunit.c b/src/tests/main_cunit.c
index 1ee7741..b7fea38 100644
--- a/src/tests/main_cunit.c
+++ b/src/tests/main_cunit.c
@@ -99,29 +99,9 @@ int gsb_cunit_run_tests()
 }
 
 
-#ifdef _MSC_VER
-int APIENTRY wWinMain(HINSTANCE hInstance,
-                      HINSTANCE hPrevInstance,
-                      LPWSTR    lpCmdLine,
-                      int       nCmdShow)
-{
-	int argc, nLen;
-	LPWSTR * argvP;
-	char ** argv = malloc(sizeof(char**));
-	argvP = CommandLineToArgvW(GetCommandLineW(), &(argc));
-	nLen = WideCharToMultiByte(CP_UTF8, 0,argvP[0], -1, NULL, 0, NULL, NULL);
-	*argv = malloc((nLen + 1) * sizeof(char));
-	WideCharToMultiByte(CP_UTF8, 0, argvP[0], -1, *argv, nLen, NULL, NULL);
-	int result = main(argc, argv);
-	free(*argv);
-	free(argv);
-	return result;
-}
-#endif /* _MSC_VER */
-
 int main(int argc, char** argv)
 {
-	return gsb_cunit_run_tests() ;
+    return gsb_cunit_run_tests() ;
 }
 
 /* Local Variables: */
diff --git a/src/tiers_onglet.c b/src/tiers_onglet.c
index 30a236b..19d6b88 100644
--- a/src/tiers_onglet.c
+++ b/src/tiers_onglet.c
@@ -40,6 +40,7 @@
 /*START_INCLUDE*/
 #include "tiers_onglet.h"
 #include "fenetre_principale.h"
+#include "grisbi_app.h"
 #include "gsb_assistant.h"
 #include "gsb_automem.h"
 #include "gsb_data_form.h"
@@ -309,12 +310,15 @@ GtkWidget *payees_create_list ( void )
 GtkWidget *creation_barre_outils_tiers ( void )
 {
     GtkWidget *hbox, *button;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     /* Hbox */
     hbox = gtk_hbox_new ( FALSE, 0 );
 
     /* Add various icons */
-    button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+    button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 					       _("New payee"), "new-payee.png",
 					       G_CALLBACK ( appui_sur_ajout_payee ),
 					       payee_tree_model );
@@ -322,7 +326,7 @@ GtkWidget *creation_barre_outils_tiers ( void )
 				  _("Create a new payee"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_DELETE, _("Delete"),
 					   G_CALLBACK ( supprimer_division ),
 					   payee_tree );
@@ -331,7 +335,7 @@ GtkWidget *creation_barre_outils_tiers ( void )
 				  _("Delete selected payee"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_EDIT, _("Edit"),
 					   G_CALLBACK ( edit_payee ),
 					   payee_tree );
@@ -340,7 +344,7 @@ GtkWidget *creation_barre_outils_tiers ( void )
 				  _("Edit selected payee"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
-    button = gsb_automem_stock_button_menu_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_menu_new ( conf->display_toolbar,
 						GTK_STOCK_SELECT_COLOR,
 						_("View"),
 						G_CALLBACK ( popup_payee_view_mode_menu ),
@@ -349,7 +353,7 @@ GtkWidget *creation_barre_outils_tiers ( void )
 				  _("Change view mode"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
-	button = gsb_automem_imagefile_button_new ( etat.display_toolbar,
+	button = gsb_automem_imagefile_button_new ( conf->display_toolbar,
 						_("Manage payees"), "payeesmg.png",
 						G_CALLBACK ( payees_manage_payees ),
 						NULL );
@@ -357,7 +361,7 @@ GtkWidget *creation_barre_outils_tiers ( void )
 				  _("Manage the payees"));
     gtk_box_pack_start ( GTK_BOX ( hbox ), button, FALSE, TRUE, 0 );
 
-    button = gsb_automem_stock_button_new ( etat.display_toolbar,
+    button = gsb_automem_stock_button_new ( conf->display_toolbar,
 					   GTK_STOCK_DELETE, _("Remove unused payees"),
 					   G_CALLBACK ( payees_remove_unused_payees ),
 					   NULL );
@@ -641,7 +645,7 @@ gboolean edit_payee ( GtkTreeView * view )
     title = g_strdup_printf ( _("Properties for %s"), old_payee );
 
     dialog = gtk_dialog_new_with_buttons ( title,
-                        GTK_WINDOW ( run.window ),
+                        GTK_WINDOW ( grisbi_app_get_active_window ( NULL ) ),
                         GTK_DIALOG_MODAL,
                         GTK_STOCK_CANCEL, GTK_RESPONSE_NO,
                         GTK_STOCK_APPLY, GTK_RESPONSE_OK,
@@ -1706,6 +1710,9 @@ gboolean payee_list_button_press ( GtkWidget *tree_view,
         GtkTreeIter iter;
         GtkTreePath *path = NULL;
         enum meta_tree_row_type type_division;
+        GrisbiAppConf *conf;
+
+        conf = grisbi_app_get_conf ( );
 
         type_division = metatree_get_row_type_from_tree_view ( tree_view );
         if ( type_division == META_TREE_TRANSACTION )
@@ -1715,7 +1722,7 @@ gboolean payee_list_button_press ( GtkWidget *tree_view,
         if ( selection && gtk_tree_selection_get_selected (selection, &model, &iter ) )
             path = gtk_tree_model_get_path  ( model, &iter);
 
-        if ( conf.metatree_action_2button_press == 1 )
+        if ( conf->metatree_action_2button_press == 1 )
         {
             edit_payee ( GTK_TREE_VIEW ( tree_view ) );
 
diff --git a/src/tip.c b/src/tip.c
index 1ebde9b..2ec5742 100644
--- a/src/tip.c
+++ b/src/tip.c
@@ -32,6 +32,7 @@
 #define START_INCLUDE
 #include "tip.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_automem.h"
 #include "structures.h"
 #define END_INCLUDE
@@ -125,20 +126,23 @@ void display_tip ( gboolean force )
     GtkWidget * dialog = NULL;
     GtkWidget *btn_back, *btn_forward, *btn_close;
     gchar *tmpstr;
+    GrisbiAppConf *conf;
 
-    if ( !force && !etat.show_tip )
+    conf = grisbi_app_get_conf ( );
+
+    if ( !force && !conf->show_tip )
         return;
 
-    etat.last_tip = CLAMP (etat.last_tip+1, 0, sizeof(tips)/sizeof(gpointer)-1);
+    conf->last_tip = CLAMP (conf->last_tip+1, 0, sizeof(tips)/sizeof(gpointer)-1);
 
     dialog = dialogue_special_no_run ( GTK_MESSAGE_INFO, GTK_BUTTONS_NONE,
                         make_hint ( _("Did you know that..."),
                         /* We use the grisbi-tips catalog */
-                        g_dgettext(NULL, tips[etat.last_tip]) ) );
+                        g_dgettext(NULL, tips[conf->last_tip]) ) );
     gtk_window_set_modal ( GTK_WINDOW ( dialog ), FALSE );
 
     checkbox = gsb_automem_checkbutton_new ( _("Display tips at next start"),
-                        &(etat.show_tip), NULL, NULL );
+                        &conf->show_tip, NULL, NULL );
     gtk_box_pack_start ( GTK_BOX ( dialog_get_content_area ( dialog ) ), checkbox, FALSE, FALSE, 6 );
     gtk_widget_show ( checkbox );
 
@@ -150,21 +154,21 @@ void display_tip ( gboolean force )
     /* We iterate as user can select several tips. */
     while ( TRUE )
     {
-    if (etat.last_tip == sizeof(tips)/sizeof(gpointer)-1)
+    if (conf->last_tip == sizeof(tips)/sizeof(gpointer)-1)
         gtk_widget_set_sensitive (btn_forward, FALSE);
-    if (etat.last_tip == 0)
+    if (conf->last_tip == 0)
         gtk_widget_set_sensitive (btn_back, FALSE);
 
     switch ( gtk_dialog_run ( GTK_DIALOG(dialog) ) )
     {
         case 1:
-        if ( etat.last_tip > 0 )
-            etat.last_tip--;
+        if ( conf->last_tip > 0 )
+            conf->last_tip--;
         gtk_widget_set_sensitive (btn_forward, TRUE); 
         tmpstr = g_strconcat ( make_pango_attribut (
                         "size=\"larger\" weight=\"bold\"", _("Did you know that...") ),
                         "\n\n",
-                        g_dgettext (NULL, tips[etat.last_tip] ),
+                        g_dgettext (NULL, tips[conf->last_tip] ),
                         NULL );
 
         gtk_message_dialog_set_markup ( GTK_MESSAGE_DIALOG ( dialog ), tmpstr );
@@ -173,12 +177,12 @@ void display_tip ( gboolean force )
         break;
 
         case 2:
-        if (etat.last_tip < sizeof(tips)/sizeof(gpointer)-1)
-            etat.last_tip++;
+        if (conf->last_tip < sizeof(tips)/sizeof(gpointer)-1)
+            conf->last_tip++;
         tmpstr = g_strconcat ( make_pango_attribut (
                         "size=\"larger\" weight=\"bold\"", _("Did you know that...") ),
                         "\n\n",
-                        g_dgettext ( NULL, tips[etat.last_tip] ),
+                        g_dgettext ( NULL, tips[conf->last_tip] ),
                         NULL );
 
         gtk_message_dialog_set_markup ( GTK_MESSAGE_DIALOG ( dialog ), tmpstr );
diff --git a/src/traitement_variables.c b/src/traitement_variables.c
index 2e88724..2b949ed 100644
--- a/src/traitement_variables.c
+++ b/src/traitement_variables.c
@@ -192,7 +192,8 @@ void init_variables ( void )
     gsb_report_init_variables ();
     gsb_regex_init_variables ();
 
-    gsb_data_print_config_init ();
+    /* WARNING BUG */
+/*     gsb_data_print_config_init ();  */
 
     /* no bank in memory for now */
     bank_list_model = NULL;
@@ -205,11 +206,6 @@ void init_variables ( void )
 
     orphan_child_transactions = NULL;
     
-    /* the main notebook is set to NULL,
-     * important because it's the checked variable in a new file
-     * to know if the widgets are created or not */
-    gsb_gui_init_general_notebook ( );
-
     if ( nom_fichier_comptes )
         g_free ( nom_fichier_comptes );
     nom_fichier_comptes = NULL;
@@ -245,7 +241,6 @@ void init_variables ( void )
     adresse_commune = NULL;
     adresse_secondaire = NULL;
 
-    etat.largeur_auto_colonnes = 1;
     current_tree_view_width = 0;
     scheduler_current_tree_view_width = 0;
 
@@ -283,8 +278,6 @@ void init_variables ( void )
         etat.scheduler_column_width = NULL;
     }
     
-    gsb_gui_navigation_init_tree_view ( );
-
     /* free the form */
     gsb_form_widget_free_list ();
     gsb_form_scheduler_free_list ();
@@ -295,6 +288,8 @@ void init_variables ( void )
     /* divers */
     etat.add_archive_in_total_balance = TRUE;   /* add the archived transactions by default */
     etat.get_fyear_by_value_date = 0;           /* By default use transaction-date */
+    etat.retient_affichage_par_compte = 0;
+    memset ( etat.csv_skipped_lines, '\0', sizeof(gboolean) * CSV_MAX_TOP_LINES );
 
     /* remove the timeout if necessary */
     if (id_timeout)
@@ -328,7 +323,6 @@ void free_variables ( void )
     gsb_gui_navigation_free_pages_list ( );
     gsb_regex_destroy ( );
     struct_free_bet_graph_prefs ( );
-    gsb_config_free_conf_filename ( );
 }
 
 
diff --git a/src/transaction_list.c b/src/transaction_list.c
index db6b96c..aa49b61 100644
--- a/src/transaction_list.c
+++ b/src/transaction_list.c
@@ -42,6 +42,7 @@
 #include "affichage_liste.h"
 #include "custom_list.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
 #include "gsb_data_archive.h"
@@ -340,7 +341,8 @@ void transaction_list_append_archive ( gint archive_store_number )
     else
         amount_col = find_element_col (ELEMENT_CREDIT);
 
-    newrecord -> visible_col[amount_col] = utils_real_get_string_with_currency (
+    if ( amount_col > 0 )
+        newrecord -> visible_col[amount_col] = utils_real_get_string_with_currency (
                         gsb_data_archive_store_get_balance (archive_store_number),
                         gsb_data_account_get_currency (
                         gsb_data_archive_store_get_account_number ( archive_store_number ) ),
@@ -1894,6 +1896,9 @@ static CustomRecord *transaction_list_create_record ( gint transaction_number,
     gint column;
     CustomRecord *newrecord;
     CustomList *custom_list;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
     custom_list = transaction_model_get_model ();
 
@@ -1905,8 +1910,8 @@ static CustomRecord *transaction_list_create_record ( gint transaction_number,
 	newrecord -> visible_col[column] = gsb_transactions_list_grep_cell_content ( transaction_number,
 										     tab_affichage_ope[line_in_transaction][column]);
 
-    if ( conf.utilise_fonte_listes )
-	    newrecord -> font = conf.font_string;
+    if ( conf->utilise_fonte_listes )
+        newrecord -> font = conf->font_string;
     newrecord -> transaction_pointer = gsb_data_transaction_get_pointer_of_transaction (transaction_number);
     newrecord -> what_is_line = IS_TRANSACTION;
     newrecord -> line_in_transaction = line_in_transaction;
@@ -2080,8 +2085,7 @@ void transaction_list_set_color_jour ( gint account_number )
     g_return_if_fail ( custom_list != NULL );
 
     date_jour = gdate_today ( );
-    element_sort = gsb_data_account_get_element_sort ( account_number,
-							     custom_list -> sort_col);
+    element_sort = gsb_data_account_get_element_sort ( account_number, custom_list -> sort_col);
 
     for ( i = custom_list -> num_visibles_rows -1; i >= 0  ; i-- )
     {
@@ -2120,7 +2124,7 @@ void transaction_list_set_color_jour ( gint account_number )
             }
         }
     }
-    g_date_free ( date_jour ); 
+    g_date_free ( date_jour );
 }
 
 
diff --git a/src/ui/Makefile.am b/src/ui/Makefile.am
index f3539e8..e81c44d 100644
--- a/src/ui/Makefile.am
+++ b/src/ui/Makefile.am
@@ -2,6 +2,13 @@ uidir = $(pkgdatadir)/ui
 
 ui_DATA = etats_config.ui \
     bet_graph.ui \
-    grisbi.ui
+    grisbi.ui \
+    grisbi_ui.xml \
+    grisbi_prefs.ui \
+    dlg_bet_future.ui \
+    dlg_edit_with_radio.ui \
+    dlg_edit_without_radio.ui \
+    dlg_schdler_trans.ui \
+    wdg_paddingbox_with_title.ui
 
 EXTRA_DIST = $(ui_DATA)
diff --git a/src/ui/grisbi.ui b/src/ui/grisbi.ui
index 80ea59c..da22fe1 100644
--- a/src/ui/grisbi.ui
+++ b/src/ui/grisbi.ui
@@ -2,8 +2,190 @@
 <interface>
   <requires lib="gtk+" version="2.24"/>
   <!-- interface-naming-policy project-wide -->
-  <object class="GtkWindow" id="window">
+  <object class="GtkNotebook" id="account_page">
+    <property name="visible">True</property>
     <property name="can_focus">False</property>
+    <property name="scrollable">True</property>
+    <property name="tab_border">0</property>
+    <property name="tab_hborder">0</property>
+    <property name="tab_vborder">0</property>
+  </object>
+  <object class="GtkEventBox" id="headings_eb">
+    <property name="can_focus">False</property>
+    <child>
+      <object class="GtkHBox" id="hbox1">
+        <property name="height_request">30</property>
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="spacing">6</property>
+        <child>
+          <object class="GtkEventBox" id="arrow_eb_left">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <child>
+              <object class="GtkArrow" id="arrow_left">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="arrow_type">left</property>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkEventBox" id="arrow_eb_right">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <child>
+              <object class="GtkArrow" id="arrow_right">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="padding">3</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkLabel" id="headings_title">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="xalign">0</property>
+            <property name="label" translatable="yes">
+
+</property>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">2</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkLabel" id="headings_suffix">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="label" translatable="yes">
+</property>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">3</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+  <object class="GtkStatusbar" id="main_statusbar">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="spacing">2</property>
+  </object>
+  <object class="GtkVBox" id="main_vbox">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <child>
+      <placeholder/>
+    </child>
+    <child>
+      <placeholder/>
+    </child>
+    <child>
+      <placeholder/>
+    </child>
+  </object>
+  <object class="GtkVBox" id="vbox_general">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <child>
+      <object class="GtkHPaned" id="hpaned_general">
+        <property name="visible">True</property>
+        <property name="can_focus">True</property>
+        <child>
+          <object class="GtkAlignment" id="alignment1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <child>
+              <object class="GtkVBox" id="vbox_left_panel">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <child>
+                  <object class="GtkScrolledWindow" id="sw_left_panel">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="hscrollbar_policy">automatic</property>
+                    <property name="vscrollbar_policy">automatic</property>
+                    <child>
+                      <object class="GtkTreeView" id="treeview_left_panel">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="resize">False</property>
+            <property name="shrink">True</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkVBox" id="vbox_transactions_list">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <child>
+              <object class="GtkNotebook" id="notebook_general">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="show_tabs">False</property>
+                <property name="tab_border">0</property>
+                <property name="tab_hborder">0</property>
+                <property name="tab_vborder">0</property>
+              </object>
+              <packing>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+          </object>
+          <packing>
+            <property name="resize">True</property>
+            <property name="shrink">True</property>
+          </packing>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">True</property>
+        <property name="fill">True</property>
+        <property name="position">0</property>
+      </packing>
+    </child>
     <child>
       <placeholder/>
     </child>
diff --git a/src/ui/grisbi_prefs.ui b/src/ui/grisbi_prefs.ui
new file mode 100644
index 0000000..dba7283
--- /dev/null
+++ b/src/ui/grisbi_prefs.ui
@@ -0,0 +1,143 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <requires lib="gtk+" version="2.24"/>
+  <!-- interface-naming-policy project-wide -->
+  <object class="GtkDialog" id="grisbi_prefs_dialog">
+    <property name="can_focus">False</property>
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Report properties</property>
+    <property name="window_position">center</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="spacing">5</property>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="button_Annuler">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_action_appearance">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="button_OK">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_action_appearance">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkHPaned" id="dialog_hpaned">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <child>
+              <object class="GtkAlignment" id="alignment1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="right_padding">5</property>
+                <child>
+                  <object class="GtkVBox" id="vbox1">
+                    <property name="width_request">220</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <child>
+                      <object class="GtkScrolledWindow" id="sw_dialog">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="hscrollbar_policy">never</property>
+                        <property name="vscrollbar_policy">automatic</property>
+                        <property name="shadow_type">in</property>
+                        <child>
+                          <object class="GtkTreeView" id="treeview_left_panel">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="headers_visible">False</property>
+                            <property name="reorderable">True</property>
+                            <property name="enable_search">False</property>
+                            <property name="fixed_height_mode">True</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">True</property>
+                        <property name="fill">True</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="resize">False</property>
+                <property name="shrink">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkAlignment" id="alignment2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="left_padding">5</property>
+                <property name="right_padding">5</property>
+                <child>
+                  <object class="GtkNotebook" id="notebook_prefs">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="show_tabs">False</property>
+                    <property name="tab_border">0</property>
+                    <property name="tab_hborder">0</property>
+                    <property name="tab_vborder">0</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="resize">True</property>
+                <property name="shrink">True</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="padding">10</property>
+            <property name="position">2</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-1">button_Annuler</action-widget>
+      <action-widget response="-5">button_OK</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/ui/grisbi_ui.xml b/src/ui/grisbi_ui.xml
new file mode 100644
index 0000000..0f72055
--- /dev/null
+++ b/src/ui/grisbi_ui.xml
@@ -0,0 +1,103 @@
+<!--
+ *     Copyright (C)    2000-2008 Cédric Auger (cedric at grisbi.org)
+ *          2004-2009 Benjamin Drieu (bdrieu at april.org)
+ *          2009-2012 Pierre Biava (grisbi at pierre.biava.name)
+ *          http://www.grisbi.org
+ *
+ *  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
+ *
+-->
+
+<!-- Ce fichier contient les définitions de tous les menus et barres d"outils -->
+
+<ui>
+    <menubar>
+        <menu name="FileMenu" action="FileMenuAction">
+            <menuitem name="New" action="NewAction"/>
+            <menuitem name="Open" action="OpenAction"/>
+            <separator/>
+            <menu name="RecentFiles" action="RecentFilesAction">
+                <placeholder name="FileRecentsPlaceholder">
+                </placeholder>
+            </menu>
+            <separator/>
+            <menuitem name="Save" action="SaveAction"/>
+            <menuitem name="SaveAs" action="SaveAsAction"/>
+            <menuitem name="FileRevert" action="FileRevertAction"/>
+            <separator/>
+            <menuitem name="ImportFile" action="ImportFileAction"/>
+             <menuitem name="ExportFile" action="ExportFileAction"/>
+            <separator/>
+            <menuitem name="CreateArchive" action="CreateArchiveAction"/>
+            <menuitem name="ExportArchive" action="ExportArchiveAction"/>
+            <separator/>
+            <menuitem name="DebugFile" action="DebugFileAction"/>
+            <menuitem name="Obfuscate" action="ObfuscateAction"/>
+            <menuitem name="ObfuscateQif" action="ObfuscateQifAction"/>
+            <menuitem name="DebugMode" action="DebugModeAction"/>
+            <separator/>
+            <menuitem name="Close" action="CloseAction"/>
+            <menuitem name="Quit" action="QuitAction"/>
+        </menu>
+
+        <menu name="EditMenu" action="EditMenuAction">
+            <menuitem name="EditTransaction" action="EditTransactionAction"/>
+            <separator/>
+            <menuitem name="NewTransaction" action="NewTransactionAction"/>
+            <menuitem name="RemoveTransaction" action="RemoveTransactionAction"/>
+            <menuitem name="TemplateTransaction" action="TemplateTransactionAction"/>
+            <menuitem name="CloneTransaction" action="CloneTransactionAction"/>
+            <separator/>
+            <menuitem name="ConvertToScheduled" action="ConvertToScheduledAction"/>
+            <menu name="MoveToAnotherAccount" action="MoveToAnotherAccountAction">
+                <placeholder name="FileRecentsPlaceholder">
+                </placeholder>
+            </menu>
+            <separator/>
+            <menuitem name="NewAccount" action="NewAccountAction"/>
+            <menuitem name="RemoveAccount" action="RemoveAccountAction"/>
+            <separator/>
+            <menuitem name="Preferences" action="PrefsAction"/>
+        </menu>
+
+        <menu name="ViewMenu" action="ViewMenuAction">
+            <menuitem name="ShowTransactionForm" action="ShowTransactionFormAction"/>
+            <menuitem name="ShowReconciled" action="ShowReconciledAction"/>
+            <menuitem name="ShowArchived" action="ShowArchivedAction"/>
+            <menuitem name="ShowClosed" action="ShowClosedAction"/>
+            <separator/>
+            <menuitem name="ShowOneLine" action="ShowOneLineAction"/>
+            <menuitem name="ShowTwoLines" action="ShowTwoLinesAction"/>
+            <menuitem name="ShowThreeLines" action="ShowThreeLinesAction"/>
+            <menuitem name="ShowFourLines" action="ShowFourLinesAction"/>
+            <separator/>
+            <menuitem name="InitwidthCol" action="InitwidthColAction"/>
+            <separator/>
+            <menuitem name="ShowFullScreen" action="ShowFullScreenAction"/>
+        </menu>
+
+        <menu name="Help" action="HelpMenuAction">
+            <menuitem name="Manual" action="ManualAction"/>
+            <menuitem name="QuickStart" action="QuickStartAction"/>
+            <menuitem name="Translation" action="TranslationAction"/>
+            <menuitem name="About" action="AboutAction"/>
+            <separator/>
+            <menuitem name="GrisbiWebsite" action="GrisbiWebsiteAction"/>
+            <menuitem name="ReportBug" action="ReportBugAction"/>
+            <separator/>
+            <menuitem name="Tip" action="TipAction"/>
+        </menu>
+    </menubar>
+</ui>
diff --git a/src/utils.c b/src/utils.c
index c74202d..1a24032 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -33,11 +33,13 @@
 /*START_INCLUDE*/
 #include "utils.h"
 #include "dialog.h"
+#include "grisbi_app.h"
 #include "gsb_color.h"
 #include "gsb_data_account.h"
 #include "gsb_dirs.h"
 #include "gsb_file_config.h"
 #include "structures.h"
+#include "utils_gtkbuilder.h"
 #include "erreur.h"
 /*END_INCLUDE*/
 
@@ -177,17 +179,20 @@ gboolean lance_navigateur_web_old ( const gchar *url )
     gchar **split;
     gchar *chaine = NULL;
     gchar* tmp_str;
+    GrisbiAppConf *conf;
+
+    conf = grisbi_app_get_conf ( );
 
 #ifdef _WIN32
     gboolean use_default_browser = TRUE;
 
-    if ( conf.browser_command && strlen ( conf.browser_command ) )
+    if ( conf->browser_command && strlen ( conf->browser_command ) )
     {
-        use_default_browser = !strcmp ( conf.browser_command,ETAT_WWW_BROWSER );
+        use_default_browser = !strcmp ( conf->browser_command,ETAT_WWW_BROWSER );
     }
     
 #else /* _WIN32 */
-    if ( !( conf.browser_command && strlen ( conf.browser_command ) ) )
+    if ( !( conf->browser_command && strlen ( conf->browser_command ) ) )
     {
         tmp_str = g_strdup_printf ( _("Grisbi was unable to execute a web browser to "
                         "browse url:\n<span foreground=\"blue\">%s</span>.\n\n"
@@ -206,7 +211,7 @@ gboolean lance_navigateur_web_old ( const gchar *url )
 #endif /* _WIN32 */
         /* search if the sequence `%s' is in the string
          * and split the string before and after this delimiter */
-        split = g_strsplit ( conf.browser_command, "%s", 0 );
+        split = g_strsplit ( conf->browser_command, "%s", 0 );
 
         if ( split[1] )
         {
@@ -223,7 +228,7 @@ gboolean lance_navigateur_web_old ( const gchar *url )
             chaine = tmp_str;
         }
         else
-            chaine = g_strconcat ( conf.browser_command, " ", url, "&", NULL ); 
+            chaine = g_strconcat ( conf->browser_command, " ", url, "&", NULL );
 
         if ( system ( chaine ) == -1 )
         {
@@ -294,61 +299,61 @@ gboolean lance_navigateur_web ( const gchar *uri )
  */
 GtkWidget *new_paddingbox_with_title (GtkWidget *parent, gboolean fill, const gchar *title)
 {
-	GtkWidget *vbox = NULL, *hbox = NULL, *paddingbox = NULL, *label = NULL;
-	static GtkBuilder *widget_builder = NULL;
-
-
-	/* New GtkBuilder Creation*/
-	widget_builder = gtk_builder_new ( );
-
-	if ( widget_builder == NULL )
-		return NULL;
-
-	/* widget paddingbox XML loading */
-	if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "wdg_paddingbox_with_title.ui" ) )
-		return NULL;
-
-	/* Get the needed widgets*/
-	vbox = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "vbox" ) );
-	paddingbox = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "paddingbox" ));
-	label = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "label" ) );
-	hbox = GTK_WIDGET ( gtk_builder_get_object (widget_builder, "hbox"));
-
-	/*Check Validity of Parent for robustness case*/
-	if (parent != NULL && GTK_IS_BOX(parent) )
-	{
-		if (vbox != NULL)
-		{
-			gtk_box_pack_start ( GTK_BOX ( parent ), vbox,
-					fill, fill, 0);
-		}
-		else
-		{
-			/*Nothing to do
-			 * Cosmetic error : Minor
-			 */
-
-		}
-	}
-
-	if (label != NULL)
-	{
-		gtk_label_set_label(label,title);
-	}
-	else
-	{
-		return NULL; //TODO Manage error
-	}
-
-	gtk_box_pack_start ( GTK_BOX ( vbox ), hbox,
-			fill, fill, 0);
-
-	if ( parent != NULL && GTK_IS_BOX(parent) )
-	{
-		gtk_box_set_spacing ( GTK_BOX(parent), 18 );
-	}
-
-	return paddingbox;
+    GtkWidget *vbox = NULL, *hbox = NULL, *paddingbox = NULL, *label = NULL;
+    static GtkBuilder *widget_builder = NULL;
+
+
+    /* New GtkBuilder Creation*/
+    widget_builder = gtk_builder_new ( );
+
+    if ( widget_builder == NULL )
+        return NULL;
+
+    /* widget paddingbox XML loading */
+    if ( !utils_gtkbuilder_merge_ui_data_in_builder ( widget_builder, "wdg_paddingbox_with_title.ui" ) )
+        return NULL;
+
+    /* Get the needed widgets*/
+    vbox = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "vbox" ) );
+    paddingbox = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "paddingbox" ));
+    label = GTK_WIDGET ( gtk_builder_get_object ( widget_builder, "label" ) );
+    hbox = GTK_WIDGET ( gtk_builder_get_object (widget_builder, "hbox"));
+
+    /*Check Validity of Parent for robustness case*/
+    if (parent != NULL && GTK_IS_BOX(parent) )
+    {
+        if (vbox != NULL)
+        {
+            gtk_box_pack_start ( GTK_BOX ( parent ), vbox,
+                    fill, fill, 0);
+        }
+        else
+        {
+            /*Nothing to do
+             * Cosmetic error : Minor
+             */
+
+        }
+    }
+
+    if (label != NULL)
+    {
+        gtk_label_set_label ( GTK_LABEL ( label ),title );
+    }
+    else
+    {
+        return NULL; /* TODO Manage error */
+    }
+
+    gtk_box_pack_start ( GTK_BOX ( vbox ), hbox,
+            fill, fill, 0);
+
+    if ( parent != NULL && GTK_IS_BOX(parent) )
+    {
+        gtk_box_set_spacing ( GTK_BOX(parent), 18 );
+    }
+
+    return paddingbox;
 }
 
 /**
@@ -368,8 +373,8 @@ GtkWidget *new_vbox_with_title_and_icon ( gchar *title,
 {
     GtkWidget *vbox_pref, *hbox, *label, *image, *eb;
     GtkStyle * style;
-	gchar* tmpstr1;
-	gchar* tmpstr2;
+    gchar* tmpstr1;
+    gchar* tmpstr2;
 
     vbox_pref = gtk_vbox_new ( FALSE, 6 );
     gtk_widget_show ( vbox_pref );
@@ -389,21 +394,21 @@ GtkWidget *new_vbox_with_title_and_icon ( gchar *title,
     /* Icon */
     if ( image_filename )
     {
-	gchar* tmpstr = g_build_filename ( gsb_dirs_get_pixmaps_dir ( ),
-					  image_filename, NULL);
-	image = gtk_image_new_from_file (tmpstr);
-	g_free(tmpstr);
-	gtk_box_pack_start ( GTK_BOX ( hbox ), image, FALSE, FALSE, 0);
-	gtk_widget_show ( image );
+    gchar* tmpstr = g_build_filename ( gsb_dirs_get_pixmaps_dir ( ),
+                      image_filename, NULL);
+    image = gtk_image_new_from_file (tmpstr);
+    g_free(tmpstr);
+    gtk_box_pack_start ( GTK_BOX ( hbox ), image, FALSE, FALSE, 0);
+    gtk_widget_show ( image );
     }
 
     /* Nice huge title */
     label = gtk_label_new ( title );
     tmpstr1 = g_markup_escape_text (title, strlen(title));
     tmpstr2 = g_strconcat ("<span size=\"x-large\" weight=\"bold\">",
-					tmpstr1,
-					"</span>",
-					NULL );
+                    tmpstr1,
+                    "</span>",
+                    NULL );
     gtk_label_set_markup ( GTK_LABEL(label), tmpstr2);
     g_free(tmpstr1);
     g_free(tmpstr2);
@@ -415,64 +420,6 @@ GtkWidget *new_vbox_with_title_and_icon ( gchar *title,
 
 
 /**
- * Function that makes a nice title with an optional icon.  It is
- * mainly used to automate preference tabs with titles.
- * 
- * \param title Title that will be displayed in window
- * \param image.  Use NULL if you don't want an image to be displayed
- * 
- * 
- * \returns A pointer to a vbox widget that will contain all created
- * widgets and user defined widgets
- */
-/*GtkWidget *new_vbox_with_title_and_image ( gchar * title, GtkWidget *image )
-{
-    GtkWidget *vbox_pref, *hbox, *label, *eb;
-    GtkStyle * style;
-	gchar* tmpstr1;
-	gchar* tmpstr2;
-
-    vbox_pref = gtk_vbox_new ( FALSE, 6 );
-    gtk_widget_show ( vbox_pref );
-
-    eb = gtk_event_box_new ();
-    style = gtk_widget_get_style ( eb );
-    gtk_widget_modify_bg ( eb, 0, &(style -> bg[GTK_STATE_ACTIVE]) );
-    gtk_box_pack_start ( GTK_BOX ( vbox_pref ), eb, FALSE, FALSE, 0);
-
-
-    !* Title hbox *!
-    hbox = gtk_hbox_new ( FALSE, 6 );
-    gtk_widget_show ( hbox );
-    gtk_container_add ( GTK_CONTAINER ( eb ), hbox );
-    gtk_container_set_border_width ( GTK_CONTAINER ( hbox ), 3 );
-
-    !* Icon *!
-    if ( image )
-    {
-        gtk_image_set_pixel_size ( GTK_IMAGE ( image ), 128 );
-        gtk_box_pack_start ( GTK_BOX ( hbox ), image, FALSE, FALSE, 0);
-        gtk_widget_show ( image );
-    }
-
-    !* Nice huge title *!
-    label = gtk_label_new ( title );
-    tmpstr1 = g_markup_escape_text (title, strlen(title));
-    tmpstr2 = g_strconcat ("<span size=\"x-large\" weight=\"bold\">",
-					tmpstr1,
-					"</span>",
-					NULL );
-    gtk_label_set_markup ( GTK_LABEL(label), tmpstr2);
-    g_free(tmpstr1);
-    g_free(tmpstr2);
-    gtk_box_pack_start ( GTK_BOX ( hbox ), label, FALSE, FALSE, 0);
-    gtk_widget_show ( label );
-
-    return vbox_pref;
-}*/
-
-
-/**
  * Returns TRUE if an account is loaded in memory.  Usefull to be sure
  * there is data to process.
  *
@@ -523,9 +470,9 @@ gboolean radio_set_active_linked_widgets ( GtkWidget *widget )
 
     while ( links )
     {
-	gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON(links -> data), 
-				       gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON ( widget ) ) );
-	links = links -> next;
+    gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON(links -> data),
+                       gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON ( widget ) ) );
+    links = links -> next;
     }
 
     return FALSE;


hooks/post-receive
-- 
grisbi


More information about the cvs mailing list