From d8d3c52f1e5836eddb32e46175aa399564c8ab36 Mon Sep 17 00:00:00 2001 From: Gerald Combs Date: Fri, 31 Jul 2015 10:34:43 -0700 Subject: [PATCH] Use an ellipsis character instead of three dots. The OS X Human Interface Guidelines at https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/OSXHIGuidelines/TerminologyWording.html#//apple_ref/doc/uid/20000957-CH15-SW3 says: "Be sure to create the ellipsis character using the key combination Option-; (Option-semicolon). This ensures that an assistive app can provide the correct interpretation of the character to a disabled user. If you use three period characters to simulate an ellipsis, many assistive apps will be unable to make sense of them. Also, three period characters and an ellipsis don't look the same because the periods are spaced differently than the points of an ellipsis." The Windows desktop applications guidelines has a section on ellipses: https://msdn.microsoft.com/en-us/library/windows/desktop/dn742478.aspx but doesn't specify the a single glyph vs three dots. The GNOME HIG at https://developer.gnome.org/hig/stable/typography.html.en says "Take Advantage of Unicode" then specifically says to use U+2026 HORIZONTAL ELLIPSIS. Remove the ellipsis from "Find Next" and "Find Previous". Neither requires user interaction. Change-Id: I0e6c28bb8b3a84b242731e2ca96f1a6f6f42c303 Reviewed-on: https://code.wireshark.org/review/9833 Petri-Dish: Gerald Combs Tested-by: Petri Dish Buildbot Reviewed-by: Gerald Combs --- ui/qt/about_dialog.cpp | 9 +- ui/qt/address_editor_frame.ui | 2 +- ui/qt/capture_interfaces_dialog.ui | 8 +- ui/qt/conversation_dialog.cpp | 4 +- ui/qt/expert_info_dialog.ui | 2 +- ui/qt/extcap_argument_file.cpp | 5 +- ui/qt/follow_stream_dialog.cpp | 2 +- ui/qt/import_text_dialog.ui | 2 +- ui/qt/io_graph_dialog.cpp | 2 +- ui/qt/lbm_uimflow_dialog.cpp | 2 +- ui/qt/main_status_bar.cpp | 6 +- ui/qt/main_window.cpp | 4 +- ui/qt/main_window.ui | 100 +++++++++++------------ ui/qt/main_window_preferences_frame.ui | 2 +- ui/qt/main_window_slots.cpp | 2 +- ui/qt/manage_interfaces_dialog.cpp | 3 +- ui/qt/module_preferences_scroll_area.cpp | 6 +- ui/qt/preference_editor_frame.ui | 2 +- ui/qt/print_dialog.cpp | 6 +- ui/qt/rtp_stream_dialog.cpp | 2 +- ui/qt/sequence_dialog.cpp | 2 +- ui/qt/tap_parameter_dialog.cpp | 2 +- ui/qt/tap_parameter_dialog.ui | 2 +- ui/qt/tcp_stream_dialog.cpp | 2 +- ui/qt/time_shift_dialog.ui | 2 +- 25 files changed, 95 insertions(+), 86 deletions(-) diff --git a/ui/qt/about_dialog.cpp b/ui/qt/about_dialog.cpp index 5a3e122f94..e5f3683e59 100644 --- a/ui/qt/about_dialog.cpp +++ b/ui/qt/about_dialog.cpp @@ -40,10 +40,11 @@ #include "../log.h" #include "../register.h" -#include "ui/text_import_scanner.h" -#include "ui/last_open_dir.h" #include "ui/alert_box.h" +#include "ui/last_open_dir.h" #include "ui/help_url.h" +#include "ui/text_import_scanner.h" +#include "ui/utf8_entities.h" #include "file.h" #include "wsutil/file_util.h" @@ -187,13 +188,13 @@ AboutDialog::AboutDialog(QWidget *) : /* pers conf */ message += about_folders_row("Personal configuration", gchar_free_to_qstring(get_persconffile_path("", FALSE)), - "dfilters, preferences, ethers, ..."); + "dfilters, preferences, ethers, " UTF8_HORIZONTAL_ELLIPSIS); /* global conf */ constpath = get_datafile_dir(); if (constpath != NULL) { message += about_folders_row("Global configuration", constpath, - "dfilters, preferences, manuf, ..."); + "dfilters, preferences, manuf, " UTF8_HORIZONTAL_ELLIPSIS); } /* system */ diff --git a/ui/qt/address_editor_frame.ui b/ui/qt/address_editor_frame.ui index 77c88532fa..5b16198fab 100644 --- a/ui/qt/address_editor_frame.ui +++ b/ui/qt/address_editor_frame.ui @@ -29,7 +29,7 @@ - Name Resolution Preferences... + Name Resolution Preferences… diff --git a/ui/qt/capture_interfaces_dialog.ui b/ui/qt/capture_interfaces_dialog.ui index dd70768a79..354634418f 100644 --- a/ui/qt/capture_interfaces_dialog.ui +++ b/ui/qt/capture_interfaces_dialog.ui @@ -114,7 +114,7 @@ Show and hide interfaces, add comments, and manage pipes and remote interfaces. - Manage Interfaces... + Manage Interfaces… @@ -256,7 +256,7 @@ - Browse... + Browse… @@ -292,7 +292,7 @@ <html><head/><body><p>Instead of using a single capture file, multiple files will be created.</p><p>The generated file names will contain an incrementing number and the start time of the capture.</p></body></html> - Create a new file automatically after... + Create a new file automatically after… true @@ -621,7 +621,7 @@ PLEASE NOTE: One option MUST be selected. true - Stop capture automatically after... + Stop capture automatically after… true diff --git a/ui/qt/conversation_dialog.cpp b/ui/qt/conversation_dialog.cpp index e995b63b5e..f26759edf5 100644 --- a/ui/qt/conversation_dialog.cpp +++ b/ui/qt/conversation_dialog.cpp @@ -62,11 +62,11 @@ const QString table_name_ = QObject::tr("Conversation"); ConversationDialog::ConversationDialog(QWidget &parent, CaptureFile &cf, int cli_proto_id, const char *filter) : TrafficTableDialog(parent, cf, filter, table_name_) { - follow_bt_ = buttonBox()->addButton(tr("Follow Stream..."), QDialogButtonBox::ActionRole); + follow_bt_ = buttonBox()->addButton(tr("Follow Stream" UTF8_HORIZONTAL_ELLIPSIS), QDialogButtonBox::ActionRole); follow_bt_->setToolTip(tr("Follow a TCP or UDP stream.")); connect(follow_bt_, SIGNAL(clicked()), this, SLOT(followStream())); - graph_bt_ = buttonBox()->addButton(tr("Graph..."), QDialogButtonBox::ActionRole); + graph_bt_ = buttonBox()->addButton(tr("Graph" UTF8_HORIZONTAL_ELLIPSIS), QDialogButtonBox::ActionRole); graph_bt_->setToolTip(tr("Graph a TCP conversation.")); connect(graph_bt_, SIGNAL(clicked()), this, SLOT(graphTcp())); diff --git a/ui/qt/expert_info_dialog.ui b/ui/qt/expert_info_dialog.ui index 7b36744f9a..689b64faac 100644 --- a/ui/qt/expert_info_dialog.ui +++ b/ui/qt/expert_info_dialog.ui @@ -103,7 +103,7 @@ - Show... + Show… diff --git a/ui/qt/extcap_argument_file.cpp b/ui/qt/extcap_argument_file.cpp index 370df9792d..227b8c664f 100644 --- a/ui/qt/extcap_argument_file.cpp +++ b/ui/qt/extcap_argument_file.cpp @@ -21,6 +21,9 @@ #include #include + +#include "ui/utf8_entities.h" + #include #include #include @@ -48,7 +51,7 @@ QWidget * ExtcapArgumentFileSelection::createEditor(QWidget * parent) QMargins margins = editLayout->contentsMargins(); editLayout->setContentsMargins(0, 0, 0, margins.bottom()); fileWidget->setContentsMargins(margins.left(), margins.right(), 0, margins.bottom()); - QPushButton * button = new QPushButton("...", fileWidget); + QPushButton * button = new QPushButton(UTF8_HORIZONTAL_ELLIPSIS, fileWidget); textBox = new QLineEdit(_default->toString(), parent); textBox->setReadOnly(true); diff --git a/ui/qt/follow_stream_dialog.cpp b/ui/qt/follow_stream_dialog.cpp index d75a0b2f91..73a4bf208f 100644 --- a/ui/qt/follow_stream_dialog.cpp +++ b/ui/qt/follow_stream_dialog.cpp @@ -101,7 +101,7 @@ FollowStreamDialog::FollowStreamDialog(QWidget &parent, CaptureFile &cf, follow_ b_print_ = ui->buttonBox->addButton(tr("Print"), QDialogButtonBox::ActionRole); connect(b_print_, SIGNAL(clicked()), this, SLOT(printStream())); - b_save_ = ui->buttonBox->addButton(tr("Save as..."), QDialogButtonBox::ActionRole); + b_save_ = ui->buttonBox->addButton(tr("Save as" UTF8_HORIZONTAL_ELLIPSIS), QDialogButtonBox::ActionRole); connect(b_save_, SIGNAL(clicked()), this, SLOT(saveAs())); connect(ui->buttonBox, SIGNAL(helpRequested()), this, SLOT(helpButton())); diff --git a/ui/qt/import_text_dialog.ui b/ui/qt/import_text_dialog.ui index 86af3786f5..5981f07a76 100644 --- a/ui/qt/import_text_dialog.ui +++ b/ui/qt/import_text_dialog.ui @@ -69,7 +69,7 @@ Browse for text file to import - Browse... + Browse… diff --git a/ui/qt/io_graph_dialog.cpp b/ui/qt/io_graph_dialog.cpp index e5da5255e4..3861168f09 100644 --- a/ui/qt/io_graph_dialog.cpp +++ b/ui/qt/io_graph_dialog.cpp @@ -197,7 +197,7 @@ IOGraphDialog::IOGraphDialog(QWidget &parent, CaptureFile &cf) : QCustomPlot *iop = ui->ioPlot; QPushButton *save_bt = ui->buttonBox->button(QDialogButtonBox::Save); - save_bt->setText(tr("Save As...")); + save_bt->setText(tr("Save As" UTF8_HORIZONTAL_ELLIPSIS)); stat_timer_ = new QTimer(this); connect(stat_timer_, SIGNAL(timeout()), this, SLOT(updateStatistics())); diff --git a/ui/qt/lbm_uimflow_dialog.cpp b/ui/qt/lbm_uimflow_dialog.cpp index c35946904c..00eb002cf3 100644 --- a/ui/qt/lbm_uimflow_dialog.cpp +++ b/ui/qt/lbm_uimflow_dialog.cpp @@ -260,7 +260,7 @@ LBMUIMFlowDialog::LBMUIMFlowDialog(QWidget * parent, capture_file * cfile) : m_sequence_analysis.any_addr = TRUE; QPushButton * save_bt = m_ui->buttonBox->button(QDialogButtonBox::Save); - save_bt->setText(tr("Save As...")); + save_bt->setText(tr("Save As" UTF8_HORIZONTAL_ELLIPSIS)); // XXX Use recent settings instead if (parent) diff --git a/ui/qt/main_status_bar.cpp b/ui/qt/main_status_bar.cpp index 0bc53806b6..1e944b6d7b 100644 --- a/ui/qt/main_status_bar.cpp +++ b/ui/qt/main_status_bar.cpp @@ -158,14 +158,14 @@ MainStatusBar::MainStatusBar(QWidget *parent) : info_status_.pushText(ready_msg, STATUS_CTX_MAIN); packets_bar_update(); - action = ctx_menu_.addAction(tr("Manage Profiles...")); + action = ctx_menu_.addAction(tr("Manage Profiles" UTF8_HORIZONTAL_ELLIPSIS)); action->setData(ProfileDialog::ShowProfiles); connect(action, SIGNAL(triggered()), this, SLOT(manageProfile())); ctx_menu_.addSeparator(); - action = ctx_menu_.addAction(tr("New...")); + action = ctx_menu_.addAction(tr("New" UTF8_HORIZONTAL_ELLIPSIS)); action->setData(ProfileDialog::NewProfile); connect(action, SIGNAL(triggered()), this, SLOT(manageProfile())); - edit_action_ = ctx_menu_.addAction(tr("Edit...")); + edit_action_ = ctx_menu_.addAction(tr("Edit" UTF8_HORIZONTAL_ELLIPSIS)); edit_action_->setData(ProfileDialog::EditCurrentProfile); connect(edit_action_, SIGNAL(triggered()), this, SLOT(manageProfile())); delete_action_ = ctx_menu_.addAction(tr("Delete")); diff --git a/ui/qt/main_window.cpp b/ui/qt/main_window.cpp index 5610ec4fc7..d0f874e78d 100644 --- a/ui/qt/main_window.cpp +++ b/ui/qt/main_window.cpp @@ -325,7 +325,7 @@ MainWindow::MainWindow(QWidget *parent) : #ifdef HAVE_SOFTWARE_UPDATE QAction *update_sep = main_ui_->menuHelp->insertSeparator(main_ui_->actionHelpAbout); - QAction *update_action = new QAction(tr("Check for Updates..."), main_ui_->menuHelp); + QAction *update_action = new QAction(tr("Check for Updates" UTF8_HORIZONTAL_ELLIPSIS), main_ui_->menuHelp); main_ui_->menuHelp->insertAction(update_sep, update_action); connect(update_action, SIGNAL(triggered()), this, SLOT(checkForUpdates())); #endif @@ -1423,7 +1423,7 @@ bool MainWindow::testCaptureFileClose(bool from_quit, QString &before_what) { QPushButton *discardButton; msg_dialog.setIcon(QMessageBox::Question); - msg_dialog.setWindowTitle("Unsaved packets..."); + msg_dialog.setWindowTitle("Unsaved packets" UTF8_HORIZONTAL_ELLIPSIS); /* This file has unsaved data or there's a capture in progress; ask the user whether to save the data. */ if (capture_file_.capFile()->is_tempfile) { diff --git a/ui/qt/main_window.ui b/ui/qt/main_window.ui index d44a0ae4ec..07785c7a11 100644 --- a/ui/qt/main_window.ui +++ b/ui/qt/main_window.ui @@ -942,7 +942,7 @@ true - Go to Packet... + Go to Packet… Go to specified packet @@ -953,7 +953,7 @@ - &Merge... + &Merge… Merge one or more files @@ -961,7 +961,7 @@ - &Import from Hex Dump... + &Import from Hex Dump… Import a file @@ -983,7 +983,7 @@ - Save &As... + Save &As… Save as a different file @@ -994,7 +994,7 @@ - Export Specified Packets... + Export Specified Packets… Export specified packets @@ -1002,7 +1002,7 @@ - Export Packet &Bytes... + Export Packet &Bytes… Ctrl+H @@ -1010,12 +1010,12 @@ - Export SSL Session Keys... + Export SSL Session Keys… - &Print... + &Print… Ctrl+P @@ -1052,7 +1052,7 @@ - &Options... + &Options… Options @@ -1069,7 +1069,7 @@ - Capture &Filters... + Capture &Filters… Capture filters @@ -1096,42 +1096,42 @@ - As Plain &Text... + As Plain &Text… - As CSV... + As CSV… - As "C" Arrays... + As "C" Arrays… - As PSML XML... + As PSML XML… - As PDML XML... + As PDML XML… - &HTTP... + &HTTP… - &DICOM... + &DICOM… - &SMB... + &SMB… @@ -1191,34 +1191,34 @@ - ... &and Selected + … &and Selected - ... and Selected + … and Selected - ... &or Selected + … &or Selected - ... or Selected + … or Selected - ... a&nd not Selected + … a&nd not Selected - ... and not Selected + … and not Selected - ... o&r not Selected + … o&r not Selected - ... or not Selected + … or not Selected @@ -1236,39 +1236,39 @@ - ... &and Selected + … &and Selected - ... and Selected + … and Selected - ... &or Selected + … &or Selected - ... or Selected + … or Selected - ... a&nd not Selected + … a&nd not Selected - ... and not Selected + … and not Selected - ... o&r not Selected + … o&r not Selected - ... or not Selected + … or not Selected - Display Filters... + Display Filters… @@ -1276,7 +1276,7 @@ false - Display Filter &Macros... + Display Filter &Macros… @@ -1292,7 +1292,7 @@ true - &Find Packet... + &Find Packet… Find a packet @@ -1303,7 +1303,7 @@ - Find Ne&xt... + Find Ne&xt Find the next packet @@ -1314,7 +1314,7 @@ - Find Pre&vious... + Find Pre&vious Find the previous packet @@ -1457,7 +1457,7 @@ - Time Shift... + Time Shift… Shift or change packet timestamps @@ -1468,7 +1468,7 @@ - Packet Comment... + Packet Comment… Add or change a packet comment @@ -1479,7 +1479,7 @@ false - Configuration Profiles... + Configuration Profiles… Configuration profiles @@ -1496,7 +1496,7 @@ - &Preferences... + &Preferences… Manage Wireshark's preferences @@ -1776,7 +1776,7 @@ - Decode &As... + Decode &As… Change the way packets are dissected @@ -1872,7 +1872,7 @@ - Export PDUs to File... + Export PDUs to File… @@ -2348,7 +2348,7 @@ - &Coloring Rules... + &Coloring Rules… Edit the packet list coloring rules. @@ -2406,10 +2406,10 @@ - &Expression... + &Expression… - Expression... + Expression… Add an expression to the display filter. @@ -2541,7 +2541,7 @@ - New Conversation Rule... + New Conversation Rule… Create a new coloring rule based on this conversation. @@ -2576,7 +2576,7 @@ - Enable Protocols... + Enable Protocols… Enable and disable specific protocols diff --git a/ui/qt/main_window_preferences_frame.ui b/ui/qt/main_window_preferences_frame.ui index e4d817e1f7..18cc5e762f 100644 --- a/ui/qt/main_window_preferences_frame.ui +++ b/ui/qt/main_window_preferences_frame.ui @@ -70,7 +70,7 @@ - Browse... + Browse… diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp index fad030c8fe..807650c9dd 100644 --- a/ui/qt/main_window_slots.cpp +++ b/ui/qt/main_window_slots.cpp @@ -698,7 +698,7 @@ void MainWindow::captureFileSaveStarted(const QString &file_path) { QFileInfo file_info(file_path); main_ui_->statusBar->popFileStatus(); - main_ui_->statusBar->pushFileStatus(tr("Saving %1...").arg(file_info.baseName())); + main_ui_->statusBar->pushFileStatus(tr("Saving %1" UTF8_HORIZONTAL_ELLIPSIS).arg(file_info.baseName())); } void MainWindow::filterExpressionsChanged() diff --git a/ui/qt/manage_interfaces_dialog.cpp b/ui/qt/manage_interfaces_dialog.cpp index cc80b4dc3e..2d086b1da5 100644 --- a/ui/qt/manage_interfaces_dialog.cpp +++ b/ui/qt/manage_interfaces_dialog.cpp @@ -35,6 +35,7 @@ #include "ui/iface_lists.h" #include "ui/preference_utils.h" #include "ui/ui_util.h" +#include "ui/utf8_entities.h" #include "qt_ui_utils.h" @@ -799,7 +800,7 @@ QWidget* PathChooserDelegate::createEditor(QWidget *parent, const QStyleOptionVi QPushButton *pb = new QPushButton(path_editor_); path_le_->setText(item->text(col_p_pipe_)); - pb->setText(QString(tr("Browse..."))); + pb->setText(QString(tr("Browse" UTF8_HORIZONTAL_ELLIPSIS))); hbox->setContentsMargins(0, 0, 0, 0); hbox->addWidget(path_le_); diff --git a/ui/qt/module_preferences_scroll_area.cpp b/ui/qt/module_preferences_scroll_area.cpp index 1c79e0f71f..aa84d766f7 100644 --- a/ui/qt/module_preferences_scroll_area.cpp +++ b/ui/qt/module_preferences_scroll_area.cpp @@ -28,6 +28,8 @@ #include +#include "ui/utf8_entities.h" + #include #include #include @@ -185,7 +187,7 @@ pref_show(pref_t *pref, gpointer layout_ptr) QLabel *label = new QLabel(pref->title); label->setToolTip(tooltip); hb->addWidget(label); - QPushButton *uat_pb = new QPushButton(QObject::tr("Edit...")); + QPushButton *uat_pb = new QPushButton(QObject::tr("Edit" UTF8_HORIZONTAL_ELLIPSIS)); uat_pb->setToolTip(tooltip); uat_pb->setProperty(pref_prop_, qVariantFromValue(pref)); hb->addWidget(uat_pb); @@ -212,7 +214,7 @@ pref_show(pref_t *pref, gpointer layout_ptr) ) .arg(path_le->style()->subElementRect(QStyle::SE_CheckBoxContents, &style_opt).left())); hb->addWidget(path_le); - QPushButton *path_pb = new QPushButton(QObject::tr("Browse...")); + QPushButton *path_pb = new QPushButton(QObject::tr("Browse" UTF8_HORIZONTAL_ELLIPSIS)); path_pb->setProperty(pref_prop_, qVariantFromValue(pref)); hb->addWidget(path_pb); hb->addSpacerItem(new QSpacerItem(1, 1, QSizePolicy::Expanding, QSizePolicy::Minimum)); diff --git a/ui/qt/preference_editor_frame.ui b/ui/qt/preference_editor_frame.ui index 37b47d1c81..dc740984f5 100644 --- a/ui/qt/preference_editor_frame.ui +++ b/ui/qt/preference_editor_frame.ui @@ -29,7 +29,7 @@ - ... + diff --git a/ui/qt/print_dialog.cpp b/ui/qt/print_dialog.cpp index 324050414c..3bed72c91e 100644 --- a/ui/qt/print_dialog.cpp +++ b/ui/qt/print_dialog.cpp @@ -22,6 +22,8 @@ #include "print_dialog.h" #include +#include "ui/utf8_entities.h" + #include #include #include @@ -73,7 +75,7 @@ PrintDialog::PrintDialog(QWidget *parent, capture_file *cf) : cur_printer_(NULL), cur_painter_(NULL), preview_(new QPrintPreviewWidget(&printer_)), - print_bt_(new QPushButton(tr("&Print..."))), + print_bt_(new QPushButton(tr("&Print" UTF8_HORIZONTAL_ELLIPSIS))), cap_file_(cf) { if (!cf) done(QDialog::Rejected); // ...or assert? @@ -115,7 +117,7 @@ PrintDialog::PrintDialog(QWidget *parent, capture_file *cf) : pd_ui_->rangeGroupBox->initRange(&print_args_.range); pd_ui_->buttonBox->addButton(print_bt_, QDialogButtonBox::ActionRole); - pd_ui_->buttonBox->addButton(tr("Page &Setup..."), QDialogButtonBox::ResetRole); + pd_ui_->buttonBox->addButton(tr("Page &Setup" UTF8_HORIZONTAL_ELLIPSIS), QDialogButtonBox::ResetRole); print_bt_->setDefault(true); connect(preview_, SIGNAL(paintRequested(QPrinter*)), this, SLOT(paintPreview(QPrinter*))); diff --git a/ui/qt/rtp_stream_dialog.cpp b/ui/qt/rtp_stream_dialog.cpp index 9cbe8c86b7..52f96008b0 100644 --- a/ui/qt/rtp_stream_dialog.cpp +++ b/ui/qt/rtp_stream_dialog.cpp @@ -247,7 +247,7 @@ RtpStreamDialog::RtpStreamDialog(QWidget &parent, CaptureFile &cf) : find_reverse_button_->setToolTip(ui->actionFindReverse->toolTip()); prepare_button_ = ui->buttonBox->addButton(ui->actionPrepareFilter->text(), QDialogButtonBox::ApplyRole); prepare_button_->setToolTip(ui->actionPrepareFilter->toolTip()); - export_button_ = ui->buttonBox->addButton(tr("Export..."), QDialogButtonBox::ApplyRole); + export_button_ = ui->buttonBox->addButton(tr("Export" UTF8_HORIZONTAL_ELLIPSIS), QDialogButtonBox::ApplyRole); export_button_->setToolTip(ui->actionExportAsRtpDump->toolTip()); copy_button_ = ui->buttonBox->addButton(tr("Copy"), QDialogButtonBox::ApplyRole); analyze_button_ = ui->buttonBox->addButton(ui->actionAnalyze->text(), QDialogButtonBox::ApplyRole); diff --git a/ui/qt/sequence_dialog.cpp b/ui/qt/sequence_dialog.cpp index 8630146e2b..c38c3ab4ec 100644 --- a/ui/qt/sequence_dialog.cpp +++ b/ui/qt/sequence_dialog.cpp @@ -121,7 +121,7 @@ SequenceDialog::SequenceDialog(QWidget &parent, CaptureFile &cf, seq_analysis_in } QPushButton *save_bt = ui->buttonBox->button(QDialogButtonBox::Save); - save_bt->setText(tr("Save As...")); + save_bt->setText(tr("Save As" UTF8_HORIZONTAL_ELLIPSIS)); // XXX Use recent settings instead resize(parent.width(), parent.height() * 4 / 5); diff --git a/ui/qt/tap_parameter_dialog.cpp b/ui/qt/tap_parameter_dialog.cpp index b337b857d7..5e727e7268 100644 --- a/ui/qt/tap_parameter_dialog.cpp +++ b/ui/qt/tap_parameter_dialog.cpp @@ -89,7 +89,7 @@ TapParameterDialog::TapParameterDialog(QWidget &parent, CaptureFile &cf, int hel button = ui->buttonBox->addButton(tr("Copy"), QDialogButtonBox::ActionRole); connect(button, SIGNAL(clicked()), this, SLOT(on_actionCopyToClipboard_triggered())); - button = ui->buttonBox->addButton(tr("Save as..."), QDialogButtonBox::ActionRole); + button = ui->buttonBox->addButton(tr("Save as" UTF8_HORIZONTAL_ELLIPSIS), QDialogButtonBox::ActionRole); connect(button, SIGNAL(clicked()), this, SLOT(on_actionSaveAs_triggered())); if (help_topic_ < 1) { diff --git a/ui/qt/tap_parameter_dialog.ui b/ui/qt/tap_parameter_dialog.ui index 6e1f1b9625..887770ebf2 100644 --- a/ui/qt/tap_parameter_dialog.ui +++ b/ui/qt/tap_parameter_dialog.ui @@ -71,7 +71,7 @@ - Save as... + Save as… Save the displayed data in various formats diff --git a/ui/qt/tcp_stream_dialog.cpp b/ui/qt/tcp_stream_dialog.cpp index acc939a03c..26c34c5489 100644 --- a/ui/qt/tcp_stream_dialog.cpp +++ b/ui/qt/tcp_stream_dialog.cpp @@ -208,7 +208,7 @@ TCPStreamDialog::TCPStreamDialog(QWidget *, capture_file *cf, tcp_graph_type gra toggleTracerStyle(true); QPushButton *save_bt = ui->buttonBox->button(QDialogButtonBox::Save); - save_bt->setText(tr("Save As...")); + save_bt->setText(tr("Save As" UTF8_HORIZONTAL_ELLIPSIS)); connect(sp, SIGNAL(mousePress(QMouseEvent*)), this, SLOT(graphClicked(QMouseEvent*))); connect(sp, SIGNAL(mouseMove(QMouseEvent*)), this, SLOT(mouseMoved(QMouseEvent*))); diff --git a/ui/qt/time_shift_dialog.ui b/ui/qt/time_shift_dialog.ui index 6e8ba82231..1ada0ba9cc 100644 --- a/ui/qt/time_shift_dialog.ui +++ b/ui/qt/time_shift_dialog.ui @@ -93,7 +93,7 @@ true - ...then set packet + …then set packet