summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2013-07-12 20:34:27 +0100
committerCaolán McNamara <caolanm@redhat.com>2013-07-12 20:35:42 +0100
commit466545933a70716cb1ca132f7e61cc12c60acbb1 (patch)
treea174475a5ce11129ab197811fce47e4d6eec7a91 /vcl
parent2cca46d54846b0cd7769b9287f17632a4258256d (diff)
set primary and secondary text on the gtk overwrite querybox
Change-Id: Ie671ddaba0e749dd0714de589fbaa45d914ba5c9
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/svids.hrc37
-rw-r--r--vcl/source/src/fpicker.src9
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx38
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkPicker.hxx15
-rw-r--r--vcl/unx/gtk/fpicker/resourceprovider.cxx3
5 files changed, 70 insertions, 32 deletions
diff --git a/vcl/inc/svids.hrc b/vcl/inc/svids.hrc
index abe1a14aeb1b..d1fb135d7e40 100644
--- a/vcl/inc/svids.hrc
+++ b/vcl/inc/svids.hrc
@@ -177,24 +177,25 @@
#define SV_MAC_SCREENNNAME 10216
#define SV_STDTEXT_ALLFILETYPES 10217
-#define STR_FPICKER_AUTO_EXTENSION 10300
-#define STR_FPICKER_PASSWORD 10301
-#define STR_FPICKER_FILTER_OPTIONS 10302
-#define STR_FPICKER_READONLY 10303
-#define STR_FPICKER_INSERT_AS_LINK 10304
-#define STR_FPICKER_SHOW_PREVIEW 10305
-#define STR_FPICKER_PLAY 10306
-#define STR_FPICKER_VERSION 10307
-#define STR_FPICKER_TEMPLATES 10308
-#define STR_FPICKER_IMAGE_TEMPLATE 10309
-#define STR_FPICKER_SELECTION 10310
-#define STR_FPICKER_FOLDER_DEFAULT_TITLE 10311
-#define STR_FPICKER_FOLDER_DEFAULT_DESCRIPTION 10312
-#define STR_FPICKER_ALREADYEXISTOVERWRITE 10313
-#define STR_FPICKER_ALLFORMATS 10314
-#define STR_FPICKER_OPEN 10315
-#define STR_FPICKER_SAVE 10316
-#define STR_FPICKER_TYPE 10317
+#define STR_FPICKER_AUTO_EXTENSION 10300
+#define STR_FPICKER_PASSWORD 10301
+#define STR_FPICKER_FILTER_OPTIONS 10302
+#define STR_FPICKER_READONLY 10303
+#define STR_FPICKER_INSERT_AS_LINK 10304
+#define STR_FPICKER_SHOW_PREVIEW 10305
+#define STR_FPICKER_PLAY 10306
+#define STR_FPICKER_VERSION 10307
+#define STR_FPICKER_TEMPLATES 10308
+#define STR_FPICKER_IMAGE_TEMPLATE 10309
+#define STR_FPICKER_SELECTION 10310
+#define STR_FPICKER_FOLDER_DEFAULT_TITLE 10311
+#define STR_FPICKER_FOLDER_DEFAULT_DESCRIPTION 10312
+#define STR_FPICKER_ALREADYEXISTOVERWRITE_PRIMARY 10313
+#define STR_FPICKER_ALREADYEXISTOVERWRITE_SECONDARY 10314
+#define STR_FPICKER_ALLFORMATS 10315
+#define STR_FPICKER_OPEN 10316
+#define STR_FPICKER_SAVE 10317
+#define STR_FPICKER_TYPE 10318
#define SV_ACCESSERROR_WRONG_VERSION 10500
#define SV_ACCESSERROR_BRIDGE_MSG 10501
diff --git a/vcl/source/src/fpicker.src b/vcl/source/src/fpicker.src
index 324cffbe5abd..1196a31008ae 100644
--- a/vcl/source/src/fpicker.src
+++ b/vcl/source/src/fpicker.src
@@ -84,9 +84,14 @@ String STR_FPICKER_FOLDER_DEFAULT_DESCRIPTION
Text [ en-US ] = "Please select a folder.";
};
-String STR_FPICKER_ALREADYEXISTOVERWRITE
+String STR_FPICKER_ALREADYEXISTOVERWRITE_PRIMARY
{
- Text [ en-US ] = "A file named \"$filename$\" already exists.\n\nDo you want to replace it?" ;
+ Text [ en-US ] = "A file named \"$filename$\" already exists. Do you want to replace it?" ;
+};
+
+String STR_FPICKER_ALREADYEXISTOVERWRITE_SECONDARY
+{
+ Text [ en-US ] = "The file already exists in \"$dirname$\". Replacing it will overwrite its contents." ;
};
String STR_FPICKER_ALLFORMATS
diff --git a/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx b/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
index d237b8628a93..2f35174c7ab3 100644
--- a/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
+++ b/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
@@ -1011,7 +1011,6 @@ sal_Int16 SAL_CALL SalGtkFilePicker::execute() throw( uno::RuntimeException )
gchar *gFileName = g_filename_from_uri ( sFileName.getStr(), NULL, NULL );
if( g_file_test( gFileName, G_FILE_TEST_IS_REGULAR ) )
{
- GtkWidget *dlg;
INetURLObject aFileObj( sFileName );
OString baseName(
@@ -1026,11 +1025,11 @@ sal_Int16 SAL_CALL SalGtkFilePicker::execute() throw( uno::RuntimeException )
);
OString aMsg(
OUStringToOString(
- getResString( FILE_PICKER_OVERWRITE ),
+ getResString( FILE_PICKER_OVERWRITE_PRIMARY ),
RTL_TEXTENCODING_UTF8
)
);
- OString toReplace( RTL_CONSTASCII_STRINGPARAM( "$filename$" ));
+ OString toReplace("$filename$");
aMsg = aMsg.replaceAt(
aMsg.indexOf( toReplace ),
@@ -1038,7 +1037,7 @@ sal_Int16 SAL_CALL SalGtkFilePicker::execute() throw( uno::RuntimeException )
baseName
);
- dlg = gtk_message_dialog_new( NULL,
+ GtkWidget *dlg = gtk_message_dialog_new( NULL,
GTK_DIALOG_MODAL,
GTK_MESSAGE_QUESTION,
GTK_BUTTONS_YES_NO,
@@ -1046,6 +1045,37 @@ sal_Int16 SAL_CALL SalGtkFilePicker::execute() throw( uno::RuntimeException )
aMsg.getStr()
);
+ sal_Int32 nSegmentCount = aFileObj.getSegmentCount();
+ if (nSegmentCount >= 2)
+ {
+ OString dirName(
+ OUStringToOString(
+ aFileObj.getName(
+ nSegmentCount-2,
+ true,
+ INetURLObject::DECODE_WITH_CHARSET
+ ),
+ RTL_TEXTENCODING_UTF8
+ )
+ );
+
+ aMsg =
+ OUStringToOString(
+ getResString( FILE_PICKER_OVERWRITE_SECONDARY ),
+ RTL_TEXTENCODING_UTF8
+ );
+
+ toReplace = "$dirname$";
+
+ aMsg = aMsg.replaceAt(
+ aMsg.indexOf( toReplace ),
+ toReplace.getLength(),
+ dirName
+ );
+
+ gtk_message_dialog_format_secondary_text( GTK_MESSAGE_DIALOG( dlg ), "%s", aMsg.getStr() );
+ }
+
gtk_window_set_title( GTK_WINDOW( dlg ),
OUStringToOString(getResString(FILE_PICKER_TITLE_SAVE ),
RTL_TEXTENCODING_UTF8 ).getStr() );
diff --git a/vcl/unx/gtk/fpicker/SalGtkPicker.hxx b/vcl/unx/gtk/fpicker/SalGtkPicker.hxx
index 477c707dd71f..fc8d2a2f2e83 100644
--- a/vcl/unx/gtk/fpicker/SalGtkPicker.hxx
+++ b/vcl/unx/gtk/fpicker/SalGtkPicker.hxx
@@ -31,13 +31,14 @@
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
-#define FOLDERPICKER_TITLE 500
-#define FOLDER_PICKER_DEF_DESCRIPTION 501
-#define FILE_PICKER_TITLE_OPEN 502
-#define FILE_PICKER_TITLE_SAVE 503
-#define FILE_PICKER_FILE_TYPE 504
-#define FILE_PICKER_OVERWRITE 505
-#define FILE_PICKER_ALLFORMATS 506
+#define FOLDERPICKER_TITLE 500
+#define FOLDER_PICKER_DEF_DESCRIPTION 501
+#define FILE_PICKER_TITLE_OPEN 502
+#define FILE_PICKER_TITLE_SAVE 503
+#define FILE_PICKER_FILE_TYPE 504
+#define FILE_PICKER_OVERWRITE_PRIMARY 505
+#define FILE_PICKER_OVERWRITE_SECONDARY 506
+#define FILE_PICKER_ALLFORMATS 507
class SalGtkPicker
{
diff --git a/vcl/unx/gtk/fpicker/resourceprovider.cxx b/vcl/unx/gtk/fpicker/resourceprovider.cxx
index ec588c1f00c3..b07e581b027e 100644
--- a/vcl/unx/gtk/fpicker/resourceprovider.cxx
+++ b/vcl/unx/gtk/fpicker/resourceprovider.cxx
@@ -51,7 +51,8 @@ static const struct
{ CHECKBOX_SELECTION, STR_FPICKER_SELECTION },
{ FOLDERPICKER_TITLE, STR_FPICKER_FOLDER_DEFAULT_TITLE },
{ FOLDER_PICKER_DEF_DESCRIPTION, STR_FPICKER_FOLDER_DEFAULT_DESCRIPTION },
- { FILE_PICKER_OVERWRITE, STR_FPICKER_ALREADYEXISTOVERWRITE },
+ { FILE_PICKER_OVERWRITE_PRIMARY, STR_FPICKER_ALREADYEXISTOVERWRITE_PRIMARY },
+ { FILE_PICKER_OVERWRITE_SECONDARY, STR_FPICKER_ALREADYEXISTOVERWRITE_SECONDARY },
{ FILE_PICKER_ALLFORMATS, STR_FPICKER_ALLFORMATS },
{ FILE_PICKER_TITLE_OPEN, STR_FPICKER_OPEN },
{ FILE_PICKER_TITLE_SAVE, STR_FPICKER_SAVE },