TextGui::TextGui(QStringList args) : m_debugger(NULL), m_syscallListener(NULL), m_console(std::cin, std::cout, std::cerr), m_spim_syscalls(&m_console, &m_syscallListener) { QString filename = args.at(1); QFile *f = new QFile(filename); if (!f->exists()) { cerr << "error, cannot find file " << filename.toStdString() << endl; exit(1); } if (!f->open(QIODevice::ReadOnly | QFile::Text)) { cerr << "error opening file " << filename.toStdString() << endl; exit(1); } QTextDocument p(); QTextDocument *doc = new QTextDocument(); doc->setPlainText(f->readAll()); f->close(); if (VERBOSE) { cerr << "Parsing file: " << f->fileName().toStdString() << endl; cerr << "No Lines: " << doc->blockCount() << endl << endl; } ParseList* parseList = Parser::parseDocument(doc); setupPlugins(); if (VERBOSE) cerr << "Executing the program.\n"; // TIM, the NULL in the Debugger's constructor should be an instance of SyscallListener. // No more connections since it's all happening in the debugger thread. // Good news is it should be really easy to subclass SycallHandler and register it w/ // an instance of SyscallListener to get the same functionality (when we have more time...) // ... later, never mind, it should work no; just don't need the signals/slots m_debugger = new Debugger(&m_syscallListener, parseList); // QObject::connect(m_debugger->getState(), SIGNAL(syscall(int, int)), this, SLOT(syscallReceived(int,int))); QObject::connect(m_debugger, SIGNAL(programTerminated(int)), this, SLOT(programTerminated(int))); }
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 }
KRenameWindow::KRenameWindow(QWidget *parent) : KMainWindow(parent), m_curPage(0), m_guiMode(nullptr), m_fileCount(0) { QWidget *center = new QWidget(); QVBoxLayout *layout = new QVBoxLayout(center); m_delegate = new RichTextItemDelegate(this); m_tabBar = new QTabBar(center); m_stack = new QStackedWidget(center); m_buttons = new QDialogButtonBox(center); layout->addWidget(m_tabBar); layout->addWidget(m_stack); layout->addWidget(new KSeparator(Qt::Horizontal, center)); layout->addWidget(m_buttons); layout->setStretchFactor(m_stack, 2); this->setCentralWidget(center); for (int i = 0; i < tAdvancedMode.numPages; i++) { const QIcon &icon = KIconLoader::global()->loadIcon(tAdvancedMode.pageIcons[i], KIconLoader::NoGroup, KIconLoader::SizeSmall); m_tabBar->addTab(icon, i18n(tAdvancedMode.pageTitles[i])); } m_pageFiles = new Ui::KRenameFiles(); m_pageDests = new Ui::KRenameDestination(); m_pagePlugins = new Ui::KRenamePlugins(); m_pageFilename = new Ui::KRenameFilename(); // add files page QWidget *page = new QWidget(m_stack); m_pageFiles->setupUi(page); m_stack->addWidget(page); // add destination page page = new QWidget(m_stack); m_pageDests->setupUi(page); m_stack->addWidget(page); // add plugin page page = new QWidget(m_stack); m_pagePlugins->setupUi(page); m_stack->addWidget(page); // add filename page page = new QWidget(m_stack); m_pageFilename->setupUi(page); m_stack->addWidget(page); setupGui(); setupPlugins(); setupIcons(); StartUpInfo *startUp = new StartUpInfo(); connect(startUp, &StartUpInfo::addFiles, this, &KRenameWindow::addFiles); connect(startUp, &StartUpInfo::enterTemplate, this, &KRenameWindow::slotGotoTemplatesPage); m_pageDests->urlrequester->setMode(KFile::Directory | KFile::ExistingOnly); m_pageFiles->fileList->setItemDelegate(m_delegate); m_pageFiles->fileList->setInfoWidget(startUp); // Make sure that now signal occurs before setupGui was called connect(m_tabBar, &QTabBar::currentChanged, this, &KRenameWindow::showPage); connect(m_buttonClose, &QPushButton::clicked, this, &KRenameWindow::close); connect(m_buttons, &QDialogButtonBox::accepted, this, &KRenameWindow::slotFinish); this->setAutoSaveSettings("KRenameWindowSettings", true); // Show the first page in any mode showPage(0); }