GeneralWidget::GeneralWidget(QWidget *parent, UserData *self) : BlockWidget(parent, self, lang(lng_settings_section_general)) , _changeLanguage(this, lang(lng_settings_change_lang), st::boxLinkButton) { connect(_changeLanguage, SIGNAL(clicked()), this, SLOT(onChangeLanguage())); subscribe(Global::RefChooseCustomLang(), [this]() { chooseCustomLang(); }); subscribe(FileDialog::QueryDone(), [this](const FileDialog::QueryUpdate &update) { notifyFileQueryUpdated(update); }); refreshControls(); }
BackgroundWidget::BackgroundWidget(QWidget *parent, UserData *self) : BlockWidget(parent, self, lang(lng_settings_section_background)) { createControls(); subscribe(FileDialog::QueryDone(), [this](const FileDialog::QueryUpdate &update) { notifyFileQueryUpdated(update); }); subscribe(Window::chatBackground(), [this](const Window::ChatBackgroundUpdate &update) { using Update = Window::ChatBackgroundUpdate; if (update.type == Update::Type::New) { _background->updateImage(); } else if (update.type == Update::Type::Start) { needBackgroundUpdate(update.tiled); } }); subscribe(Adaptive::Changed(), [this]() { if (Global::AdaptiveLayout() == Adaptive::WideLayout) { _adaptive->slideDown(); } else { _adaptive->slideUp(); } }); }
connect(_description, SIGNAL(submitted(bool)), this, SLOT(onNext())); connect(_description, SIGNAL(cancelled()), this, SLOT(onClose())); } connect(_title, SIGNAL(submitted(bool)), this, SLOT(onNameSubmit())); addButton(lang(_creating == CreatingGroupChannel ? lng_create_group_create : lng_create_group_next), [this] { onNext(); }); addButton(lang(_fromTypeChoose ? lng_create_group_back : lng_cancel), [this] { closeBox(); }); _photo->setClickedCallback(App::LambdaDelayed(st::defaultActiveButton.ripple.hideDuration, this, [this] { auto imgExtensions = cImgExtensions(); auto filter = qsl("Image files (*") + imgExtensions.join(qsl(" *")) + qsl(");;") + filedialogAllFilesFilter(); _setPhotoFileQueryId = FileDialog::queryReadFile(lang(lng_choose_image), filter); })); subscribe(FileDialog::QueryDone(), [this](const FileDialog::QueryUpdate &update) { notifyFileQueryUpdated(update); }); updateMaxHeight(); } void GroupInfoBox::setInnerFocus() { _title->setFocusFast(); } void GroupInfoBox::resizeEvent(QResizeEvent *e) { BoxContent::resizeEvent(e); _photo->moveToLeft(st::boxPadding.left() + st::newGroupInfoPadding.left(), st::boxPadding.top() + st::newGroupInfoPadding.top()); auto nameLeft = st::newGroupPhotoSize + st::newGroupNamePosition.x();