Source Code (Use browser search to find items of interest.)
Class Index
kdevelop'CCreateDocDatabaseDlg (./kdevelop/kdevelop/ccreatedocdatabasedlg.h:42)
class CCreateDocDatabaseDlg : public QDialog {
Q_OBJECT
public:
CCreateDocDatabaseDlg(ProcessView *proc, KConfig *config,
QWidget *parent=0, const char *name=0,
bool foundGlimpse=false, bool foundHtDig=false);
~CCreateDocDatabaseDlg();
protected slots:
void slotOkClicked();
void slotAddButtonClicked();
void slotRemoveButtonClicked();
void slotDirButtonClicked();
protected:
QCheckBox* kde_checkbox;
QCheckBox* qt_checkbox;
QRadioButton* tiny_radio_button;
QRadioButton* small_radio_button;
QRadioButton* medium_radio_button;
QPushButton* ok_button;
QPushButton* cancel_button;
QPushButton* dir_button;
QListBox* dir_listbox;
QPushButton* add_button;
QPushButton* remove_button;
QLineEdit* dir_edit;
QRadioButton *useGlimpse;
QRadioButton *useHtDig;
ProcessView* proc;
KConfig* conf;
};
kdevelop'CCreateDocDatabaseDlg::CCreateDocDatabaseDlg() (./kdevelop/kdevelop/ccreatedocdatabasedlg.cpp:38)
CCreateDocDatabaseDlg:: CCreateDocDatabaseDlg(ProcessView *proc, KConfig *config,
QWidget *parent, const char *name,
bool foundGlimpse, bool foundHtDig)
: QDialog(parent,name,true)
{
setCaption(i18n("Create Search Database..."));
this->proc = proc;
this->conf = config;
QButtonGroup *bg = new QButtonGroup( this, 0 );
bg->setFrameStyle( QFrame::NoFrame );
bg->setExclusive( TRUE );
bg->setGeometry( 20, 20, 380, 50 );
QLabel* lbl;
lbl = new QLabel( bg, "index_engine" );
lbl->setGeometry( 0, 0, 100, 20 );
lbl->setText(i18n("Index engine :") );
lbl->setAlignment( 289 );
lbl->setMargin( -1 );
useGlimpse = new QRadioButton( i18n("Glimpse"), bg );
useGlimpse->setGeometry( 140, 0, 80, 20 );
if (foundGlimpse)
useGlimpse->setChecked( true );
else
useGlimpse->setEnabled( false );
useHtDig = new QRadioButton( i18n("ht://Dig"), bg );
useHtDig->setGeometry( 220, 0, 80, 20 );
if (foundGlimpse)
useHtDig->setChecked( false );
else if (foundHtDig)
useHtDig->setChecked( true );
QButtonGroup* qtarch_ButtonGroup_1;
qtarch_ButtonGroup_1 = new QButtonGroup( this, "ButtonGroup_1" );
qtarch_ButtonGroup_1->setGeometry( 20, 50, 190, 120 );
qtarch_ButtonGroup_1->setMinimumSize( 0, 0 );
qtarch_ButtonGroup_1->setMaximumSize( 32767, 32767 );
qtarch_ButtonGroup_1->setFocusPolicy( QWidget::NoFocus );
qtarch_ButtonGroup_1->setBackgroundMode( QWidget::PaletteBackground );
qtarch_ButtonGroup_1->setFontPropagation( QWidget::NoChildren );
qtarch_ButtonGroup_1->setPalettePropagation( QWidget::NoChildren );
qtarch_ButtonGroup_1->setFrameStyle( 49 );
qtarch_ButtonGroup_1->setTitle( i18n("Index Size") );
qtarch_ButtonGroup_1->setAlignment( 1 );
tiny_radio_button = new QRadioButton( this, "RadioButton_2" );
tiny_radio_button->setGeometry( 40, 70, 100, 30 );
tiny_radio_button->setMinimumSize( 0, 0 );
tiny_radio_button->setMaximumSize( 32767, 32767 );
tiny_radio_button->setFocusPolicy( QWidget::TabFocus );
tiny_radio_button->setBackgroundMode( QWidget::PaletteBackground );
tiny_radio_button->setFontPropagation( QWidget::NoChildren );
tiny_radio_button->setPalettePropagation( QWidget::NoChildren );
tiny_radio_button->setText(i18n("tiny size") );
tiny_radio_button->setAutoRepeat( FALSE );
tiny_radio_button->setAutoResize( FALSE );
tiny_radio_button->setChecked( TRUE );
small_radio_button = new QRadioButton( this, "RadioButton_3" );
small_radio_button->setGeometry( 40, 100, 100, 30 );
small_radio_button->setMinimumSize( 0, 0 );
small_radio_button->setMaximumSize( 32767, 32767 );
small_radio_button->setFocusPolicy( QWidget::TabFocus );
small_radio_button->setBackgroundMode( QWidget::PaletteBackground );
small_radio_button->setFontPropagation( QWidget::NoChildren );
small_radio_button->setPalettePropagation( QWidget::NoChildren );
small_radio_button->setText(i18n("small size") );
small_radio_button->setAutoRepeat( FALSE );
small_radio_button->setAutoResize( FALSE );
medium_radio_button = new QRadioButton( this, "RadioButton_4" );
medium_radio_button->setGeometry( 40, 130, 100, 30 );
medium_radio_button->setMinimumSize( 0, 0 );
medium_radio_button->setMaximumSize( 32767, 32767 );
medium_radio_button->setFocusPolicy( QWidget::TabFocus );
medium_radio_button->setBackgroundMode( QWidget::PaletteBackground );
medium_radio_button->setFontPropagation( QWidget::NoChildren );
medium_radio_button->setPalettePropagation( QWidget::NoChildren );
medium_radio_button->setText(i18n("medium size") );
medium_radio_button->setAutoRepeat( FALSE );
medium_radio_button->setAutoResize( FALSE );
QButtonGroup* qtarch_ButtonGroup_3;
qtarch_ButtonGroup_3 = new QButtonGroup( this, "ButtonGroup_3" );
qtarch_ButtonGroup_3->setGeometry( 230, 50, 240, 120 );
qtarch_ButtonGroup_3->setMinimumSize( 0, 0 );
qtarch_ButtonGroup_3->setMaximumSize( 32767, 32767 );
qtarch_ButtonGroup_3->setFocusPolicy( QWidget::NoFocus );
qtarch_ButtonGroup_3->setBackgroundMode( QWidget::PaletteBackground );
qtarch_ButtonGroup_3->setFontPropagation( QWidget::NoChildren );
qtarch_ButtonGroup_3->setPalettePropagation( QWidget::NoChildren );
qtarch_ButtonGroup_3->setFrameStyle( 49 );
qtarch_ButtonGroup_3->setTitle( i18n("Index Options") );
qtarch_ButtonGroup_3->setAlignment( 1 );
qt_checkbox = new QCheckBox( this, "CheckBox_3" );
qt_checkbox->setGeometry( 250, 70, 210, 30 );
qt_checkbox->setMinimumSize( 0, 0 );
qt_checkbox->setMaximumSize( 32767, 32767 );
qt_checkbox->setFocusPolicy( QWidget::TabFocus );
qt_checkbox->setBackgroundMode( QWidget::PaletteBackground );
qt_checkbox->setFontPropagation( QWidget::NoChildren );
qt_checkbox->setPalettePropagation( QWidget::NoChildren );
qt_checkbox->setText( i18n("index the QT documentation") );
qt_checkbox->setAutoRepeat( FALSE );
qt_checkbox->setAutoResize( FALSE );
qt_checkbox->setChecked( TRUE );
kde_checkbox = new QCheckBox( this, "CheckBox_1" );
kde_checkbox->setGeometry( 250, 100, 210, 30 );
kde_checkbox->setMinimumSize( 0, 0 );
kde_checkbox->setMaximumSize( 32767, 32767 );
kde_checkbox->setFocusPolicy( QWidget::TabFocus );
kde_checkbox->setBackgroundMode( QWidget::PaletteBackground );
kde_checkbox->setFontPropagation( QWidget::NoChildren );
kde_checkbox->setPalettePropagation( QWidget::NoChildren );
kde_checkbox->setText(i18n("index the KDE documentation") );
kde_checkbox->setAutoRepeat( FALSE );
kde_checkbox->setAutoResize( FALSE );
kde_checkbox->setChecked( TRUE );
QButtonGroup* qtarch_ButtonGroup_2;
qtarch_ButtonGroup_2 = new QButtonGroup( this, "ButtonGroup_2" );
qtarch_ButtonGroup_2->setGeometry( 20, 180, 450, 210 );
qtarch_ButtonGroup_2->setMinimumSize( 0, 0 );
qtarch_ButtonGroup_2->setMaximumSize( 32767, 32767 );
qtarch_ButtonGroup_2->setFocusPolicy( QWidget::NoFocus );
qtarch_ButtonGroup_2->setBackgroundMode( QWidget::PaletteBackground );
qtarch_ButtonGroup_2->setFontPropagation( QWidget::NoChildren );
qtarch_ButtonGroup_2->setPalettePropagation( QWidget::NoChildren );
qtarch_ButtonGroup_2->setFrameStyle( 49 );
qtarch_ButtonGroup_2->setTitle(i18n("additional directories to index"));
qtarch_ButtonGroup_2->setAlignment( 1 );
dir_edit = new QLineEdit( this, "LineEdit_1" );
dir_edit->setGeometry( 40, 210, 280, 30 );
dir_edit->setMinimumSize( 0, 0 );
dir_edit->setMaximumSize( 32767, 32767 );
dir_edit->setFocusPolicy( QWidget::StrongFocus );
dir_edit->setBackgroundMode( QWidget::PaletteBase );
dir_edit->setFontPropagation( QWidget::NoChildren );
dir_edit->setPalettePropagation( QWidget::NoChildren );
dir_edit->setText( "" );
dir_edit->setMaxLength( 32767 );
dir_edit->setEchoMode( QLineEdit::Normal );
dir_edit->setFrame( TRUE );
dir_button = new QPushButton( this, "PushButton_3" );
dir_button->setGeometry( 340, 210, 30, 30 );
dir_button->setMinimumSize( 0, 0 );
dir_button->setMaximumSize( 32767, 32767 );
dir_button->setFocusPolicy( QWidget::TabFocus );
dir_button->setBackgroundMode( QWidget::PaletteBackground );
dir_button->setFontPropagation( QWidget::NoChildren );
dir_button->setPalettePropagation( QWidget::NoChildren );
dir_button->setPixmap(BarIcon("open"));
dir_button->setAutoRepeat( FALSE );
dir_button->setAutoResize( FALSE );
dir_listbox = new QListBox( this, "ListBox_1" );
dir_listbox->setGeometry( 40, 260, 280, 110 );
dir_listbox->setMinimumSize( 0, 0 );
dir_listbox->setMaximumSize( 32767, 32767 );
dir_listbox->setFocusPolicy( QWidget::StrongFocus );
dir_listbox->setBackgroundMode( QWidget::PaletteBase );
dir_listbox->setFontPropagation( QWidget::SameFont );
dir_listbox->setPalettePropagation( QWidget::SameFont );
dir_listbox->setFrameStyle( 51 );
dir_listbox->setLineWidth( 2 );
dir_listbox->setMultiSelection( FALSE );
add_button = new QPushButton( this, "PushButton_4" );
add_button->setGeometry( 340, 260, 100, 30 );
add_button->setMinimumSize( 0, 0 );
add_button->setMaximumSize( 32767, 32767 );
add_button->setFocusPolicy( QWidget::TabFocus );
add_button->setBackgroundMode( QWidget::PaletteBackground );
add_button->setFontPropagation( QWidget::NoChildren );
add_button->setPalettePropagation( QWidget::NoChildren );
add_button->setText(i18n("add") );
add_button->setAutoRepeat( FALSE );
add_button->setAutoResize( FALSE );
remove_button = new QPushButton( this, "PushButton_5" );
remove_button->setGeometry( 340, 300, 100, 30 );
remove_button->setMinimumSize( 0, 0 );
remove_button->setMaximumSize( 32767, 32767 );
remove_button->setFocusPolicy( QWidget::TabFocus );
remove_button->setBackgroundMode( QWidget::PaletteBackground );
remove_button->setFontPropagation( QWidget::NoChildren );
remove_button->setPalettePropagation( QWidget::NoChildren );
remove_button->setText(i18n("remove") );
remove_button->setAutoRepeat( FALSE );
remove_button->setAutoResize( FALSE );
qtarch_ButtonGroup_3->insert( kde_checkbox );
qtarch_ButtonGroup_3->insert( qt_checkbox );
qtarch_ButtonGroup_2->insert( dir_button );
qtarch_ButtonGroup_2->insert( add_button );
qtarch_ButtonGroup_2->insert( remove_button );
qtarch_ButtonGroup_1->insert( tiny_radio_button );
qtarch_ButtonGroup_1->insert( small_radio_button );
qtarch_ButtonGroup_1->insert( medium_radio_button );
ok_button = new QPushButton( this, "PushButton_1" );
ok_button->setGeometry( 100, 400, 100, 30 );
ok_button->setMinimumSize( 0, 0 );
ok_button->setMaximumSize( 32767, 32767 );
ok_button->setFocusPolicy( QWidget::TabFocus );
ok_button->setBackgroundMode( QWidget::PaletteBackground );
ok_button->setFontPropagation( QWidget::NoChildren );
ok_button->setPalettePropagation( QWidget::NoChildren );
ok_button->setText( i18n("OK") );
ok_button->setAutoRepeat( FALSE );
ok_button->setAutoResize( FALSE );
ok_button->setDefault(true);
cancel_button = new QPushButton( this, "PushButton_2" );
cancel_button->setGeometry( 280, 400, 100, 30 );
cancel_button->setMinimumSize( 0, 0 );
cancel_button->setMaximumSize( 32767, 32767 );
cancel_button->setFocusPolicy( QWidget::TabFocus );
cancel_button->setBackgroundMode( QWidget::PaletteBackground );
cancel_button->setFontPropagation( QWidget::NoChildren );
cancel_button->setPalettePropagation( QWidget::NoChildren );
cancel_button->setText( i18n("Cancel") );
cancel_button->setAutoRepeat( FALSE );
cancel_button->setAutoResize( FALSE );
resize( 490,440 );
setMinimumSize( 0, 0 );
setMaximumSize( 32767, 32767 );
/*****************Connections******************/
connect(cancel_button,SIGNAL(clicked()),SLOT(reject()));
connect(ok_button,SIGNAL(clicked()),SLOT(slotOkClicked()));
connect(add_button,SIGNAL(clicked()),SLOT(slotAddButtonClicked()));
connect(remove_button,SIGNAL(clicked()),SLOT(slotRemoveButtonClicked()));
connect(dir_button,SIGNAL(clicked()),SLOT(slotDirButtonClicked()));
dir_edit->setFocus();
/*doc*/
QWhatsThis::add(medium_radio_button,
i18n("builds a medium-size index (20-30% of the size\n"
"of all files), allowing faster search."));
QWhatsThis::add(small_radio_button,
i18n("Build a small index rather than tiny (meaning 7-9%\n"
"of the sizes of all files - your mileage may vary)\n"
"allowing faster search."));
QWhatsThis::add(tiny_radio_button,
i18n("a tiny index (2-3% of the total size of all files)"));
}
kdevelop'CCreateDocDatabaseDlg::~CCreateDocDatabaseDlg() (./kdevelop/kdevelop/ccreatedocdatabasedlg.cpp:301)
CCreateDocDatabaseDlg::~CCreateDocDatabaseDlg(){
}
kdevelop'CCreateDocDatabaseDlg::slotOkClicked() (./kdevelop/kdevelop/ccreatedocdatabasedlg.cpp:304)
void CCreateDocDatabaseDlg::slotOkClicked(){
conf->setGroup("Doc_Location");
QString filename = conf->readEntry("doc_kde", KDELIBS_DOCDIR) +"/kdeui/KDialog.html";
if(!QFile::exists(filename) && kde_checkbox->isChecked()){
KMessageBox::error(0, i18n("No Database created!\nThe KDE-Documentation-Path isn't set correctly."));
return;
}
filename = conf->readEntry("doc_qt", QT_DOCDIR) +"/qtabbar.html";
if(!QFile::exists(filename) && qt_checkbox->isChecked()){
KMessageBox::error(0, i18n("No Database created!\nThe Qt-Documentation-Path isn't set correctly."));
return;
}
KGlobal::dirs()->saveLocation("appdata");
QString kde_doc_dir = conf->readEntry("doc_kde", KDELIBS_DOCDIR);
QString qt_doc_dir = conf->readEntry("doc_qt", QT_DOCDIR);
QString dirs;
if(kde_checkbox->isChecked()){
dirs = dirs + kde_doc_dir;
}
if(qt_checkbox->isChecked()){
dirs = dirs + " " + qt_doc_dir;
}
// added for documentation search in the kdevelop html directory
dirs= dirs + " "+ locate("html","/default/kdevelop");
uint count = dir_listbox->count();
uint i;
for(i=0;i<count;i++){
dirs = dirs + " ";
dirs = dirs + dir_listbox->text(i);
}
QString size_str;
if (small_radio_button->isChecked()){
size_str = " -o ";
}
if (medium_radio_button->isChecked()){
size_str = " -b ";
}
proc->prepareJob("");
if (useGlimpse->isChecked())
{
(*proc) << "find "+ dirs +" -name '*.html' | glimpseindex " + size_str +" -F -X -H "+
KGlobal::dirs()->saveLocation("appdata");
proc->startJob();
accept();
}
if (useHtDig->isChecked())
{
*proc << "find " + dirs + " -name '*.html' | awk 'OFS=\"\"; {print \"file://localhost\", $0}' | htdig -v -s -c " + locate("appdata", "tools/htdig.conf") + " - ; htmerge -v -s -c " + locate("appdata", "tools/htdig.conf");
proc->startJob();
accept();
}
}
kdevelop'CCreateDocDatabaseDlg::slotAddButtonClicked() (./kdevelop/kdevelop/ccreatedocdatabasedlg.cpp:364)
void CCreateDocDatabaseDlg::slotAddButtonClicked(){
QString str = dir_edit->text();
if (!str.isEmpty()){
dir_listbox->insertItem(str,0);
dir_edit->clear();
}
}
kdevelop'CCreateDocDatabaseDlg::slotRemoveButtonClicked() (./kdevelop/kdevelop/ccreatedocdatabasedlg.cpp:374)
void CCreateDocDatabaseDlg::slotRemoveButtonClicked(){
dir_listbox->removeItem(dir_listbox->currentItem());
}
kdevelop'CCreateDocDatabaseDlg::slotDirButtonClicked() (./kdevelop/kdevelop/ccreatedocdatabasedlg.cpp:378)
void CCreateDocDatabaseDlg::slotDirButtonClicked(){
QString name=KFileDialog::getExistingDirectory(dir_edit->text(),this,i18n("Select Directory..."));
if(!name.isEmpty()){
dir_edit->setText(name);
}
}