int main(int argc, char *argv[]) { QCoreApplication::setOrganizationName("SRFGames"); QCoreApplication::setOrganizationDomain("sol-online.org"), QCoreApplication::setApplicationName("ShareYourClipboard"); #ifdef Q_OS_MAC QDir dir(argv[0]); dir.cdUp(); QString currentDir = dir.absolutePath(); dir.cdUp(); dir.cd("PlugIns"); QCoreApplication::setLibraryPaths(QStringList(dir.absolutePath())); #endif QApplication a(argc, argv); QApplication::setQuitOnLastWindowClosed(false); #ifdef Q_OS_MAC QDir::setCurrent(currentDir); #endif qDebug() << "init manager\n"; cClipboardManager manager(a.clipboard()); qDebug() << "init tray icon\n"; cTrayIcon trIcon(&manager); QObject::connect(&trIcon, SIGNAL(switchState()), &manager, SLOT(switchState())); QObject::connect(&trIcon, SIGNAL(pasteFiles()), &manager, SLOT(pasteFiles())); QObject::connect(&manager, SIGNAL(onStateChanged(cClipboardManager::eClipboardState)), &trIcon, SLOT(setState(cClipboardManager::eClipboardState))); qDebug() << "init settings window\n"; SettingsWindow settingsWindow(&manager); QObject::connect(&trIcon, SIGNAL(showSettings()), &settingsWindow, SLOT(showNormal())); QObject::connect(&settingsWindow, SIGNAL(preferencesChange()), &manager, SLOT(onPreferencesChanged())); qDebug() << "init copy dialog\n"; CopyProgressDialog copydialog; QObject::connect(&manager, SIGNAL(onStartCopyProcess(QString)), ©dialog, SLOT(start(QString))); QObject::connect(&manager, SIGNAL(onStopCopyProcess()), ©dialog, SLOT(stop())); QObject::connect(&manager, SIGNAL(showMessage(QString)), ©dialog, SLOT(showMessage(QString))); QObject::connect(&manager, SIGNAL(onSetProgressMain(QString,int,int)), ©dialog, SLOT(setProgressMain(QString,int,int))); QObject::connect(&manager, SIGNAL(onSetProgressSecond(QString,int,int)), ©dialog, SLOT(setProgressSecond(QString,int,int))); QObject::connect(©dialog, SIGNAL(cancel()), &manager, SLOT(cancelDownloading())); qDebug() << "start app loop\n"; int result = a.exec(); qDebug() << "application close\n"; return result; }
void Worker::run() { // Perform file operation switch (m_fileOperation) { case Paste: pasteFiles(false); break; case CutPaste: pasteFiles(true); break; case Delete: deleteFiles(); break; } }
void cTrayIcon::onMenuSelection(QAction *menuAction) { QString id = menuAction->data().toString(); if (id=="EXIT"){ QApplication::quit(); return; } if (id=="SETTINGS"){ emit showSettings(); return; } if (id=="SWITCH"){ emit switchState(); return; } if (id=="PASTE_FILES"){ emit pasteFiles(); return; } }