43 qDebug(log) << Q_FUNC_INFO;
50 if(!m_pView)
return -1;
51 QToolBar* pToolBar = m_pView->GetToolBar();
52 if(!pToolBar)
return -1;
53 m_pView->setWindowTitle(plugin->
Name());
58 check = connect(m_pView, &CFrmWakeOnLan::customContextMenuRequested,
59 this, [&](
const QPoint &pos){
60 m_Menu.exec(m_pView->mapToGlobal(pos));
64 m_Menu.addAction(QIcon::fromTheme(
"edit-copy"), tr(
"Copy ip address to clipbord"),
66 if(!m_pModel || !m_pView)
68 foreach(
auto index, m_pView->GetSelect()) {
69 QSharedPointer<CParameterWakeOnLan> p = m_pModel->GetData(index);
71 QString szIp = p->m_Net.GetHost();
72 if(szIp.isEmpty()) continue;
73 QApplication::clipboard()->setText(szIp);
76 m_Menu.addSeparator();
78 QAction* pRefresh = m_Menu.addAction(QIcon::fromTheme(
"view-refresh"), tr(
"Refresh"),
80 foreach(
auto p, m_pModel->m_Data)
83 pToolBar->addAction(pRefresh);
84 QAction* pMac = m_Menu.addAction(
85 QIcon::fromTheme(
"mac"), tr(
"Get mac address"),
87 if(!m_pModel || !m_pView)
89 foreach(
auto index, m_pView->GetSelect()) {
90 QSharedPointer<CParameterWakeOnLan> p = m_pModel->GetData(index);
93 p->SetHostState(CParameterWakeOnLan::HostState::GetMac);
96 pToolBar->addAction(pMac);
97 QAction* pWal = m_Menu.addAction(
98 QIcon::fromTheme(
"lan"), tr(
"Wake on lan"),
100 if(!m_pModel || !m_pView)
102 foreach(
auto index, m_pView->GetSelect()) {
103 QSharedPointer<CParameterWakeOnLan> p = m_pModel->GetData(index);
105 if(!m_Arp.WakeOnLan(p))
106 p->SetHostState(CParameterWakeOnLan::HostState::WakeOnLan);
109 pToolBar->addAction(pWal);
110 pToolBar->addSeparator();
111 m_Menu.addSeparator();
113 QAction* pAdd = m_Menu.addAction(QIcon::fromTheme(
"list-add"), tr(
"Add"),
114 this, SLOT(slotAdd()));
115 pToolBar->addAction(pAdd);
116 QAction* pEdit = m_Menu.addAction(QIcon::fromTheme(
"document-edit"), tr(
"Edit"),
118 QSharedPointer<CParameterWakeOnLan> para
119 = m_pModel->GetData(m_pView->GetCurrentIndex());
121 QMessageBox::information(
124 tr(
"Please select a item"));
129 RC_SHOW_WINDOW(&dlg);
131 pToolBar->addAction(pEdit);
132 QAction* pRemove = m_Menu.addAction(QIcon::fromTheme(
"list-remove"), tr(
"Remove"),
133 m_pView, SLOT(slotRemoveRow()));
134 pToolBar->addAction(pRemove);