int main(int argc, char *argv[]) { QCoreApplication app(argc, argv); SettingsManager settingsManager(&app); LocalFileContentResolver *resolver = new LocalFileContentResolver(&app); LightHttpDaemon daemon(MIN_PORT, MIN_PORT, MAX_PORT, &app); daemon.setContentResolver(resolver); return app.exec(); }
void SeafileApplet::onDaemonStarted() { // // start daemon-related services // rpc_client_->connectDaemon(); message_listener_->connectDaemon(); // Sleep 500 millseconds to wait seafile registering services msleep(500); // // load proxy settings (important) // seafApplet->settingsManager()->loadSettings(); // // start network-related services // FileCacheDB::instance()->start(); AutoUpdateManager::instance()->start(); AvatarService::instance()->start(); SeahubNotificationsMonitor::instance()->start(); ServerStatusService::instance()->start(); account_mgr_->updateServerInfo(); // // start ui part // main_win_ = new MainWindow; #if defined(Q_OS_MAC) seafApplet->settingsManager()->setHideDockIcon(seafApplet->settingsManager()->hideDockIcon()); #endif if (configurator_->firstUse() || account_mgr_->accounts().size() == 0) { do { QString username = readPreconfigureExpandedString(kPreconfigureUsername); QString token = readPreconfigureExpandedString(kPreconfigureUserToken); QString url = readPreconfigureExpandedString(kPreconfigureServerAddr); QString computer_name = readPreconfigureExpandedString(kPreconfigureComputerName, settingsManager()->getComputerName()); if (!computer_name.isEmpty()) settingsManager()->setComputerName(computer_name); if (!username.isEmpty() && !token.isEmpty() && !url.isEmpty()) { Account account(url, username, token); if (account_mgr_->saveAccount(account) < 0) { warningBox(tr("failed to add default account")); exit(1); } break; } if (readPreconfigureEntry(kHideConfigurationWizard).toInt()) break; LoginDialog login_dialog; login_dialog.exec(); } while (0); } started_ = true; if (configurator_->firstUse() || !settings_mgr_->hideMainWindowWhenStarted()) { main_win_->showWindow(); } tray_icon_->start(); tray_icon_->setState(SeafileTrayIcon::STATE_DAEMON_UP); #if defined(Q_OS_WIN32) QTimer::singleShot(kIntervalBeforeShowInitVirtualDialog, this, SLOT(checkInitVDrive())); configurator_->installCustomUrlHandler(); #endif if (settings_mgr_->isCheckLatestVersionEnabled()) { checkLatestVersionInfo(); } OpenLocalHelper::instance()->checkPendingOpenLocalRequest(); QTimer::singleShot(kIntervalForUpdateRepoProperty, this, SLOT(updateReposPropertyForHttpSync())); // // start finder/explorer extension handler // #if defined(Q_OS_WIN32) SeafileExtensionHandler::instance()->start(); #elif defined(HAVE_FINDER_SYNC_SUPPORT) finderSyncListenerStart(); #endif }
void AppController::declareMenus() { settingsManager()->declareMenu("paintfield.file", tr("File")); settingsManager()->declareAction("paintfield.file.new", tr("New...")); settingsManager()->declareAction("paintfield.file.newFromImageFile", tr("Import and New...")); settingsManager()->declareAction("paintfield.file.newFromClipboard", tr("New from Clipboard")); settingsManager()->declareAction("paintfield.file.open", tr("Open...")); settingsManager()->declareAction("paintfield.file.close", tr("Close")); settingsManager()->declareAction("paintfield.file.save", tr("Save")); settingsManager()->declareAction("paintfield.file.saveAs", tr("Save As...")); settingsManager()->declareAction("paintfield.file.newCanvasIntoDocument", tr("New Canvas Into Current Document")); settingsManager()->declareAction("paintfield.file.export", tr("Export...")); settingsManager()->declareAction("paintfield.file.quit", tr("Quit")); settingsManager()->declareMenu("paintfield.edit", tr("Edit")); settingsManager()->declareAction("paintfield.edit.undo", tr("Undo")); settingsManager()->declareAction("paintfield.edit.redo", tr("Redo")); settingsManager()->declareAction("paintfield.edit.cut", tr("Cut")); settingsManager()->declareAction("paintfield.edit.copy", tr("Copy")); settingsManager()->declareAction("paintfield.edit.paste", tr("Paste")); settingsManager()->declareAction("paintfield.edit.delete", tr("Delete")); settingsManager()->declareAction("paintfield.edit.selectAll", tr("Select All")); settingsManager()->declareMenu("paintfield.view", tr("View")); settingsManager()->declareAction("paintfield.window.newWorkspace", tr("New Workspace")); settingsManager()->declareAction("paintfield.window.splitVertically", tr("Split Vertically")); settingsManager()->declareAction("paintfield.window.splitHorizontally", tr("Split Horizontally")); settingsManager()->declareAction("paintfield.window.closeCurrentSplit", tr("Close Current Split")); settingsManager()->declareAction("paintfield.window.closeWorkspace", tr("Close Workspace")); settingsManager()->declareMenu("paintfield.window", tr("Window")); settingsManager()->declareAction("paintfield.window.minimize", tr("Minimize")); settingsManager()->declareAction("paintfield.window.zoom", tr("Zoom")); settingsManager()->declareMenu("paintfield.help", tr("Help")); }