forked from osmocom/wireshark
Enable and disable the File→Print and Go menu items as needed. Have the
print dialog cancel itself if we don't hand it a capture file. svn path=/trunk/; revision=45863
This commit is contained in:
parent
606a7433ce
commit
66b13e2961
|
@ -86,6 +86,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||
gbl_cur_main_window = this;
|
||||
main_ui_->setupUi(this);
|
||||
setMenusForCaptureFile();
|
||||
setForCapturedPackets(false);
|
||||
setMenusForSelectedTreeRow();
|
||||
setForCaptureInProgress(false);
|
||||
setMenusForFileSet(false);
|
||||
|
@ -1170,6 +1171,42 @@ void MainWindow::setMenusForCaptureStopping() {
|
|||
#endif /* HAVE_LIBPCAP */
|
||||
}
|
||||
|
||||
void MainWindow::setForCapturedPackets(bool have_captured_packets)
|
||||
{
|
||||
main_ui_->actionFilePrint->setEnabled(have_captured_packets);
|
||||
|
||||
// set_menu_sensitivity(ui_manager_packet_list_menu, "/PacketListMenuPopup/Print",
|
||||
// have_captured_packets);
|
||||
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/EditMenu/FindPacket",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/EditMenu/FindNext",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/EditMenu/FindPrevious",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/ViewMenu/ZoomIn",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/ViewMenu/ZoomOut",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/ViewMenu/NormalSize",
|
||||
// have_captured_packets);
|
||||
|
||||
main_ui_->actionGoGoToPacket->setEnabled(have_captured_packets);
|
||||
main_ui_->actionGoPreviousPacket->setEnabled(have_captured_packets);
|
||||
main_ui_->actionGoNextPacket->setEnabled(have_captured_packets);
|
||||
main_ui_->actionGoFirstPacket->setEnabled(have_captured_packets);
|
||||
main_ui_->actionGoLastPacket->setEnabled(have_captured_packets);
|
||||
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/GoMenu/PreviousPacketInConversation",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/GoMenu/NextPacketInConversation",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/StatisticsMenu/Summary",
|
||||
// have_captured_packets);
|
||||
// set_menu_sensitivity(ui_manager_main_menubar, "/Menubar/StatisticsMenu/ProtocolHierarchy",
|
||||
// have_captured_packets);
|
||||
}
|
||||
|
||||
void MainWindow::setMenusForFileSet(bool enable_list_files) {
|
||||
bool enable_next = fileset_get_next() != NULL && enable_list_files;
|
||||
bool enable_prev = fileset_get_previous() != NULL && enable_list_files;
|
||||
|
|
|
@ -111,8 +111,7 @@ private:
|
|||
void setMenusForCaptureFile(bool force_disable = false);
|
||||
void setMenusForCaptureInProgress(bool capture_in_progress = false);
|
||||
void setMenusForCaptureStopping();
|
||||
// xxx set_menus_for_captured_packets
|
||||
// xxx set_menus_for_selected_packet
|
||||
void setForCapturedPackets(bool have_captured_packets);
|
||||
void setMenusForFileSet(bool enable_list_files);
|
||||
void updateForUnsavedChanges();
|
||||
void setForCaptureInProgress(gboolean capture_in_progress = false);
|
||||
|
|
|
@ -187,8 +187,8 @@ void MainWindow::captureCapturePrepared(capture_options *capture_opts) {
|
|||
void MainWindow::captureCaptureUpdateStarted(capture_options *capture_opts) {
|
||||
Q_UNUSED(capture_opts);
|
||||
|
||||
qDebug() << "captureCaptureUpdateStarted";
|
||||
setForCaptureInProgress(true);
|
||||
setForCapturedPackets(true);
|
||||
}
|
||||
void MainWindow::captureCaptureUpdateFinished(capture_options *capture_opts) {
|
||||
Q_UNUSED(capture_opts);
|
||||
|
@ -282,7 +282,7 @@ void MainWindow::captureFileReadFinished(const capture_file *cf) {
|
|||
updateForUnsavedChanges();
|
||||
|
||||
// /* Enable menu items that make sense if you have some captured packets. */
|
||||
// set_menus_for_captured_packets(TRUE);
|
||||
setForCapturedPackets(true);
|
||||
|
||||
main_ui_->statusBar->popFileStatus();
|
||||
QString msg = QString().sprintf("%s", get_basename(cf->filename));
|
||||
|
@ -293,6 +293,7 @@ void MainWindow::captureFileClosing(const capture_file *cf) {
|
|||
if (cf != cap_file_) return;
|
||||
|
||||
setMenusForCaptureFile(true);
|
||||
setForCapturedPackets(false);
|
||||
setForCaptureInProgress(false);
|
||||
|
||||
// Reset expert info indicator
|
||||
|
|
|
@ -80,7 +80,7 @@ PrintDialog::PrintDialog(QWidget *parent, capture_file *cf) :
|
|||
print_bt_(new QPushButton(tr("&Print..."))),
|
||||
cap_file_(cf)
|
||||
{
|
||||
if (!cf) close(); // ...or assert?
|
||||
if (!cf) done(QDialog::Rejected); // ...or assert?
|
||||
|
||||
pd_ui_->setupUi(this);
|
||||
|
||||
|
|
Loading…
Reference in New Issue