void KeyhoteeMainWindow::onSidebarSelectionChanged() { QList<QTreeWidgetItem*> selected_items = ui->side_bar->selectedItems(); if (selected_items.size() ) { disconnect(ui->actionDelete, SIGNAL(triggered()), ui->contacts_page, SLOT(onDeleteContact())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->inbox_page, SLOT(onDeleteMail())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->draft_box_page, SLOT(onDeleteMail())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->sent_box_page, SLOT(onDeleteMail())); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->contacts_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->inbox_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->draft_box_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->sent_box_page, SLOT(on_actionShow_details_toggled(bool))); if (selected_items[0]->type() == ContactItem) { auto con_id = selected_items[0]->data(0, ContactIdRole).toInt(); openContactGui(con_id); //this makes overstack when contact_page table is sorted, //selectRow generate signal onSidebarSelectionChanged and openContactGui is call two or more //issue #51: Selecting contact on recent list should synchronize it in main list //ui->contacts_page->selectRow(con_id); connect(ui->actionDelete, SIGNAL(triggered()), ui->contacts_page, SLOT(onDeleteContact())); connect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->contacts_page, SLOT(on_actionShow_details_toggled(bool))); if(ui->contacts_page->isShowDetailsHidden()) ui->actionShow_details->setChecked(false); else ui->actionShow_details->setChecked(true); }
void KeyhoteeMainWindow::onSidebarSelectionChanged() { QList<QTreeWidgetItem*> selected_items = ui->side_bar->selectedItems(); if (selected_items.size() ) { disconnect(ui->actionDelete, SIGNAL(triggered()), this, SLOT(onRemoveContact())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->inbox_page, SLOT(onDeleteMail())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->draft_box_page, SLOT(onDeleteMail())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->out_box_page, SLOT(onDeleteMail())); disconnect(ui->actionDelete, SIGNAL(triggered()), ui->sent_box_page, SLOT(onDeleteMail())); disconnect(ui->actionDelete, SIGNAL(triggered()), this, SLOT(onDeleteAuthorizationItem())); disconnect(ui->actionReply, SIGNAL(triggered()), ui->inbox_page, SLOT(onReplyMail())); disconnect(ui->actionReply_all, SIGNAL(triggered()), ui->inbox_page, SLOT(onReplyAllMail())); disconnect(ui->actionForward, SIGNAL(triggered()), ui->inbox_page, SLOT(onForwardMail())); disconnect(ui->actionReply, SIGNAL(triggered()), ui->draft_box_page, SLOT(onReplyMail())); disconnect(ui->actionReply_all, SIGNAL(triggered()), ui->draft_box_page, SLOT(onReplyAllMail())); disconnect(ui->actionForward, SIGNAL(triggered()), ui->draft_box_page, SLOT(onForwardMail())); disconnect(ui->actionReply, SIGNAL(triggered()), ui->out_box_page, SLOT(onReplyMail())); disconnect(ui->actionReply_all, SIGNAL(triggered()), ui->out_box_page, SLOT(onReplyAllMail())); disconnect(ui->actionForward, SIGNAL(triggered()), ui->out_box_page, SLOT(onForwardMail())); disconnect(ui->actionReply, SIGNAL(triggered()), ui->sent_box_page, SLOT(onReplyMail())); disconnect(ui->actionReply_all, SIGNAL(triggered()), ui->sent_box_page, SLOT(onReplyAllMail())); disconnect(ui->actionForward, SIGNAL(triggered()), ui->sent_box_page, SLOT(onForwardMail())); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->contacts_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->inbox_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->draft_box_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->out_box_page, SLOT(on_actionShow_details_toggled(bool))); disconnect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->sent_box_page, SLOT(on_actionShow_details_toggled(bool))); setEnabledDeleteOption (false); setEnabledAttachmentSaveOption(false); setEnabledMailActions(false); setEnabledShareContactOption(false); _currentMailbox = nullptr; ui->actionShow_details->setEnabled(true); QTreeWidgetItem* selectedItem = selected_items.first(); if (selectedItem->type() == ContactItem) { auto con_id = selected_items[0]->data(0, ContactIdRole).toInt(); openContactGui(con_id); ui->contacts_page->selectRow(con_id); connect(ui->actionDelete, SIGNAL(triggered()), this, SLOT(onRemoveContact())); connect(ui->actionShow_details, SIGNAL(toggled(bool)), ui->contacts_page, SLOT(on_actionShow_details_toggled(bool))); if(ui->contacts_page->isShowDetailsHidden()) ui->actionShow_details->setChecked(false); else ui->actionShow_details->setChecked(true); refreshMenuOptions(); }
void KeyhoteeMainWindow::onSidebarSelectionChanged() { QList<QTreeWidgetItem*> selected_items = ui->side_bar->selectedItems(); if( selected_items.size() ) { if( selected_items[0]->type() == ContactItem ) { auto con_id = selected_items[0]->data(0, ContactIdRole ).toInt(); openContactGui(con_id); } else if( selected_items[0]->type() == IdentityItem ) { selectIdentityItem( selected_items[0] ); } else if( selected_items[0] == _contacts_root ) { showContacts(); } else if( selected_items[0] == _mailboxes_root ) { } /* else if( selected_items[0] == _identities_root ) { } */ else if( selected_items[0] == _inbox_root ) { ui->widget_stack->setCurrentWidget( ui->inbox_page ); } else if( selected_items[0] == _drafts_root ) { ui->widget_stack->setCurrentWidget( ui->draft_box_page ); } else if( selected_items[0] == _sent_root ) { ui->widget_stack->setCurrentWidget( ui->sent_box_page ); } } }