void Tool::registerConfigs() { char *env = getenv ("HOME"); std::string home; if (env) { home = env; addConfig( home + "/tool.cfg.xml" ); } addConfig( "tool.cfg.xml" ); if (env) { addConfig( home + "/" + name() + ".cfg.xml" ); } addConfig( name() + ".cfg.xml" ); }
Bit_ly_Config::Bit_ly_Config(QWidget *parent, const QVariantList &): KCModule(KAboutData::pluginData(QLatin1String("kcm_choqok_bit_ly")), parent) { QVBoxLayout *layout = new QVBoxLayout(this); QWidget *wd = new QWidget(this); wd->setObjectName(QLatin1String("mBitLYCtl")); wd->setMinimumWidth(400); ui.setupUi(wd); addConfig(Bit_ly_Settings::self(), wd); layout->addWidget(wd); QRegExp rx(QLatin1String("([a-z0-9_]){4,32}"), Qt::CaseInsensitive); QValidator *val0 = new QRegExpValidator(rx, 0); ui.kcfg_login->setValidator(val0); rx.setPattern(QLatin1String("([a-z0-9_]){1,40}")); QValidator *val1 = new QRegExpValidator(rx, 0); ui.kcfg_api_key->setValidator(val1); ui.help_label->setTextFormat(Qt::RichText); ui.help_label->setText(i18nc("The your_api_key part of the URL is a fixed part of the URL " "and should probably not be changed in localization.", "You can find your API key <a href=\"http://bit.ly/a/your_api_key\">here</a>")); domains << QLatin1String("bit.ly") << QLatin1String("j.mp"); ui.kcfg_domain->addItems(domains); connect(ui.kcfg_login, SIGNAL(textChanged(QString)), SLOT(emitChanged())); connect(ui.kcfg_api_key, SIGNAL(textChanged(QString)), SLOT(emitChanged())); connect(ui.kcfg_domain, SIGNAL(currentIndexChanged(int)), SLOT(emitChanged())); connect(ui.validate_button, SIGNAL(clicked(bool)), SLOT(slotValidate())); }
LookingGlassEffectConfig::LookingGlassEffectConfig(QWidget* parent, const QVariantList& args) : KCModule(EffectFactory::componentData(), parent, args) { m_ui = new LookingGlassEffectConfigForm(this); QVBoxLayout* layout = new QVBoxLayout(this); layout->addWidget(m_ui); addConfig(LookingGlassConfig::self(), m_ui); connect(m_ui->editor, SIGNAL(keyChange()), this, SLOT(changed())); // Shortcut config. The shortcut belongs to the component "kwin"! m_actionCollection = new KActionCollection(this, KComponentData("kwin")); m_actionCollection->setConfigGroup("LookingGlass"); m_actionCollection->setConfigGlobal(true); KAction* a; a = static_cast< KAction* >(m_actionCollection->addAction(KStandardAction::ZoomIn)); a->setProperty("isConfigurationAction", true); a->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_Plus)); a = static_cast< KAction* >(m_actionCollection->addAction(KStandardAction::ZoomOut)); a->setProperty("isConfigurationAction", true); a->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_Minus)); a = static_cast< KAction* >(m_actionCollection->addAction(KStandardAction::ActualSize)); a->setProperty("isConfigurationAction", true); a->setGlobalShortcut(KShortcut(Qt::META + Qt::Key_0)); m_ui->editor->addCollection(m_actionCollection); }
void WWidgetItemImpl::createComponent(DomElement *parentContainer) { DomElement *e = item_->widget()->createSDomElement(WApplication::instance()); e->setProperty(PropertyStyle, e->getProperty(PropertyStyle) + "position:absolute;left:-10000px;top:-10000px;" "visibility:hidden;"); Container *c = dynamic_cast<Container *>(item_->widget()); if (!c) { std::stringstream js; js << "var " << var_ << "=new Ext.BoxComponent({id:'" << id_ << "',applyTo:'" << item_->widget()->id() << "'"; addConfig(js); Container::setSizeConfig(js, item_->widget()); js << "});{var s=" << item_->widget()->jsRef() << ";s.style.position='';" "s.style.left='';" "s.style.top='';" "s.style.visibility='';}"; e->callJavaScript(js.str()); } parentContainer->addChild(e); }
MouseMarkEffectConfig::MouseMarkEffectConfig(QWidget* parent, const QVariantList& args) : KCModule(EffectFactory::componentData(), parent, args) { m_ui = new MouseMarkEffectConfigForm(this); m_ui->kcfg_LineWidth->setSuffix(ki18np(" pixel", " pixels")); QVBoxLayout* layout = new QVBoxLayout(this); layout->addWidget(m_ui); addConfig(MouseMarkConfig::self(), m_ui); // Shortcut config. The shortcut belongs to the component "kwin"! m_actionCollection = new KActionCollection(this, KComponentData("kwin")); KAction* a = static_cast< KAction* >(m_actionCollection->addAction("ClearMouseMarks")); a->setText(i18n("Clear Mouse Marks")); a->setProperty("isConfigurationAction", true); a->setGlobalShortcut(KShortcut(Qt::SHIFT + Qt::META + Qt::Key_F11)); a = static_cast< KAction* >(m_actionCollection->addAction("ClearLastMouseMark")); a->setText(i18n("Clear Last Mouse Mark")); a->setProperty("isConfigurationAction", true); a->setGlobalShortcut(KShortcut(Qt::SHIFT + Qt::META + Qt::Key_F12)); m_ui->editor->addCollection(m_actionCollection); load(); }
TaskbarConfig::TaskbarConfig(QWidget *parent, const char *name, const QStringList &) : KCModule(TaskBarFactory::instance(), parent, name) { QVBoxLayout *layout = new QVBoxLayout(this, 0, KDialog::spacingHint()); m_widget = new TaskbarConfigUI(this); layout->addWidget(m_widget); // TODO: Load these from .desktop files? m_appearances.append(TaskbarAppearance(i18n("Elegant"), false, false, true)); m_appearances.append(TaskbarAppearance(i18n("Classic"), true, false, true)); m_appearances.append(TaskbarAppearance(i18n("For Transparency"), false, true, true)); for(TaskbarAppearance::List::const_iterator it = m_appearances.constBegin(); it != m_appearances.constEnd(); ++it) { m_widget->appearance->insertItem((*it).name()); } connect(m_widget->appearance, SIGNAL(activated(int)), this, SLOT(appearanceChanged(int))); addConfig(TaskBarSettings::self(), m_widget); setQuickHelp( i18n("<h1>Taskbar</h1> You can configure the taskbar here." " This includes options such as whether or not the taskbar should show all" " windows at once or only those on the current desktop." " You can also configure whether or not the Window List button will be displayed.")); QStringList list = i18nActionList(); m_widget->kcfg_LeftButtonAction->insertStringList(list); m_widget->kcfg_MiddleButtonAction->insertStringList(list); m_widget->kcfg_RightButtonAction->insertStringList(list); m_widget->kcfg_GroupTasks->insertStringList(i18nGroupModeList()); connect(m_widget->kcfg_GroupTasks, SIGNAL(activated(int)), this, SLOT(slotUpdateComboBox())); connect(m_widget->kcfg_UseCustomColors, SIGNAL(stateChanged(int)), this, SLOT(slotUpdateCustomColors())); slotUpdateCustomColors(); updateAppearanceCombo(); if(KWin::numberOfDesktops() < 2) { m_widget->kcfg_ShowAllWindows->hide(); m_widget->kcfg_SortByDesktop->hide(); m_widget->spacer2->changeSize(0, 0); } if(!QApplication::desktop()->isVirtualDesktop() || QApplication::desktop()->numScreens() == 1) // No Ximerama { m_widget->showAllScreens->hide(); } connect(m_widget->showAllScreens, SIGNAL(stateChanged(int)), SLOT(changed())); KAboutData *about = new KAboutData(I18N_NOOP("kcmtaskbar"), I18N_NOOP("KDE Taskbar Control Module"), 0, 0, KAboutData::License_GPL, I18N_NOOP("(c) 2000 - 2001 Matthias Elter")); about->addAuthor("Matthias Elter", 0, "*****@*****.**"); about->addCredit("Stefan Nikolaus", I18N_NOOP("KConfigXT conversion"), "*****@*****.**"); setAboutData(about); load(); QTimer::singleShot(0, this, SLOT(notChanged())); }
int solvePuzzle(void) { struct puzzlelist *nextpuz; char buf[256]; int i; if (solution(thePuzzle)) { puzzle_window->label("Puzzle already solved!"); return 0; } addConfig(thePuzzle, NULL); i = 0; while (puzzles) { i++; if (generateNewConfigs(puzzles->puzzle)) break; nextpuz = puzzles->next; free((char *) puzzles); puzzles = nextpuz; } if (puzzles == NULL) { freeSolutions(); sprintf(buf, "I can't solve it! (%d positions examined)", i); puzzle_window->label(buf); return 0; } return 1; }
ConfigManager ConfigManager::operator=(double value) { addConfig(m_key, value, m_section); m_key = 0; m_section = 0; return *this; }
ConfigManager ConfigManager::operator=(const std::string& value) { addConfig(m_key, value, m_section); m_key = 0; m_section = 0; return *this; }
BehaviorConfig::BehaviorConfig(QWidget *parent, const QVariantList &args) : KCModule(KAboutData::pluginData(QLatin1String("kcm_choqok_behaviorconfig")), parent, args) , d(new Private) { qCDebug(CHOQOK); QVBoxLayout *layout = new QVBoxLayout(this); // since KSetting::Dialog has margins here, we don't need our own. layout->setContentsMargins(0, 0, 0, 0); d->mBehaviorTabCtl = new QTabWidget(this); d->mBehaviorTabCtl->setObjectName(QLatin1String("mBehaviorTabCtl")); layout->addWidget(d->mBehaviorTabCtl); // "General" TAB ============================================================ QWidget *mPrfsGeneralDlg = new QWidget(d->mBehaviorTabCtl); d->mPrfsGeneral.setupUi(mPrfsGeneralDlg); addConfig(Choqok::BehaviorSettings::self(), mPrfsGeneralDlg); d->mBehaviorTabCtl->addTab(mPrfsGeneralDlg, i18n("&General")); #ifdef QTINDICATE_BUILD // "Notifications" TAB ============================================================ QWidget *mPrfsNotifyDlg = new QWidget(d->mBehaviorTabCtl); d->mPrfsNotify.setupUi(mPrfsNotifyDlg); addConfig(Choqok::BehaviorSettings::self(), mPrfsNotifyDlg); d->mBehaviorTabCtl->addTab(mPrfsNotifyDlg, i18n("&Notifications")); /* Remove below code, when all functions on tab will work*/ d->mPrfsNotify.kcfg_notifyInterval->setVisible(false); d->mPrfsNotify.kcfg_showAllNotifiesInOne->setVisible(false); d->mPrfsNotify.label_4->setVisible(false); /* */ #endif // "Shortening" TAB =============================================================== d->mPrfsShorten = new BehaviorConfig_Shorten(d->mBehaviorTabCtl); addConfig(Choqok::BehaviorSettings::self(), d->mPrfsShorten); d->mBehaviorTabCtl->addTab(d->mPrfsShorten, i18n("URL &Shortening")); KCModuleInfo proxyInfo(QLatin1String("proxy.desktop")); d->proxyModule = new KCModuleProxy(proxyInfo, parent); d->mBehaviorTabCtl->addTab(d->proxyModule, proxyInfo.moduleName()); connect(d->mPrfsShorten, SIGNAL(changed(bool)), this, SIGNAL(changed(bool))); connect(d->proxyModule, SIGNAL(changed(bool)), this, SIGNAL(changed(bool))); load(); }
AppearanceConfig::AppearanceConfig(QWidget *parent, const QVariantList &args) : KCModule(KAboutData::pluginData(QLatin1String("kcm_choqok_appearanceconfig")), parent, args) { setupUi(this); addConfig(Choqok::AppearanceSettings::self(), this); load(); }
KWIN_EFFECT_CONFIG_FACTORY BlurEffectConfig::BlurEffectConfig(QWidget *parent, const QVariantList &args) : KCModule(EffectFactory::componentData(), parent, args) { ui.setupUi(this); addConfig(BlurConfig::self(), this); load(); }
KTimeTrackerStorageConfig::KTimeTrackerStorageConfig( const KComponentData &inst, QWidget *parent ) :KCModule( inst, parent ) { QHBoxLayout *lay = new QHBoxLayout( this ); Ui::StoragePage *storageUi = new Ui::StoragePage; QWidget *storagePage = new QWidget; storageUi->setupUi( storagePage ); lay->addWidget( storagePage ); addConfig( KTimeTrackerSettings::self(), storagePage ); load(); }
KTimeTrackerBehaviorConfig::KTimeTrackerBehaviorConfig( const KComponentData &inst, QWidget *parent ) :KCModule( inst, parent ) { QHBoxLayout *lay = new QHBoxLayout( this ); Ui::BehaviorPage *behaviorUi = new Ui::BehaviorPage; QWidget *behaviorPage = new QWidget; behaviorUi->setupUi( behaviorPage ); lay->addWidget( behaviorPage ); addConfig( KTimeTrackerSettings::self(), behaviorPage ); load(); }
CoverSwitchEffectConfig::CoverSwitchEffectConfig(QWidget* parent, const QVariantList& args) : KCModule(KAboutData::pluginData(QStringLiteral("coverswitch")), parent, args) { m_ui = new CoverSwitchEffectConfigForm(this); QVBoxLayout* layout = new QVBoxLayout(this); layout->addWidget(m_ui); addConfig(CoverSwitchConfig::self(), m_ui); }
KTimeTrackerDisplayConfig::KTimeTrackerDisplayConfig( const KComponentData &inst, QWidget *parent ) :KCModule( inst, parent ) { QHBoxLayout *lay = new QHBoxLayout( this ); Ui::DisplayPage *displayUi = new Ui::DisplayPage; QWidget *displayPage = new QWidget; displayUi->setupUi( displayPage ); lay->addWidget( displayPage ); addConfig( KTimeTrackerSettings::self(), displayPage ); load(); }
Preferences::Preferences(QWidget *parent, const QStringList &args) : KDevelop::ConfigModule( DocumentViewSettings::self(), PreferencesFactory::componentData(), parent, args ) { QVBoxLayout* l = new QVBoxLayout( this ); QWidget* w = new QWidget; preferencesDialog = new Ui::SettingsWidget; preferencesDialog->setupUi( w ); l->addWidget( w ); addConfig( DocumentViewSettings::self(), w ); load(); }
int generateNewConfigs(struct puzzle *puzzle) { int i, j, k; Config pieces; Config newpieces; memcpy(pieces, puzzle->pieces, HEIGHT * WIDTH); for (i = 0; i < WIDTH; i++) { for (j = 0; j < HEIGHT; j++) { if (pieces[j][i] == 0) { for (k = 0; k < 4; k++) { if (canmove0(pieces, i, j, k, newpieces)) { if (addConfig(newpieces, puzzle)) return 1; } } } } } return 0; }
CDDBModule::CDDBModule(QWidget *parent, const char *name, const QStringList &) : KCModule(parent, name) { KGlobal::locale()->insertCatalogue("libkcddb"); setButtons(Default | Apply); widget_ = new CDDBConfigWidget(this); KCDDB::Config* cfg = new KCDDB::Config(); cfg->readConfig(); addConfig(cfg, widget_); QVBoxLayout * layout = new QVBoxLayout(this, 0); layout->addWidget(widget_); layout->addStretch(); setQuickHelp(i18n("CDDB is used to get information like artist, title and song-names in CD's")); load(); }
PresentWindowsEffectConfig::PresentWindowsEffectConfig(QWidget* parent, const QVariantList& args) : KCModule(EffectFactory::componentData(), parent, args) { m_ui = new PresentWindowsEffectConfigForm(this); QVBoxLayout* layout = new QVBoxLayout(this); layout->addWidget(m_ui); // Shortcut config. The shortcut belongs to the component "kwin"! m_actionCollection = new KActionCollection(this, KComponentData("kwin")); m_actionCollection->setConfigGroup("PresentWindows"); m_actionCollection->setConfigGlobal(true); KAction* a = (KAction*) m_actionCollection->addAction("ExposeAll"); a->setText(i18n("Toggle Present Windows (All desktops)")); a->setProperty("isConfigurationAction", true); a->setGlobalShortcut(KShortcut(Qt::CTRL + Qt::Key_F10)); KAction* b = (KAction*) m_actionCollection->addAction("Expose"); b->setText(i18n("Toggle Present Windows (Current desktop)")); b->setProperty("isConfigurationAction", true); b->setGlobalShortcut(KShortcut(Qt::CTRL + Qt::Key_F9)); KAction* c = (KAction*)m_actionCollection->addAction("ExposeClass"); c->setText(i18n("Toggle Present Windows (Window class)")); c->setProperty("isConfigurationAction", true); c->setGlobalShortcut(KShortcut(Qt::CTRL + Qt::Key_F7)); m_ui->shortcutEditor->addCollection(m_actionCollection); connect(m_ui->shortcutEditor, SIGNAL(keyChange()), this, SLOT(changed())); addConfig(PresentWindowsConfig::self(), m_ui); load(); }
ManagerModule::ManagerModule( QWidget* parent, const char* name ) : KCModule( parent, name ) { ManagerModuleView *view = new ManagerModuleView( this ); addConfig( MediaManagerSettings::self(), view ); #ifndef COMPILE_HALBACKEND QString hal_text = view->kcfg_HalBackendEnabled->text(); hal_text += " ("+i18n("No support for HAL on this system")+")"; view->kcfg_HalBackendEnabled->setText( hal_text ); #endif view->kcfg_HalBackendEnabled->setEnabled( false ); #ifndef COMPILE_LINUXCDPOLLING QString poll_text = view->kcfg_CdPollingEnabled->text(); poll_text += " ("+i18n("No support for CD polling on this system")+")"; view->kcfg_CdPollingEnabled->setText( poll_text ); #endif view->kcfg_CdPollingEnabled->setEnabled( false ); load(); }
void ProjectGenerator::init() { if(init_flag) return; int file_count = 0; init_flag = TRUE; QMap<QString, QStringList> &v = project->variables(); QString templ = Option::user_template.isEmpty() ? QString("app") : Option::user_template; if(!Option::user_template_prefix.isEmpty()) templ.prepend(Option::user_template_prefix); v["TEMPLATE_ASSIGN"] += templ; //figure out target if(Option::output.name() == "-" || Option::output.name().isEmpty()) v["TARGET"] = QStringList("unknown"); //the scary stuff if(project->first("TEMPLATE_ASSIGN") != "subdirs") { QString builtin_regex = project_builtin_regx(); QStringList dirs = Option::projfile::project_dirs; if(Option::projfile::do_pwd) { if(!v["INCLUDEPATH"].contains(".")) v["INCLUDEPATH"] += "."; dirs.prepend(QDir::currentDirPath()); } for(QStringList::Iterator pd = dirs.begin(); pd != dirs.end(); pd++) { QString dir, regex; bool add_depend = FALSE; if(QFile::exists((*pd))) { QFileInfo fi((*pd)); if(fi.isDir()) { dir = (*pd); add_depend = TRUE; if(dir.right(1) != Option::dir_sep) dir += Option::dir_sep; if(Option::projfile::do_recursive) { QDir d(dir); d.setFilter(QDir::Dirs); for(int i = 0; i < (int)d.count(); i++) { if(d[i] != "." && d[i] != "..") dirs.append(dir + d[i] + QDir::separator() + builtin_regex); } } regex = builtin_regex; } else { QString file = (*pd); int s = file.findRev(Option::dir_sep); if(s != -1) dir = file.left(s+1); if(addFile(file)) { add_depend = TRUE; file_count++; } } } else { //regexp regex = (*pd); } if(!regex.isEmpty()) { int s = regex.findRev(Option::dir_sep); if(s != -1) { dir = regex.left(s+1); regex = regex.right(regex.length() - (s+1)); } if(Option::projfile::do_recursive) { QDir d(dir); d.setFilter(QDir::Dirs); for(int i = 0; i < (int)d.count(); i++) { if(d[i] != "." && d[i] != "..") dirs.append(dir + d[i] + QDir::separator() + regex); } } QDir d(dir, regex); for(int i = 0; i < (int)d.count(); i++) { QString file = dir + d[i]; if (addFile(file)) { add_depend = TRUE; file_count++; } } } if(add_depend && !dir.isEmpty() && !v["DEPENDPATH"].contains(dir)) { QFileInfo fi(dir); if(fi.absFilePath() != QDir::currentDirPath()) v["DEPENDPATH"] += fileFixify(dir); } } } if(!file_count) { //shall we try a subdir? QStringList dirs = Option::projfile::project_dirs; if(Option::projfile::do_pwd) dirs.prepend("."); const QString out_file = fileFixify(Option::output.name()); for(QStringList::Iterator pd = dirs.begin(); pd != dirs.end(); pd++) { if(QFile::exists((*pd))) { QString newdir = (*pd); QFileInfo fi(newdir); if(fi.isDir()) { newdir = fileFixify(newdir); QStringList &subdirs = v["SUBDIRS"]; if(QFile::exists(fi.filePath() + QDir::separator() + fi.fileName() + ".pro") && !subdirs.contains(newdir)) { subdirs.append(newdir); } else { QDir d(newdir, "*.pro"); d.setFilter(QDir::Files); for(int i = 0; i < (int)d.count(); i++) { QString nd = newdir; if(nd == ".") nd = ""; else if(!nd.isEmpty() && !nd.endsWith(QString(QChar(QDir::separator())))) nd += QDir::separator(); nd += d[i]; fileFixify(nd); if(d[i] != "." && d[i] != ".." && !subdirs.contains(nd) && !out_file.endsWith(nd)) subdirs.append(nd); } } if(Option::projfile::do_recursive) { QDir d(newdir); d.setFilter(QDir::Dirs); for(int i = 0; i < (int)d.count(); i++) { QString nd = fileFixify(newdir + QDir::separator() + d[i]); if(d[i] != "." && d[i] != ".." && !dirs.contains(nd)) dirs.append(nd); } } } } else { //regexp QString regx = (*pd), dir; int s = regx.findRev(Option::dir_sep); if(s != -1) { dir = regx.left(s+1); regx = regx.right(regx.length() - (s+1)); } QDir d(dir, regx); d.setFilter(QDir::Dirs); QStringList &subdirs = v["SUBDIRS"]; for(int i = 0; i < (int)d.count(); i++) { QString newdir(dir + d[i]); QFileInfo fi(newdir); if(fi.fileName() != "." && fi.fileName() != "..") { newdir = fileFixify(newdir); if(QFile::exists(fi.filePath() + QDir::separator() + fi.fileName() + ".pro") && !subdirs.contains(newdir)) { subdirs.append(newdir); } else { QDir d(newdir, "*.pro"); d.setFilter(QDir::Files); for(int i = 0; i < (int)d.count(); i++) { QString nd = newdir + QDir::separator() + d[i]; fileFixify(nd); if(d[i] != "." && d[i] != ".." && !subdirs.contains(nd)) { if(newdir + d[i] != Option::output_dir + Option::output.name()) subdirs.append(nd); } } } if(Option::projfile::do_recursive && !dirs.contains(newdir)) dirs.append(newdir); } } } } v["TEMPLATE_ASSIGN"] = "subdirs"; return; } QPtrList<MakefileDependDir> deplist; deplist.setAutoDelete(TRUE); { QStringList &d = v["DEPENDPATH"]; for(QStringList::Iterator it = d.begin(); it != d.end(); ++it) { QString r = (*it), l = Option::fixPathToLocalOS((*it)); deplist.append(new MakefileDependDir(r, l)); } } QStringList &h = v["HEADERS"]; bool no_qt_files = TRUE; QString srcs[] = { "SOURCES", "YACCSOURCES", "LEXSOURCES", "INTERFACES", QString::null }; for(int i = 0; !srcs[i].isNull(); i++) { QStringList &l = v[srcs[i]]; for(QStringList::Iterator val_it = l.begin(); val_it != l.end(); ++val_it) { if(generateDependencies(deplist, (*val_it), TRUE)) { QStringList &tmp = findDependencies((*val_it)); if(!tmp.isEmpty()) { for(QStringList::Iterator dep_it = tmp.begin(); dep_it != tmp.end(); ++dep_it) { QString file_dir = (*dep_it).section(Option::dir_sep, 0, -2), file_no_path = (*dep_it).section(Option::dir_sep, -1); if(!file_dir.isEmpty()) { for(MakefileDependDir *mdd = deplist.first(); mdd; mdd = deplist.next()) { if(mdd->local_dir == file_dir && !v["INCLUDEPATH"].contains(mdd->real_dir)) v["INCLUDEPATH"] += mdd->real_dir; } } if(no_qt_files && file_no_path.find(QRegExp("^q[a-z_0-9].h$")) != -1) no_qt_files = FALSE; QString h_ext; for(QStringList::Iterator hit = Option::h_ext.begin(); hit != Option::h_ext.end(); ++hit) { if((*dep_it).endsWith((*hit))) { h_ext = (*hit); break; } } if(!h_ext.isEmpty()) { if((*dep_it).left(1).lower() == "q") { QString qhdr = (*dep_it).lower(); if(file_no_path == "qthread.h") addConfig("thread"); } for(QStringList::Iterator cppit = Option::cpp_ext.begin(); cppit != Option::cpp_ext.end(); ++cppit) { QString src((*dep_it).left((*dep_it).length() - h_ext.length()) + (*cppit)); if(QFile::exists(src)) { bool exists = FALSE; QStringList &srcl = v["SOURCES"]; for(QStringList::Iterator src_it = srcl.begin(); src_it != srcl.end(); ++src_it) { if((*src_it).lower() == src.lower()) { exists = TRUE; break; } } if(!exists) srcl.append(src); } } } else if((*dep_it).endsWith(Option::lex_ext) && file_no_path.startsWith(Option::lex_mod)) { addConfig("lex_included"); } if(!h.contains((*dep_it))) { if(generateMocList((*dep_it)) && !findMocDestination((*dep_it)).isEmpty()) h += (*dep_it); } } } } } } if(h.isEmpty()) addConfig("moc", FALSE); //if we find a file that matches an forms it needn't be included in the project QStringList &u = v["INTERFACES"]; QString no_ui[] = { "SOURCES", "HEADERS", QString::null }; { for(int i = 0; !no_ui[i].isNull(); i++) { QStringList &l = v[no_ui[i]]; for(QStringList::Iterator val_it = l.begin(); val_it != l.end(); ) { bool found = FALSE; for(QStringList::Iterator ui_it = u.begin(); ui_it != u.end(); ++ui_it) { QString s1 = (*val_it).right((*val_it).length() - ((*val_it).findRev(Option::dir_sep) + 1)); if(s1.findRev('.') != -1) s1 = s1.left(s1.findRev('.')) + Option::ui_ext; QString u1 = (*ui_it).right((*ui_it).length() - ((*ui_it).findRev(Option::dir_sep) + 1)); if(s1 == u1) { found = TRUE; break; } } if(!found && (*val_it).endsWith(Option::cpp_moc_ext)) found = TRUE; if(found) val_it = l.remove(val_it); else ++val_it; } } } }
void SpriteFactory::addConfig(ConfigObject& object){ addConfig(object.configName(), object.spriteSheetName(), object.config()); }
ZoomEffectConfig::ZoomEffectConfig(QWidget* parent, const QVariantList& args) : KCModule(KAboutData::pluginData(QStringLiteral("zoom")), parent, args) { m_ui = new ZoomEffectConfigForm(this); QVBoxLayout* layout = new QVBoxLayout(this); layout->addWidget(m_ui); addConfig(ZoomConfig::self(), m_ui); connect(m_ui->editor, SIGNAL(keyChange()), this, SLOT(changed())); // Shortcut config. The shortcut belongs to the component "kwin"! KActionCollection *actionCollection = new KActionCollection(this, QStringLiteral("kwin")); actionCollection->setConfigGroup(QStringLiteral("Zoom")); actionCollection->setConfigGlobal(true); QAction* a; a = actionCollection->addAction(KStandardAction::ZoomIn); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Equal); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Equal); a = actionCollection->addAction(KStandardAction::ZoomOut); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Minus); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Minus); a = actionCollection->addAction(KStandardAction::ActualSize); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_0); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_0); a = actionCollection->addAction(QStringLiteral("MoveZoomLeft")); a->setIcon(QIcon::fromTheme(QStringLiteral("go-previous"))); a->setText(i18n("Move Left")); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Left); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Left); a = actionCollection->addAction(QStringLiteral("MoveZoomRight")); a->setIcon(QIcon::fromTheme(QStringLiteral("go-next"))); a->setText(i18n("Move Right")); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Right); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Right); a = actionCollection->addAction(QStringLiteral("MoveZoomUp")); a->setIcon(QIcon::fromTheme(QStringLiteral("go-up"))); a->setText(i18n("Move Up")); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Up); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Up); a = actionCollection->addAction(QStringLiteral("MoveZoomDown")); a->setIcon(QIcon::fromTheme(QStringLiteral("go-down"))); a->setText(i18n("Move Down")); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Down); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_Down); a = actionCollection->addAction(QStringLiteral("MoveMouseToFocus")); a->setIcon(QIcon::fromTheme(QStringLiteral("view-restore"))); a->setText(i18n("Move Mouse to Focus")); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_F5); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_F5); a = actionCollection->addAction(QStringLiteral("MoveMouseToCenter")); a->setIcon(QIcon::fromTheme(QStringLiteral("view-restore"))); a->setText(i18n("Move Mouse to Center")); a->setProperty("isConfigurationAction", true); KGlobalAccel::self()->setDefaultShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_F6); KGlobalAccel::self()->setShortcut(a, QList<QKeySequence>() << Qt::META + Qt::Key_F6); m_ui->editor->addCollection(actionCollection); load(); }
void ProjectGenerator::init() { if(init_flag) return; int file_count = 0; init_flag = true; verifyCompilers(); project->read(QMakeProject::ReadFeatures); project->variables()["CONFIG"].clear(); QMap<QString, QStringList> &v = project->variables(); QString templ = Option::user_template.isEmpty() ? QString("app") : Option::user_template; if(!Option::user_template_prefix.isEmpty()) templ.prepend(Option::user_template_prefix); v["TEMPLATE_ASSIGN"] += templ; //figure out target if(Option::output.fileName() == "-") v["TARGET_ASSIGN"] = QStringList("unknown"); else v["TARGET_ASSIGN"] = QStringList(QFileInfo(Option::output).baseName()); //the scary stuff if(project->first("TEMPLATE_ASSIGN") != "subdirs") { QString builtin_regex = project_builtin_regx(); QStringList dirs = Option::projfile::project_dirs; if(Option::projfile::do_pwd) { if(!v["INCLUDEPATH"].contains(".")) v["INCLUDEPATH"] += "."; dirs.prepend(qmake_getpwd()); } for(int i = 0; i < dirs.count(); ++i) { QString dir, regex, pd = dirs.at(i); bool add_depend = false; if(exists(pd)) { QFileInfo fi(fileInfo(pd)); if(fi.isDir()) { dir = pd; add_depend = true; if(dir.right(1) != Option::dir_sep) dir += Option::dir_sep; if(Option::recursive) { QStringList files = QDir(dir).entryList(QDir::Files); for(int i = 0; i < (int)files.count(); i++) { if(files[i] != "." && files[i] != "..") dirs.append(dir + files[i] + QDir::separator() + builtin_regex); } } regex = builtin_regex; } else { QString file = pd; int s = file.lastIndexOf(Option::dir_sep); if(s != -1) dir = file.left(s+1); if(addFile(file)) { add_depend = true; file_count++; } } } else { //regexp regex = pd; } if(!regex.isEmpty()) { int s = regex.lastIndexOf(Option::dir_sep); if(s != -1) { dir = regex.left(s+1); regex = regex.right(regex.length() - (s+1)); } if(Option::recursive) { QStringList entries = QDir(dir).entryList(QDir::Dirs); for(int i = 0; i < (int)entries.count(); i++) { if(entries[i] != "." && entries[i] != "..") { dirs.append(dir + entries[i] + QDir::separator() + regex); } } } QStringList files = QDir(dir).entryList(QDir::nameFiltersFromString(regex)); for(int i = 0; i < (int)files.count(); i++) { QString file = dir + files[i]; if (addFile(file)) { add_depend = true; file_count++; } } } if(add_depend && !dir.isEmpty() && !v["DEPENDPATH"].contains(dir, Qt::CaseInsensitive)) { QFileInfo fi(fileInfo(dir)); if(fi.absoluteFilePath() != qmake_getpwd()) v["DEPENDPATH"] += fileFixify(dir); } } } if(!file_count) { //shall we try a subdir? QStringList knownDirs = Option::projfile::project_dirs; if(Option::projfile::do_pwd) knownDirs.prepend("."); const QString out_file = fileFixify(Option::output.fileName()); for(int i = 0; i < knownDirs.count(); ++i) { QString pd = knownDirs.at(i); if(exists(pd)) { QString newdir = pd; QFileInfo fi(fileInfo(newdir)); if(fi.isDir()) { newdir = fileFixify(newdir); QStringList &subdirs = v["SUBDIRS"]; if(exists(fi.filePath() + QDir::separator() + fi.fileName() + Option::pro_ext) && !subdirs.contains(newdir, Qt::CaseInsensitive)) { subdirs.append(newdir); } else { QStringList profiles = QDir(newdir).entryList(QStringList("*" + Option::pro_ext), QDir::Files); for(int i = 0; i < (int)profiles.count(); i++) { QString nd = newdir; if(nd == ".") nd = ""; else if(!nd.isEmpty() && !nd.endsWith(QString(QChar(QDir::separator())))) nd += QDir::separator(); nd += profiles[i]; fileFixify(nd); if(profiles[i] != "." && profiles[i] != ".." && !subdirs.contains(nd, Qt::CaseInsensitive) && !out_file.endsWith(nd)) subdirs.append(nd); } } if(Option::recursive) { QStringList dirs = QDir(newdir).entryList(QDir::Dirs); for(int i = 0; i < (int)dirs.count(); i++) { QString nd = fileFixify(newdir + QDir::separator() + dirs[i]); if(dirs[i] != "." && dirs[i] != ".." && !knownDirs.contains(nd, Qt::CaseInsensitive)) knownDirs.append(nd); } } } } else { //regexp QString regx = pd, dir; int s = regx.lastIndexOf(Option::dir_sep); if(s != -1) { dir = regx.left(s+1); regx = regx.right(regx.length() - (s+1)); } QStringList files = QDir(dir).entryList(QDir::nameFiltersFromString(regx), QDir::Dirs); QStringList &subdirs = v["SUBDIRS"]; for(int i = 0; i < (int)files.count(); i++) { QString newdir(dir + files[i]); QFileInfo fi(fileInfo(newdir)); if(fi.fileName() != "." && fi.fileName() != "..") { newdir = fileFixify(newdir); if(exists(fi.filePath() + QDir::separator() + fi.fileName() + Option::pro_ext) && !subdirs.contains(newdir)) { subdirs.append(newdir); } else { QStringList profiles = QDir(newdir).entryList(QStringList("*" + Option::pro_ext), QDir::Files); for(int i = 0; i < (int)profiles.count(); i++) { QString nd = newdir + QDir::separator() + files[i]; fileFixify(nd); if(files[i] != "." && files[i] != ".." && !subdirs.contains(nd, Qt::CaseInsensitive)) { if(newdir + files[i] != Option::output_dir + Option::output.fileName()) subdirs.append(nd); } } } if(Option::recursive && !knownDirs.contains(newdir, Qt::CaseInsensitive)) knownDirs.append(newdir); } } } } v["TEMPLATE_ASSIGN"] = QStringList("subdirs"); return; } //setup deplist QList<QMakeLocalFileName> deplist; { const QStringList &d = v["DEPENDPATH"]; for(int i = 0; i < d.size(); ++i) deplist.append(QMakeLocalFileName(d[i])); } setDependencyPaths(deplist); QStringList &h = v["HEADERS"]; bool no_qt_files = true; QString srcs[] = { "SOURCES", "YACCSOURCES", "LEXSOURCES", "FORMS", QString() }; for(int i = 0; !srcs[i].isNull(); i++) { const QStringList &l = v[srcs[i]]; QMakeSourceFileInfo::SourceFileType type = QMakeSourceFileInfo::TYPE_C; QMakeSourceFileInfo::addSourceFiles(l, QMakeSourceFileInfo::SEEK_DEPS, type); for(int i = 0; i < l.size(); ++i) { QStringList tmp = QMakeSourceFileInfo::dependencies(l[i]); if(!tmp.isEmpty()) { for(int dep_it = 0; dep_it < tmp.size(); ++dep_it) { QString dep = tmp[dep_it]; dep = fixPathToQmake(dep); QString file_dir = dep.section(Option::dir_sep, 0, -2), file_no_path = dep.section(Option::dir_sep, -1); if(!file_dir.isEmpty()) { for(int inc_it = 0; inc_it < deplist.size(); ++inc_it) { QMakeLocalFileName inc = deplist[inc_it]; if(inc.local() == file_dir && !v["INCLUDEPATH"].contains(inc.real(), Qt::CaseInsensitive)) v["INCLUDEPATH"] += inc.real(); } } if(no_qt_files && file_no_path.indexOf(QRegExp("^q[a-z_0-9].h$")) != -1) no_qt_files = false; QString h_ext; for(int hit = 0; hit < Option::h_ext.size(); ++hit) { if(dep.endsWith(Option::h_ext.at(hit))) { h_ext = Option::h_ext.at(hit); break; } } if(!h_ext.isEmpty()) { for(int cppit = 0; cppit < Option::cpp_ext.size(); ++cppit) { QString src(dep.left(dep.length() - h_ext.length()) + Option::cpp_ext.at(cppit)); if(exists(src)) { QStringList &srcl = v["SOURCES"]; if(!srcl.contains(src, Qt::CaseInsensitive)) srcl.append(src); } } } else if(dep.endsWith(Option::lex_ext) && file_no_path.startsWith(Option::lex_mod)) { addConfig("lex_included"); } if(!h.contains(dep, Qt::CaseInsensitive)) h += dep; } } } } //strip out files that are actually output from internal compilers (ie temporary files) const QStringList &quc = project->variables()["QMAKE_EXTRA_COMPILERS"]; for(QStringList::ConstIterator it = quc.begin(); it != quc.end(); ++it) { QString tmp_out = project->variables()[(*it) + ".output"].first(); if(tmp_out.isEmpty()) continue; QStringList var_out = project->variables()[(*it) + ".variable_out"]; bool defaults = var_out.isEmpty(); for(int i = 0; i < var_out.size(); ++i) { QString v = var_out.at(i); if(v.startsWith("GENERATED_")) { defaults = true; break; } } if(defaults) { var_out << "SOURCES"; var_out << "HEADERS"; var_out << "FORMS"; } const QStringList &tmp = project->variables()[(*it) + ".input"]; for(QStringList::ConstIterator it2 = tmp.begin(); it2 != tmp.end(); ++it2) { QStringList &inputs = project->variables()[(*it2)]; for(QStringList::Iterator input = inputs.begin(); input != inputs.end(); ++input) { QString path = replaceExtraCompilerVariables(tmp_out, (*input), QString()); path = fixPathToQmake(path).section('/', -1); for(int i = 0; i < var_out.size(); ++i) { QString v = var_out.at(i); QStringList &list = project->variables()[v]; for(int src = 0; src < list.size(); ) { if(list[src] == path || list[src].endsWith("/" + path)) list.removeAt(src); else ++src; } } } } } }
TVerdict CIPEventNotifier3Step_LinkLocalAddress::doTestStepL() { SetTestStepResult(EFail); _LIT(KReadingConfig,"CIPEventNotifier3Step_LinkLocalAddress::doTestStepL() reading config.."); INFO_PRINTF1(KReadingConfig); TPtrC llAddr; if(!GetStringFromConfig(ConfigSection(),KTe_IPENAddressToPush, llAddr) || !GetStringFromConfig(ConfigSection(),KTe_IPENNetworkInterfacePrefixToMonitor, iNetworkInterfacePrefixToMonitor)) { User::Leave(KErrNotFound); } _LIT(KAddrToPush,"The address to be pushed is %S"); INFO_PRINTF2(KAddrToPush, &llAddr); if ( iLLAddr.Input(llAddr) != KErrNone ) { _LIT(KUnparsable,"Unparsable address in config!"); INFO_PRINTF1(KUnparsable); User::Leave(KErrArgument); } if(iLLAddr.IsLinkLocal() == false) { _LIT(KSpecifyLLAddr,"Please specify a linklocal address in config file! (169.254.x.x or fe80:...)!"); INFO_PRINTF1(KSpecifyLLAddr); User::Leave(KErrArgument); } _LIT(KSubscribing,"Subscribing.."); INFO_PRINTF1(KSubscribing); TName fullName = GetFullInterfaceNameL(iNetworkInterfacePrefixToMonitor); NetSubscribe::TEvent event( this, SignalHandler ); CDhcpSignal::SubscribeL( fullName, IPEvent::ELinklocalAddressKnown,event ); _LIT(KGettingDetails,"OK. Getting interface details.."); INFO_PRINTF1(KGettingDetails); // Now push the address.. Once we start the scheduler, the subscriber // should pick it up immediately! TPckgBuf<TSoInet6InterfaceInfo> originalCfg; const TSoInet6InterfaceInfo& originalCfgRef = originalCfg(); (void)originalCfgRef; // for debugging GetInterfaceInfoL(fullName,originalCfg); _LIT(KAddingLL,"OK. Adding a linklocal address.."); INFO_PRINTF1(KAddingLL); TInt err; TPckgBuf<TSoInet6InterfaceInfo> addConfig(originalCfg()); addConfig().iState = EIfUp; addConfig().iDoState = ETrue; addConfig().iDoId = ETrue; addConfig().iDoPrefix = ETrue; addConfig().iAlias = ETrue; // add another address addConfig().iDelete = EFalse; addConfig().iDoAnycast= EFalse; addConfig().iDoProxy = EFalse; addConfig().iAddress = iLLAddr; addConfig().iAddress.SetScope(2); err = iSocket->SetOpt(KSoInetConfigInterface, KSolInetIfCtrl, addConfig); User::LeaveIfError(err); _LIT(KWaitingForNotification,"OK. Waiting for notification.."); INFO_PRINTF1(KWaitingForNotification); CTimeout* timeout = CTimeout::NewLC(this); timeout->After(KTenSecondDADCompletionDelay); TRAPD(res,CActiveScheduler::Start()) if(res != KErrNone) { if(res == KErrTimedOut) { _LIT(KTimedOut,"Timed out! Subscriber isn't working"); INFO_PRINTF1(KTimedOut); } else { _LIT(KUnexpectedErrCode,"Received unexpected error code: %d"); INFO_PRINTF2(KUnexpectedErrCode,res); } return TestStepResult(); } _LIT(KRestoringAddress,"OK. Removing the address.."); INFO_PRINTF1(KRestoringAddress); addConfig().iDelete = ETrue; err = iSocket->SetOpt(KSoInetConfigInterface, KSolInetIfCtrl, addConfig); User::LeaveIfError(err); _LIT(KRestoredOk,"Restored OK. Clearing up.."); INFO_PRINTF1(KRestoredOk); timeout->Cancel(); CleanupStack::PopAndDestroy(timeout); if (iQuery && iQuery->iHandle) { CDhcpSignal::UnsubscribeL( event ); } _LIT(KOkDone,"OK. Done."); INFO_PRINTF1(KOkDone); return TestStepResult(); }