void Existing_window_condition::cfg_write( TDEConfig& cfg_P ) const { base::cfg_write( cfg_P ); TQString save_cfg_group = cfg_P.group(); cfg_P.setGroup( save_cfg_group + "Window" ); window()->cfg_write( cfg_P ); cfg_P.setGroup( save_cfg_group ); cfg_P.writeEntry( "Type", "EXISTING_WINDOW" ); // overwrites value set in base::cfg_write() }
Existing_window_condition::Existing_window_condition( TDEConfig& cfg_P, Condition_list_base* parent_P ) : Condition( cfg_P, parent_P ) { TQString save_cfg_group = cfg_P.group(); cfg_P.setGroup( save_cfg_group + "Window" ); _window = new Windowdef_list( cfg_P ); cfg_P.setGroup( save_cfg_group ); init(); set_match(); }
void Condition_list_base::cfg_write( TDEConfig& cfg_P ) const { TQString save_cfg_group = cfg_P.group(); int i = 0; for( Iterator it( *this ); it; ++it, ++i ) { cfg_P.setGroup( save_cfg_group + TQString::number( i )); it.current()->cfg_write( cfg_P ); } cfg_P.setGroup( save_cfg_group ); cfg_P.writeEntry( "ConditionsCount", i ); }
Condition_list_base::Condition_list_base( TDEConfig& cfg_P, Condition_list_base* parent_P ) : Condition( parent_P ) { TQString save_cfg_group = cfg_P.group(); int cnt = cfg_P.readNumEntry( "ConditionsCount", 0 ); for( int i = 0; i < cnt; ++i ) { cfg_P.setGroup( save_cfg_group + TQString::number( i )); (void) Condition::create_cfg_read( cfg_P, this ); } cfg_P.setGroup( save_cfg_group ); }
void TDERecentDocument::add(const KURL& url, const TQString& desktopEntryName) { if ( url.isLocalFile() && !TDEGlobal::dirs()->relativeLocation("tmp", url.path()).startsWith("/")) return; TQString openStr = url.url(); openStr.replace( TQRegExp("\\$"), "$$" ); // Desktop files with type "Link" are $-variable expanded kdDebug(250) << "TDERecentDocument::add for " << openStr << endl; TDEConfig *config = TDEGlobal::config(); TQString oldGrp = config->group(); config->setGroup(TQString::fromLatin1("RecentDocuments")); bool useRecent = config->readBoolEntry(TQString::fromLatin1("UseRecent"), true); int maxEntries = config->readNumEntry(TQString::fromLatin1("MaxEntries"), 10); config->setGroup(oldGrp); if(!useRecent) return; TQString path = recentDocumentDirectory(); TQString dStr = path + url.fileName(); TQString ddesktop = dStr + TQString::fromLatin1(".desktop"); int i=1; // check for duplicates while(TQFile::exists(ddesktop)){ // see if it points to the same file and application KSimpleConfig tmp(ddesktop); tmp.setDesktopGroup(); if(tmp.readEntry(TQString::fromLatin1("X-TDE-LastOpenedWith")) == desktopEntryName) { utime(TQFile::encodeName(ddesktop), NULL); return; } // if not append a (num) to it ++i; if ( i > maxEntries ) break; ddesktop = dStr + TQString::fromLatin1("[%1].desktop").arg(i); } TQDir dir(path); // check for max entries, delete oldest files if exceeded TQStringList list = dir.entryList(TQDir::Files | TQDir::Hidden, TQDir::Time | TQDir::Reversed); i = list.count(); if(i > maxEntries-1){ TQStringList::Iterator it; it = list.begin(); while(i > maxEntries-1){ TQFile::remove(dir.absPath() + TQString::fromLatin1("/") + (*it)); --i, ++it; } } // create the applnk KSimpleConfig conf(ddesktop); conf.setDesktopGroup(); conf.writeEntry( TQString::fromLatin1("Type"), TQString::fromLatin1("Link") ); conf.writePathEntry( TQString::fromLatin1("URL"), openStr ); // If you change the line below, change the test in the above loop conf.writeEntry( TQString::fromLatin1("X-TDE-LastOpenedWith"), desktopEntryName ); TQString name = url.fileName(); if (name.isEmpty()) name = openStr; conf.writeEntry( TQString::fromLatin1("Name"), name ); conf.writeEntry( TQString::fromLatin1("Icon"), KMimeType::iconForURL( url ) ); }