ShareBrowserSearch::ShareBrowserSearch(FileBrowserModel *model, QWidget *parent): QDialog(parent), searchRoot(NULL) { if ( !model ) throw 0; setupUi(this); this->model = model; if (WVGET("sharebrowsersearch/size").isValid()) resize(WVGET("sharebrowsersearch/size").toSize()); treeWidget->header()->restoreState(WVGET("sharebrowsersearch/columnstate").toByteArray()); setAttribute(Qt::WA_DeleteOnClose, true); connect(pushButton_SEARCH, SIGNAL(clicked()), this, SLOT(slotStartSearch())); connect(this, SIGNAL(gotItem(QString,FileBrowserItem*)), this, SLOT(slotGotItem(QString,FileBrowserItem*)), Qt::QueuedConnection); connect(treeWidget, SIGNAL(itemActivated(QTreeWidgetItem*,int)), this, SLOT(slotItemActivated(QTreeWidgetItem*,int))); show(); }
QueuedUsers::QueuedUsers(){ setupUi(this); setUnload(false); model = new QueuedUsersModel(this); treeView_USERS->setModel(model); treeView_USERS->setContextMenuPolicy(Qt::CustomContextMenu); treeView_USERS->header()->restoreState(WVGET("queued-users/headerstate", QByteArray()).toByteArray()); connect(this, SIGNAL(coreWaitingAddFile(VarMap)), this, SLOT(slotWaitingAddFile(VarMap)), Qt::QueuedConnection); connect(this, SIGNAL(coreWaitingRemoved(VarMap)), this, SLOT(slotWaitingRemoved(VarMap)), Qt::QueuedConnection); connect(treeView_USERS, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(slotContextMenu())); UploadManager::getInstance()->addListener(this); ArenaWidget::setState( ArenaWidget::Flags(ArenaWidget::state() | ArenaWidget::Singleton | ArenaWidget::Hidden) ); }
void SettingsGUI::init() { { //Basic tab WulforUtil *WU = WulforUtil::getInstance(); QStringList styles = QStyleFactory::keys(); comboBox_THEMES->addItem(tr("Default (need to restart)")); for (const QString &s : styles) comboBox_THEMES->addItem(s); comboBox_THEMES->setCurrentIndex(styles.indexOf(WSGET(WS_APP_THEME)) >= 0? (styles.indexOf(WSGET(WS_APP_THEME))+1) : 0); if (WSGET(WS_APP_FONT).isEmpty()) { lineEdit_APPFONT->setText(qApp->font().toString()); WSSET(WS_APP_FONT, qApp->font().toString()); } else lineEdit_APPFONT->setText(WSGET(WS_APP_FONT)); int i = 0; int k = -1; #if !defined(Q_OS_WIN) QDir translationsDir(CLIENT_TRANSLATIONS_DIR); #else QDir translationsDir(qApp->applicationDirPath()+QDir::separator()+CLIENT_TRANSLATIONS_DIR); #endif QMap<QString, QString> langNames; langNames["en.qm"] = tr("English"); langNames["ru.qm"] = tr("Russian"); langNames["be.qm"] = tr("Belarusian"); langNames["hu.qm"] = tr("Hungarian"); langNames["fr.qm"] = tr("French"); langNames["pl.qm"] = tr("Polish"); langNames["pt_BR.qm"] = tr("Portuguese (Brazil)"); langNames["sr.qm"] = tr("Serbian (Cyrillic)"); langNames["*****@*****.**"] = tr("Serbian (Latin)"); langNames["uk.qm"] = tr("Ukrainian"); langNames["es.qm"] = tr("Spanish"); langNames["eu.qm"] = tr("Basque"); langNames["bg.qm"] = tr("Bulgarian"); langNames["sk.qm"] = tr("Slovak"); langNames["cs.qm"] = tr("Czech"); langNames["de.qm"] = tr("German"); langNames["el.qm"] = tr("Greek"); langNames["it.qm"] = tr("Italian"); langNames["vi.qm"] = tr("Vietnamese"); langNames["zh_CN.qm"] = tr("Chinese (China)"); langNames["sv_SE.qm"] = tr("Swedish (Sweden)"); QString full_path; QString lang; for (const auto &f : translationsDir.entryList(QDir::Files | QDir::NoSymLinks)) { full_path = QDir::toNativeSeparators( translationsDir.filePath(f) ); lang = langNames[f]; if (!lang.isEmpty()) { comboBox_LANGS->addItem(lang, full_path); if (WSGET(WS_TRANSLATION_FILE).endsWith(f)) k = i; i++; } } comboBox_LANGS->setCurrentIndex(k); #if !defined(Q_OS_WIN) QString users = CLIENT_ICONS_DIR "/user/"; #else QString users = qApp->applicationDirPath()+QDir::separator()+CLIENT_ICONS_DIR "/user/"; #endif i = 0; k = -1; for (const QString &f : QDir(users).entryList(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot)) { if (!f.isEmpty()) { comboBox_USERS->addItem(f); if (f == WSGET(WS_APP_USERTHEME)) k = i; i++; } } comboBox_USERS->setCurrentIndex(k); #if !defined(Q_OS_WIN) QString icons = CLIENT_ICONS_DIR "/appl/"; #else QString icons = qApp->applicationDirPath()+QDir::separator()+CLIENT_ICONS_DIR "/appl/"; #endif i = 0; k = -1; for (const QString &f : QDir(icons).entryList(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot)) { if (!f.isEmpty()) { comboBox_ICONS->addItem(f); if (f == WSGET(WS_APP_ICONTHEME)) k = i; i++; } } comboBox_ICONS->setCurrentIndex(k); #if !defined(Q_OS_WIN) QString emot = CLIENT_DATA_DIR "/emoticons/"; #else QString emot = qApp->applicationDirPath()+QDir::separator()+CLIENT_DATA_DIR "/emoticons/"; #endif comboBox_EMOT->setCurrentIndex(0); i = 0; for (const QString &f : QDir(emot).entryList(QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot)) { if (!f.isEmpty()) { comboBox_EMOT->addItem(f); if (f == WSGET(WS_APP_EMOTICON_THEME)) comboBox_EMOT->setCurrentIndex(i); i++; } } lineEdit_LANGFILE->setText(WSGET(WS_TRANSLATION_FILE)); toolButton_LANGBROWSE->setIcon(WU->getPixmap(WulforUtil::eiFOLDER_BLUE)); if (WBGET(WB_MAINWINDOW_REMEMBER)) radioButton_REMEMBER->setChecked(true); else if (WBGET(WB_MAINWINDOW_HIDE)) radioButton_HIDE->setChecked(true); else radioButton_SHOW->setChecked(true); groupBox_TRAY->setChecked(WBGET(WB_TRAY_ENABLED)); groupBox_TRAY->setEnabled(QSystemTrayIcon::isSystemTrayAvailable()); if (WBGET(WB_MAINWINDOW_USE_SIDEBAR)) comboBox_TABBAR->setCurrentIndex(2); else if (WBGET(WB_MAINWINDOW_USE_M_TABBAR)) comboBox_TABBAR->setCurrentIndex(1); else comboBox_TABBAR->setCurrentIndex(0); #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) checkBox_ICONTHEME->setChecked(WBGET("app/use-icon-theme", false)); #endif checkBox_HIDE_ICONS_IN_MENU->setChecked(WBGET("mainwindow/dont-show-icons-in-menus", false)); // Hide options which do not work in Mac OS X, MS Windows or Haiku: #if defined (Q_OS_WIN) || defined (__HAIKU__) checkBox_ICONTHEME->hide(); #elif defined(Q_OS_MAC) checkBox_ICONTHEME->hide(); groupBox_TRAY->hide(); #endif } { //Chat tab checkBox_CHATJOINS->setChecked(WBGET(WB_CHAT_SHOW_JOINS)); checkBox_JOINSFAV->setChecked(WBGET(WB_CHAT_SHOW_JOINS_FAV)); checkBox_CHATHIDDEN->setChecked(WBGET(WB_SHOW_HIDDEN_USERS)); checkBox_IGNOREPMHUB->setChecked(BOOLSETTING(IGNORE_HUB_PMS)); checkBox_IGNOREPMBOT->setChecked(BOOLSETTING(IGNORE_BOT_PMS)); checkBox_REDIRECTPMBOT->setChecked(WBGET(WB_CHAT_REDIRECT_BOT_PMS)); checkBox_REDIRECT_UNREAD->setChecked(WBGET("hubframe/redirect-pm-to-main-chat", false)); checkBox_KEEPFOCUS->setChecked(WBGET(WB_CHAT_KEEPFOCUS)); checkBox_UNREADEN_DRAW_LINE->setChecked(WBGET("hubframe/unreaden-draw-line", true)); checkBox_USE_CTRL_ENTER->setChecked(WBGET(WB_USE_CTRL_ENTER)); checkBox_ROTATING->setChecked(WBGET(WB_CHAT_ROTATING_MSGS)); checkBox_EMOT->setChecked(WBGET(WB_APP_ENABLE_EMOTICON)); checkBox_EMOTFORCE->setChecked(WBGET(WB_APP_FORCE_EMOTICONS)); checkBox_SMILEPANEL->setChecked(WBGET(WB_CHAT_USE_SMILE_PANEL)); checkBox_HIDESMILEPANEL->setChecked(WBGET(WB_CHAT_HIDE_SMILE_PANEL)); } { //Chat (extended) tab comboBox_DBL_CLICK->setCurrentIndex(WIGET(WI_CHAT_DBLCLICK_ACT)); comboBox_MDL_CLICK->setCurrentIndex(WIGET(WI_CHAT_MDLCLICK_ACT)); comboBox_DEF_MAGNET_ACTION->setCurrentIndex(WIGET(WI_DEF_MAGNET_ACTION)); comboBox_APP_UNIT_BASE->setCurrentIndex(SETTING(APP_UNIT_BASE)); checkBox_HIGHLIGHTFAVS->setChecked(WBGET(WB_CHAT_HIGHLIGHT_FAVS)); checkBox_CHAT_SHOW_IP->setChecked(BOOLSETTING(USE_IP)); checkBox_CHAT_SHOW_CC->setChecked(BOOLSETTING(GET_USER_COUNTRY)); checkBox_BB_CODE->setChecked(WBGET("hubframe/use-bb-code", false)); lineEdit_TIMESTAMP->setText(WSGET(WS_CHAT_TIMESTAMP)); spinBox_OUT_IN_HIST->setValue(WIGET(WI_OUT_IN_HIST)); spinBox_PARAGRAPHS->setValue(WIGET(WI_CHAT_MAXPARAGRAPHS)); comboBox_CHAT_SEPARATOR->setCurrentIndex(comboBox_CHAT_SEPARATOR->findText(WSGET(WS_CHAT_SEPARATOR))); } { //Color tab QColor c; QPixmap p(10, 10); c.setNamedColor(WSGET(WS_CHAT_LOCAL_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Local user"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_OP_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Operator"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_BOT_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Bot"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_PRIV_LOCAL_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Private: local user"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_PRIV_USER_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Private: user"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_SAY_NICK)); p.fill(c); new QListWidgetItem(p, tr("Chat: Say nick"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_STAT_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Status"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_USER_COLOR)); p.fill(c); new QListWidgetItem(p, tr("User"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_FAVUSER_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Favorite User"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_TIME_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Time stamp"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_MSG_COLOR)); p.fill(c); new QListWidgetItem(p, tr("Message"), listWidget_CHATCOLOR); c.setNamedColor(WSGET(WS_CHAT_FIND_COLOR)); h_color = c; c.setAlpha(WIGET(WI_CHAT_FIND_COLOR_ALPHA)); p.fill(c); toolButton_H_COLOR->setIcon(p); c.setNamedColor(WSGET(WS_APP_SHARED_FILES_COLOR)); shared_files_color = c; c.setAlpha(WIGET(WI_APP_SHARED_FILES_ALPHA)); p.fill(c); toolButton_SHAREDFILES->setIcon(p); downloads_clr = qvariant_cast<QColor>(WVGET("transferview/download-bar-color", QColor())); uploads_clr = qvariant_cast<QColor>(WVGET("transferview/upload-bar-color", QColor())); if (downloads_clr.isValid()) { c = downloads_clr; p.fill(c); toolButton_DOWNLOADSCLR->setIcon(p); } if (uploads_clr.isValid()) { c = uploads_clr; p.fill(c); toolButton_UPLOADSCLR->setIcon(p); } checkBox_CHAT_BACKGROUND_COLOR->setChecked(WBGET("hubframe/change-chat-background-color", false)); toolButton_CHAT_BACKGROUND_COLOR->setEnabled(WBGET("hubframe/change-chat-background-color", false)); if (!WSGET("hubframe/chat-background-color", "").isEmpty()) { c.setNamedColor(WSGET("hubframe/chat-background-color")); chat_background_color = c; c.setAlpha(255); p.fill(c); toolButton_CHAT_BACKGROUND_COLOR->setIcon(p); } horizontalSlider_H_COLOR->setValue(WIGET(WI_CHAT_FIND_COLOR_ALPHA)); horizontalSlider_SHAREDFILES->setValue(WIGET(WI_APP_SHARED_FILES_ALPHA)); } { // Fonts tab CustomFontModel *model = new CustomFontModel(this); tableView->setModel(model); tableView->horizontalHeader()->restoreState(QByteArray::fromBase64(WSGET(WS_SETTINGS_GUI_FONTS_STATE).toUtf8())); connect(tableView, SIGNAL(doubleClicked(QModelIndex)), model, SLOT(itemDoubleClicked(QModelIndex))); connect(this, SIGNAL(saveFonts()), model, SLOT(ok())); } connect(pushButton_TEST, SIGNAL(clicked()), this, SLOT(slotTestAppTheme())); connect(comboBox_THEMES, SIGNAL(activated(int)), this, SLOT(slotThemeChanged())); connect(listWidget_CHATCOLOR, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(slotChatColorItemClicked(QListWidgetItem*))); connect(toolButton_APPFONTBROWSE, SIGNAL(clicked()), this, SLOT(slotBrowseFont())); connect(toolButton_LANGBROWSE, SIGNAL(clicked()), this, SLOT(slotBrowseLng())); connect(comboBox_LANGS, SIGNAL(activated(int)), this, SLOT(slotLngIndexChanged(int))); connect(comboBox_USERS, SIGNAL(activated(int)), this, SLOT(slotUsersChanged())); connect(comboBox_ICONS, SIGNAL(activated(int)), this, SLOT(slotIconsChanged())); connect(toolButton_H_COLOR, SIGNAL(clicked()), this, SLOT(slotGetColor())); connect(toolButton_SHAREDFILES, SIGNAL(clicked()), this, SLOT(slotGetColor())); connect(toolButton_CHAT_BACKGROUND_COLOR, SIGNAL(clicked()), this, SLOT(slotGetColor())); connect(toolButton_DOWNLOADSCLR, SIGNAL(clicked()), this, SLOT(slotGetColor())); connect(toolButton_UPLOADSCLR, SIGNAL(clicked()), this, SLOT(slotGetColor())); connect(pushButton_RESET, SIGNAL(clicked()), this, SLOT(slotResetTransferColors())); connect(horizontalSlider_H_COLOR, SIGNAL(valueChanged(int)), this, SLOT(slotSetTransparency(int))); connect(horizontalSlider_SHAREDFILES, SIGNAL(valueChanged(int)), this, SLOT(slotSetTransparency(int))); }