void WidgetDatabase::setupPlugins() { if ( plugins_set_up ) return; plugins_set_up = TRUE; QStringList widgets = widgetManager()->featureList(); for ( QStringList::Iterator it = widgets.begin(); it != widgets.end(); ++it ) { if ( hasWidget( *it ) ) continue; WidgetDatabaseRecord *r = new WidgetDatabaseRecord; WidgetInterface *iface = 0; widgetManager()->queryInterface( *it, &iface ); if ( !iface ) continue; #ifndef UIC QIconSet icon = iface->iconSet( *it ); if ( !icon.pixmap().isNull() ) r->icon = new QIconSet( icon ); #endif QString grp = iface->group( *it ); if ( grp.isEmpty() ) grp = "3rd party widgets"; r->group = widgetGroup( grp ); r->toolTip = iface->toolTip( *it ); r->whatsThis = iface->whatsThis( *it ); r->includeFile = iface->includeFile( *it ); r->isContainer = iface->isContainer( *it ); r->name = *it; r->isPlugin = TRUE; append( r ); iface->release(); } }
void WidgetDatabase::setupDataBase() { if ( dbcount ) return; wGroups = new QStrList; invisibleGroups = new QStrList; invisibleGroups->append( "Forms" ); invisibleGroups->append( "Temp" ); className2Id = new QDict<int>( dbdictsize ); className2Id->setAutoDelete( TRUE ); WidgetDatabaseRecord *r = 0; r = new WidgetDatabaseRecord; r->iconSet = "pushbutton.xpm"; r->name = "QPushButton"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Push Button"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "toolbutton.xpm"; r->name = "QToolButton"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Tool Button"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "radiobutton.xpm"; r->name = "QRadioButton"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Radio Button"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "checkbox.xpm"; r->name = "QCheckBox"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Check Box"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "groupbox.xpm"; r->name = "QGroupBox"; r->group = widgetGroup( "Containers" ); r->toolTip = "Group Box"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "buttongroup.xpm"; r->name = "QButtonGroup"; r->group = widgetGroup( "Containers" ); r->toolTip = "Button Group"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "frame.xpm"; r->name = "QFrame"; r->group = widgetGroup( "Containers" ); r->toolTip = "Frame"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "tabwidget.xpm"; r->name = "QTabWidget"; r->group = widgetGroup( "Containers" ); r->toolTip = "Tabwidget"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "listbox.xpm"; r->name = "QListBox"; r->group = widgetGroup( "Views" ); r->toolTip = "List Box"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "listview.xpm"; r->name = "QListView"; r->group = widgetGroup( "Views" ); r->toolTip = "List View"; append( r ); #if defined(QT_MODULE_ICONVIEW) || defined(UIC) r = new WidgetDatabaseRecord; r->iconSet = "iconview.xpm"; r->name = "QIconView"; r->group = widgetGroup( "Views" ); r->toolTip = "Icon View"; append( r ); #endif #if defined(QT_MODULE_TABLE) r = new WidgetDatabaseRecord; r->iconSet = "table.xpm"; r->name = "QTable"; r->group = widgetGroup( "Views" ); r->toolTip = "Table"; append( r ); #endif r = new WidgetDatabaseRecord; r->iconSet = "lineedit.xpm"; r->name = "QLineEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Line Edit"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "spinbox.xpm"; r->name = "QSpinBox"; r->group = widgetGroup( "Input" ); r->toolTip = "Spin Box"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "multilineedit.xpm"; r->name = "QMultiLineEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Multi Line Edit"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "combobox.xpm"; r->name = "QComboBox"; r->group = widgetGroup( "Input" ); r->toolTip = "Combo Box"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "slider.xpm"; r->name = "QSlider"; r->group = widgetGroup( "Input" ); r->toolTip = "Slider"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "dial.xpm"; r->name = "QDial"; r->group = widgetGroup( "Input" ); r->toolTip = "Dial"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "label.xpm"; r->name = "QLabel"; r->group = widgetGroup( "Temp" ); r->toolTip = "Label"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "label.xpm"; r->name = "TextLabel"; r->group = widgetGroup( "Display" ); r->toolTip = "Text Label"; r->whatsThis = "The Text Label provides a widget to display static text."; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "pixlabel.xpm"; r->name = "PixmapLabel"; r->group = widgetGroup( "Display" ); r->toolTip = "Pixmap Label"; r->whatsThis = "The Pixmap Label provides a widget to display pixmaps."; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "lcdnumber.xpm"; r->name = "QLCDNumber"; r->group = widgetGroup( "Display" ); r->toolTip = "LCD Number"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "line.xpm"; r->name = "Line"; r->group = widgetGroup( "Display" ); r->toolTip = "Line"; r->includeFile = "qframe.h"; r->whatsThis = "The Line widget provides horizontal and vertical lines."; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "progress.xpm"; r->name = "QProgressBar"; r->group = widgetGroup( "Display" ); r->toolTip = "Progress Bar"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "textview.xpm"; r->name = "QTextView"; r->group = widgetGroup( "Display" ); r->toolTip = "Text View"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "textbrowser.xpm"; r->name = "QTextBrowser"; r->group = widgetGroup( "Display" ); r->toolTip = "Text Browser"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "spacer.xpm"; r->name = "Spacer"; r->group = widgetGroup( "Temp" ); r->toolTip = "Spacer"; r->whatsThis = "The Spacer provides horizontal and vertical spacing to be able to manipulate the bahviour of layouts."; append( r ); r = new WidgetDatabaseRecord; r->name = "QWidget"; r->isContainer = FALSE; r->group = widgetGroup( "Forms" ); append( r ); r = new WidgetDatabaseRecord; r->name = "QDialog"; r->group = widgetGroup( "Forms" ); r->isContainer = FALSE; append( r ); r = new WidgetDatabaseRecord; r->name = "QWizard"; r->group = widgetGroup( "Forms" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->name = "QDesignerWizard"; r->group = widgetGroup( "Forms" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->name = "QLayoutWidget"; r->group = widgetGroup( "Temp" ); r->includeFile = ""; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "tabwidget.xpm"; r->name = "QDesignerTabWidget"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "tabwidget.xpm"; r->name = "QDesignerWidget"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "tabwidget.xpm"; r->name = "QDesignerDialog"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); qt_init_kde_widget_database(); }
void WidgetDatabase::setupDataBase( int id ) { was_in_setup = TRUE; #ifndef UIC Q_UNUSED( id ) if ( dbcount ) return; #else if ( dbcount && id != -2 ) return; if ( dbcount && !plugins_set_up ) { setupPlugins(); return; } if ( dbcount && plugins_set_up) return; #endif wGroups = new QStrList; invisibleGroups = new QStrList; invisibleGroups->append( "Forms" ); invisibleGroups->append( "Temp" ); className2Id = new QDict<int>( dbdictsize ); className2Id->setAutoDelete( TRUE ); WidgetDatabaseRecord *r = 0; r = new WidgetDatabaseRecord; r->iconSet = "designer_pushbutton.png"; r->name = "QPushButton"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Push Button"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_toolbutton.png"; r->name = "QToolButton"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Tool Button"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_radiobutton.png"; r->name = "QRadioButton"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Radio Button"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_checkbox.png"; r->name = "QCheckBox"; r->group = widgetGroup( "Buttons" ); r->toolTip = "Check Box"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_groupbox.png"; r->name = "QGroupBox"; r->group = widgetGroup( "Containers" ); r->toolTip = "Group Box"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_buttongroup.png"; r->name = "QButtonGroup"; r->group = widgetGroup( "Containers" ); r->toolTip = "Button Group"; r->isContainer = TRUE; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_frame.png"; r->name = "QFrame"; r->group = widgetGroup( "Containers" ); r->toolTip = "Frame"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_tabwidget.png"; r->name = "QTabWidget"; r->group = widgetGroup( "Containers" ); r->toolTip = "Tabwidget"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_widgetstack.png"; r->name = "QWidgetStack"; r->group = widgetGroup( "Containers" ); r->toolTip = "Widget Stack"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_toolbox.png"; r->name = "QToolBox"; r->group = widgetGroup( "Containers" ); r->toolTip = "Tool Box"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_listbox.png"; r->name = "QListBox"; r->group = widgetGroup( "Views" ); r->toolTip = "List Box"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_listview.png"; r->name = "QListView"; r->group = widgetGroup( "Views" ); r->toolTip = "List View"; append( r ); #if !defined(QT_NO_ICONVIEW) || defined(UIC) r = new WidgetDatabaseRecord; r->iconSet = "designer_iconview.png"; r->name = "QIconView"; r->group = widgetGroup( "Views" ); r->toolTip = "Icon View"; append( r ); #endif #if !defined(QT_NO_TABLE) r = new WidgetDatabaseRecord; r->iconSet = "designer_table.png"; r->name = "QTable"; r->group = widgetGroup( "Views" ); r->toolTip = "Table"; append( r ); #endif #if !defined(QT_NO_SQL) r = new WidgetDatabaseRecord; r->iconSet = "designer_datatable.png"; r->includeFile = "qdatatable.h"; r->name = "QDataTable"; r->group = widgetGroup( "Database" ); r->toolTip = "Data Table"; append( r ); #endif r = new WidgetDatabaseRecord; r->iconSet = "designer_lineedit.png"; r->name = "QLineEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Line Edit"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_spinbox.png"; r->name = "QSpinBox"; r->group = widgetGroup( "Input" ); r->toolTip = "Spin Box"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_dateedit.png"; r->name = "QDateEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Date Edit"; r->includeFile = "qdatetimeedit.h"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_timeedit.png"; r->name = "QTimeEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Time Edit"; r->includeFile = "qdatetimeedit.h"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_datetimeedit.png"; r->name = "QDateTimeEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Date-Time Edit"; r->includeFile = "qdatetimeedit.h"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_multilineedit.png"; r->name = "QMultiLineEdit"; r->group = widgetGroup( "Temp" ); r->toolTip = "Multi Line Edit"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_richtextedit.png"; r->name = "QTextEdit"; r->group = widgetGroup( "Input" ); r->toolTip = "Rich Text Edit"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_combobox.png"; r->name = "QComboBox"; r->group = widgetGroup( "Input" ); r->toolTip = "Combo Box"; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_slider.png"; r->name = "QSlider"; r->group = widgetGroup( "Input" ); r->toolTip = "Slider"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_scrollbar.png"; r->name = "QScrollBar"; r->group = widgetGroup( "Input" ); r->toolTip = "Scrollbar"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_dial.png"; r->name = "QDial"; r->group = widgetGroup( "Input" ); r->toolTip = "Dial"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_label.png"; r->name = "QLabel"; r->group = widgetGroup( "Temp" ); r->toolTip = "Label"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_label.png"; r->name = "TextLabel"; r->group = widgetGroup( "Display" ); r->toolTip = "Text Label"; r->whatsThis = "The Text Label provides a widget to display static text."; r->isCommon = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_pixlabel.png"; r->name = "PixmapLabel"; r->group = widgetGroup( "Display" ); r->toolTip = "Pixmap Label"; r->whatsThis = "The Pixmap Label provides a widget to display pixmaps."; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_lcdnumber.png"; r->name = "QLCDNumber"; r->group = widgetGroup( "Display" ); r->toolTip = "LCD Number"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_line.png"; r->name = "Line"; r->group = widgetGroup( "Display" ); r->toolTip = "Line"; r->includeFile = "qframe.h"; r->whatsThis = "The Line widget provides horizontal and vertical lines."; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_progress.png"; r->name = "QProgressBar"; r->group = widgetGroup( "Display" ); r->toolTip = "Progress Bar"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_textview.png"; r->name = "QTextView"; r->group = widgetGroup( "Temp" ); r->toolTip = "Text View"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_textbrowser.png"; r->name = "QTextBrowser"; r->group = widgetGroup( "Display" ); r->toolTip = "Text Browser"; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_spacer.png"; r->name = "Spacer"; r->group = widgetGroup( "Temp" ); r->toolTip = "Spacer"; r->whatsThis = "The Spacer provides horizontal and vertical spacing to be able to manipulate the behaviour of layouts."; append( r ); r = new WidgetDatabaseRecord; r->name = "QWidget"; r->isForm = TRUE; r->group = widgetGroup( "Forms" ); append( r ); r = new WidgetDatabaseRecord; r->name = "QDialog"; r->group = widgetGroup( "Forms" ); r->isForm = TRUE; append( r ); r = new WidgetDatabaseRecord; r->name = "QWizard"; r->group = widgetGroup( "Forms" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->name = "QDesignerWizard"; r->group = widgetGroup( "Forms" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->name = "QLayoutWidget"; r->group = widgetGroup( "Temp" ); r->includeFile = ""; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->name = "QSplitter"; r->group = widgetGroup( "Temp" ); r->includeFile = "qsplitter.h"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_tabwidget.png"; r->name = "QDesignerTabWidget"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_tabwidget.png"; r->name = "QDesignerWidget"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = "designer_tabwidget.png"; r->name = "QDesignerDialog"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = ""; r->name = "QMainWindow"; r->includeFile = "qmainwindow.h"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = ""; r->name = "QDesignerAction"; r->includeFile = "qaction.h"; r->group = widgetGroup( "Temp" ); r->isContainer = FALSE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = ""; r->name = "QDesignerActionGroup"; r->includeFile = "qaction.h"; r->group = widgetGroup( "Temp" ); r->isContainer = FALSE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = ""; r->name = "QScrollView"; r->includeFile = "qscrollview.h"; r->group = widgetGroup( "Temp" ); r->isContainer = TRUE; append( r ); #ifndef QT_NO_SQL r = new WidgetDatabaseRecord; r->iconSet = ""; r->name = "QDataBrowser"; r->includeFile = "qdatabrowser.h"; r->group = widgetGroup( "Database" ); r->toolTip = "Data Browser"; r->iconSet = "designer_databrowser.png"; r->isContainer = TRUE; append( r ); r = new WidgetDatabaseRecord; r->iconSet = ""; r->name = "QDataView"; r->includeFile = "qdataview.h"; r->group = widgetGroup( "Database" ); r->toolTip = "Data View"; r->iconSet = "designer_dataview.png"; r->isContainer = TRUE; append( r ); #endif #ifndef UIC setupPlugins(); #endif }