diff --git a/ChangeLog b/ChangeLog index 712959b2eb331c5207a0f69da7184492c37fe9df..1191749cb50e906f84f1ebc86a488a31e6148374 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,33 @@ +2006-03-12 Benedikt Meurer <benny@xfce.org> + + * thunar/thunar-enum-types.{c,h}, thunar/thunar-list-model.c, + thunar/thunar-path-entry.c: Rename THUNAR_COLUMN_REAL_NAME to + THUNAR_COLUMN_FILE_NAME. + * thunar/thunar-enum-types.{c,h}, thunar/thunar-list-model.c: Add new + list model columns THUNAR_COLUMN_GROUP and THUNAR_COLUMN_OWNER. + * thunar/thunar-enum-types.{c,h}: Divide ThunarColumns into visible and + special columns. + * thunar/thunar-text-renderer.c(thunar_text_renderer_get_size): Improve + guessing the required width for text columns. + * thunar/thunar-text-renderer.c(thunar_text_renderer_set_widget): Set + fixed height for the text render. + * thunar/thunar-preferences.c, docs/README.thunarrc: Add preferences for + the configurable detailed list view columns. Bug #1351. + * thunar/thunar-column-editor.{c,h}, thunar/thunar-column-model.{c,h}, + thunar/Makefile.am: Import ThunarColumnModel and ThunarColumnEditor + classes. The ThunarColumnModel class handles the order, visibility and + fixed widths of columns. The ThunarColumnEditor class provides a + dialog to configure the ThunarColumnModel. Bug #1351. + * thunar/thunar-details-view.{c,h}, thunar/thunar-details-view-ui.xml, + thunar/Makefile.am: Use column order and visibility from the + ThunarColumnOrder. Add "Configure Columns..." menu item to "View", + which pops up the ThunarColumnEditor. For fixed column mode, we use + the fixed height mode provided by GtkTreeView, which speeds up the + detailed list view a lot, esp. with older Pango version. Bug #1351. + * po/POTFILES.in: Add new files here. + * po/Thunar.pot, po/*.po: Merge new strings. + * po/de.po: Update the german translations. + 2006-03-11 Benedikt Meurer <benny@xfce.org> * thunar-uca/thunar-uca-editor.c(thunar_uca_editor_command_clicked), diff --git a/docs/README.thunarrc b/docs/README.thunarrc index 4aaf47a185c8bc50bc02e2234b2cd6613d3f7cc9..29bec9d4d8f097026c2ad5528d17f0a85dfe2571 100644 --- a/docs/README.thunarrc +++ b/docs/README.thunarrc @@ -24,6 +24,48 @@ The Thunar Configuration File (thunarrc) The last selected zoom level for the detailed list view. + * LastDetailsViewColumnOrder + + A comma separated list of columns, which specifies the order of + information that appears in the detailed list view. Valid names + for the detailed list columns are: + + - THUNAR_COLUMN_DATE_ACCESSED + - THUNAR_COLUMN_DATE_MODIFIED + - THUNAR_COLUMN_GROUP + - THUNAR_COLUMN_MIME_TYPE + - THUNAR_COLUMN_NAME + - THUNAR_COLUMN_OWNER + - THUNAR_COLUMN_PERMISSIONS + - THUNAR_COLUMN_SIZE + - THUNAR_COLUMN_TYPE + + * LastDetailsViewColumnWidths + + A comma separated list of column widths, used if the details view + is in fixed column mode. The exact format of this list should be + considered an implementation detail and may change in future + versions of Thunar. + + * LastDetailsViewFixedColumns (FALSE/TRUE) + + Whether to use fixed column widths in the detailed list view. + + * LastDetailsViewVisibleColumns + + The comma separated list of visible columns in the detailed list + view. Valid names for the detailed list columns are: + + - THUNAR_COLUMN_DATE_ACCESSED + - THUNAR_COLUMN_DATE_MODIFIED + - THUNAR_COLUMN_GROUP + - THUNAR_COLUMN_MIME_TYPE + - THUNAR_COLUMN_NAME + - THUNAR_COLUMN_OWNER + - THUNAR_COLUMN_PERMISSIONS + - THUNAR_COLUMN_SIZE + - THUNAR_COLUMN_TYPE + * LastIconViewZoomLevel (THUNAR_ZOOM_LEVEL_SMALLEST/ THUNAR_ZOOM_LEVEL_SMALLER/ THUNAR_ZOOM_LEVEL_SMALL/ @@ -51,8 +93,10 @@ The Thunar Configuration File (thunarrc) * LastSortColumn (THUNAR_COLUMN_DATE_ACCESSED/ THUNAR_COLUMN_DATE_MODIFIED/ + THUNAR_COLUMN_GROUP/ THUNAR_COLUMN_MIME_TYPE/ THUNAR_COLUMN_NAME/ + THUNAR_COLUMN_OWNER/ THUNAR_COLUMN_PERMISSIONS/ THUNAR_COLUMN_SIZE/ THUNAR_COLUMN_TYPE) diff --git a/po/ChangeLog b/po/ChangeLog index d67796f599ea39ba17c93e2b62a558cd17187026..6a48737ee9e5c00323a5860de4b72364c4f93b8e 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,3 +1,9 @@ +2006-03-12 Benedikt Meurer <benny@xfce.org> + + * POTFILES.in: Add new files here. + * Thunar.pot, *.po: Merge new strings. + * de.po: Update the german translations. + 2006-03-12 Daichi Kawahata <daichi@xfce.org> * ja.po: Updated Japanese translations. diff --git a/po/POTFILES.in b/po/POTFILES.in index 587730b8f6ec7f75aafedcd05d74bde741b2b662..803c0dac658ceec11fdcd9681f1818b5e71afc77 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -41,11 +41,14 @@ thunar/thunar-chooser-button.c thunar/thunar-chooser-dialog.c thunar/thunar-chooser-model.c thunar/thunar-clipboard-manager.c +thunar/thunar-column-editor.c +thunar/thunar-column-model.c thunar/thunar-create-dialog.c thunar/thunar-details-view.c thunar/thunar-dialogs.c thunar/thunar-dnd.c thunar/thunar-emblem-chooser.c +thunar/thunar-enum-types.c thunar/thunar-file.c thunar/thunar-folder.c thunar/thunar-gdk-pixbuf-extensions.c diff --git a/po/Thunar.pot b/po/Thunar.pot index 49e747d3b93cd8e524496fa051f80e8ef789fc51..7157ff202b56434a9192c2da6a4b5d68120e9bb1 100644 --- a/po/Thunar.pot +++ b/po/Thunar.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -160,7 +160,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "" @@ -186,7 +186,7 @@ msgstr "" msgid "URI too long to fit into buffer" msgstr "" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "" @@ -248,7 +248,7 @@ msgstr "" msgid "copy of %s" msgstr "" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -562,6 +562,70 @@ msgstr "" msgid "There is nothing on the clipboard to paste" msgstr "" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +msgid "Hi_de" +msgstr "" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "" @@ -572,27 +636,19 @@ msgstr "" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure _Columns..." msgstr "" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure the columns in the detailed list view" msgstr "" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "" @@ -620,6 +676,45 @@ msgstr "" msgid "Failed to execute file \"%s\"" msgstr "" +#: ../thunar/thunar-enum-types.c:60 +msgid "Date Accessed" +msgstr "" + +#: ../thunar/thunar-enum-types.c:61 +msgid "Date Modified" +msgstr "" + +#: ../thunar/thunar-enum-types.c:62 +msgid "Group" +msgstr "" + +#: ../thunar/thunar-enum-types.c:63 +msgid "MIME Type" +msgstr "" + +#: ../thunar/thunar-enum-types.c:65 +msgid "Owner" +msgstr "" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "" + +#: ../thunar/thunar-enum-types.c:69 +msgid "File" +msgstr "" + +#: ../thunar/thunar-enum-types.c:70 +msgid "File Name" +msgstr "" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "" @@ -839,47 +934,47 @@ msgstr[1] "" msgid "Open With \"%s\"" msgstr "" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "" msgstr[1] "" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "" msgstr[1] "" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "" msgstr[1] "" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -961,10 +1056,6 @@ msgstr "" msgid "Owner:" msgstr "" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/ca.po b/po/ca.po index 43ae027f59d461eb395aa43e7eb72c061f20e94e..ac23158a5dc507168d24e19c35cc8c66474c6b42 100644 --- a/po/ca.po +++ b/po/ca.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-01-29 15:14+0900\n" "Last-Translator: Pau Rul·lan Ferragut <paurullan@bulma.net>\n" "Language-Team: Catalan\n" @@ -177,7 +177,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nom" @@ -203,7 +203,7 @@ msgstr "El camà és massa llarg per caber a la memòria intermèdia" msgid "URI too long to fit into buffer" msgstr "La URI és massa llarg per caber a la memòria intermèdia" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Mida" @@ -266,7 +266,7 @@ msgstr "Ha fallat" msgid "copy of %s" msgstr "còpia de %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -586,6 +586,72 @@ msgstr "Altres aplicacions:" msgid "There is nothing on the clipboard to paste" msgstr "El portaretalls no té res per enganxar" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "Amagad_a" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +#, fuzzy +msgid "Unknown" +msgstr "Desconegut" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Introduïu el nom nou:" @@ -596,27 +662,21 @@ msgstr "Introduïu el nom nou:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "converteix" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Permisos" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Tipus" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "Configura accions personalitzades..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Data modificada" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Pantalla in a llista" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Llistat detallat de directoris" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Mostra detalls" @@ -645,6 +705,52 @@ msgstr "_Enllaça aquÃ" msgid "Failed to execute file \"%s\"" msgstr "No s'ha pogut executar `%s'" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Accedit:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Data modificada" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Grup:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Tipus" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Propietari:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Permisos" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Tipus" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Fitxers" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Gestor de fitxers" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "La carpeta arrel no té pare" @@ -885,48 +991,48 @@ msgstr[1] "seleccionat" msgid "Open With \"%s\"" msgstr "Obre amb" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 #, fuzzy msgid "broken link" msgstr "enllaç" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, fuzzy, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "element Lliure espai" msgstr[1] "element Lliure espai" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, fuzzy, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "element" msgstr[1] "element" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, fuzzy, c-format msgid "\"%s\" broken link" msgstr "enllaç" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, fuzzy, c-format msgid "\"%s\" (%s) link to %s" msgstr "enllaç" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, fuzzy, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "element seleccionat" msgstr[1] "element seleccionat" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, fuzzy, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -1016,11 +1122,6 @@ msgstr "Llegit Escriptura" msgid "Owner:" msgstr "Propietari:" -#: ../thunar/thunar-permissions-chooser.c:270 -#, fuzzy -msgid "Unknown" -msgstr "Desconegut" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 #, fuzzy diff --git a/po/de.po b/po/de.po index 3d2aa85815a5fe7037097701f7c8e170704b5175..192c0891558c77518ebc4b46eab952bdb40f88f8 100644 --- a/po/de.po +++ b/po/de.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.3svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" -"PO-Revision-Date: 2006-03-11 18:16+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" +"PO-Revision-Date: 2006-03-12 18:56+0100\n" "Last-Translator: Benedikt Meurer <benny@xfce.org>\n" "Language-Team: German <de@li.org>\n" "MIME-Version: 1.0\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "Das Symbol für den Mime-Handler" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Name" @@ -200,7 +200,7 @@ msgstr "Puffer zu klein um Pfad aufzunehmen" msgid "URI too long to fit into buffer" msgstr "Puffer zu klein um URI aufzunehmen" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Größe" @@ -262,7 +262,7 @@ msgstr "Konnte /proc/mounts nicht öffnen: %s" msgid "copy of %s" msgstr "Kopie von %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -585,6 +585,77 @@ msgid "There is nothing on the clipboard to paste" msgstr "" "In der Zwischenablage befindet sich nichts was hier eingefügt werden könnte" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "Die Spalten in der Detailansicht festlegen" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "Anzuzeigende Spalten" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" +"Legen Sie die Reihenfolge fest, in der in der Detailansicht\n" +"Informationen angezeigt werden sollen." + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "_Raufschieben" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "R_unterschieben" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "_Anzeigen" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +msgid "Hi_de" +msgstr "_Verbergen" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "V_orgabe verwenden" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "Spaltengröße" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" +"Standardmäßig werden die Listenspalten automatisch\n" +"vergrößert, falls notwendig, so daß der Text vollstän-\n" +"dig angezeigt werden kann. Wird diese Einstellung de-\n" +"aktiviert, merkt sich der Dateimanager die benutzerde-\n" +"finierten Spaltengrößen." + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "Listenspalten automatisch ver_größern" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Unbekannt" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Neuen Namen eingeben:" @@ -597,27 +668,19 @@ msgstr "" "Der Dateiname »%s« kann nicht in den Dateisystem Zeichensatz umgewandelt " "werden" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Berechtigungen" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure _Columns..." +msgstr "Listens_palten festlegen..." -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Typ" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure the columns in the detailed list view" +msgstr "Die Listenspalten in der Detailansicht festlegen" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Letzte Änderung" - -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Detailierte Verzeichnisansicht" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Detailansicht" @@ -645,6 +708,45 @@ msgstr "Hierher verknü_pfen" msgid "Failed to execute file \"%s\"" msgstr "Konnte »%s« nicht umbenennen" +#: ../thunar/thunar-enum-types.c:60 +msgid "Date Accessed" +msgstr "Zugriffsdatum" + +#: ../thunar/thunar-enum-types.c:61 +msgid "Date Modified" +msgstr "Änderungsdatum" + +#: ../thunar/thunar-enum-types.c:62 +msgid "Group" +msgstr "Gruppe" + +#: ../thunar/thunar-enum-types.c:63 +msgid "MIME Type" +msgstr "MIME-Typ" + +#: ../thunar/thunar-enum-types.c:65 +msgid "Owner" +msgstr "Besitzer" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Berechtigungen" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Typ" + +#: ../thunar/thunar-enum-types.c:69 +msgid "File" +msgstr "Datei" + +#: ../thunar/thunar-enum-types.c:70 +msgid "File Name" +msgstr "Dateiname" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Das Wurzelverzeichnis hat kein übergeordnetes Verzeichnis" @@ -870,47 +972,47 @@ msgstr[1] "Die ausgewählten Dateien mit den Standardanwendungen öffnen" msgid "Open With \"%s\"" msgstr "Mit »%s« öffnen" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "Verknüpfung (fehlerhaft)" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d Objekt, Freier Speicher: %s" msgstr[1] "%d Objekte, Freier Speicher: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d Objekt" msgstr[1] "%d Objekte" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "»%s« Verknüpfung (fehlerhaft)" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "»%s« (%s) Verknüpfung mit %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "»%s« (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d Objekt ausgewählt (%s)" msgstr[1] "%d Objekte ausgewählt (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -992,10 +1094,6 @@ msgstr "Lesen & Schreiben" msgid "Owner:" msgstr "Besitzer:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Unbekannt" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/el.po b/po/el.po index f8082e429e7fc627d9e604568a090f7f681061e8..fe3d063e9cee805255c32854dd95852a9da5ba61 100644 --- a/po/el.po +++ b/po/el.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-03 21:38+0200\n" "Last-Translator: Stavros Giannouris <stavrosg2002@freemail.gr>\n" "Language-Team: Greek <nls@tux.hellug.gr>\n" @@ -175,7 +175,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Όνομα" @@ -201,7 +201,7 @@ msgstr "Η διαδÏομή είναι υπεÏβολικά μεγάλη για msgid "URI too long to fit into buffer" msgstr "Το URI είναι υπεÏβολικά μεγάλο για να χωÏÎσει στην Ï€ÏοσωÏινή μνήμη" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "ÎœÎγεθος" @@ -263,7 +263,7 @@ msgstr "Το άνοιγμα του /proc/mounts απÎτυχε: %s" msgid "copy of %s" msgstr "αντίγÏαφο του %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -582,6 +582,71 @@ msgstr "Άλλες ΕφαÏμογÎÏ‚" msgid "There is nothing on the clipboard to paste" msgstr "Δεν υπάÏχει τίποτα στο Ï€ÏόχειÏο για να επικολληθεί." +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "Κ_Ïυφό" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Άγνωστο" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Εισάγετε νÎο όνομα:" @@ -594,27 +659,21 @@ msgstr "" "Δεν είναι δυνατή η μετατÏοπή του ονόματος αÏχείου \"%s\" στην τοπική " "κωδικοποίηση" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Δικαιώματα" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "ΤÏπος" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "Ρυθμίσεις Ï€ÏοσαÏμο_σμÎνων ενεÏγειών..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "ΗμεÏομηνία ΤÏοποποίησης" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Εμφάνιση πεÏιεχομÎνων φακÎλου ως λεπτομεÏή λίστα" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "ΛεπτομεÏής απεικόνιση καταλόγων" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Î Ïοβολή λεπτομεÏιών" @@ -642,6 +701,52 @@ msgstr "Δ_ημιουÏγία Î´ÎµÏƒÎ¼Î¿Ï ÎµÎ´ÏŽ" msgid "Failed to execute file \"%s\"" msgstr "Η εκτÎλεση του \"%s\" απÎτυχε" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Î Ïοσπελάστηκε:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "ΗμεÏομηνία ΤÏοποποίησης" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Ομάδα:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "ΤÏπος" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Ιδιοκτήτης:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Δικαιώματα" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "ΤÏπος" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_ΑÏχείο" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "ΔιαχειÏιστής ΑÏχείων" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Ο Ïιζικός φάκελος δεν Îχει γονεϊκό φάκελο" @@ -862,47 +967,47 @@ msgstr[1] "Άνοιγμα των επιλεγμÎνων αÏχείων με τι msgid "Open With \"%s\"" msgstr "Άνοιγμα Με το \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "σπασμÎνος δεσμός" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d αντικείμενο, ΕλεÏθεÏος χώÏος: %s" msgstr[1] "%d αντικείμενα, ΕλεÏθεÏος χώÏος: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d αντικείμενο" msgstr[1] "%d αντικείμενα" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "σπασμÎνος δεσμός \"%s\"" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) δεσμός Ï€Ïος το %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d επιλεγμÎνο αντικείμενο (%s)" msgstr[1] "%d επιλεγμÎνα αντικείμενα (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -984,10 +1089,6 @@ msgstr "ΕγγÏαφή & Ανάγνωση" msgid "Owner:" msgstr "Ιδιοκτήτης:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Άγνωστο" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/es.po b/po/es.po index 752e0293f95e200ddd7d0ece8897b4b1f3336ac8..2966a9b805b8bbe832cffb08acb06f729bf3e9fe 100644 --- a/po/es.po +++ b/po/es.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2005-10-14 23:57+0900\n" "Last-Translator: Pablo Hernández-M. Saiz <homeless3d@gmail.com>\n" "Language-Team: Spanish <es@li.org>\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nombre" @@ -200,7 +200,7 @@ msgstr "" msgid "URI too long to fit into buffer" msgstr "" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Tamaño" @@ -264,7 +264,7 @@ msgstr "Imposible renombrar %s." msgid "copy of %s" msgstr "" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -589,6 +589,71 @@ msgstr "Otra aplicación..." msgid "There is nothing on the clipboard to paste" msgstr "No hay nada en el portapapeles que pueda ser pegado" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Oculto/a" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "" @@ -599,27 +664,19 @@ msgstr "" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Permisos" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Tipo" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure _Columns..." +msgstr "" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Fecha de modificación" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure the columns in the detailed list view" +msgstr "" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Listado detallado del directorio" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Vista detallada" @@ -649,6 +706,50 @@ msgstr "" msgid "Failed to execute file \"%s\"" msgstr "Imposible renombrar %s." +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Accedido:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Fecha de modificación" + +#: ../thunar/thunar-enum-types.c:62 +msgid "Group" +msgstr "" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Tipo" + +#: ../thunar/thunar-enum-types.c:65 +msgid "Owner" +msgstr "" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Permisos" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Tipo" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Archivo" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Gestor de archivos" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "" @@ -877,47 +978,47 @@ msgstr[1] "" msgid "Open With \"%s\"" msgstr "Abrir con" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d elemento, espacio libre %s" msgstr[1] "%d elementos, espacio libre %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d elemento" msgstr[1] "%d elementos" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, fuzzy, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d elemento seleccionado (%s)" msgstr[1] "%d elementos seleccionados (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -1000,10 +1101,6 @@ msgstr "" msgid "Owner:" msgstr "" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 #, fuzzy diff --git a/po/eu.po b/po/eu.po index 9b91765d8e41f2f792f4a420efa00a302c977ef6..f6d4db9b074ef3481c47fe786ef85d38e2426649 100644 --- a/po/eu.po +++ b/po/eu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-02-22 12:03+0100\n" "Last-Translator: Piarres Beobide <pi@beobide.net>\n" "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "Mime kudeatzailearen ikonoa" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Izena" @@ -200,7 +200,7 @@ msgstr "Bidea luzeegia buferrean sartzeko" msgid "URI too long to fit into buffer" msgstr "URI-a luzeegia buferrean sartzeko" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Tamaina" @@ -262,7 +262,7 @@ msgstr "Huts /proc/mounts irekitzerkaoan: %s" msgid "copy of %s" msgstr "%s-ren kopia" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -580,6 +580,71 @@ msgstr "BEste Aplikazioak" msgid "There is nothing on the clipboard to paste" msgstr "Ez dago itsasteko ezer arbelan " +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Ezkutatua" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Ezezaguna" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Izen berria idatzi:" @@ -590,27 +655,21 @@ msgstr "Izen berria idatzi:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Ezin da `%s' fitxategi izena kodeketa lokalera bihurtu" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Baimenak" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Mota" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "E_kintza pertsonalizatuak konfiguratu..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Data aldaturik" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Karpeta edukia zehazturiko zerrenda ikuspegian bistarazi" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Xeheturiko direktorio zerrendatzea" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Xeheturiko ikuspegia" @@ -639,6 +698,52 @@ msgstr "Hona _lotu" msgid "Failed to execute file \"%s\"" msgstr "Huts \"%s\" fitxategia abiaraztean" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Erabilia:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Data aldaturik" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Taldea:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Mota" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Jabea:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Baimenak" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Mota" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Fitxategia" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Fitxategi Kudeatzailea" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Erro karpetak ez du gurasorik" @@ -859,47 +964,47 @@ msgstr[1] "Aukeratutako fitxategiak lehenetsiriko aplikazioak ireki" msgid "Open With \"%s\"" msgstr "\"%s\"-rekin Ireki" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "Apurturiko lotura" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "Elementu %d, Leku librea: %s" msgstr[1] "%d elementu, Leku librea: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "Elementu %d" msgstr[1] "%d elementu" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" apurturiko lotura" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) %s-ra lotzen du" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "Elementu %d aukeraturik (%s)" msgstr[1] "%d elementu aukeraturik (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -981,10 +1086,6 @@ msgstr "Irakurri eta Idatzi" msgid "Owner:" msgstr "Jabea:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Ezezaguna" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/fi.po b/po/fi.po index 4610968783379a500722e845ffb0a991a6693e30..0366d9bbf2a62e05f45a0a4eb033ff4d55620531 100644 --- a/po/fi.po +++ b/po/fi.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-01 21:36+0200\n" "Last-Translator: jari <jari.rahkonen@pp1.inet.fi>\n" "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n" @@ -171,7 +171,7 @@ msgid "The icon of the mime handler" msgstr "Mime-käsittelijän kuvake" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nimi" @@ -197,7 +197,7 @@ msgstr "Polku ei mahdu puskuriin" msgid "URI too long to fit into buffer" msgstr "URI ei mahdu puskuriin" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Koko" @@ -259,7 +259,7 @@ msgstr "Kohteen /proc/mounts avaaminen epäonnistui: %s" msgid "copy of %s" msgstr "kopio kohteesta %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -576,6 +576,71 @@ msgstr "Muut sovellukset" msgid "There is nothing on the clipboard to paste" msgstr "Leikepöydällä ei ole liitettävää" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Piilota" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Tuntematon" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Syötä uusi nimi:" @@ -586,27 +651,21 @@ msgstr "Syötä uusi nimi:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Tiedostonimeä \"%s\" ei voi muuttaa käytössä olevaan merkistöön" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Käyttöoikeudet" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Tyyppi" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "_Mukautetut toiminnot..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Muokkauspäivämäärä" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Näytä hakemiston sisältö yksityiskohtaisessa listanäkymässä" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Yksityiskohtainen hakemistolistaus" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Yksityiskohtainen näkymä" @@ -634,6 +693,52 @@ msgstr "_Linkitä tähän" msgid "Failed to execute file \"%s\"" msgstr "Tiedoston \"%s\" suorittaminen epäonnistui" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Käytetty:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Muokkauspäivämäärä" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Ryhmä:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Tyyppi" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Omistaja:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Käyttöoikeudet" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Tyyppi" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Tiedosto" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Tiedostonhallinta" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Juurella ei ole ylähakemistoa" @@ -854,47 +959,47 @@ msgstr[1] "Avaa valitut tiedostot oletussovelluksissa" msgid "Open With \"%s\"" msgstr "Avaa sovelluksessa \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "rikkinäinen linkki" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d kohde, vapaata tilaa: %s" msgstr[1] "%d kohdetta, vapaata tilaa: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d kohde" msgstr[1] "%d kohdetta" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" rikkinäinen linkki" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) linkki kohteeseen %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d kohde valittu (%s)" msgstr[1] "%d kohdetta valittu (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -976,10 +1081,6 @@ msgstr "Luku ja kirjoitus" msgid "Owner:" msgstr "Omistaja:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Tuntematon" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/fr.po b/po/fr.po index e3db74bb19def97ccf3e05363622fe93b6674f9e..cd2441e86f8e20cd8d73321ed6ec4a393a2f9d62 100644 --- a/po/fr.po +++ b/po/fr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-02 11:55+0100\n" "Last-Translator: Stephane Roy <sroy@j2n.net>\n" "Language-Team: French <traduc@traduc.org>\n" @@ -172,7 +172,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nom" @@ -198,7 +198,7 @@ msgstr "Chemin trop long pour être stockée dans le cache" msgid "URI too long to fit into buffer" msgstr "URI trop longue pour être stockée dans le cache" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Taille" @@ -260,7 +260,7 @@ msgstr "Échec à l'ouverture de /proc/mounts : %s" msgid "copy of %s" msgstr "copie de %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -581,6 +581,71 @@ msgstr "Autres applications :" msgid "There is nothing on the clipboard to paste" msgstr "Il n'y a rien à coller dans le presse-papier" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Caché" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Inconnu" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Entrer le nouveau nom :" @@ -591,27 +656,21 @@ msgstr "Entrer le nouveau nom :" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Ne peut pas convertir le nom du fichier \"%s\" vers le codage local" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Permissions" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Type" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "Configurer les actions pers_onnalisée..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Date modifiée" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Affiche le contenu du dossier sous forme de liste détaillée" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Liste détaillée des répertoires" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Vue détails" @@ -639,6 +698,52 @@ msgstr "_Lier ici" msgid "Failed to execute file \"%s\"" msgstr "Échec à l'exécution du fichier \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Accédé :" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Date modifiée" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Groupe :" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Type" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Propriétaire :" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Permissions" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Type" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Fichier" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Gestionnaire de fichier" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Le dossier racine n'a pas de père" @@ -860,47 +965,47 @@ msgstr[1] "Ouvrir les fichiers sélectionnés avec l'application par défaut" msgid "Open With \"%s\"" msgstr "Ouvrir avec \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "lien cassé" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d élément, espace libre : %s" msgstr[1] "%d éléments, espace libre : %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d élément" msgstr[1] "%d éléments" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" lien cassé" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) lien vers %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d élément sélectionné (%s)" msgstr[1] "%d éléments sélectionnés (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -982,10 +1087,6 @@ msgstr "lecture & écriture" msgid "Owner:" msgstr "Propriétaire :" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Inconnu" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/hu.po b/po/hu.po index bcbe4c5198acaff9e856c8c943746a061249e38d..bb841afc14106f61f6ce898446b4db0701529427 100644 --- a/po/hu.po +++ b/po/hu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-02 11:43+0100\n" "Last-Translator: SZERVÑC Attila <sas@321.hu>\n" "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n" @@ -173,7 +173,7 @@ msgid "The icon of the mime handler" msgstr "A mime kezelÅ‘ ikonja" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Név" @@ -199,7 +199,7 @@ msgstr "Az ösvény túl hosszú" msgid "URI too long to fit into buffer" msgstr "Az URI túl hosszú" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Méret" @@ -261,7 +261,7 @@ msgstr "/proc/mounts megnyitása sikertelen: %s" msgid "copy of %s" msgstr "%s másolata" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -576,6 +576,71 @@ msgstr "Más alkalmazások:" msgid "There is nothing on the clipboard to paste" msgstr "Nincs beillesztenivaló a vágólapon" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Rejtett" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Ismeretlen" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Új fájlnév megadása:" @@ -586,27 +651,21 @@ msgstr "Új fájlnév megadása:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Nem tudom átalakÃtani helyi kódolásra e fájlnevet: \"%s\"" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Jogok" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "TÃpus" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "Egyéni műveletek beállÃtása..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "MódosÃtás ideje" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Mappa megjelenÃtése részletes lista nézetben" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Részletes könyvtárlista" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Részletes nézet" @@ -634,6 +693,52 @@ msgstr "_Lánc ide" msgid "Failed to execute file \"%s\"" msgstr "Nem futtatható fájl: \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Megnyitva:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "MódosÃtás ideje" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Csoport:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "TÃpus" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Tulajdonos:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Jogok" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "TÃpus" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Fájl" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "FájlkezelÅ‘" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "A gyökérkönyvtárnak nincsenek szülei" @@ -845,44 +950,44 @@ msgstr[0] "Minden kijelölt fájlt az alapalkalmazással nyit meg" msgid "Open With \"%s\"" msgstr "Megnyitás ezzel: \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "törött lánc" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d elem, Szabad: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d elem" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" törött lánc" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) lánc ide: %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d elem kijelölve (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -963,10 +1068,6 @@ msgstr "Ãrás/olvasás" msgid "Owner:" msgstr "Tulajdonos:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Ismeretlen" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/it.po b/po/it.po index 68ce51856047e9842693e90910915d279dab53fe..c9ae37d65db5e2c0082e5a0e076b54a04dfb4cc5 100644 --- a/po/it.po +++ b/po/it.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-04 13:55+0100\n" "Last-Translator: Roberto Pariset <r.pariset@gmail.com>\n" "Language-Team: GUFI <traduzioni@gufi.org>\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "L'icona del gestore mime" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nome" @@ -200,7 +200,7 @@ msgstr "Path troppo lunga per entrare nel buffer" msgid "URI too long to fit into buffer" msgstr "URI troppo lunga per entrare nel buffer" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Dimensione" @@ -262,7 +262,7 @@ msgstr "Impossibile aprire /proc/mounts: %s" msgid "copy of %s" msgstr "copia di %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -581,6 +581,71 @@ msgstr "Altre applicazioni" msgid "There is nothing on the clipboard to paste" msgstr "Nella clipboard non c'è niente da incollare" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Nascosto" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Sconosciuto" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Inserire il nuovo nome:" @@ -591,27 +656,23 @@ msgstr "Inserire il nuovo nome:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Impossibile convertire il nome del file \"%s\" nella codifica locale" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Permessi" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Tipo" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "Imposta azio_ni personalizzate..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Data di modifica" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "" +"Mostra il contenuto della directory con una visualizzazione a lista " +"dettagliata" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Lista dettagliata delle directory" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Visualizzazione dettagliata" @@ -639,6 +700,52 @@ msgstr "_Crea link qui" msgid "Failed to execute file \"%s\"" msgstr "Impossibile eseguire \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Acceduto:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Data di modifica" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Gruppo:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Tipo" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Proprietario:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Permessi" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Tipo" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_File" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "File Manager" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "La directory radice non ha padre" @@ -860,47 +967,47 @@ msgstr[1] "Apri i file selezionati con l'applicazione di default" msgid "Open With \"%s\"" msgstr "Apri con \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "link rotto" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d elemento, spazio libero %s" msgstr[1] "%d elementi, spazio libero %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d elemento" msgstr[1] "%d elementi" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" link rotto" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) punta a %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d elemento selezionato (%s)" msgstr[1] "%d elementi selezionati (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -982,10 +1089,6 @@ msgstr "Lettura più scrittura" msgid "Owner:" msgstr "Proprietario:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Sconosciuto" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/ja.po b/po/ja.po index 258db91aa32179878d3e7e134d598e3dba6d394b..f3f7e5580879cdf8c1aacefbdb527b68347d3d43 100644 --- a/po/ja.po +++ b/po/ja.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-12 18:48+0900\n" "Last-Translator: Daichi Kawahata <daichi@xfce.org>\n" "Language-Team: Japanese <xfce-users-jp@ml.fdiary.net>\n" @@ -181,7 +181,7 @@ msgid "The icon of the mime handler" msgstr "MIMEãƒãƒ³ãƒ‰ãƒ©ãƒ¼ã®ã‚¢ã‚¤ã‚³ãƒ³ã§ã™ã€‚" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "åå‰" @@ -207,7 +207,7 @@ msgstr "ãƒãƒƒãƒ•ã‚¡ã«æ ¼ç´ã™ã‚‹ã«ã¯ãƒ‘スãŒé•·ã™ãŽã¾ã™ã€‚" msgid "URI too long to fit into buffer" msgstr "ãƒãƒƒãƒ•ã‚¡ã«æ ¼ç´ã™ã‚‹ã«ã¯ URI ãŒé•·ã™ãŽã¾ã™ã€‚" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "サイズ" @@ -269,7 +269,7 @@ msgstr "/proc/mounts ã‚’é–‹ãã®ã«å¤±æ•—ã—ã¾ã—ãŸ: %s" msgid "copy of %s" msgstr "%s ã®ã‚³ãƒ”ー" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -591,6 +591,71 @@ msgstr "ä»–ã®ã‚¢ãƒ—リケーション" msgid "There is nothing on the clipboard to paste" msgstr "クリップボードã«è²¼ã‚Šä»˜ã‘ã‚‹ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "表示ã—ãªã„(_H)" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "ä¸æ˜Ž" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "æ–°ã—ã„åå‰ã‚’入力ã—ã¦ä¸‹ã•ã„:" @@ -601,27 +666,21 @@ msgstr "æ–°ã—ã„åå‰ã‚’入力ã—ã¦ä¸‹ã•ã„:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "ファイルå「%sã€ã‚’ã‚ãªãŸã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰æ–¹å¼ã«å¤‰æ›ã§ãã¾ã›ã‚“。" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "アクセス権" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "タイプ" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "アクションã®è¨å®š(_U)..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "変更日時" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "フォルダã®å†…容を詳細ãªãƒªã‚¹ãƒˆã§è¡¨ç¤ºã—ã¾ã™ã€‚" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "詳細ãªãƒ•ã‚¡ã‚¤ãƒ«æƒ…å ±ã¨å…±ã«ãƒ•ã‚©ãƒ«ãƒ€ã‚’リスト表示ã—ã¾ã™ã€‚" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "詳細表示" @@ -649,6 +708,52 @@ msgstr "ã“ã“ã«ãƒªãƒ³ã‚¯(_L)" msgid "Failed to execute file \"%s\"" msgstr "ファイル「%sã€ã®å®Ÿè¡Œã«å¤±æ•—ã—ã¾ã—ãŸã€‚" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "アクセス日時:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "変更日時" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "所属グループ:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "タイプ" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "ファイル所有者:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "アクセス権" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "タイプ" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "ファイル(_F)" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "ファイルマãƒãƒ¼ã‚¸ãƒ£ãƒ¼" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "ルートフォルダã«ä¸Šä½ã®ãƒ•ã‚©ãƒ«ãƒ€ãŒã‚ã‚Šã¾ã›ã‚“。" @@ -861,44 +966,44 @@ msgstr[0] "標準ã®ã‚¢ãƒ—リケーションを使用ã—ã¦é¸æŠžã—ãŸãƒ•ã‚¡ã‚¤ msgid "Open With \"%s\"" msgstr "%sã§é–‹ã" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "壊れãŸãƒªãƒ³ã‚¯" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d 個ã®ã‚¢ã‚¤ãƒ†ãƒ ãŒã‚ã‚Šã¾ã™ã€‚空ã容é‡: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d 個ã®ã‚¢ã‚¤ãƒ†ãƒ ãŒã‚ã‚Šã¾ã™ã€‚" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "「%sã€å£Šã‚ŒãŸãƒªãƒ³ã‚¯" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "「%1$sã€%3$sã¸ã®ãƒªãƒ³ã‚¯ (%2$s)" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "「%1$sã€%3$s (%2$s)" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d 個ã®ã‚¢ã‚¤ãƒ†ãƒ (%s) ãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã™ã€‚" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -979,10 +1084,6 @@ msgstr "èªè¾¼ã¨æ›¸è¾¼" msgid "Owner:" msgstr "ファイル所有者:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "ä¸æ˜Ž" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/nl.po b/po/nl.po index cb8b66dd1703ce022bc78a9cd4b52cda5e4d6e81..eb0274b1bb9127175f728ee93781537860ba734a 100644 --- a/po/nl.po +++ b/po/nl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-01-31 14:07+0100\n" "Last-Translator: Vincent Tunru <imnotb@gmail.com>\n" "Language-Team: Dutch <vertaling@vrijschrift.org>\n" @@ -183,7 +183,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Naam:" @@ -209,7 +209,7 @@ msgstr "Pad te lang voor buffer" msgid "URI too long to fit into buffer" msgstr "URI te lang voor buffer" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Grootte" @@ -272,7 +272,7 @@ msgstr "Fout bij het wijzigen van de naam van `%s'" msgid "copy of %s" msgstr "Kopie van %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -593,6 +593,71 @@ msgstr "Andere Programma's" msgid "There is nothing on the clipboard to paste" msgstr "Er is niets op het klembord om te plakken" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Verborgen" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Onbekend" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Nieuwe naam invoeren:" @@ -603,27 +668,21 @@ msgstr "Nieuwe naam invoeren:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Can bestandsnaam `%s' niet naar locale codering converteren" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Toestemmingen" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Type" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "_Alternatieve acties instellen" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Datum van laatste bewerking" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Mapinhoud weergeven als gedetailleerde lijst" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Gedetailleerde mappenweergave" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Gedetailleerde weergavemodus" @@ -652,6 +711,52 @@ msgstr "Hierheen een snelkoppeling maken" msgid "Failed to execute file \"%s\"" msgstr "Fout bij het uitvoeren van `%s'" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Geopend:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Datum van laatste bewerking" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Groep:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Type" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Eigenaar:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Toestemmingen" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Type" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Bestand" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Bestandsbeheerder" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Het hoofdmap heeft geen bovenliggende map" @@ -881,47 +986,47 @@ msgstr[1] "geselecteerde bestandsnamen (zonder paden)" msgid "Open With \"%s\"" msgstr "Openen Met" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "foute verwijzing" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d item, vrije ruimte: %s" msgstr[1] "%d items, vrije ruimte: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d item" msgstr[1] "%d items" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" foute verwijzing" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) verwijzing naar %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d item geselecteerd (%s)" msgstr[1] "%d items geselecteerd (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -1004,10 +1109,6 @@ msgstr "Lezen en schrijven" msgid "Owner:" msgstr "Eigenaar:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Onbekend" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/pl.po b/po/pl.po index cb4077b2818fa5cbbc81f253d1bf7f337cd5cae3..0d96623e53a2e5b2efeb06eb93712b22f3bcd57c 100644 --- a/po/pl.po +++ b/po/pl.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-01-13 14:21+0100\n" "Last-Translator: Tomasz MichaÅ‚ Åukaszewski <T.Lukaszewski@aster.pl>\n" "Language-Team: Polish <pl@li.org>\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nazwa" @@ -200,7 +200,7 @@ msgstr "Åšcieżka jest zbyt dÅ‚uga" msgid "URI too long to fit into buffer" msgstr "Identyfikator URI jest zbyt dÅ‚ugi" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Rozmiar" @@ -264,7 +264,7 @@ msgstr "Nie udaÅ‚o siÄ™ zmienić nazwy %s." msgid "copy of %s" msgstr "kopia %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -586,6 +586,72 @@ msgstr "Inne aplikacje" msgid "There is nothing on the clipboard to paste" msgstr "W schowku nie ma nic do wklejenia" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "Niewidoczny" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +#, fuzzy +msgid "Unknown" +msgstr "data nieznana" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "" @@ -596,27 +662,19 @@ msgstr "" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Prawa dostÄ™pu" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Typ" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure _Columns..." +msgstr "" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Ostatnia modyfikacja" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure the columns in the detailed list view" +msgstr "" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Pokazuj szczegóły elementów w katalogu" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Widok szczegółowy" @@ -645,6 +703,50 @@ msgstr "Utwórz _Å‚acze" msgid "Failed to execute file \"%s\"" msgstr "Nie udaÅ‚o siÄ™ uruchomić %s" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Ostatnio otwarty:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Ostatnia modyfikacja" + +#: ../thunar/thunar-enum-types.c:62 +msgid "Group" +msgstr "" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Typ" + +#: ../thunar/thunar-enum-types.c:65 +msgid "Owner" +msgstr "" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Prawa dostÄ™pu" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Typ" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Plik" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Menedżer plików" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Katalog główny nie ma katalogu nadrzÄ™dnego" @@ -881,11 +983,11 @@ msgstr[1] "" msgid "Open With \"%s\"" msgstr "Otwórz z" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "nieprawidÅ‚owe Å‚Ä…cze" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" @@ -893,7 +995,7 @@ msgstr[0] "%d element, dostÄ™pna przestrzeÅ„: %s" msgstr[1] "%d elementy, dostÄ™pna przestrzeÅ„: %s" msgstr[2] "%d elementów, dostÄ™pna przestrzeÅ„: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" @@ -901,22 +1003,22 @@ msgstr[0] "%d element" msgstr[1] "%d elementy" msgstr[2] "%d elementów" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, fuzzy, c-format msgid "\"%s\" broken link" msgstr "nieprawidÅ‚owe Å‚Ä…cze" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, fuzzy, c-format msgid "\"%s\" (%s) link to %s" msgstr "%u. Å‚Ä…cze do %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" @@ -924,7 +1026,7 @@ msgstr[0] "%d zaznaczony element (%s)" msgstr[1] "%d zaznaczone elementy (%s)" msgstr[2] "%d zaznaczonych elementów (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -1008,11 +1110,6 @@ msgstr "" msgid "Owner:" msgstr "" -#: ../thunar/thunar-permissions-chooser.c:270 -#, fuzzy -msgid "Unknown" -msgstr "data nieznana" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 #, fuzzy diff --git a/po/pt_BR.po b/po/pt_BR.po index 0bd1730c9edd5de86907438ab9dce1f0a9f9df86..9db2b5b6b7b2c6cb3b9efa97c337f16e922e9734 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-02-10 22:34-0200\n" "Last-Translator: Rodrigo Coacci <rcoacci@gmail.com>\n" "Language-Team: os-cillation <info@os-cillation.com>\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Nome" @@ -200,7 +200,7 @@ msgstr "Caminho longo demais para caber no buffer" msgid "URI too long to fit into buffer" msgstr "URI longo demais para caber no buffer" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Tamanho" @@ -262,7 +262,7 @@ msgstr "Falha ao abrir \"%s\": %s" msgid "copy of %s" msgstr "cópia de %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -582,6 +582,71 @@ msgstr "Outras Aplicações" msgid "There is nothing on the clipboard to paste" msgstr "Não há nada na área de transferência para colar" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_InvisÃvel" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Desconhecido" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Entre com o novo nome:" @@ -592,27 +657,20 @@ msgstr "Entre com o novo nome:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Não pode converter nome de arquivo `%s' para a codificação local" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Permissões" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Tipo" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure _Columns..." +msgstr "" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Data modificada" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Mostrar conteúdo de pasta em uma visualização de lista detalhada" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Listagem de diretório detalhada" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Visualização de detalhes" @@ -641,6 +699,52 @@ msgstr "_Ligue aqui" msgid "Failed to execute file \"%s\"" msgstr "Falha ao executar o arquivo \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Acessado:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Data modificada" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Grupo" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Tipo" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Dono" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Permissões" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Tipo" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Arquivo" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Gerenciador de Arquivos" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "A pasta raiz não tem parente" @@ -861,47 +965,47 @@ msgstr[1] "Abrir os arquivos selecionados com as aplicações padrão" msgid "Open With \"%s\"" msgstr "Abrir Com \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "ligação quebrada" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d item, espaço livre: %s" msgstr[1] "%d Ãtens, espaço livre: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d item" msgstr[1] "%d Ãtens" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "ligação quebrada \"%s\"" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) ligação para %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d item selecionado (%s)" msgstr[1] "%d Ãtens selecionados (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -984,10 +1088,6 @@ msgstr "Leitura & Escrita" msgid "Owner:" msgstr "Dono" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Desconhecido" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/ru.po b/po/ru.po index 53101941fe5c6a724c4f090b26edd60f6903d11a..230737910827977d55e6afa256063b8599942cd7 100644 --- a/po/ru.po +++ b/po/ru.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-02-24 16:14+0500\n" "Last-Translator: Sergey Fedoseev <fedoseev.sergey@gmail.com>\n" "Language-Team: Russian <ru@li.org>\n" @@ -174,7 +174,7 @@ msgid "The icon of the mime handler" msgstr "" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "ИмÑ" @@ -200,7 +200,7 @@ msgstr "Слишком длинный путь, чтобы помеÑтить е msgid "URI too long to fit into buffer" msgstr "Слишком длинный URI, чтобы помеÑтить его в буфер" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Размер" @@ -262,7 +262,7 @@ msgstr "Ðе удалоÑÑŒ открыть /proc/mounts: %s" msgid "copy of %s" msgstr "ÐºÐ¾Ð¿Ð¸Ñ %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -583,6 +583,71 @@ msgstr "Другие приложениÑ" msgid "There is nothing on the clipboard to paste" msgstr "Буфер обмена пуÑÑ‚" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Скрыть" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "ÐеизвеÑтно" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Введите имÑ:" @@ -593,27 +658,21 @@ msgstr "Введите имÑ:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Ðе удаетÑÑ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ñ‚ÑŒ Ð¸Ð¼Ñ \"%s\" файла в локальную кодировку" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Права" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Тип" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "ÐаÑтроить оÑобые дейÑтвиÑ..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Дата изменениÑ" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Отображает Ñодержимое текущей папки в виде ÑпиÑка" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Подробный ÑпиÑок" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "ПроÑмотр в виде ÑпиÑка" @@ -642,6 +701,51 @@ msgstr "Создать ÑÑылку здеÑÑŒ" msgid "Failed to execute file \"%s\"" msgstr "Ðе удалоÑÑŒ запуÑтить \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +msgid "Date Accessed" +msgstr "" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Дата изменениÑ" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Группа:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Тип" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Владелец:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Права" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Тип" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Файл" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Файловый менеджер" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Корневой каталог не имеет родительÑкого каталога" @@ -870,11 +974,11 @@ msgstr[2] "Открыть выбранные файлы в приложении msgid "Open With \"%s\"" msgstr "Открыть Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "Ð±Ð¸Ñ‚Ð°Ñ ÑÑылка" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" @@ -882,7 +986,7 @@ msgstr[0] "%d объект, Ñвободного меÑта: %s" msgstr[1] "%d объекта, Ñвободного меÑта: %s" msgstr[2] "%d объектов, Ñвободного меÑта: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" @@ -890,22 +994,22 @@ msgstr[0] "%d объект" msgstr[1] "%d объекта" msgstr[2] "%d объектов" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" Ð±Ð¸Ñ‚Ð°Ñ ÑÑылка" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) ÑÑылаетÑÑ Ð½Ð° %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" @@ -913,7 +1017,7 @@ msgstr[0] "выбран %d объект (%s)" msgstr[1] "выбрано %d объекта (%s)" msgstr[2] "выбрано %d объектов (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -996,10 +1100,6 @@ msgstr "Чтение/ЗапиÑÑŒ" msgid "Owner:" msgstr "Владелец:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "ÐеизвеÑтно" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/sv.po b/po/sv.po index 1a0ce54705e48021f8adf4ecb6e3c5d31ceb6e33..6c80a7ed98e69e3fe65b4a0608a9e1d05045fe0c 100644 --- a/po/sv.po +++ b/po/sv.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-02-22 16:28+0100\n" "Last-Translator: Daniel Nylander <po@danielnylander.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" @@ -171,7 +171,7 @@ msgid "The icon of the mime handler" msgstr "Ikonen för mime-handtaget" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "Namn" @@ -197,7 +197,7 @@ msgstr "Sökväg för lÃ¥ng för att passa i buffert" msgid "URI too long to fit into buffer" msgstr "URI för lÃ¥ng för att passa i buffert" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "Storlek" @@ -259,7 +259,7 @@ msgstr "Misslyckades att öppna /proc/mounts: %s" msgid "copy of %s" msgstr "kopia av %s" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -578,6 +578,71 @@ msgstr "Andra program" msgid "There is nothing on the clipboard to paste" msgstr "Det finns inget i Urklipp att klistra in" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +#, fuzzy +msgid "Hi_de" +msgstr "_Dold" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "Okänd" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "Ange det nya namnet:" @@ -588,27 +653,21 @@ msgstr "Ange det nya namnet:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "Kan inte konvertera filnamnet \"%s\" till lokal teckenkodning" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "Rättigheter" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "Typ" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure _Columns..." +msgstr "Konfigurera a_npassade Ã¥tgärder..." -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "Ändringsdatum" +#: ../thunar/thunar-details-view.c:130 +#, fuzzy +msgid "Configure the columns in the detailed list view" +msgstr "Visa mappinnehÃ¥ll i en detaljerad listvy" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "Detaljerad kataloglistning" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "Detaljvy" @@ -637,6 +696,52 @@ msgstr "_Länka hit" msgid "Failed to execute file \"%s\"" msgstr "Misslyckades att starta filen \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +#, fuzzy +msgid "Date Accessed" +msgstr "Ã…tkommen:" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "Ändringsdatum" + +#: ../thunar/thunar-enum-types.c:62 +#, fuzzy +msgid "Group" +msgstr "Grupp:" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "Typ" + +#: ../thunar/thunar-enum-types.c:65 +#, fuzzy +msgid "Owner" +msgstr "Ägare:" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "Rättigheter" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "Typ" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "_Arkiv" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "Filhanterare" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "Rotmappen har ingen förälder" @@ -858,47 +963,47 @@ msgstr[1] "Öppna de markerade filerna med standardprogrammen" msgid "Open With \"%s\"" msgstr "Öppna med \"%s\"" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "trasig länk" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "%d objekt, Ledigt utrymme: %s" msgstr[1] "%d objekt, Ledigt utrymme: %s" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "%d objekt" msgstr[1] "%d objekt" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "\"%s\" trasig länk" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "\"%s\" (%s) länk till %s" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "\"%s\" (%s) %s" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "%d objekt markerat (%s)" msgstr[1] "%d objekt markerade (%s)" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -980,10 +1085,6 @@ msgstr "Läsa/Skriva" msgid "Owner:" msgstr "Ägare:" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "Okänd" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/po/zh_TW.po b/po/zh_TW.po index 2514169da7a7ab15e18a535f315db9c8bcd5c5a2..583cbdbde00a3095c4e4b0b32d17c462d28ddf8c 100644 --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Thunar 0.2.1svn\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-11 18:15+0100\n" +"POT-Creation-Date: 2006-03-12 18:55+0100\n" "PO-Revision-Date: 2006-03-05 21:50+0800\n" "Last-Translator: Hydonsingore Cia <hydonsingore@mail.educities.edu.tw>\n" "Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n" @@ -171,7 +171,7 @@ msgid "The icon of the mime handler" msgstr "mime 處置程å¼çš„圖示" #: ../thunar-vfs/thunar-vfs-mime-handler.c:176 -#: ../thunar/thunar-details-view.c:178 +#: ../thunar/thunar-enum-types.c:64 msgid "Name" msgstr "å稱" @@ -197,7 +197,7 @@ msgstr "路徑太長,無法放入緩è¡å€" msgid "URI too long to fit into buffer" msgstr "URI 太長,無法放入緩è¡å€" -#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-details-view.c:197 +#: ../thunar-vfs/thunar-vfs-thumb.c:176 ../thunar/thunar-enum-types.c:67 msgid "Size" msgstr "大å°" @@ -259,7 +259,7 @@ msgstr "無法開啟 /proc/mounts: %s" msgid "copy of %s" msgstr "%s çš„æ‹·è²" -#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:716 +#: ../thunar-vfs/thunar-vfs-xfer.c:190 ../thunar/thunar-list-model.c:752 #: ../thunar/thunar-properties-dialog.c:658 #, c-format msgid "link to %s" @@ -572,6 +572,70 @@ msgstr "其他應用程å¼" msgid "There is nothing on the clipboard to paste" msgstr "剪貼簿ä¸æ²’有æ±è¥¿å¯ä»¥è²¼ä¸Š" +#: ../thunar/thunar-column-editor.c:153 +msgid "Configure Columns in the Detailed List View" +msgstr "" + +#: ../thunar/thunar-column-editor.c:164 +msgid "Visible Columns" +msgstr "" + +#. create the top label for the column editor dialog +#: ../thunar/thunar-column-editor.c:177 +msgid "" +"Chooser the order of information to appear in the\n" +"detailed list view." +msgstr "" + +#. create the "Move Up" button +#: ../thunar/thunar-column-editor.c:218 +msgid "Move _Up" +msgstr "" + +#. create the "Move Down" button +#: ../thunar/thunar-column-editor.c:228 +msgid "Move Dow_n" +msgstr "" + +#. create the "Show" button +#: ../thunar/thunar-column-editor.c:238 +msgid "_Show" +msgstr "" + +#. create the "Hide" button +#: ../thunar/thunar-column-editor.c:244 +msgid "Hi_de" +msgstr "" + +#. create the "Use Default" button +#: ../thunar/thunar-column-editor.c:255 +msgid "Use De_fault" +msgstr "" + +#: ../thunar/thunar-column-editor.c:264 +msgid "Column Sizing" +msgstr "" + +#. create the label that explains the column sizing option +#: ../thunar/thunar-column-editor.c:277 +msgid "" +"By default columns will be automatically expanded if\n" +"needed to ensure the text is fully visible. If you dis-\n" +"able this behavior below the file manager will always\n" +"use the user defined column widths." +msgstr "" + +#. create the "Automatically expand columns as needed" button +#: ../thunar/thunar-column-editor.c:286 +msgid "Automatically _expand columns as needed" +msgstr "" + +#: ../thunar/thunar-column-model.c:894 ../thunar/thunar-list-model.c:702 +#: ../thunar/thunar-list-model.c:731 +#: ../thunar/thunar-permissions-chooser.c:270 +msgid "Unknown" +msgstr "" + #: ../thunar/thunar-create-dialog.c:180 ../thunar/thunar-standard-view.c:2242 msgid "Enter the new name:" msgstr "éµå…¥æ–°å稱:" @@ -582,27 +646,19 @@ msgstr "éµå…¥æ–°å稱:" msgid "Cannot convert filename \"%s\" to the local encoding" msgstr "無法將檔å \"%s\" 轉æˆæœ¬åœ°ç·¨ç¢¼" -#. -#. Permissions chooser -#. -#: ../thunar/thunar-details-view.c:212 -#: ../thunar/thunar-properties-dialog.c:414 -msgid "Permissions" -msgstr "權é™" - -#: ../thunar/thunar-details-view.c:227 -msgid "Type" -msgstr "é¡žåž‹" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure _Columns..." +msgstr "" -#: ../thunar/thunar-details-view.c:239 -msgid "Date modified" -msgstr "資料修改" +#: ../thunar/thunar-details-view.c:130 +msgid "Configure the columns in the detailed list view" +msgstr "" -#: ../thunar/thunar-details-view.c:268 +#: ../thunar/thunar-details-view.c:411 msgid "Detailed directory listing" msgstr "詳細目錄列表" -#: ../thunar/thunar-details-view.c:269 +#: ../thunar/thunar-details-view.c:412 msgid "Details view" msgstr "詳細檢視" @@ -630,6 +686,49 @@ msgstr "連çµåˆ°é€™è£¡(_L)" msgid "Failed to execute file \"%s\"" msgstr "無法執行檔案 \"%s\"" +#: ../thunar/thunar-enum-types.c:60 +msgid "Date Accessed" +msgstr "" + +#: ../thunar/thunar-enum-types.c:61 +#, fuzzy +msgid "Date Modified" +msgstr "資料修改" + +#: ../thunar/thunar-enum-types.c:62 +msgid "Group" +msgstr "" + +#: ../thunar/thunar-enum-types.c:63 +#, fuzzy +msgid "MIME Type" +msgstr "é¡žåž‹" + +#: ../thunar/thunar-enum-types.c:65 +msgid "Owner" +msgstr "" + +#. +#. Permissions chooser +#. +#: ../thunar/thunar-enum-types.c:66 ../thunar/thunar-properties-dialog.c:414 +msgid "Permissions" +msgstr "權é™" + +#: ../thunar/thunar-enum-types.c:68 +msgid "Type" +msgstr "é¡žåž‹" + +#: ../thunar/thunar-enum-types.c:69 +#, fuzzy +msgid "File" +msgstr "所有檔案" + +#: ../thunar/thunar-enum-types.c:70 +#, fuzzy +msgid "File Name" +msgstr "å稱" + #: ../thunar/thunar-file.c:727 msgid "The root folder has no parent" msgstr "æ²’æœ‰æ¯”æ ¹ç›®éŒ„æ›´ä¸Šå±¤çš„ç›®éŒ„" @@ -848,47 +947,47 @@ msgstr[1] "" msgid "Open With \"%s\"" msgstr "" -#: ../thunar/thunar-list-model.c:714 ../thunar/thunar-properties-dialog.c:656 +#: ../thunar/thunar-list-model.c:750 ../thunar/thunar-properties-dialog.c:656 msgid "broken link" msgstr "" -#: ../thunar/thunar-list-model.c:1989 +#: ../thunar/thunar-list-model.c:2075 #, c-format msgid "%d item, Free space: %s" msgid_plural "%d items, Free space: %s" msgstr[0] "" msgstr[1] "" -#: ../thunar/thunar-list-model.c:1994 +#: ../thunar/thunar-list-model.c:2080 #, c-format msgid "%d item" msgid_plural "%d items" msgstr[0] "" msgstr[1] "" -#: ../thunar/thunar-list-model.c:2010 +#: ../thunar/thunar-list-model.c:2096 #, c-format msgid "\"%s\" broken link" msgstr "" -#: ../thunar/thunar-list-model.c:2014 +#: ../thunar/thunar-list-model.c:2100 #, c-format msgid "\"%s\" (%s) link to %s" msgstr "" -#: ../thunar/thunar-list-model.c:2019 +#: ../thunar/thunar-list-model.c:2105 #, c-format msgid "\"%s\" (%s) %s" msgstr "" -#: ../thunar/thunar-list-model.c:2036 +#: ../thunar/thunar-list-model.c:2122 #, c-format msgid "%d item selected (%s)" msgid_plural "%d items selected (%s)" msgstr[0] "" msgstr[1] "" -#: ../thunar/thunar-list-model.c:2041 +#: ../thunar/thunar-list-model.c:2127 #, c-format msgid "%d item selected" msgid_plural "%d items selected" @@ -970,10 +1069,6 @@ msgstr "" msgid "Owner:" msgstr "" -#: ../thunar/thunar-permissions-chooser.c:270 -msgid "Unknown" -msgstr "" - #: ../thunar/thunar-permissions-chooser.c:284 #: ../thunar/thunar-permissions-chooser.c:337 msgid "Access:" diff --git a/thunar/Makefile.am b/thunar/Makefile.am index 66a93989bda5abd0f9724640fc883d0916bc77a1..0afbd2670992dc0c36584a2b799500d66f82d7c7 100644 --- a/thunar/Makefile.am +++ b/thunar/Makefile.am @@ -38,10 +38,15 @@ Thunar_SOURCES = \ thunar-chooser-model.h \ thunar-clipboard-manager.c \ thunar-clipboard-manager.h \ + thunar-column-editor.c \ + thunar-column-editor.h \ + thunar-column-model.c \ + thunar-column-model.h \ thunar-component.c \ thunar-component.h \ thunar-create-dialog.c \ thunar-create-dialog.h \ + thunar-details-view-ui.h \ thunar-details-view.c \ thunar-details-view.h \ thunar-dialogs.c \ @@ -202,6 +207,7 @@ CLEANFILES = \ DISTCLEANFILES = \ $(thunar_built_sources) \ stamp-thunar-marshal.h \ + thunar-details-view-ui.h \ thunar-icon-view-ui.h \ thunar-launcher-ui.h \ thunar-location-buttons-ui.h \ @@ -213,6 +219,7 @@ DISTCLEANFILES = \ BUILT_SOURCES = \ $(thunar_built_sources) \ + thunar-details-view-ui.h \ thunar-icon-view-ui.h \ thunar-launcher-ui.h \ thunar-location-buttons-ui.h \ @@ -233,6 +240,9 @@ thunar-throbber-fallback.c: $(srcdir)/thunar-throbber-fallback.png Makefile thunar-thumbnail-frame.c: $(srcdir)/thunar-thumbnail-frame.png Makefile (echo "#include <thunar/thunar-thumbnail-frame.h>" && gdk-pixbuf-csource --extern --raw --stream --name=thunar_thumbnail_frame $(srcdir)/thunar-thumbnail-frame.png) > thunar-thumbnail-frame.c +thunar-details-view-ui.h: Makefile $(srcdir)/thunar-details-view-ui.xml + exo-csource --static --name=thunar_details_view_ui $(srcdir)/thunar-details-view-ui.xml > thunar-details-view-ui.h + thunar-icon-view-ui.h: Makefile $(srcdir)/thunar-icon-view-ui.xml exo-csource --static --name=thunar_icon_view_ui $(srcdir)/thunar-icon-view-ui.xml > thunar-icon-view-ui.h @@ -271,6 +281,7 @@ endif EXTRA_DIST = \ thunar-dbus-service-infos.xml \ + thunar-details-view-ui.xml \ thunar-icon-view-ui.xml \ thunar-launcher-ui.xml \ thunar-location-buttons-ui.xml \ diff --git a/thunar/thunar-column-editor.c b/thunar/thunar-column-editor.c new file mode 100644 index 0000000000000000000000000000000000000000..53b4cbe0e115d9f80519a85de89740a2e508cca4 --- /dev/null +++ b/thunar/thunar-column-editor.c @@ -0,0 +1,603 @@ +/* $Id$ */ +/*- + * Copyright (c) 2006 Benedikt Meurer <benny@xfce.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 <thunar/thunar-abstract-dialog.h> +#include <thunar/thunar-column-editor.h> +#include <thunar/thunar-pango-extensions.h> +#include <thunar/thunar-preferences.h> + + + +static void thunar_column_editor_class_init (ThunarColumnEditorClass *klass); +static void thunar_column_editor_init (ThunarColumnEditor *column_editor); +static void thunar_column_editor_finalize (GObject *object); +static void thunar_column_editor_move_down (GtkWidget *button, + ThunarColumnEditor *column_editor); +static void thunar_column_editor_move_up (GtkWidget *button, + ThunarColumnEditor *column_editor); +static void thunar_column_editor_toggled (GtkCellRendererToggle *cell_renderer, + const gchar *path_string, + ThunarColumnEditor *column_editor); +static void thunar_column_editor_toggle_visibility (GtkWidget *button, + ThunarColumnEditor *column_editor); +static void thunar_column_editor_update_buttons (ThunarColumnEditor *column_editor); +static void thunar_column_editor_use_defaults (GtkWidget *button, + ThunarColumnEditor *column_editor); + + + +struct _ThunarColumnEditorClass +{ + ThunarAbstractDialogClass __parent__; +}; + +struct _ThunarColumnEditor +{ + ThunarAbstractDialog __parent__; + + ThunarPreferences *preferences; + + ThunarColumnModel *column_model; + + GtkWidget *tree_view; + GtkWidget *up_button; + GtkWidget *down_button; + GtkWidget *show_button; + GtkWidget *hide_button; +}; + + + +static GObjectClass *thunar_column_editor_parent_class; + + + +GType +thunar_column_editor_get_type (void) +{ + static GType type = G_TYPE_INVALID; + + if (G_UNLIKELY (type == G_TYPE_INVALID)) + { + static const GTypeInfo info = + { + sizeof (ThunarColumnEditorClass), + NULL, + NULL, + (GClassInitFunc) thunar_column_editor_class_init, + NULL, + NULL, + sizeof (ThunarColumnEditor), + 0, + (GInstanceInitFunc) thunar_column_editor_init, + NULL, + }; + + type = g_type_register_static (THUNAR_TYPE_ABSTRACT_DIALOG, I_("ThunarColumnEditor"), &info, 0); + } + + return type; +} + + + +static void +thunar_column_editor_class_init (ThunarColumnEditorClass *klass) +{ + GObjectClass *gobject_class; + + /* determine the parent type class */ + thunar_column_editor_parent_class = g_type_class_peek_parent (klass); + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = thunar_column_editor_finalize; +} + + + +static void +thunar_column_editor_init (ThunarColumnEditor *column_editor) +{ + GtkTreeViewColumn *column; + GtkTreeSelection *selection; + GtkCellRenderer *renderer; + AtkRelationSet *relations; + AtkRelation *relation; + GtkTreeIter iter; + AtkObject *object; + GtkWidget *separator; + GtkWidget *button; + GtkWidget *frame; + GtkWidget *image; + GtkWidget *label; + GtkWidget *table; + GtkWidget *vbox; + GtkWidget *swin; + + /* grab a reference on the preferences */ + column_editor->preferences = thunar_preferences_get (); + + /* grab a reference on the shared column model */ + column_editor->column_model = thunar_column_model_get_default (); + g_signal_connect_data (G_OBJECT (column_editor->column_model), "row-changed", G_CALLBACK (thunar_column_editor_update_buttons), + column_editor, NULL, G_CONNECT_AFTER | G_CONNECT_SWAPPED); + g_signal_connect_data (G_OBJECT (column_editor->column_model), "rows-reordered", G_CALLBACK (thunar_column_editor_update_buttons), + column_editor, NULL, G_CONNECT_AFTER | G_CONNECT_SWAPPED); + + /* setup the dialog */ + gtk_dialog_add_button (GTK_DIALOG (column_editor), GTK_STOCK_HELP, GTK_RESPONSE_HELP); + gtk_dialog_add_button (GTK_DIALOG (column_editor), GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE); + gtk_dialog_set_default_response (GTK_DIALOG (column_editor), GTK_RESPONSE_CLOSE); + gtk_dialog_set_has_separator (GTK_DIALOG (column_editor), FALSE); + gtk_window_set_resizable (GTK_WINDOW (column_editor), FALSE); + gtk_window_set_title (GTK_WINDOW (column_editor), _("Configure Columns in the Detailed List View")); + + vbox = gtk_vbox_new (FALSE, 6); + gtk_container_set_border_width (GTK_CONTAINER (vbox), 6); + gtk_box_pack_start (GTK_BOX (GTK_DIALOG (column_editor)->vbox), vbox, TRUE, TRUE, 0); + gtk_widget_show (vbox); + + frame = g_object_new (GTK_TYPE_FRAME, "border-width", 0, "shadow-type", GTK_SHADOW_NONE, NULL); + gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0); + gtk_widget_show (frame); + + label = gtk_label_new (_("Visible Columns")); + gtk_label_set_attributes (GTK_LABEL (label), thunar_pango_attr_list_bold ()); + gtk_frame_set_label_widget (GTK_FRAME (frame), label); + gtk_widget_show (label); + + table = gtk_table_new (8, 2, FALSE); + gtk_table_set_row_spacings (GTK_TABLE (table), 6); + gtk_table_set_col_spacings (GTK_TABLE (table), 6); + gtk_container_set_border_width (GTK_CONTAINER (table), 12); + gtk_container_add (GTK_CONTAINER (frame), table); + gtk_widget_show (table); + + /* create the top label for the column editor dialog */ + label = gtk_label_new (_("Chooser the order of information to appear in the\ndetailed list view.")); + gtk_misc_set_alignment (GTK_MISC (label), 0.0f, 0.5f); + gtk_table_attach (GTK_TABLE (table), label, 0, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0); + gtk_widget_show (label); + + /* create the scrolled window for the tree view */ + swin = gtk_scrolled_window_new (NULL, NULL); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swin), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (swin), GTK_SHADOW_IN); + gtk_table_attach (GTK_TABLE (table), swin, 0, 1, 1, 7, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0); + gtk_widget_show (swin); + + /* create the tree view */ + column_editor->tree_view = gtk_tree_view_new (); + gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (column_editor->tree_view), FALSE); + gtk_tree_view_set_model (GTK_TREE_VIEW (column_editor->tree_view), GTK_TREE_MODEL (column_editor->column_model)); + gtk_container_add (GTK_CONTAINER (swin), column_editor->tree_view); + gtk_widget_show (column_editor->tree_view); + + /* append the toggle column */ + column = gtk_tree_view_column_new (); + renderer = gtk_cell_renderer_toggle_new (); + g_signal_connect (G_OBJECT (renderer), "toggled", G_CALLBACK (thunar_column_editor_toggled), column_editor); + gtk_tree_view_column_pack_start (column, renderer, FALSE); + gtk_tree_view_column_set_attributes (column, renderer, + "active", THUNAR_COLUMN_MODEL_COLUMN_VISIBLE, + "activatable", THUNAR_COLUMN_MODEL_COLUMN_MUTABLE, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (column_editor->tree_view), column); + + /* append the name column */ + column = gtk_tree_view_column_new (); + gtk_tree_view_column_set_expand (column, TRUE); + renderer = gtk_cell_renderer_text_new (); + gtk_tree_view_column_pack_start (column, renderer, TRUE); + gtk_tree_view_column_set_attributes (column, renderer, + "text", THUNAR_COLUMN_MODEL_COLUMN_NAME, + NULL); + gtk_tree_view_append_column (GTK_TREE_VIEW (column_editor->tree_view), column); + + /* create the "Move Up" button */ + column_editor->up_button = gtk_button_new_with_mnemonic (_("Move _Up")); + g_signal_connect (G_OBJECT (column_editor->up_button), "clicked", G_CALLBACK (thunar_column_editor_move_up), column_editor); + gtk_table_attach (GTK_TABLE (table), column_editor->up_button, 1, 2, 1, 2, GTK_FILL, 0, 0, 0); + gtk_widget_show (column_editor->up_button); + + image = gtk_image_new_from_stock (GTK_STOCK_GO_UP, GTK_ICON_SIZE_BUTTON); + gtk_button_set_image (GTK_BUTTON (column_editor->up_button), image); + gtk_widget_show (image); + + /* create the "Move Down" button */ + column_editor->down_button = gtk_button_new_with_mnemonic (_("Move Dow_n")); + g_signal_connect (G_OBJECT (column_editor->down_button), "clicked", G_CALLBACK (thunar_column_editor_move_down), column_editor); + gtk_table_attach (GTK_TABLE (table), column_editor->down_button, 1, 2, 2, 3, GTK_FILL, 0, 0, 0); + gtk_widget_show (column_editor->down_button); + + image = gtk_image_new_from_stock (GTK_STOCK_GO_DOWN, GTK_ICON_SIZE_BUTTON); + gtk_button_set_image (GTK_BUTTON (column_editor->down_button), image); + gtk_widget_show (image); + + /* create the "Show" button */ + column_editor->show_button = gtk_button_new_with_mnemonic (_("_Show")); + g_signal_connect (G_OBJECT (column_editor->show_button), "clicked", G_CALLBACK (thunar_column_editor_toggle_visibility), column_editor); + gtk_table_attach (GTK_TABLE (table), column_editor->show_button, 1, 2, 3, 4, GTK_FILL, 0, 0, 0); + gtk_widget_show (column_editor->show_button); + + /* create the "Hide" button */ + column_editor->hide_button = gtk_button_new_with_mnemonic (_("Hi_de")); + g_signal_connect (G_OBJECT (column_editor->hide_button), "clicked", G_CALLBACK (thunar_column_editor_toggle_visibility), column_editor); + gtk_table_attach (GTK_TABLE (table), column_editor->hide_button, 1, 2, 4, 5, GTK_FILL, 0, 0, 0); + gtk_widget_show (column_editor->hide_button); + + /* create the horiz separator */ + separator = gtk_hseparator_new (); + gtk_table_attach (GTK_TABLE (table), separator, 1, 2, 5, 6, GTK_FILL, 0, 0, 0); + gtk_widget_show (separator); + + /* create the "Use Default" button */ + button = gtk_button_new_with_mnemonic (_("Use De_fault")); + g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (thunar_column_editor_use_defaults), column_editor); + gtk_table_attach (GTK_TABLE (table), button, 1, 2, 6, 7, GTK_FILL, 0, 0, 0); + gtk_widget_show (button); + + frame = g_object_new (GTK_TYPE_FRAME, "border-width", 0, "shadow-type", GTK_SHADOW_NONE, NULL); + gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, TRUE, 0); + gtk_widget_show (frame); + + label = gtk_label_new (_("Column Sizing")); + gtk_label_set_attributes (GTK_LABEL (label), thunar_pango_attr_list_bold ()); + gtk_frame_set_label_widget (GTK_FRAME (frame), label); + gtk_widget_show (label); + + table = gtk_table_new (2, 1, FALSE); + gtk_table_set_row_spacings (GTK_TABLE (table), 6); + gtk_table_set_col_spacings (GTK_TABLE (table), 6); + gtk_container_set_border_width (GTK_CONTAINER (table), 12); + gtk_container_add (GTK_CONTAINER (frame), table); + gtk_widget_show (table); + + /* create the label that explains the column sizing option */ + label = gtk_label_new (_("By default columns will be automatically expanded if\n" + "needed to ensure the text is fully visible. If you dis-\n" + "able this behavior below the file manager will always\n" + "use the user defined column widths.")); + gtk_misc_set_alignment (GTK_MISC (label), 0.0f, 0.5f); + gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1, GTK_FILL, GTK_FILL, 0, 0); + gtk_widget_show (label); + + /* create the "Automatically expand columns as needed" button */ + button = gtk_check_button_new_with_mnemonic (_("Automatically _expand columns as needed")); + exo_mutual_binding_new_with_negation (G_OBJECT (column_editor->preferences), "last-details-view-fixed-columns", G_OBJECT (button), "active"); + gtk_table_attach (GTK_TABLE (table), button, 0, 1, 1, 2, GTK_FILL, GTK_FILL, 0, 0); + gtk_widget_show (button); + + /* set Atk label relation for the button */ + object = gtk_widget_get_accessible (button); + relations = atk_object_ref_relation_set (gtk_widget_get_accessible (label)); + relation = atk_relation_new (&object, 1, ATK_RELATION_LABEL_FOR); + atk_relation_set_add (relations, relation); + g_object_unref (G_OBJECT (relation)); + + /* setup the tree selection */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (column_editor->tree_view)); + g_signal_connect_swapped (G_OBJECT (selection), "changed", G_CALLBACK (thunar_column_editor_update_buttons), column_editor); + + /* select the first item */ + if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (column_editor->column_model), &iter)) + gtk_tree_selection_select_iter (selection, &iter); + + /* grab focus to the tree view */ + gtk_widget_grab_focus (column_editor->tree_view); +} + + + +static void +thunar_column_editor_finalize (GObject *object) +{ + ThunarColumnEditor *column_editor = THUNAR_COLUMN_EDITOR (object); + + /* release our reference on the shared column model */ + g_signal_handlers_disconnect_matched (G_OBJECT (column_editor->column_model), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, column_editor); + g_object_unref (G_OBJECT (column_editor->column_model)); + + /* release our reference on the preferences */ + g_object_unref (G_OBJECT (column_editor->preferences)); + + (*G_OBJECT_CLASS (thunar_column_editor_parent_class)->finalize) (object); +} + + + +static void +thunar_column_editor_move_down (GtkWidget *button, + ThunarColumnEditor *column_editor) +{ + GtkTreeSelection *selection; + GtkTreeModel *model; + GtkTreeIter iter1; + GtkTreeIter iter2; + + g_return_if_fail (THUNAR_IS_COLUMN_EDITOR (column_editor)); + g_return_if_fail (GTK_IS_BUTTON (button)); + + /* determine the selected tree iterator */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (column_editor->tree_view)); + if (gtk_tree_selection_get_selected (selection, &model, &iter1)) + { + /* copy the iterator */ + iter2 = iter1; + + /* determine the next iterator and exchange the rows */ + if (gtk_tree_model_iter_next (model, &iter2)) + thunar_column_model_exchange (THUNAR_COLUMN_MODEL (model), &iter1, &iter2); + } +} + + + +static void +thunar_column_editor_move_up (GtkWidget *button, + ThunarColumnEditor *column_editor) +{ + GtkTreeSelection *selection; + GtkTreeModel *model; + GtkTreePath *path; + GtkTreeIter iter1; + GtkTreeIter iter2; + + g_return_if_fail (THUNAR_IS_COLUMN_EDITOR (column_editor)); + g_return_if_fail (GTK_IS_BUTTON (button)); + + /* determine the selected tree iterator */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (column_editor->tree_view)); + if (gtk_tree_selection_get_selected (selection, &model, &iter1)) + { + /* determine the path for the iterator */ + path = gtk_tree_model_get_path (model, &iter1); + if (G_LIKELY (path != NULL)) + { + /* advance to the prev path */ + if (gtk_tree_path_prev (path) && gtk_tree_model_get_iter (model, &iter2, path)) + { + /* exchange the rows */ + thunar_column_model_exchange (THUNAR_COLUMN_MODEL (model), &iter1, &iter2); + } + + /* release the path */ + gtk_tree_path_free (path); + } + } +} + + + +static void +thunar_column_editor_toggled (GtkCellRendererToggle *cell_renderer, + const gchar *path_string, + ThunarColumnEditor *column_editor) +{ + ThunarColumn column; + GtkTreePath *path; + GtkTreeIter iter; + gboolean visible; + + g_return_if_fail (GTK_IS_CELL_RENDERER_TOGGLE (cell_renderer)); + g_return_if_fail (THUNAR_IS_COLUMN_EDITOR (column_editor)); + g_return_if_fail (path_string != NULL); + + /* determine the tree path for the string */ + path = gtk_tree_path_new_from_string (path_string); + if (gtk_tree_model_get_iter (GTK_TREE_MODEL (column_editor->column_model), &iter, path)) + { + /* determine the column for the iterator... */ + column = thunar_column_model_get_column_for_iter (column_editor->column_model, &iter); + + /* ...determine the existing visbility setting... */ + visible = thunar_column_model_get_column_visible (column_editor->column_model, column); + + /* ...and change the visibility of the column */ + thunar_column_model_set_column_visible (column_editor->column_model, column, !visible); + } + gtk_tree_path_free (path); +} + + + +static void +thunar_column_editor_toggle_visibility (GtkWidget *button, + ThunarColumnEditor *column_editor) +{ + GtkTreeSelection *selection; + ThunarColumn column; + GtkTreeIter iter; + gboolean visible; + + g_return_if_fail (THUNAR_IS_COLUMN_EDITOR (column_editor)); + g_return_if_fail (GTK_IS_BUTTON (button)); + + /* determine the selected tree iterator */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (column_editor->tree_view)); + if (gtk_tree_selection_get_selected (selection, NULL, &iter)) + { + /* determine the column for the iterator... */ + column = thunar_column_model_get_column_for_iter (column_editor->column_model, &iter); + + /* ...determine the existing visbility setting... */ + visible = thunar_column_model_get_column_visible (column_editor->column_model, column); + + /* ...and change the visibility of the column */ + thunar_column_model_set_column_visible (column_editor->column_model, column, !visible); + } +} + + + +static void +thunar_column_editor_update_buttons (ThunarColumnEditor *column_editor) +{ + GtkTreeSelection *selection; + GtkTreeModel *model; + GtkTreePath *path; + GtkTreeIter iter; + gboolean mutable; + gboolean visible; + gint index; + + /* determine the selected row */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (column_editor->tree_view)); + if (gtk_tree_selection_get_selected (selection, &model, &iter)) + { + /* determine the tree path for the iter */ + path = gtk_tree_model_get_path (model, &iter); + if (G_UNLIKELY (path == NULL)) + return; + + /* update the "Move Up"/"Move Down" buttons */ + index = gtk_tree_path_get_indices (path)[0]; + gtk_widget_set_sensitive (column_editor->up_button, (index > 0)); + gtk_widget_set_sensitive (column_editor->down_button, (index + 1 < gtk_tree_model_iter_n_children (model, NULL))); + + /* update the "Show"/"Hide" buttons */ + gtk_tree_model_get (model, &iter, THUNAR_COLUMN_MODEL_COLUMN_MUTABLE, &mutable, THUNAR_COLUMN_MODEL_COLUMN_VISIBLE, &visible, -1); + gtk_widget_set_sensitive (column_editor->show_button, mutable && !visible); + gtk_widget_set_sensitive (column_editor->hide_button, mutable && visible); + + /* release the path */ + gtk_tree_path_free (path); + } + else + { + /* just disable all buttons */ + gtk_widget_set_sensitive (column_editor->hide_button, FALSE); + gtk_widget_set_sensitive (column_editor->show_button, FALSE); + gtk_widget_set_sensitive (column_editor->down_button, FALSE); + gtk_widget_set_sensitive (column_editor->up_button, FALSE); + } +} + + + +static void +thunar_column_editor_use_defaults (GtkWidget *button, + ThunarColumnEditor *column_editor) +{ + static const gchar *PROPERTY_NAMES[] = + { + "last-details-view-column-order", + "last-details-view-visible-columns", + }; + + GtkTreeSelection *selection; + GParamSpec *pspec; + GValue value = { 0, }; + gint n; + + /* reset the given properties to its default values */ + for (n = 0; n < G_N_ELEMENTS (PROPERTY_NAMES); ++n) + { + pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (column_editor->preferences), PROPERTY_NAMES[n]); + g_value_init (&value, pspec->value_type); + g_param_value_set_default (pspec, &value); + g_object_set_property (G_OBJECT (column_editor->preferences), PROPERTY_NAMES[n], &value); + g_value_unset (&value); + } + + /* reset the tree view selection */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (column_editor->tree_view)); + gtk_tree_selection_unselect_all (selection); +} + + + +/** + * thunar_column_editor_new: + * + * Allocates a new #ThunarColumnEditor instance. + * + * Return value: the newly allocated #ThunarColumnEditor. + **/ +GtkWidget* +thunar_column_editor_new (void) +{ + return g_object_new (THUNAR_TYPE_COLUMN_EDITOR, NULL); +} + + + +/** + * thunar_show_column_editor: + * @parent : the #GtkWidget the #GdkScreen on which to open the + * column editor dialog. May also be %NULL in which case + * the default #GdkScreen will be used. + * + * Convenience function to display a #ThunarColumnEditor. + * + * If @parent is a #GtkWidget the editor dialog will be opened as + * modal dialog above the @parent. Else if @parent is a screen (if + * @parent is %NULL the default screen is used), the dialog won't + * be modal and it will simply popup on the specified screen. + **/ +void +thunar_show_column_editor (gpointer parent) +{ + GtkWidget *window = NULL; + GtkWidget *dialog; + GdkScreen *screen; + + g_return_if_fail (parent == NULL || GDK_IS_SCREEN (parent) || GTK_IS_WIDGET (parent)); + + /* determine the screen for the dialog */ + if (G_UNLIKELY (parent == NULL)) + { + /* just use the default screen, no toplevel window */ + screen = gdk_screen_get_default (); + } + else if (GTK_IS_WIDGET (parent)) + { + /* use the screen for the widget and the toplevel window */ + screen = gtk_widget_get_screen (parent); + window = gtk_widget_get_toplevel (parent); + } + else + { + /* parent is a screen, no toplevel window */ + screen = GDK_SCREEN (parent); + } + + /* display the column editor */ + dialog = thunar_column_editor_new (); + + /* check if we have a toplevel window */ + if (G_LIKELY (window != NULL && GTK_WIDGET_TOPLEVEL (window))) + { + /* dialog is transient for toplevel window and modal */ + gtk_window_set_destroy_with_parent (GTK_WINDOW (dialog), TRUE); + gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); + gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (window)); + } + + /* run the dialog */ + gtk_dialog_run (GTK_DIALOG (dialog)); + + /* destroy the dialog */ + gtk_widget_destroy (dialog); +} + diff --git a/thunar/thunar-column-editor.h b/thunar/thunar-column-editor.h new file mode 100644 index 0000000000000000000000000000000000000000..b630a13f4fb446b6dc6545725ecbe93fa0bdc654 --- /dev/null +++ b/thunar/thunar-column-editor.h @@ -0,0 +1,45 @@ +/* $Id$ */ +/*- + * Copyright (c) 2006 Benedikt Meurer <benny@xfce.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 + */ + +#ifndef __THUNAR_COLUMN_EDITOR_H__ +#define __THUNAR_COLUMN_EDITOR_H__ + +#include <thunar/thunar-column-model.h> + +G_BEGIN_DECLS; + +typedef struct _ThunarColumnEditorClass ThunarColumnEditorClass; +typedef struct _ThunarColumnEditor ThunarColumnEditor; + +#define THUNAR_TYPE_COLUMN_EDITOR (thunar_column_editor_get_type ()) +#define THUNAR_COLUMN_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), THUNAR_TYPE_COLUMN_EDITOR, ThunarColumnEditor)) +#define THUNAR_COLUMN_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), THUNAR_TYPE_COLUMN_EDITOR, ThunarColumnEditorClass)) +#define THUNAR_IS_COLUMN_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), THUNAR_TYPE_COLUMN_EDITOR)) +#define THUNAR_IS_COLUMN_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), THUNAR_TYPE_COLUMN_EDITOR)) +#define THUNAR_COLUMN_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), THUNAR_TYPE_COLUMN_EDITOR, ThunarColumnEditorClass)) + +GType thunar_column_editor_get_type (void) G_GNUC_CONST; + +GtkWidget *thunar_column_editor_new (void) G_GNUC_MALLOC; + +void thunar_show_column_editor (gpointer parent); + +G_END_DECLS; + +#endif /* !__THUNAR_COLUMN_EDITOR_H__ */ diff --git a/thunar/thunar-column-model.c b/thunar/thunar-column-model.c new file mode 100644 index 0000000000000000000000000000000000000000..4ea5bd5667bcdca668419e2610c9d5632d09f9da --- /dev/null +++ b/thunar/thunar-column-model.c @@ -0,0 +1,1047 @@ +/* $Id$ */ +/*- + * Copyright (c) 2006 Benedikt Meurer <benny@xfce.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 + +#ifdef HAVE_STDLIB_H +#include <stdlib.h> +#endif + +#include <thunar/thunar-column-model.h> +#include <thunar/thunar-preferences.h> + + + +/* Signal identifiers */ +enum +{ + COLUMNS_CHANGED, + LAST_SIGNAL, +}; + + + +static void thunar_column_model_class_init (ThunarColumnModelClass *klass); +static void thunar_column_model_tree_model_init (GtkTreeModelIface *iface); +static void thunar_column_model_init (ThunarColumnModel *column_model); +static void thunar_column_model_finalize (GObject *object); +static GtkTreeModelFlags thunar_column_model_get_flags (GtkTreeModel *tree_model); +static gint thunar_column_model_get_n_columns (GtkTreeModel *tree_model); +static GType thunar_column_model_get_column_type (GtkTreeModel *tree_model, + gint index); +static gboolean thunar_column_model_get_iter (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreePath *path); +static GtkTreePath *thunar_column_model_get_path (GtkTreeModel *tree_model, + GtkTreeIter *iter); +static void thunar_column_model_get_value (GtkTreeModel *tree_model, + GtkTreeIter *iter, + gint index, + GValue *value); +static gboolean thunar_column_model_iter_next (GtkTreeModel *tree_model, + GtkTreeIter *iter); +static gboolean thunar_column_model_iter_children (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *parent); +static gboolean thunar_column_model_iter_has_child (GtkTreeModel *tree_model, + GtkTreeIter *iter); +static gint thunar_column_model_iter_n_children (GtkTreeModel *tree_model, + GtkTreeIter *iter); +static gboolean thunar_column_model_iter_nth_child (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *parent, + gint n); +static gboolean thunar_column_model_iter_parent (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *child); +static void thunar_column_model_load_column_order (ThunarColumnModel *column_model); +static void thunar_column_model_save_column_order (ThunarColumnModel *column_model); +static void thunar_column_model_notify_column_order (ThunarPreferences *preferences, + GParamSpec *pspec, + ThunarColumnModel *column_model); +static void thunar_column_model_load_column_widths (ThunarColumnModel *column_model); +static void thunar_column_model_save_column_widths (ThunarColumnModel *column_model); +static void thunar_column_model_notify_column_widths (ThunarPreferences *preferences, + GParamSpec *pspec, + ThunarColumnModel *column_model); +static void thunar_column_model_load_visible_columns (ThunarColumnModel *column_model); +static void thunar_column_model_save_visible_columns (ThunarColumnModel *column_model); +static void thunar_column_model_notify_visible_columns (ThunarPreferences *preferences, + GParamSpec *pspec, + ThunarColumnModel *column_model); + + + +struct _ThunarColumnModelClass +{ + GObjectClass __parent__; + + /* signals */ + void (*columns_changed) (ThunarColumnModel *column_model); +}; + +struct _ThunarColumnModel +{ + GObject __parent__; + + ThunarPreferences *preferences; + ThunarColumn order[THUNAR_N_VISIBLE_COLUMNS]; + gboolean visible[THUNAR_N_VISIBLE_COLUMNS]; + gint width[THUNAR_N_VISIBLE_COLUMNS]; + guint stamp; +}; + + + +static GObjectClass *thunar_column_model_parent_class; +static guint column_model_signals[LAST_SIGNAL]; + + + +GType +thunar_column_model_get_type (void) +{ + static GType type = G_TYPE_INVALID; + + if (G_UNLIKELY (type == G_TYPE_INVALID)) + { + static const GTypeInfo info = + { + sizeof (ThunarColumnModelClass), + NULL, + NULL, + (GClassInitFunc) thunar_column_model_class_init, + NULL, + NULL, + sizeof (ThunarColumnModel), + 0, + (GInstanceInitFunc) thunar_column_model_init, + NULL, + }; + + static const GInterfaceInfo tree_model_info = + { + (GInterfaceInitFunc) thunar_column_model_tree_model_init, + NULL, + NULL, + }; + + type = g_type_register_static (G_TYPE_OBJECT, I_("ThunarColumnModel"), &info, 0); + g_type_add_interface_static (type, GTK_TYPE_TREE_MODEL, &tree_model_info); + } + + return type; +} + + + +static void +thunar_column_model_class_init (ThunarColumnModelClass *klass) +{ + GObjectClass *gobject_class; + + /* determine the parent type class */ + thunar_column_model_parent_class = g_type_class_peek_parent (klass); + + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = thunar_column_model_finalize; + + /** + * ThunarColumnModel::columns-changed: + * @column_model : a #ThunarColumnModel. + * + * Emitted by @column_model whenever the + * order of the columns or the visibility + * of a column in @column_model is changed. + **/ + column_model_signals[COLUMNS_CHANGED] = + g_signal_new (I_("columns-changed"), + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (ThunarColumnModelClass, columns_changed), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); +} + + + +static void +thunar_column_model_tree_model_init (GtkTreeModelIface *iface) +{ + iface->get_flags = thunar_column_model_get_flags; + iface->get_n_columns = thunar_column_model_get_n_columns; + iface->get_column_type = thunar_column_model_get_column_type; + iface->get_iter = thunar_column_model_get_iter; + iface->get_path = thunar_column_model_get_path; + iface->get_value = thunar_column_model_get_value; + iface->iter_next = thunar_column_model_iter_next; + iface->iter_children = thunar_column_model_iter_children; + iface->iter_has_child = thunar_column_model_iter_has_child; + iface->iter_n_children = thunar_column_model_iter_n_children; + iface->iter_nth_child = thunar_column_model_iter_nth_child; + iface->iter_parent = thunar_column_model_iter_parent; +} + + + +static void +thunar_column_model_init (ThunarColumnModel *column_model) +{ + /* grab a reference on the preferences */ + column_model->preferences = thunar_preferences_get (); + g_signal_connect (G_OBJECT (column_model->preferences), "notify::last-details-view-column-order", + G_CALLBACK (thunar_column_model_notify_column_order), column_model); + g_signal_connect (G_OBJECT (column_model->preferences), "notify::last-details-view-column-widths", + G_CALLBACK (thunar_column_model_notify_column_widths), column_model); + g_signal_connect (G_OBJECT (column_model->preferences), "notify::last-details-view-visible-columns", + G_CALLBACK (thunar_column_model_notify_visible_columns), column_model); + + /* generate a random stamp */ + column_model->stamp = g_random_int (); + + /* load the column order */ + thunar_column_model_load_column_order (column_model); + + /* load the column widths */ + thunar_column_model_load_column_widths (column_model); + + /* load the list of visible columns */ + thunar_column_model_load_visible_columns (column_model); +} + + + +static void +thunar_column_model_finalize (GObject *object) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (object); + + /* disconnect from the global preferences */ + g_signal_handlers_disconnect_matched (G_OBJECT (column_model->preferences), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, column_model); + g_object_unref (G_OBJECT (column_model->preferences)); + + (*G_OBJECT_CLASS (thunar_column_model_parent_class)->finalize) (object); +} + + + +static GtkTreeModelFlags +thunar_column_model_get_flags (GtkTreeModel *tree_model) +{ + return GTK_TREE_MODEL_LIST_ONLY; +} + + + +static gint +thunar_column_model_get_n_columns (GtkTreeModel *tree_model) +{ + return THUNAR_COLUMN_MODEL_N_COLUMNS; +} + + + +static GType +thunar_column_model_get_column_type (GtkTreeModel *tree_model, + gint index) +{ + switch (index) + { + case THUNAR_COLUMN_MODEL_COLUMN_NAME: + return G_TYPE_STRING; + + case THUNAR_COLUMN_MODEL_COLUMN_MUTABLE: + return G_TYPE_BOOLEAN; + + case THUNAR_COLUMN_MODEL_COLUMN_VISIBLE: + return G_TYPE_BOOLEAN; + } + + g_assert_not_reached (); + return G_TYPE_INVALID; +} + + + +static gboolean +thunar_column_model_get_iter (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreePath *path) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + ThunarColumn column; + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), FALSE); + g_return_val_if_fail (gtk_tree_path_get_depth (path) > 0, FALSE); + + /* check if the path is valid */ + column = gtk_tree_path_get_indices (path)[0]; + if (G_UNLIKELY (column >= THUNAR_N_VISIBLE_COLUMNS)) + return FALSE; + + /* generate an iterator */ + iter->stamp = column_model->stamp; + iter->user_data = GINT_TO_POINTER (column); + + return TRUE; +} + + + +static GtkTreePath* +thunar_column_model_get_path (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), NULL); + g_return_val_if_fail (iter->stamp == column_model->stamp, NULL); + + /* generate the path for the iterator */ + return gtk_tree_path_new_from_indices (GPOINTER_TO_INT (iter->user_data), -1); +} + + + +static void +thunar_column_model_get_value (GtkTreeModel *tree_model, + GtkTreeIter *iter, + gint index, + GValue *value) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + ThunarColumn column; + + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (index < THUNAR_COLUMN_MODEL_N_COLUMNS); + g_return_if_fail (iter->stamp == column_model->stamp); + + /* determine the column from the iterator */ + column = GPOINTER_TO_INT (iter->user_data); + + /* resolve the column according to the order */ + column = column_model->order[column]; + + switch (index) + { + case THUNAR_COLUMN_MODEL_COLUMN_NAME: + g_value_init (value, G_TYPE_STRING); + g_value_set_static_string (value, thunar_column_model_get_column_name (column_model, column)); + break; + + case THUNAR_COLUMN_MODEL_COLUMN_MUTABLE: + g_value_init (value, G_TYPE_BOOLEAN); + g_value_set_boolean (value, (column != THUNAR_COLUMN_NAME)); + break; + + case THUNAR_COLUMN_MODEL_COLUMN_VISIBLE: + g_value_init (value, G_TYPE_BOOLEAN); + g_value_set_boolean (value, thunar_column_model_get_column_visible (column_model, column)); + break; + + default: + g_assert_not_reached (); + break; + } +} + + + +static gboolean +thunar_column_model_iter_next (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + ThunarColumn column; + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), FALSE); + g_return_val_if_fail (iter->stamp == column_model->stamp, FALSE); + + /* move the iterator to the next column */ + column = GPOINTER_TO_INT (iter->user_data) + 1; + iter->user_data = GINT_TO_POINTER (column); + + /* check if the iterator is still valid */ + return (column < THUNAR_N_VISIBLE_COLUMNS); +} + + + +static gboolean +thunar_column_model_iter_children (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *parent) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), FALSE); + + if (G_LIKELY (parent == NULL)) + { + iter->stamp = column_model->stamp; + iter->user_data = GINT_TO_POINTER (0); + } + + return FALSE; +} + + + +static gboolean +thunar_column_model_iter_has_child (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + return FALSE; +} + + + +static gint +thunar_column_model_iter_n_children (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), 0); + + return (iter == NULL) ? THUNAR_N_VISIBLE_COLUMNS : 0; +} + + + +static gboolean +thunar_column_model_iter_nth_child (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *parent, + gint n) +{ + ThunarColumnModel *column_model = THUNAR_COLUMN_MODEL (tree_model); + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), FALSE); + + if (G_LIKELY (parent == NULL && n < THUNAR_N_VISIBLE_COLUMNS)) + { + iter->stamp = column_model->stamp; + iter->user_data = GINT_TO_POINTER (n); + return TRUE; + } + + return FALSE; +} + + + +static gboolean +thunar_column_model_iter_parent (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *child) +{ + return FALSE; +} + + + +static void +thunar_column_model_load_column_order (ThunarColumnModel *column_model) +{ + ThunarColumn column; + GEnumClass *klass; + GEnumValue *value; + gchar **column_order; + gchar *tmp; + gint i, j; + + /* determine the column order from the preferences */ + g_object_get (G_OBJECT (column_model->preferences), "last-details-view-column-order", &tmp, NULL); + column_order = g_strsplit (tmp, ",", -1); + g_free (tmp); + + /* reset the column order to its default */ + for (j = 0; j < THUNAR_N_VISIBLE_COLUMNS; ++j) + column_model->order[j] = j; + + /* now rearrange the columns according to the preferences */ + klass = g_type_class_ref (THUNAR_TYPE_COLUMN); + for (i = 0; column_order[i] != NULL; ++i) + { + /* determine the enum value for the name */ + value = g_enum_get_value_by_name (klass, column_order[i]); + if (G_UNLIKELY (value == NULL || value->value == i)) + continue; + + /* find the current position of the value */ + for (j = 0; j < THUNAR_N_VISIBLE_COLUMNS; ++j) + if (column_model->order[j] == value->value) + break; + + /* check if valid */ + if (G_LIKELY (j < THUNAR_N_VISIBLE_COLUMNS)) + { + /* exchange the positions of i and j */ + column = column_model->order[i]; + column_model->order[i] = column_model->order[j]; + column_model->order[j] = column; + } + } + g_type_class_unref (klass); + + /* release the column order */ + g_strfreev (column_order); +} + + + +static void +thunar_column_model_save_column_order (ThunarColumnModel *column_model) +{ + GEnumClass *klass; + GEnumValue *value; + GString *column_order; + gint n; + + /* allocate a string for the column order */ + column_order = g_string_sized_new (256); + + /* transform the internal visible column list */ + klass = g_type_class_ref (THUNAR_TYPE_COLUMN); + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + { + /* append a comma if not empty */ + if (*column_order->str != '\0') + g_string_append_c (column_order, ','); + + /* append the enum value name */ + value = g_enum_get_value (klass, column_model->order[n]); + g_string_append (column_order, value->value_name); + } + g_type_class_unref (klass); + + /* save the list of visible columns */ + g_signal_handlers_block_by_func (G_OBJECT (column_model->preferences), thunar_column_model_notify_column_order, column_model); + g_object_set (G_OBJECT (column_model->preferences), "last-details-view-column-order", column_order->str, NULL); + g_signal_handlers_unblock_by_func (G_OBJECT (column_model->preferences), thunar_column_model_notify_column_order, column_model); + + /* release the string */ + g_string_free (column_order, TRUE); +} + + + +static void +thunar_column_model_notify_column_order (ThunarPreferences *preferences, + GParamSpec *pspec, + ThunarColumnModel *column_model) +{ + GtkTreePath *path; + GtkTreeIter iter; + gint n; + + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (THUNAR_IS_PREFERENCES (preferences)); + + /* load the new column order */ + thunar_column_model_load_column_order (column_model); + + /* emit "row-changed" for all rows */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + { + path = gtk_tree_path_new_from_indices (n, -1); + if (gtk_tree_model_get_iter (GTK_TREE_MODEL (column_model), &iter, path)) + gtk_tree_model_row_changed (GTK_TREE_MODEL (column_model), path, &iter); + gtk_tree_path_free (path); + } + + /* emit "columns-changed" */ + g_signal_emit (G_OBJECT (column_model), column_model_signals[COLUMNS_CHANGED], 0); +} + + + +static void +thunar_column_model_load_column_widths (ThunarColumnModel *column_model) +{ + gchar **column_widths; + gchar *tmp; + gint width; + gint n; + + /* determine the column widths from the preferences */ + g_object_get (G_OBJECT (column_model->preferences), "last-details-view-column-widths", &tmp, NULL); + column_widths = g_strsplit (tmp, ",", -1); + g_free (tmp); + + /* reset the column widths for the model */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + column_model->width[n] = 50; + column_model->width[THUNAR_COLUMN_NAME] = 200; + + /* parse the widths from the preferences */ + for (n = 0; column_widths[n] != NULL; ++n) + { + width = strtol (column_widths[n], NULL, 10); + if (G_LIKELY (width >= 0)) + column_model->width[n] = width; + } + + /* release the column width array */ + g_strfreev (column_widths); +} + + + +static void +thunar_column_model_save_column_widths (ThunarColumnModel *column_model) +{ + GString *column_widths; + gint n; + + /* allocate a string for the column widths */ + column_widths = g_string_sized_new (96); + + /* transform the column widths to a string */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + { + /* append a comma if not empty */ + if (*column_widths->str != '\0') + g_string_append_c (column_widths, ','); + + /* append the width */ + g_string_append_printf (column_widths, "%d", column_model->width[n]); + } + + /* save the column widths */ + g_signal_handlers_block_by_func (G_OBJECT (column_model->preferences), thunar_column_model_notify_column_widths, column_model); + g_object_set (G_OBJECT (column_model->preferences), "last-details-view-column-widths", column_widths->str, NULL); + g_signal_handlers_unblock_by_func (G_OBJECT (column_model->preferences), thunar_column_model_notify_column_widths, column_model); + + /* release the string */ + g_string_free (column_widths, TRUE); +} + + + +static void +thunar_column_model_notify_column_widths (ThunarPreferences *preferences, + GParamSpec *pspec, + ThunarColumnModel *column_model) +{ + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (THUNAR_IS_PREFERENCES (preferences)); + + /* load the new column widths */ + thunar_column_model_load_column_widths (column_model); +} + + + +static void +thunar_column_model_load_visible_columns (ThunarColumnModel *column_model) +{ + GEnumClass *klass; + GEnumValue *value; + gchar **visible_columns; + gchar *tmp; + gint n; + + /* determine the list of visible columns from the preferences */ + g_object_get (G_OBJECT (column_model->preferences), "last-details-view-visible-columns", &tmp, NULL); + visible_columns = g_strsplit (tmp, ",", -1); + g_free (tmp); + + /* reset the visible columns for the model */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + column_model->visible[n] = FALSE; + + /* mark all columns included in the list as visible */ + klass = g_type_class_ref (THUNAR_TYPE_COLUMN); + for (n = 0; visible_columns[n] != NULL; ++n) + { + /* determine the enum value from the string */ + value = g_enum_get_value_by_name (klass, visible_columns[n]); + if (G_LIKELY (value != NULL && value->value < THUNAR_N_VISIBLE_COLUMNS)) + column_model->visible[value->value] = TRUE; + } + g_type_class_unref (klass); + + /* the name column is always visible */ + column_model->visible[THUNAR_COLUMN_NAME] = TRUE; + + /* release the list of visible columns */ + g_strfreev (visible_columns); +} + + + +static void +thunar_column_model_save_visible_columns (ThunarColumnModel *column_model) +{ + GEnumClass *klass; + GString *visible_columns; + gint n; + + /* allocate a string for the visible columns list */ + visible_columns = g_string_sized_new (128); + + /* transform the internal visible column list */ + klass = g_type_class_ref (THUNAR_TYPE_COLUMN); + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + if (column_model->visible[klass->values[n].value]) + { + /* append a comma if not empty */ + if (*visible_columns->str != '\0') + g_string_append_c (visible_columns, ','); + + /* append the enum value name */ + g_string_append (visible_columns, klass->values[n].value_name); + } + g_type_class_unref (klass); + + /* save the list of visible columns */ + g_signal_handlers_block_by_func (G_OBJECT (column_model->preferences), thunar_column_model_notify_visible_columns, column_model); + g_object_set (G_OBJECT (column_model->preferences), "last-details-view-visible-columns", visible_columns->str, NULL); + g_signal_handlers_unblock_by_func (G_OBJECT (column_model->preferences), thunar_column_model_notify_visible_columns, column_model); + + /* release the string */ + g_string_free (visible_columns, TRUE); +} + + + +static void +thunar_column_model_notify_visible_columns (ThunarPreferences *preferences, + GParamSpec *pspec, + ThunarColumnModel *column_model) +{ + GtkTreePath *path; + GtkTreeIter iter; + gint n; + + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (THUNAR_IS_PREFERENCES (preferences)); + + /* load the new list of visible columns */ + thunar_column_model_load_visible_columns (column_model); + + /* emit "row-changed" for all rows */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + { + path = gtk_tree_path_new_from_indices (n, -1); + if (gtk_tree_model_get_iter (GTK_TREE_MODEL (column_model), &iter, path)) + gtk_tree_model_row_changed (GTK_TREE_MODEL (column_model), path, &iter); + gtk_tree_path_free (path); + } + + /* emit "columns-changed" */ + g_signal_emit (G_OBJECT (column_model), column_model_signals[COLUMNS_CHANGED], 0); +} + + + +/** + * thunar_column_model_get_default: + * + * Returns the default, shared #ThunarColumnModel + * instance. + * + * The caller is responsible to free the returned + * object using g_object_unref() when no longer + * needed. + * + * Return value: the default #ThunarColumnModel. + **/ +ThunarColumnModel* +thunar_column_model_get_default (void) +{ + static ThunarColumnModel *column_model = NULL; + + if (G_UNLIKELY (column_model == NULL)) + { + column_model = g_object_new (THUNAR_TYPE_COLUMN_MODEL, NULL); + g_object_add_weak_pointer (G_OBJECT (column_model), (gpointer) &column_model); + } + else + { + g_object_ref (G_OBJECT (column_model)); + } + + return column_model; +} + + + +/** + * thunar_column_model_exchange: + * @column_model : a #ThunarColumnModel. + * @iter1 : first #GtkTreeIter. + * @iter2 : second #GtkTreeIter. + * + * Exchanges the columns at @iter1 and @iter2 + * in @column_model. + **/ +void +thunar_column_model_exchange (ThunarColumnModel *column_model, + GtkTreeIter *iter1, + GtkTreeIter *iter2) +{ + ThunarColumn column; + GtkTreePath *path; + gint new_order[THUNAR_N_VISIBLE_COLUMNS]; + gint n; + + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (iter1->stamp == column_model->stamp); + g_return_if_fail (iter2->stamp == column_model->stamp); + + /* swap the columns */ + column = column_model->order[GPOINTER_TO_INT (iter1->user_data)]; + column_model->order[GPOINTER_TO_INT (iter1->user_data)] = column_model->order[GPOINTER_TO_INT (iter2->user_data)]; + column_model->order[GPOINTER_TO_INT (iter2->user_data)] = column; + + /* initialize the new order array */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + new_order[n] = n; + + /* perform the swapping on the new order array */ + new_order[GPOINTER_TO_INT (iter1->user_data)] = GPOINTER_TO_INT (iter2->user_data); + new_order[GPOINTER_TO_INT (iter2->user_data)] = GPOINTER_TO_INT (iter1->user_data); + + /* emit "rows-reordered" */ + path = gtk_tree_path_new (); + gtk_tree_model_rows_reordered (GTK_TREE_MODEL (column_model), path, NULL, new_order); + gtk_tree_path_free (path); + + /* emit "columns-changed" */ + g_signal_emit (G_OBJECT (column_model), column_model_signals[COLUMNS_CHANGED], 0); + + /* save the new column order */ + thunar_column_model_save_column_order (column_model); +} + + + +/** + * thunar_column_model_get_column_for_iter: + * @column_model : a #ThunarColumnModel. + * @iter : a valid #GtkTreeIter for @column_model. + * + * Returns the #ThunarColumn for the given @iter in + * @column_model. + * + * Return value: the #ThunarColumn for @iter. + **/ +ThunarColumn +thunar_column_model_get_column_for_iter (ThunarColumnModel *column_model, + GtkTreeIter *iter) +{ + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), -1); + g_return_val_if_fail (iter->stamp == column_model->stamp, -1); + return column_model->order[GPOINTER_TO_INT (iter->user_data)]; +} + + + +/** + * thunar_column_model_get_column_order: + * @column_model : a #ThunarColumnModel. + * + * Returns the current #ThunarColumn order for @column_model. + * + * Return value: the current #ThunarColumn order for the given + * @column_model instance. + **/ +const ThunarColumn* +thunar_column_model_get_column_order (ThunarColumnModel *column_model) +{ + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), NULL); + return column_model->order; +} + + + +/** + * thunar_column_model_get_column_name: + * @column_model : a #ThunarColumnModel. + * @column : a #ThunarColumn. + * + * Returns the user visible name for the @column in + * the @column_model. + * + * Return value: the user visible name for @column. + **/ +const gchar* +thunar_column_model_get_column_name (ThunarColumnModel *column_model, + ThunarColumn column) +{ + const gchar *column_name = _("Unknown"); + GEnumClass *klass; + gint n; + + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), NULL); + g_return_val_if_fail (column < THUNAR_N_VISIBLE_COLUMNS, NULL); + g_return_val_if_fail (column >= 0, NULL); + + /* determine the column name from the ThunarColumn enum type */ + klass = g_type_class_ref (THUNAR_TYPE_COLUMN); + for (n = 0; n < klass->n_values; ++n) + if (klass->values[n].value == column) + column_name = _(klass->values[n].value_nick); + g_type_class_unref (klass); + + return column_name; +} + + + +/** + * thunar_column_model_get_column_visible: + * @column_model : a #ThunarColumnModel. + * @column : a #ThunarColumn. + * + * Returns %TRUE if the @column should be displayed + * in the details view. + * + * Return value: %TRUE if @column is visible. + **/ +gboolean +thunar_column_model_get_column_visible (ThunarColumnModel *column_model, + ThunarColumn column) +{ + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), FALSE); + g_return_val_if_fail (column < THUNAR_N_VISIBLE_COLUMNS, FALSE); + g_return_val_if_fail (column >= 0, FALSE); + return column_model->visible[column]; +} + + + +/** + * thunar_column_model_set_column_visible: + * @column_model : a #ThunarColumnModel. + * @column : a #ThunarColumn. + * @visible : %TRUE to make @column visible. + * + * Changes the visibility of the @column to @visible in + * @column_model. + **/ +void +thunar_column_model_set_column_visible (ThunarColumnModel *column_model, + ThunarColumn column, + gboolean visible) +{ + GtkTreePath *path; + GtkTreeIter iter; + gint n; + + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (column < THUNAR_N_VISIBLE_COLUMNS); + g_return_if_fail (column >= 0); + + /* cannot change the visibility of the name column */ + if (G_UNLIKELY (column == THUNAR_COLUMN_NAME)) + return; + + /* normalize the value */ + visible = !!visible; + + /* check if we have a new value */ + if (G_LIKELY (column_model->visible[column] != visible)) + { + /* apply the new value */ + column_model->visible[column] = visible; + + /* reverse lookup the real column */ + for (n = 0; n < THUNAR_N_VISIBLE_COLUMNS; ++n) + if (column_model->order[n] == column) + { + column = n; + break; + } + + /* emit "row-changed" */ + path = gtk_tree_path_new_from_indices (column, -1); + if (gtk_tree_model_get_iter (GTK_TREE_MODEL (column_model), &iter, path)) + gtk_tree_model_row_changed (GTK_TREE_MODEL (column_model), path, &iter); + gtk_tree_path_free (path); + + /* emit "columns-changed" */ + g_signal_emit (G_OBJECT (column_model), column_model_signals[COLUMNS_CHANGED], 0); + + /* save the list of visible columns */ + thunar_column_model_save_visible_columns (column_model); + } +} + + + +/** + * thunar_column_model_get_column_width: + * @column_model : a #ThunarColumnModel. + * @column : a #ThunarColumn. + * + * Returns the fixed column width for @column in + * @column_model. + * + * Return value: the fixed width for @column. + **/ +gint +thunar_column_model_get_column_width (ThunarColumnModel *column_model, + ThunarColumn column) +{ + g_return_val_if_fail (THUNAR_IS_COLUMN_MODEL (column_model), -1); + g_return_val_if_fail (column < THUNAR_N_VISIBLE_COLUMNS, -1); + g_return_val_if_fail (column >= 0, -1); + return column_model->width[column]; +} + + + +/** + * thunar_column_model_set_column_width: + * @column_model : a #ThunarColumnModel. + * @column : a #ThunarColumn. + * @width : the new fixed width for @column. + * + * Sets the fixed width for @column in @column_model + * to @width. + **/ +void +thunar_column_model_set_column_width (ThunarColumnModel *column_model, + ThunarColumn column, + gint width) +{ + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (column < THUNAR_N_VISIBLE_COLUMNS); + g_return_if_fail (column >= 0); + g_return_if_fail (width >= 0); + + /* check if we have a new width */ + if (G_LIKELY (column_model->width[column] != width)) + { + /* apply the new value */ + column_model->width[column] = width; + + /* store the settings */ + thunar_column_model_save_column_widths (column_model); + } +} + + diff --git a/thunar/thunar-column-model.h b/thunar/thunar-column-model.h new file mode 100644 index 0000000000000000000000000000000000000000..a0847245fe1442aecdf1d258570e2cfe61206f9a --- /dev/null +++ b/thunar/thunar-column-model.h @@ -0,0 +1,83 @@ +/* $Id$ */ +/*- + * Copyright (c) 2006 Benedikt Meurer <benny@xfce.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 + */ + +#ifndef __THUNAR_COLUMN_MODEL_H__ +#define __THUNAR_COLUMN_MODEL_H__ + +#include <thunar/thunar-enum-types.h> + +G_BEGIN_DECLS; + +typedef struct _ThunarColumnModelClass ThunarColumnModelClass; +typedef struct _ThunarColumnModel ThunarColumnModel; + +#define THUNAR_TYPE_COLUMN_MODEL (thunar_column_model_get_type ()) +#define THUNAR_COLUMN_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), THUNAR_TYPE_COLUMN_MODEL, ThunarColumnModel)) +#define THUNAR_COLUMN_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), THUNAR_TYPE_COLUMN_MODEL, ThunarColumnModelClass)) +#define THUNAR_IS_COLUMN_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), THUNAR_TYPE_COLUMN_MODEL)) +#define THUNAR_IS_COLUMN_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), THUNAR_TYPE_COLUMN_MODEL)) +#define THUNAR_COLUMN_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), THUNAR_TYPE_COLUMN_MODEL, ThunarColumnModelClass)) + +/** + * ThunarColumnModelColumn: + * @THUNAR_COLUMN_MODEL_COLUMN_NAME : the name of the column. + * @THUNAR_COLUMN_MODEL_COLUMN_MUTABLE : TRUE if the visibility can be changed. + * @THUNAR_COLUMN_MODEL_COLUMN_VISIBLE : whether the column is visible. + * + * The #ThunarColumnModel columns used by the #ThunarColumnEditor. + **/ +typedef enum +{ + THUNAR_COLUMN_MODEL_COLUMN_NAME, + THUNAR_COLUMN_MODEL_COLUMN_MUTABLE, + THUNAR_COLUMN_MODEL_COLUMN_VISIBLE, + THUNAR_COLUMN_MODEL_N_COLUMNS, +} ThunarColumnModelColumn; + +GType thunar_column_model_get_type (void) G_GNUC_CONST; + +ThunarColumnModel *thunar_column_model_get_default (void); + +void thunar_column_model_exchange (ThunarColumnModel *column_model, + GtkTreeIter *iter1, + GtkTreeIter *iter2); + +ThunarColumn thunar_column_model_get_column_for_iter (ThunarColumnModel *column_model, + GtkTreeIter *iter); + +const ThunarColumn *thunar_column_model_get_column_order (ThunarColumnModel *column_model); + +const gchar *thunar_column_model_get_column_name (ThunarColumnModel *column_model, + ThunarColumn column); + +gboolean thunar_column_model_get_column_visible (ThunarColumnModel *column_model, + ThunarColumn column); +void thunar_column_model_set_column_visible (ThunarColumnModel *column_model, + ThunarColumn column, + gboolean visible); + +gint thunar_column_model_get_column_width (ThunarColumnModel *column_model, + ThunarColumn column); +void thunar_column_model_set_column_width (ThunarColumnModel *column_model, + ThunarColumn column, + gint width); + +G_END_DECLS; + +#endif /* !__THUNAR_COLUMN_MODEL_H__ */ diff --git a/thunar/thunar-details-view-ui.xml b/thunar/thunar-details-view-ui.xml new file mode 100644 index 0000000000000000000000000000000000000000..f2f8df35134aab69e0c730b3775db2ff4cc58b26 --- /dev/null +++ b/thunar/thunar-details-view-ui.xml @@ -0,0 +1,23 @@ +<ui> + + <!-- + $Id$ + + Copyright (c) 2006 Benedikt Meurer <benny@xfce.org> + + Thunar details view user interface description file. Do NOT + simply edit this file if you don't know how the whole system + works, because it's too easy to break something. + --> + + <menubar name="main-menu"> + <menu action="view-menu"> + <placeholder name="placeholder-view-items-actions"> + <menuitem action="setup-columns" /> + </placeholder> + </menu> + </menubar> + +</ui> + +<!-- vi: set ts=2 sw=2 et ai nocindent syntax=xml: --> diff --git a/thunar/thunar-details-view.c b/thunar/thunar-details-view.c index b68f27f5229d2d0df8a1530ba1aa0fc4c3138bce..e98d1fdb50d72b3a71e735b16d24151500f7d5a2 100644 --- a/thunar/thunar-details-view.c +++ b/thunar/thunar-details-view.c @@ -23,49 +23,81 @@ #include <gdk/gdkkeysyms.h> +#include <thunar/thunar-column-editor.h> #include <thunar/thunar-details-view.h> +#include <thunar/thunar-details-view-ui.h> #include <thunar/thunar-gtk-extensions.h> #include <thunar/thunar-text-renderer.h> -static void thunar_details_view_class_init (ThunarDetailsViewClass *klass); -static void thunar_details_view_init (ThunarDetailsView *details_view); -static AtkObject *thunar_details_view_get_accessible (GtkWidget *widget); -static GList *thunar_details_view_get_selected_items (ThunarStandardView *standard_view); -static void thunar_details_view_select_all (ThunarStandardView *standard_view); -static void thunar_details_view_unselect_all (ThunarStandardView *standard_view); -static void thunar_details_view_select_path (ThunarStandardView *standard_view, - GtkTreePath *path); -static void thunar_details_view_set_cursor (ThunarStandardView *standard_view, - GtkTreePath *path, - gboolean start_editing); -static void thunar_details_view_scroll_to_path (ThunarStandardView *standard_view, - GtkTreePath *path, - gboolean use_align, - gfloat row_align, - gfloat col_align); -static GtkTreePath *thunar_details_view_get_path_at_pos (ThunarStandardView *standard_view, - gint x, - gint y); -static gboolean thunar_details_view_get_visible_range (ThunarStandardView *standard_view, - GtkTreePath **start_path, - GtkTreePath **end_path); -static void thunar_details_view_highlight_path (ThunarStandardView *standard_view, - GtkTreePath *path); -static void thunar_details_view_notify_model (GtkTreeView *tree_view, - GParamSpec *pspec, - ThunarDetailsView *details_view); -static gboolean thunar_details_view_button_press_event (GtkTreeView *tree_view, - GdkEventButton *event, - ThunarDetailsView *details_view); -static gboolean thunar_details_view_key_press_event (GtkTreeView *tree_view, - GdkEventKey *event, - ThunarDetailsView *details_view); -static void thunar_details_view_row_activated (GtkTreeView *tree_view, - GtkTreePath *path, - GtkTreeViewColumn *column, - ThunarDetailsView *details_view); -static void thunar_details_view_zoom_level_changed (ThunarDetailsView *details_view); + +/* Property identifiers */ +enum +{ + PROP_0, + PROP_FIXED_COLUMNS, +}; + + + +static void thunar_details_view_class_init (ThunarDetailsViewClass *klass); +static void thunar_details_view_init (ThunarDetailsView *details_view); +static void thunar_details_view_finalize (GObject *object); +static void thunar_details_view_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec); +static void thunar_details_view_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec); +static AtkObject *thunar_details_view_get_accessible (GtkWidget *widget); +static void thunar_details_view_connect_ui_manager (ThunarStandardView *standard_view, + GtkUIManager *ui_manager); +static void thunar_details_view_disconnect_ui_manager (ThunarStandardView *standard_view, + GtkUIManager *ui_manager); +static GList *thunar_details_view_get_selected_items (ThunarStandardView *standard_view); +static void thunar_details_view_select_all (ThunarStandardView *standard_view); +static void thunar_details_view_unselect_all (ThunarStandardView *standard_view); +static void thunar_details_view_select_path (ThunarStandardView *standard_view, + GtkTreePath *path); +static void thunar_details_view_set_cursor (ThunarStandardView *standard_view, + GtkTreePath *path, + gboolean start_editing); +static void thunar_details_view_scroll_to_path (ThunarStandardView *standard_view, + GtkTreePath *path, + gboolean use_align, + gfloat row_align, + gfloat col_align); +static GtkTreePath *thunar_details_view_get_path_at_pos (ThunarStandardView *standard_view, + gint x, + gint y); +static gboolean thunar_details_view_get_visible_range (ThunarStandardView *standard_view, + GtkTreePath **start_path, + GtkTreePath **end_path); +static void thunar_details_view_highlight_path (ThunarStandardView *standard_view, + GtkTreePath *path); +static void thunar_details_view_notify_model (GtkTreeView *tree_view, + GParamSpec *pspec, + ThunarDetailsView *details_view); +static void thunar_details_view_notify_width (GtkTreeViewColumn *tree_view_column, + GParamSpec *pspec, + ThunarDetailsView *details_view); +static gboolean thunar_details_view_button_press_event (GtkTreeView *tree_view, + GdkEventButton *event, + ThunarDetailsView *details_view); +static gboolean thunar_details_view_key_press_event (GtkTreeView *tree_view, + GdkEventKey *event, + ThunarDetailsView *details_view); +static void thunar_details_view_row_activated (GtkTreeView *tree_view, + GtkTreePath *path, + GtkTreeViewColumn *column, + ThunarDetailsView *details_view); +static void thunar_details_view_columns_changed (ThunarColumnModel *column_model, + ThunarDetailsView *details_view); +static void thunar_details_view_zoom_level_changed (ThunarDetailsView *details_view); +static void thunar_details_view_action_setup_columns (GtkAction *action, + ThunarDetailsView *details_view); @@ -77,10 +109,27 @@ struct _ThunarDetailsViewClass struct _ThunarDetailsView { ThunarStandardView __parent__; + + /* the column model */ + ThunarColumnModel *column_model; + + /* the tree view columns */ + GtkTreeViewColumn *columns[THUNAR_N_VISIBLE_COLUMNS]; + + /* whether to use fixed column widths */ + gboolean fixed_columns; + + /* the UI manager merge id for the details view */ + guint ui_merge_id; }; +static const GtkActionEntry action_entries[] = +{ + { "setup-columns", NULL, N_ ("Configure _Columns..."), NULL, N_ ("Configure the columns in the detailed list view"), G_CALLBACK (thunar_details_view_action_setup_columns), }, +}; + static GObjectClass *thunar_details_view_parent_class; @@ -119,14 +168,22 @@ thunar_details_view_class_init (ThunarDetailsViewClass *klass) { ThunarStandardViewClass *thunarstandard_view_class; GtkWidgetClass *gtkwidget_class; + GObjectClass *gobject_class; /* determine the parent type class */ thunar_details_view_parent_class = g_type_class_peek_parent (klass); + gobject_class = G_OBJECT_CLASS (klass); + gobject_class->finalize = thunar_details_view_finalize; + gobject_class->get_property = thunar_details_view_get_property; + gobject_class->set_property = thunar_details_view_set_property; + gtkwidget_class = GTK_WIDGET_CLASS (klass); gtkwidget_class->get_accessible = thunar_details_view_get_accessible; thunarstandard_view_class = THUNAR_STANDARD_VIEW_CLASS (klass); + thunarstandard_view_class->connect_ui_manager = thunar_details_view_connect_ui_manager; + thunarstandard_view_class->disconnect_ui_manager = thunar_details_view_disconnect_ui_manager; thunarstandard_view_class->get_selected_items = thunar_details_view_get_selected_items; thunarstandard_view_class->select_all = thunar_details_view_select_all; thunarstandard_view_class->unselect_all = thunar_details_view_unselect_all; @@ -137,6 +194,19 @@ thunar_details_view_class_init (ThunarDetailsViewClass *klass) thunarstandard_view_class->get_visible_range = thunar_details_view_get_visible_range; thunarstandard_view_class->highlight_path = thunar_details_view_highlight_path; thunarstandard_view_class->zoom_level_property_name = "last-details-view-zoom-level"; + + /** + * ThunarDetailsView:fixed-columns: + * + * %TRUE to use fixed column widths. + **/ + g_object_class_install_property (gobject_class, + PROP_FIXED_COLUMNS, + g_param_spec_boolean ("fixed-columns", + "fixed-columns", + "fixed-columns", + FALSE, + EXO_PARAM_READWRITE)); } @@ -144,16 +214,23 @@ thunar_details_view_class_init (ThunarDetailsViewClass *klass) static void thunar_details_view_init (ThunarDetailsView *details_view) { - GtkTreeViewColumn *column; - GtkTreeSelection *selection; - GtkCellRenderer *renderer; - GtkWidget *tree_view; + GtkTreeSelection *selection; + GtkCellRenderer *right_aligned_renderer; + GtkCellRenderer *left_aligned_renderer; + GtkCellRenderer *renderer; + ThunarColumn column; + GtkWidget *tree_view; /* we need to force the GtkTreeView to recalculate column sizes * whenever the zoom-level changes, so we connect a handler here. */ g_signal_connect (G_OBJECT (details_view), "notify::zoom-level", G_CALLBACK (thunar_details_view_zoom_level_changed), NULL); + /* setup the details view actions */ + gtk_action_group_add_actions (THUNAR_STANDARD_VIEW (details_view)->action_group, + action_entries, G_N_ELEMENTS (action_entries), + GTK_WIDGET (details_view)); + /* create the tree view to embed */ tree_view = exo_tree_view_new (); g_signal_connect (G_OBJECT (tree_view), "notify::model", @@ -171,85 +248,151 @@ thunar_details_view_init (ThunarDetailsView *details_view) gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (tree_view), TRUE); gtk_tree_view_set_enable_search (GTK_TREE_VIEW (tree_view), TRUE); - /* first column (icon, name) */ - column = g_object_new (GTK_TYPE_TREE_VIEW_COLUMN, - "expand", TRUE, - "resizable", TRUE, - "title", _("Name"), - NULL); - gtk_tree_view_column_pack_start (column, THUNAR_STANDARD_VIEW (details_view)->icon_renderer, FALSE); - gtk_tree_view_column_set_attributes (column, THUNAR_STANDARD_VIEW (details_view)->icon_renderer, - "file", THUNAR_COLUMN_FILE, - NULL); - g_object_set (G_OBJECT (THUNAR_STANDARD_VIEW (details_view)->name_renderer), - "xalign", 0.0, - NULL); - gtk_tree_view_column_pack_start (column, THUNAR_STANDARD_VIEW (details_view)->name_renderer, TRUE); - gtk_tree_view_column_set_attributes (column, THUNAR_STANDARD_VIEW (details_view)->name_renderer, - "text", THUNAR_COLUMN_NAME, - NULL); - gtk_tree_view_column_set_sort_column_id (column, THUNAR_COLUMN_NAME); - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); - - /* second column (size) */ - column = g_object_new (GTK_TYPE_TREE_VIEW_COLUMN, - "resizable", TRUE, - "title", _("Size"), - NULL); - renderer = g_object_new (THUNAR_TYPE_TEXT_RENDERER, - "xalign", 1.0, - NULL); - gtk_tree_view_column_pack_start (column, renderer, TRUE); - gtk_tree_view_column_set_attributes (column, renderer, - "text", THUNAR_COLUMN_SIZE, - NULL); - gtk_tree_view_column_set_sort_column_id (column, THUNAR_COLUMN_SIZE); - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); - - /* third column (permissions) */ - column = g_object_new (GTK_TYPE_TREE_VIEW_COLUMN, - "resizable", TRUE, - "title", _("Permissions"), - NULL); - renderer = g_object_new (THUNAR_TYPE_TEXT_RENDERER, - "xalign", 0.0, - NULL); - gtk_tree_view_column_pack_start (column, renderer, TRUE); - gtk_tree_view_column_set_attributes (column, renderer, - "text", THUNAR_COLUMN_PERMISSIONS, - NULL); - gtk_tree_view_column_set_sort_column_id (column, THUNAR_COLUMN_PERMISSIONS); - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); - - /* fourth column (type) */ - column = g_object_new (GTK_TYPE_TREE_VIEW_COLUMN, - "resizable", TRUE, - "title", _("Type"), - NULL); - gtk_tree_view_column_pack_start (column, renderer, TRUE); - gtk_tree_view_column_set_attributes (column, renderer, - "text", THUNAR_COLUMN_TYPE, - NULL); - gtk_tree_view_column_set_sort_column_id (column, THUNAR_COLUMN_TYPE); - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); - - /* fifth column (modification date) */ - column = g_object_new (GTK_TYPE_TREE_VIEW_COLUMN, - "resizable", TRUE, - "title", _("Date modified"), - NULL); - gtk_tree_view_column_pack_start (column, renderer, TRUE); - gtk_tree_view_column_set_attributes (column, renderer, - "text", THUNAR_COLUMN_DATE_MODIFIED, - NULL); - gtk_tree_view_column_set_sort_column_id (column, THUNAR_COLUMN_DATE_MODIFIED); - gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), column); + /* connect to the default column model */ + details_view->column_model = thunar_column_model_get_default (); + g_signal_connect (G_OBJECT (details_view->column_model), "columns-changed", G_CALLBACK (thunar_details_view_columns_changed), details_view); + + /* allocate the shared right-aligned text renderer */ + right_aligned_renderer = g_object_new (THUNAR_TYPE_TEXT_RENDERER, "xalign", 1.0f, NULL); + exo_gtk_object_ref_sink (GTK_OBJECT (right_aligned_renderer)); + + /* allocate the shared left-aligned text renderer */ + left_aligned_renderer = g_object_new (THUNAR_TYPE_TEXT_RENDERER, "xalign", 0.0f, NULL); + exo_gtk_object_ref_sink (GTK_OBJECT (left_aligned_renderer)); + + /* allocate the tree view columns */ + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) + { + /* allocate the tree view column */ + details_view->columns[column] = gtk_tree_view_column_new (); + exo_gtk_object_ref_sink (GTK_OBJECT (details_view->columns[column])); + gtk_tree_view_column_set_min_width (details_view->columns[column], 50); + gtk_tree_view_column_set_resizable (details_view->columns[column], TRUE); + gtk_tree_view_column_set_sort_column_id (details_view->columns[column], column); + gtk_tree_view_column_set_title (details_view->columns[column], thunar_column_model_get_column_name (details_view->column_model, column)); + + /* stay informed whenever the width of the column is changed */ + g_signal_connect (G_OBJECT (details_view->columns[column]), "notify::width", G_CALLBACK (thunar_details_view_notify_width), details_view); + + /* name column gets special renderers */ + if (G_UNLIKELY (column == THUNAR_COLUMN_NAME)) + { + /* add the icon renderer */ + gtk_tree_view_column_pack_start (details_view->columns[column], THUNAR_STANDARD_VIEW (details_view)->icon_renderer, FALSE); + gtk_tree_view_column_set_attributes (details_view->columns[column], THUNAR_STANDARD_VIEW (details_view)->icon_renderer, + "file", THUNAR_COLUMN_FILE, + NULL); + + /* add the name renderer */ + g_object_set (G_OBJECT (THUNAR_STANDARD_VIEW (details_view)->name_renderer), "xalign", 0.0, NULL); + gtk_tree_view_column_pack_start (details_view->columns[column], THUNAR_STANDARD_VIEW (details_view)->name_renderer, TRUE); + gtk_tree_view_column_set_attributes (details_view->columns[column], THUNAR_STANDARD_VIEW (details_view)->name_renderer, + "text", THUNAR_COLUMN_NAME, + NULL); + } + else + { + /* size is right aligned, everything else is left aligned */ + renderer = (column == THUNAR_COLUMN_SIZE) ? right_aligned_renderer : left_aligned_renderer; + + /* add the renderer */ + gtk_tree_view_column_pack_start (details_view->columns[column], renderer, TRUE); + gtk_tree_view_column_set_attributes (details_view->columns[column], renderer, "text", column, NULL); + } + + /* append the tree view column to the tree view */ + gtk_tree_view_append_column (GTK_TREE_VIEW (tree_view), details_view->columns[column]); + } /* configure the tree selection */ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree_view)); gtk_tree_selection_set_mode (selection, GTK_SELECTION_MULTIPLE); g_signal_connect_swapped (G_OBJECT (selection), "changed", G_CALLBACK (thunar_standard_view_selection_changed), details_view); + + /* apply the initial column order and visibility from the column model */ + thunar_details_view_columns_changed (details_view->column_model, details_view); + + /* synchronize the "fixed-columns" property */ + exo_binding_new (G_OBJECT (THUNAR_STANDARD_VIEW (details_view)->preferences), + "last-details-view-fixed-columns", + G_OBJECT (details_view), + "fixed-columns"); + + /* apply fixed column widths if we start in fixed column mode */ + if (G_UNLIKELY (details_view->fixed_columns)) + { + /* apply to all columns */ + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) + gtk_tree_view_column_set_fixed_width (details_view->columns[column], thunar_column_model_get_column_width (details_view->column_model, column)); + } + + /* release the shared text renderers */ + g_object_unref (G_OBJECT (right_aligned_renderer)); + g_object_unref (G_OBJECT (left_aligned_renderer)); +} + + + +static void +thunar_details_view_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) +{ + ThunarDetailsView *details_view = THUNAR_DETAILS_VIEW (object); + + switch (prop_id) + { + case PROP_FIXED_COLUMNS: + g_value_set_boolean (value, thunar_details_view_get_fixed_columns (details_view)); + break; + + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + + + +static void +thunar_details_view_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + ThunarDetailsView *details_view = THUNAR_DETAILS_VIEW (object); + + switch (prop_id) + { + case PROP_FIXED_COLUMNS: + thunar_details_view_set_fixed_columns (details_view, g_value_get_boolean (value)); + break; + + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + + + +static void +thunar_details_view_finalize (GObject *object) +{ + ThunarDetailsView *details_view = THUNAR_DETAILS_VIEW (object); + ThunarColumn column; + + /* release the tree view columns array */ + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) + g_object_unref (G_OBJECT (details_view->columns[column])); + + /* disconnect from the default column model */ + g_signal_handlers_disconnect_by_func (G_OBJECT (details_view->column_model), thunar_details_view_columns_changed, details_view); + g_object_unref (G_OBJECT (details_view->column_model)); + + (*G_OBJECT_CLASS (thunar_details_view_parent_class)->finalize) (object); } @@ -275,6 +418,33 @@ thunar_details_view_get_accessible (GtkWidget *widget) +static void +thunar_details_view_connect_ui_manager (ThunarStandardView *standard_view, + GtkUIManager *ui_manager) +{ + ThunarDetailsView *details_view = THUNAR_DETAILS_VIEW (standard_view); + GError *error = NULL; + + details_view->ui_merge_id = gtk_ui_manager_add_ui_from_string (ui_manager, thunar_details_view_ui, + thunar_details_view_ui_length, &error); + if (G_UNLIKELY (details_view->ui_merge_id == 0)) + { + g_error ("Failed to merge ThunarDetailsView menus: %s", error->message); + g_error_free (error); + } +} + + + +static void +thunar_details_view_disconnect_ui_manager (ThunarStandardView *standard_view, + GtkUIManager *ui_manager) +{ + gtk_ui_manager_remove_ui (ui_manager, THUNAR_DETAILS_VIEW (standard_view)->ui_merge_id); +} + + + static GList* thunar_details_view_get_selected_items (ThunarStandardView *standard_view) { @@ -428,6 +598,28 @@ thunar_details_view_notify_model (GtkTreeView *tree_view, +static void +thunar_details_view_notify_width (GtkTreeViewColumn *tree_view_column, + GParamSpec *pspec, + ThunarDetailsView *details_view) +{ + ThunarColumn column; + + g_return_if_fail (GTK_IS_TREE_VIEW_COLUMN (tree_view_column)); + g_return_if_fail (THUNAR_IS_DETAILS_VIEW (details_view)); + + /* lookup the column no for the given tree view column */ + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) + if (details_view->columns[column] == tree_view_column) + { + /* save the new width as default fixed width */ + thunar_column_model_set_column_width (details_view->column_model, column, gtk_tree_view_column_get_width (tree_view_column)); + break; + } +} + + + static gboolean thunar_details_view_button_press_event (GtkTreeView *tree_view, GdkEventButton *event, @@ -439,6 +631,10 @@ thunar_details_view_button_press_event (GtkTreeView *tree_view, ThunarFile *file; GtkAction *action; + /* check if the event is for the bin window */ + if (G_UNLIKELY (event->window != gtk_tree_view_get_bin_window (tree_view))) + return FALSE; + /* we unselect all selected items if the user clicks on an empty * area of the treeview and no modifier key is active. */ @@ -562,24 +758,54 @@ thunar_details_view_row_activated (GtkTreeView *tree_view, +static void +thunar_details_view_columns_changed (ThunarColumnModel *column_model, + ThunarDetailsView *details_view) +{ + const ThunarColumn *column_order; + ThunarColumn column; + + g_return_if_fail (THUNAR_IS_DETAILS_VIEW (details_view)); + g_return_if_fail (THUNAR_IS_COLUMN_MODEL (column_model)); + g_return_if_fail (details_view->column_model == column_model); + + /* determine the new column order */ + column_order = thunar_column_model_get_column_order (column_model); + + /* apply new order and visibility */ + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) + { + /* apply the new visibility for the tree view column */ + gtk_tree_view_column_set_visible (details_view->columns[column], thunar_column_model_get_column_visible (column_model, column)); + + /* change the order of the column relative to its predecessor */ + if (G_LIKELY (column > 0)) + { + gtk_tree_view_move_column_after (GTK_TREE_VIEW (GTK_BIN (details_view)->child), + details_view->columns[column_order[column]], + details_view->columns[column_order[column - 1]]); + } + } +} + + + static void thunar_details_view_zoom_level_changed (ThunarDetailsView *details_view) { - GList *columns; - GList *lp; + ThunarColumn column; g_return_if_fail (THUNAR_IS_DETAILS_VIEW (details_view)); /* determine the list of tree view columns */ - columns = gtk_tree_view_get_columns (GTK_TREE_VIEW (GTK_BIN (details_view)->child)); - for (lp = columns; lp != NULL; lp = lp->next) + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) { #if GTK_CHECK_VERSION(2,8,0) /* just queue a resize on this column */ - gtk_tree_view_column_queue_resize (lp->data); + gtk_tree_view_column_queue_resize (details_view->columns[column]); #else /* determine the renderers for this column */ - GList *renderers = gtk_tree_view_column_get_cell_renderers (lp->data); + GList *renderers = gtk_tree_view_column_get_cell_renderers (details_view->columns[column]); if (G_LIKELY (renderers != NULL)) { /* this is really an awfull hack, but it works! It forces GtkTreeView to recalculate @@ -591,7 +817,19 @@ thunar_details_view_zoom_level_changed (ThunarDetailsView *details_view) } #endif } - g_list_free (columns); +} + + + +static void +thunar_details_view_action_setup_columns (GtkAction *action, + ThunarDetailsView *details_view) +{ + g_return_if_fail (THUNAR_IS_DETAILS_VIEW (details_view)); + g_return_if_fail (GTK_IS_ACTION (action)); + + /* popup the column editor dialog */ + thunar_show_column_editor (details_view); } @@ -612,3 +850,78 @@ thunar_details_view_new (void) +/** + * thunar_details_view_get_fixed_columns: + * @details_view : a #ThunarDetailsView. + * + * Returns %TRUE if @details_view uses fixed column widths. + * + * Return value: %TRUE if @details_view uses fixed column widths. + **/ +gboolean +thunar_details_view_get_fixed_columns (ThunarDetailsView *details_view) +{ + g_return_val_if_fail (THUNAR_IS_DETAILS_VIEW (details_view), FALSE); + return details_view->fixed_columns; +} + + + +/** + * thunar_details_view_set_fixed_columns: + * @details_view : a #ThunarDetailsView. + * @fixed_columns : %TRUE to use fixed column widths. + * + * Applies @fixed_columns to @details_view. + **/ +void +thunar_details_view_set_fixed_columns (ThunarDetailsView *details_view, + gboolean fixed_columns) +{ + ThunarColumn column; + gint width; + + g_return_if_fail (THUNAR_IS_DETAILS_VIEW (details_view)); + + /* normalize the value */ + fixed_columns = !!fixed_columns; + + /* check if we have a new value */ + if (G_LIKELY (details_view->fixed_columns != fixed_columns)) + { + /* apply the new value */ + details_view->fixed_columns = fixed_columns; + + /* apply the new setting to all columns */ + for (column = 0; column < THUNAR_N_VISIBLE_COLUMNS; ++column) + { + /* apply the new column mode */ + if (G_LIKELY (fixed_columns)) + { + /* apply "width" as "fixed-width" for fixed columns mode */ + width = gtk_tree_view_column_get_width (details_view->columns[column]); + if (G_UNLIKELY (width <= 0)) + width = thunar_column_model_get_column_width (details_view->column_model, column); + gtk_tree_view_column_set_fixed_width (details_view->columns[column], MAX (width, 1)); + + /* set column to fixed width */ + gtk_tree_view_column_set_sizing (details_view->columns[column], GTK_TREE_VIEW_COLUMN_FIXED); + } + else + { + /* reset column to grow-only mode */ + gtk_tree_view_column_set_sizing (details_view->columns[column], GTK_TREE_VIEW_COLUMN_GROW_ONLY); + } + } + + /* for fixed columns mode, we can enable the fixed height + * mode to improve the performance of the GtkTreeVeiw. + */ + gtk_tree_view_set_fixed_height_mode (GTK_TREE_VIEW (GTK_BIN (details_view)->child), fixed_columns); + + /* notify listeners */ + g_object_notify (G_OBJECT (details_view), "fixed-columns"); + } +} + + diff --git a/thunar/thunar-details-view.h b/thunar/thunar-details-view.h index 956f163b0e67be1bb331cf7e2b2ba2fe30bf4784..7c346a59f8df07892f573f3a88f8a11714866654 100644 --- a/thunar/thunar-details-view.h +++ b/thunar/thunar-details-view.h @@ -34,9 +34,13 @@ typedef struct _ThunarDetailsView ThunarDetailsView; #define THUNAR_IS_DETAILS_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), THUNAR_TYPE_DETAILS_VIEW)) #define THUNAR_DETAILS_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), THUNAR_TYPE_DETAILS_VIEW, ThunarDetailsViewClass)) -GType thunar_details_view_get_type (void) G_GNUC_CONST; +GType thunar_details_view_get_type (void) G_GNUC_CONST; -GtkWidget *thunar_details_view_new (void); +GtkWidget *thunar_details_view_new (void); + +gboolean thunar_details_view_get_fixed_columns (ThunarDetailsView *details_view); +void thunar_details_view_set_fixed_columns (ThunarDetailsView *details_view, + gboolean fixed_columns); G_END_DECLS; diff --git a/thunar/thunar-enum-types.c b/thunar/thunar-enum-types.c index 13ec6adffbbca13190317ae4c35e1729ce7d58f0..d6f61bad966e356f76c43bb1edbab60e93aa5782 100644 --- a/thunar/thunar-enum-types.c +++ b/thunar/thunar-enum-types.c @@ -57,16 +57,18 @@ thunar_column_get_type (void) { static const GEnumValue values[] = { - { THUNAR_COLUMN_DATE_ACCESSED, "THUNAR_COLUMN_DATE_ACCESSED", "date-accessed", }, - { THUNAR_COLUMN_DATE_MODIFIED, "THUNAR_COLUMN_DATE_MODIFIED", "date-modified", }, - { THUNAR_COLUMN_FILE, "THUNAR_COLUMN_FILE", "file", }, - { THUNAR_COLUMN_MIME_TYPE, "THUNAR_COLUMN_MIME_TYPE", "mime-type", }, - { THUNAR_COLUMN_NAME, "THUNAR_COLUMN_NAME", "name", }, - { THUNAR_COLUMN_PERMISSIONS, "THUNAR_COLUMN_PERMISSIONS", "permissions", }, - { THUNAR_COLUMN_REAL_NAME, "THUNAR_COLUMN_REAL_NAME", "real-name", }, - { THUNAR_COLUMN_SIZE, "THUNAR_COLUMN_SIZE", "size", }, - { THUNAR_COLUMN_TYPE, "THUNAR_COLUMN_TYPE", "type", }, - { 0, NULL, NULL, }, + { THUNAR_COLUMN_DATE_ACCESSED, "THUNAR_COLUMN_DATE_ACCESSED", N_ ("Date Accessed"), }, + { THUNAR_COLUMN_DATE_MODIFIED, "THUNAR_COLUMN_DATE_MODIFIED", N_ ("Date Modified"), }, + { THUNAR_COLUMN_GROUP, "THUNAR_COLUMN_GROUP", N_ ("Group"), }, + { THUNAR_COLUMN_MIME_TYPE, "THUNAR_COLUMN_MIME_TYPE", N_ ("MIME Type"), }, + { THUNAR_COLUMN_NAME, "THUNAR_COLUMN_NAME", N_ ("Name"), }, + { THUNAR_COLUMN_OWNER, "THUNAR_COLUMN_OWNER", N_ ("Owner"), }, + { THUNAR_COLUMN_PERMISSIONS, "THUNAR_COLUMN_PERMISSIONS", N_ ("Permissions"), }, + { THUNAR_COLUMN_SIZE, "THUNAR_COLUMN_SIZE", N_ ("Size"), }, + { THUNAR_COLUMN_TYPE, "THUNAR_COLUMN_TYPE", N_ ("Type"), }, + { THUNAR_COLUMN_FILE, "THUNAR_COLUMN_FILE", N_ ("File"), }, + { THUNAR_COLUMN_FILE_NAME, "THUNAR_COLUMN_FILE_NAME", N_ ("File Name"), }, + { 0, NULL, NULL, }, }; return thunar_enum_register_type ("ThunarColumn", values); diff --git a/thunar/thunar-enum-types.h b/thunar/thunar-enum-types.h index 9689df2dc9b7f50ca1fa3c2c93146af883ab9720..080ef12bf472546b5185b0dbda32b27e3067a46a 100644 --- a/thunar/thunar-enum-types.h +++ b/thunar/thunar-enum-types.h @@ -20,7 +20,7 @@ #ifndef __THUNAR_ENUM_TYPES_H__ #define __THUNAR_ENUM_TYPES_H__ -#include <glib-object.h> +#include <exo/exo.h> G_BEGIN_DECLS; @@ -50,29 +50,41 @@ GType thunar_color_style_get_type (void) G_GNUC_CONST G_GNUC_INTERNAL; * ThunarColumn: * @THUNAR_COLUMN_DATE_ACCESSED : last access time. * @THUNAR_COLUMN_DATE_MODIFIED : last modification time. - * @THUNAR_COLUMN_FILE : #ThunarFile object. + * @THUNAR_COLUMN_GROUP : group's name. * @THUNAR_COLUMN_MIME_TYPE : mime type (i.e. "text/plain"). * @THUNAR_COLUMN_NAME : display name. + * @THUNAR_COLUMN_OWNER : owner's name. * @THUNAR_COLUMN_PERMISSIONS : permissions bits. - * @THUNAR_COLUMN_REAL_NAME : real file name. * @THUNAR_COLUMN_SIZE : file size. * @THUNAR_COLUMN_TYPE : file type (i.e. 'plain text document'). + * @THUNAR_COLUMN_FILE : #ThunarFile object. + * @THUNAR_COLUMN_FILE_NAME : real file name. * * Columns exported by #ThunarListModel using the #GtkTreeModel * interface. **/ typedef enum { + /* visible columns */ THUNAR_COLUMN_DATE_ACCESSED, THUNAR_COLUMN_DATE_MODIFIED, - THUNAR_COLUMN_FILE, + THUNAR_COLUMN_GROUP, THUNAR_COLUMN_MIME_TYPE, THUNAR_COLUMN_NAME, + THUNAR_COLUMN_OWNER, THUNAR_COLUMN_PERMISSIONS, - THUNAR_COLUMN_REAL_NAME, THUNAR_COLUMN_SIZE, THUNAR_COLUMN_TYPE, + + /* special internal columns */ + THUNAR_COLUMN_FILE, + THUNAR_COLUMN_FILE_NAME, + + /* number of columns */ THUNAR_N_COLUMNS, + + /* number of visible columns */ + THUNAR_N_VISIBLE_COLUMNS = THUNAR_COLUMN_FILE, } ThunarColumn; GType thunar_column_get_type (void) G_GNUC_CONST G_GNUC_INTERNAL; diff --git a/thunar/thunar-list-model.c b/thunar/thunar-list-model.c index c58f43d9fd0d78e9699f06b9743d7a210ec53b06..9710464b55254d52bb4d6592e6ce735589f76701 100644 --- a/thunar/thunar-list-model.c +++ b/thunar/thunar-list-model.c @@ -155,11 +155,15 @@ static gint sort_by_date_accessed (const ThunarF const ThunarFile *b); static gint sort_by_date_modified (const ThunarFile *a, const ThunarFile *b); +static gint sort_by_file_name (const ThunarFile *a, + const ThunarFile *b); +static gint sort_by_group (const ThunarFile *a, + const ThunarFile *b); static gint sort_by_mime_type (const ThunarFile *a, const ThunarFile *b); static gint sort_by_name (const ThunarFile *a, const ThunarFile *b); -static gint sort_by_real_name (const ThunarFile *a, +static gint sort_by_owner (const ThunarFile *a, const ThunarFile *b); static gint sort_by_permissions (const ThunarFile *a, const ThunarFile *b); @@ -359,7 +363,7 @@ thunar_list_model_class_init (ThunarListModelClass *klass) **/ list_model_signals[ERROR] = g_signal_new (I_("error"), - G_TYPE_FROM_CLASS (gobject_class), + G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (ThunarListModelClass, error), NULL, NULL, @@ -558,8 +562,8 @@ thunar_list_model_get_column_type (GtkTreeModel *model, case THUNAR_COLUMN_DATE_MODIFIED: return G_TYPE_STRING; - case THUNAR_COLUMN_FILE: - return THUNAR_TYPE_FILE; + case THUNAR_COLUMN_GROUP: + return G_TYPE_STRING; case THUNAR_COLUMN_MIME_TYPE: return G_TYPE_STRING; @@ -567,7 +571,7 @@ thunar_list_model_get_column_type (GtkTreeModel *model, case THUNAR_COLUMN_NAME: return G_TYPE_STRING; - case THUNAR_COLUMN_REAL_NAME: + case THUNAR_COLUMN_OWNER: return G_TYPE_STRING; case THUNAR_COLUMN_PERMISSIONS: @@ -578,10 +582,16 @@ thunar_list_model_get_column_type (GtkTreeModel *model, case THUNAR_COLUMN_TYPE: return G_TYPE_STRING; + + case THUNAR_COLUMN_FILE: + return THUNAR_TYPE_FILE; + + case THUNAR_COLUMN_FILE_NAME: + return G_TYPE_STRING; } g_assert_not_reached (); - return (GType) -1; + return G_TYPE_INVALID; } @@ -652,6 +662,10 @@ thunar_list_model_get_value (GtkTreeModel *model, GValue *value) { ThunarVfsMimeInfo *mime_info; + ThunarVfsGroup *group; + ThunarVfsUser *user; + const gchar *name; + const gchar *real_name; gchar *str; Row *row; @@ -675,9 +689,18 @@ thunar_list_model_get_value (GtkTreeModel *model, g_value_take_string (value, str); break; - case THUNAR_COLUMN_FILE: - g_value_init (value, THUNAR_TYPE_FILE); - g_value_set_object (value, row->file); + case THUNAR_COLUMN_GROUP: + g_value_init (value, G_TYPE_STRING); + group = thunar_file_get_group (row->file); + if (G_LIKELY (group != NULL)) + { + g_value_set_string (value, thunar_vfs_group_get_name (group)); + g_object_unref (G_OBJECT (group)); + } + else + { + g_value_set_static_string (value, _("Unknown")); + } break; case THUNAR_COLUMN_MIME_TYPE: @@ -691,9 +714,22 @@ thunar_list_model_get_value (GtkTreeModel *model, g_value_set_static_string (value, thunar_file_get_display_name (row->file)); break; - case THUNAR_COLUMN_REAL_NAME: + case THUNAR_COLUMN_OWNER: g_value_init (value, G_TYPE_STRING); - g_value_take_string (value, g_filename_display_name (thunar_vfs_path_get_name (thunar_file_get_path (row->file)))); + user = thunar_file_get_user (row->file); + if (G_LIKELY (user != NULL)) + { + /* determine sane display name for the owner */ + name = thunar_vfs_user_get_name (user); + real_name = thunar_vfs_user_get_real_name (user); + str = G_LIKELY (real_name != NULL) ? g_strdup_printf ("%s (%s)", real_name, name) : g_strdup (name); + g_value_take_string (value, str); + g_object_unref (G_OBJECT (user)); + } + else + { + g_value_set_static_string (value, _("Unknown")); + } break; case THUNAR_COLUMN_PERMISSIONS: @@ -718,6 +754,16 @@ thunar_list_model_get_value (GtkTreeModel *model, g_value_set_static_string (value, thunar_vfs_mime_info_get_comment (mime_info)); break; + case THUNAR_COLUMN_FILE: + g_value_init (value, THUNAR_TYPE_FILE); + g_value_set_object (value, row->file); + break; + + case THUNAR_COLUMN_FILE_NAME: + g_value_init (value, G_TYPE_STRING); + g_value_take_string (value, g_filename_display_name (thunar_vfs_path_get_name (thunar_file_get_path (row->file)))); + break; + default: g_assert_not_reached (); } @@ -855,8 +901,8 @@ thunar_list_model_get_sort_column_id (GtkTreeSortable *sortable, *sort_column_id = THUNAR_COLUMN_MIME_TYPE; else if (store->sort_func == sort_by_name) *sort_column_id = THUNAR_COLUMN_NAME; - else if (store->sort_func == sort_by_real_name) - *sort_column_id = THUNAR_COLUMN_REAL_NAME; + else if (store->sort_func == sort_by_file_name) + *sort_column_id = THUNAR_COLUMN_FILE_NAME; else if (store->sort_func == sort_by_permissions) *sort_column_id = THUNAR_COLUMN_PERMISSIONS; else if (store->sort_func == sort_by_size) @@ -867,6 +913,10 @@ thunar_list_model_get_sort_column_id (GtkTreeSortable *sortable, *sort_column_id = THUNAR_COLUMN_DATE_MODIFIED; else if (store->sort_func == sort_by_type) *sort_column_id = THUNAR_COLUMN_TYPE; + else if (store->sort_func == sort_by_owner) + *sort_column_id = THUNAR_COLUMN_OWNER; + else if (store->sort_func == sort_by_group) + *sort_column_id = THUNAR_COLUMN_GROUP; else g_assert_not_reached (); @@ -899,6 +949,10 @@ thunar_list_model_set_sort_column_id (GtkTreeSortable *sortable, store->sort_func = sort_by_date_modified; break; + case THUNAR_COLUMN_GROUP: + store->sort_func = sort_by_group; + break; + case THUNAR_COLUMN_MIME_TYPE: store->sort_func = sort_by_mime_type; break; @@ -907,8 +961,8 @@ thunar_list_model_set_sort_column_id (GtkTreeSortable *sortable, store->sort_func = sort_by_name; break; - case THUNAR_COLUMN_REAL_NAME: - store->sort_func = sort_by_real_name; + case THUNAR_COLUMN_OWNER: + store->sort_func = sort_by_owner; break; case THUNAR_COLUMN_PERMISSIONS: @@ -923,6 +977,10 @@ thunar_list_model_set_sort_column_id (GtkTreeSortable *sortable, store->sort_func = sort_by_type; break; + case THUNAR_COLUMN_FILE_NAME: + store->sort_func = sort_by_file_name; + break; + default: g_assert_not_reached (); } @@ -1351,6 +1409,30 @@ sort_by_date_modified (const ThunarFile *a, +static gint +sort_by_file_name (const ThunarFile *a, + const ThunarFile *b) +{ + return strcmp (thunar_vfs_path_get_name (thunar_file_get_path (a)), + thunar_vfs_path_get_name (thunar_file_get_path (b))); +} + + + +static gint +sort_by_group (const ThunarFile *a, + const ThunarFile *b) +{ + if (a->info->gid < b->info->gid) + return -1; + else if (a->info->gid > b->info->gid) + return 1; + else + return sort_by_name (a, b); +} + + + static gint sort_by_mime_type (const ThunarFile *a, const ThunarFile *b) @@ -1384,11 +1466,15 @@ sort_by_name (const ThunarFile *a, static gint -sort_by_real_name (const ThunarFile *a, - const ThunarFile *b) +sort_by_owner (const ThunarFile *a, + const ThunarFile *b) { - return strcmp (thunar_vfs_path_get_name (thunar_file_get_path (a)), - thunar_vfs_path_get_name (thunar_file_get_path (b))); + if (a->info->uid < b->info->uid) + return -1; + else if (a->info->uid > b->info->uid) + return 1; + else + return sort_by_name (a, b); } diff --git a/thunar/thunar-path-entry.c b/thunar/thunar-path-entry.c index 4d5d8c795e67489ea7ca3cc747603858c25e200b..9348848704862ab67b3b4f6dc3a4296d4789270b 100644 --- a/thunar/thunar-path-entry.c +++ b/thunar/thunar-path-entry.c @@ -304,7 +304,7 @@ thunar_path_entry_init (ThunarPathEntry *path_entry) preferences = thunar_preferences_get (); exo_binding_new (G_OBJECT (preferences), "last-show-hidden", G_OBJECT (store), "show-hidden"); exo_binding_new (G_OBJECT (preferences), "misc-folders-first", G_OBJECT (store), "folders-first"); - gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (store), THUNAR_COLUMN_REAL_NAME, GTK_SORT_ASCENDING); + gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (store), THUNAR_COLUMN_FILE_NAME, GTK_SORT_ASCENDING); gtk_entry_completion_set_model (completion, GTK_TREE_MODEL (store)); g_object_unref (G_OBJECT (preferences)); g_object_unref (G_OBJECT (store)); @@ -1055,7 +1055,7 @@ thunar_path_entry_common_prefix_lookup (ThunarPathEntry *path_entry, do { /* determine the real file name for the iter */ - gtk_tree_model_get (model, &iter, THUNAR_COLUMN_REAL_NAME, &name, -1); + gtk_tree_model_get (model, &iter, THUNAR_COLUMN_FILE_NAME, &name, -1); /* check if we have a valid prefix here */ if (g_str_has_prefix (name, text)) @@ -1121,7 +1121,7 @@ thunar_path_entry_match_func (GtkEntryCompletion *completion, /* determine the real file name for the iter */ model = gtk_entry_completion_get_model (completion); - gtk_tree_model_get (model, iter, THUNAR_COLUMN_REAL_NAME, &name, -1); + gtk_tree_model_get (model, iter, THUNAR_COLUMN_FILE_NAME, &name, -1); name_normalized = g_utf8_normalize (name, -1, G_NORMALIZE_ALL); g_free (name); @@ -1158,7 +1158,7 @@ thunar_path_entry_match_selected (GtkEntryCompletion *completion, gtk_tree_model_get (model, iter, THUNAR_COLUMN_FILE, &file, -1); /* determine the real name for the file */ - gtk_tree_model_get (model, iter, THUNAR_COLUMN_REAL_NAME, &real_name, -1); + gtk_tree_model_get (model, iter, THUNAR_COLUMN_FILE_NAME, &real_name, -1); /* append a slash if we have a folder here */ if (G_LIKELY (thunar_file_is_directory (file))) diff --git a/thunar/thunar-preferences.c b/thunar/thunar-preferences.c index 55348eb0c9668af21eb63b8d591028cc9216471d..e9c1c07b5a9ad6988addaf808d46af5bfe27caed 100644 --- a/thunar/thunar-preferences.c +++ b/thunar/thunar-preferences.c @@ -50,6 +50,10 @@ enum { PROP_0, PROP_DEFAULT_VIEW, + PROP_LAST_DETAILS_VIEW_COLUMN_ORDER, + PROP_LAST_DETAILS_VIEW_COLUMN_WIDTHS, + PROP_LAST_DETAILS_VIEW_FIXED_COLUMNS, + PROP_LAST_DETAILS_VIEW_VISIBLE_COLUMNS, PROP_LAST_DETAILS_VIEW_ZOOM_LEVEL, PROP_LAST_ICON_VIEW_ZOOM_LEVEL, PROP_LAST_LOCATION_BAR, @@ -189,6 +193,61 @@ thunar_preferences_class_init (ThunarPreferencesClass *klass) "void", EXO_PARAM_READWRITE)); + /** + * ThunarPreferences:last-details-view-column-order: + * + * The comma separated list of columns that specifies the order of the + * columns in the #ThunarDetailsView. + **/ + g_object_class_install_property (gobject_class, + PROP_LAST_DETAILS_VIEW_COLUMN_ORDER, + g_param_spec_string ("last-details-view-column-order", + "last-details-view-column-order", + "last-details-view-column-order", + "THUNAR_COLUMN_NAME,THUNAR_COLUMN_SIZE,THUNAR_COLUMN_TYPE,THUNAR_COLUMN_DATE_MODIFIED", + EXO_PARAM_READWRITE)); + + /** + * ThunarPreferences:last-details-view-column-widths: + * + * The comma separated list of column widths used for fixed width + * #ThunarDetailsView<!---->s. + **/ + g_object_class_install_property (gobject_class, + PROP_LAST_DETAILS_VIEW_COLUMN_WIDTHS, + g_param_spec_string ("last-details-view-column-widths", + "last-details-view-column-widths", + "last-details-view-column-widths", + "", + EXO_PARAM_READWRITE)); + + /** + * ThunarPreferences:last-details-view-fixed-columns: + * + * %TRUE to use fixed column widths in the #ThunarDetailsView. Else the + * column widths will be automatically determined from the model contents. + **/ + g_object_class_install_property (gobject_class, + PROP_LAST_DETAILS_VIEW_FIXED_COLUMNS, + g_param_spec_boolean ("last-details-view-fixed-columns", + "last-details-view-fixed-columns", + "last-details-view-fixed-columns", + FALSE, + EXO_PARAM_READWRITE)); + + /** + * ThunarPreferences:last-details-view-visible-columns: + * + * The comma separated list of visible columns in the #ThunarDetailsView. + **/ + g_object_class_install_property (gobject_class, + PROP_LAST_DETAILS_VIEW_VISIBLE_COLUMNS, + g_param_spec_string ("last-details-view-visible-columns", + "last-details-view-visible-columns", + "last-details-view-visible-columns", + "THUNAR_COLUMN_DATE_MODIFIED,THUNAR_COLUMN_NAME,THUNAR_COLUMN_SIZE,THUNAR_COLUMN_TYPE", + EXO_PARAM_READWRITE)); + /** * ThunarPreferences:last-details-view-zoom-level: * diff --git a/thunar/thunar-text-renderer.c b/thunar/thunar-text-renderer.c index c253aa997e10ef63ef641cc2b9590825a819e581..d4a01f53871fa205ead71388969c2b6b3f1dddc2 100644 --- a/thunar/thunar-text-renderer.c +++ b/thunar/thunar-text-renderer.c @@ -423,6 +423,9 @@ thunar_text_renderer_get_size (GtkCellRenderer *renderer, /* determine the text_length in characters */ text_length = g_utf8_strlen (text_renderer->text, -1); + /* the approximation is usually 1-2 chars wrong, so wth */ + text_length += 2; + /* calculate the appromixate text width/height */ text_width = text_renderer->char_width * text_length; text_height = text_renderer->char_height; @@ -720,6 +723,9 @@ thunar_text_renderer_set_widget (ThunarTextRenderer *text_renderer, text_renderer->char_height = PANGO_PIXELS (pango_font_metrics_get_ascent (metrics) + pango_font_metrics_get_descent (metrics)); pango_font_metrics_unref (metrics); + /* tell the cell renderer about the fixed height */ + gtk_cell_renderer_set_fixed_size (GTK_CELL_RENDERER (text_renderer), -1, text_renderer->char_height); + /* determine the focus-padding and focus-line-width style properties from the widget */ gtk_widget_style_get (widget, "focus-padding", &focus_padding, "focus-line-width", &focus_line_width, NULL); text_renderer->focus_width = focus_padding + focus_line_width;