Source Code (Use browser search to find items of interest.)
Class Index
caitoo'DlgDirectories (./kdenetwork/caitoo/dlgDirectories.h:42)
class DlgDirectories : public QGroupBox {
Q_OBJECT
public:
DlgDirectories(QWidget *parent);
~DlgDirectories() {}
void applyData();
void setData();
private:
// table of entries
QListView *lv_entries;
// edit entries
QLineEdit *le_ext;
QLineEdit *le_dir;
// maximum bandwidth
QPushButton *pb_add;
QPushButton *pb_delete;
QPushButton *pb_change;
QPushButton *pb_browse;
QPushButton *pb_up;
QPushButton *pb_down;
protected slots:
void selectEntry( QListViewItem *item );
void addEntry();
void deleteEntry();
void changeEntry();
void browse();
void upEntry();
void downEntry();
};
caitoo'DlgDirectories::DlgDirectories() (./kdenetwork/caitoo/dlgDirectories.cpp:49)
DlgDirectories::DlgDirectories(QWidget *parent)
: QGroupBox( parent ) {
setTitle(i18n("Directories Options"));
QGridLayout *directoriesLayout = new QGridLayout( this, 4, 5, 20, 5 );
directoriesLayout->setRowStretch(0,5);
directoriesLayout->setRowStretch(1,5);
directoriesLayout->setRowStretch(2,3);
directoriesLayout->setRowStretch(3,3);
directoriesLayout->setColStretch(0,5);
directoriesLayout->setColStretch(1,5);
directoriesLayout->setColStretch(2,5);
directoriesLayout->setColStretch(3,5);
directoriesLayout->setColStretch(4,3);
// table of entries
lv_entries = new QListView( this, "dirview");
lv_entries->setMultiSelection( false );
lv_entries->setAllColumnsShowFocus( true );
lv_entries->setSorting( -1 ); // do not sort automatically
lv_entries->addColumn( i18n("Extension") );
lv_entries->addColumn( i18n( "Default Directory" ) );
connect( lv_entries, SIGNAL(selectionChanged( QListViewItem* )),
SLOT(selectEntry( QListViewItem* )) );
// lv_entries->setMinimumHeight( lv_entries->sizeHint().height() );
directoriesLayout->addMultiCellWidget( lv_entries, 0, 1, 0, 3 );
pb_up = new QPushButton( this );
pb_up->setPixmap( BarIcon("up") );
connect( pb_up, SIGNAL( clicked() ), SLOT( upEntry() ) );
directoriesLayout->addWidget( pb_up, 0, 4 );
pb_up->setEnabled( false );
pb_down = new QPushButton( this );
pb_down->setPixmap( BarIcon("down") );
connect( pb_down, SIGNAL( clicked() ), SLOT( downEntry() ) );
directoriesLayout->addWidget( pb_down, 1, 4 );
pb_down->setEnabled( false );
// edit entries
le_ext = new QLineEdit( this );
directoriesLayout->addMultiCellWidget( le_ext, 2, 2, 0, 1 );
le_dir = new QLineEdit( this );
directoriesLayout->addMultiCellWidget( le_dir, 2, 2, 2, 3 );
// edit buttons
pb_add = new QPushButton( i18n("Add"), this );
directoriesLayout->addWidget( pb_add, 3, 0 );
connect( pb_add, SIGNAL(clicked()), SLOT(addEntry()) );
pb_delete = new QPushButton( i18n("Delete"), this );
directoriesLayout->addWidget( pb_delete, 3, 1 );
connect( pb_delete, SIGNAL(clicked()), SLOT(deleteEntry()) );
pb_change = new QPushButton( i18n("Change"), this );
directoriesLayout->addWidget( pb_change, 3, 2 );
connect( pb_change, SIGNAL(clicked()), SLOT(changeEntry()) );
pb_browse = new QPushButton( i18n("Browse"), this );
directoriesLayout->addWidget( pb_browse, 3, 3 );
connect( pb_browse, SIGNAL(clicked()), SLOT(browse()) );
}
caitoo'DlgDirectories::selectEntry() (./kdenetwork/caitoo/dlgDirectories.cpp:119)
void DlgDirectories::selectEntry( QListViewItem* item ) {
if ( item ) {
le_ext->setText( item->text( 0 ) );
le_dir->setText( item->text( 1 ) );
pb_up->setEnabled( true );
pb_down->setEnabled( true );
} else {
pb_up->setEnabled( false );
pb_down->setEnabled( false );
}
}
caitoo'DlgDirectories::addEntry() (./kdenetwork/caitoo/dlgDirectories.cpp:132)
void DlgDirectories::addEntry() {
QString ext = le_ext->text();
QString dir = le_dir->text();
if ( ext.contains( "," ) || dir.contains( ",") ||
ext.isEmpty() || dir.isEmpty() ) {
KMessageBox::error( this, i18n("Each row consist of exactly one\n extension type and one directory"),
i18n( "Error" ) );
return;
}
QDir f( dir );
if ( ! f.exists() ) {
KMessageBox::error( this, i18n("Directory doesn't exist :\n") + dir,
i18n( "Error" ) );
return;
}
new QListViewItem( lv_entries, ext, dir );
}
caitoo'DlgDirectories::deleteEntry() (./kdenetwork/caitoo/dlgDirectories.cpp:154)
void DlgDirectories::deleteEntry() {
QListViewItem *item = lv_entries->selectedItem();
if ( item ) {
delete item;
}
}
caitoo'DlgDirectories::changeEntry() (./kdenetwork/caitoo/dlgDirectories.cpp:163)
void DlgDirectories::changeEntry() {
QListViewItem *old_item = lv_entries->selectedItem();
if ( old_item ) {
QString ext = le_ext->text();
QString dir = le_dir->text();
if ( ext.contains( "," ) || dir.contains( ",") ||
ext.isEmpty() || dir.isEmpty() ) {
KMessageBox::error( this, i18n("Each row consist of exactly one\n extension type and one directory"),
i18n( "Error" ) );
return;
}
QDir f( dir );
if ( ! f.exists() ) {
KMessageBox::error( this, i18n("Directory doesn't exist :\n") + dir,
i18n( "Error" ) );
return;
}
new QListViewItem( lv_entries, old_item, ext, dir );
delete old_item;
}
}
caitoo'DlgDirectories::downEntry() (./kdenetwork/caitoo/dlgDirectories.cpp:190)
void DlgDirectories::downEntry() {
QListViewItem *old_item = lv_entries->selectedItem();
if ( old_item ) {
QListViewItemIterator it( old_item );
if ( it.current()->nextSibling() == 0L ) {
return;
}
QString ext = old_item->text( 0 );
QString dir = old_item->text( 1 );
it++;
QListViewItem *new_item = new QListViewItem( lv_entries, it.current(), ext, dir );
delete old_item;
lv_entries->setSelected( new_item, true );
}
}
caitoo'DlgDirectories::upEntry() (./kdenetwork/caitoo/dlgDirectories.cpp:213)
void DlgDirectories::upEntry() {
QListViewItem *old_item = lv_entries->selectedItem();
if ( old_item ) {
QListViewItemIterator it( old_item );
QString ext = old_item->text( 0 );
QString dir = old_item->text( 1 );
it--; it--;
QListViewItem *new_item = new QListViewItem( lv_entries, it.current(), ext, dir );
delete old_item;
lv_entries->setSelected( new_item, true );
}
}
caitoo'DlgDirectories::browse() (./kdenetwork/caitoo/dlgDirectories.cpp:232)
void DlgDirectories::browse() {
le_dir->setText( KFileDialog::getExistingDirectory() );
}
caitoo'DlgDirectories::setData() (./kdenetwork/caitoo/dlgDirectories.cpp:237)
void DlgDirectories::setData() {
DirList::Iterator it;
// we need to insert items in the reverse order
// because "new QListViewItem" puts itself at the beginning
for ( it = ksettings.defaultDirList.fromLast();
it != ksettings.defaultDirList.begin(); it-- ) {
new QListViewItem( lv_entries, (*it).extRegexp, (*it).defaultDir );
}
new QListViewItem( lv_entries, (*it).extRegexp, (*it).defaultDir );
}
caitoo'DlgDirectories::applyData() (./kdenetwork/caitoo/dlgDirectories.cpp:250)
void DlgDirectories::applyData() {
ksettings.defaultDirList.clear();
QListViewItemIterator it( lv_entries );
for ( ; it.current(); ++it ) {
QListViewItem* item = it.current();
DirItem ditem;
ditem.extRegexp = item->text( 0 );
ditem.defaultDir = item->text( 1 );
ksettings.defaultDirList.append( ditem );
}
}