void generateNext(char myString[], int i, int ptr1, int ptr2){ int j; char temp1[80],temp2[80]; if(arr1[ptr1]==arr2[ptr2]){ myString[i]=arr1[ptr1]; } if ( ( arr1[ptr1+1] == 0 ) || ( arr2[ptr2+1] == 0 ) ) { myString[i+1]='\0'; insertInStart(myString); return; } else{ copyUpto(myString,temp1,temp2,i); j=getIndex(arr2, arr1[ptr1+1], ptr2+1); if(j!=-1){ generateNext(temp1, i+1, ptr1+1, j); } else generateNext(temp1, i, ptr1+1, ptr2+1); j=getIndex(arr1, arr2[ptr2+1], ptr1+1); if(j!=-1){ generateNext(temp2, i+1, j, ptr2+1); } else generateNext(temp2, i, ptr1+1, ptr2+1); } }
void letsStartRecursion(){ int j,i=0; char temp1[80],temp2[80],myString[80]; if(arr1[0]==arr2[0]){ generateNext(myString,0,0,0); } else{ do{ if(arr1[i]==0) return; j=getIndex(arr2, arr1[i], 0); if(j!=-1){ generateNext(temp1, 0, 0, j); } i++; }while(j==-1); i=0; do{ if(arr2[i]==0) return; j=getIndex(arr1, arr2[i], 0); if(j!=-1){ generateNext(temp2, 0, j, 0); } i++; }while(j!=-1); } }
KPrHtmlExportDialog::KPrHtmlExportDialog(const QList<KoPAPageBase*> &slides, const QString &title, const QString &author, QWidget *parent) : KDialog(parent) , m_allSlides(slides) , m_title(title) { QWidget *widget = new QWidget(this); ui.setupUi(widget); setMainWidget(widget); setCaption( i18n("Html Export")); setButtonText(Ok, i18n("Export")); ui.klineedit_title->setText(m_title); ui.klineedit_author->setText(author); connect(ui.kpushbuttonBrowseTemplate, SIGNAL(clicked()), this, SLOT(browserAction())); connect(&preview, SIGNAL(loadFinished(bool)), this, SLOT(renderPreview())); connect(ui.klineedit_title, SIGNAL(editingFinished()), this, SLOT(generatePreview())); connect(ui.klineedit_author, SIGNAL(editingFinished()), this, SLOT(generatePreview())); connect(ui.kListBox_slides, SIGNAL(currentRowChanged(int)), this, SLOT(generatePreview(int))); connect(ui.kcombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(generatePreview())); connect(ui.kPushButton_selectAll, SIGNAL(clicked()), this, SLOT(checkAllItems())); connect(ui.kPushButton_deselectAll, SIGNAL(clicked()), this, SLOT(uncheckAllItems())); connect(ui.toolButton_previous, SIGNAL(clicked()), this, SLOT(generatePrevious())); connect(ui.toolButton_next, SIGNAL(clicked()), this, SLOT(generateNext())); connect(ui.kPushButton_Favorite, SIGNAL(clicked()), this, SLOT(favoriteAction())); connect(ui.kcombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(updateFavoriteButton())); this->updateFavoriteButton(); this->frameToRender = 0; this->generateSlidesNames(slides); this->loadTemplatesList(); this->generatePreview(); }
MyWidget::MyWidget(QGLWidget *parent) : QGLWidget(QGLFormat(), parent) { setMouseTracking(true); setPaletteBackgroundColor(QColor(255,255,255)); setstatus(); menu = new QMenuBar(this, "Menu bar"); file = new QPopupMenu( this , "file"); save = new QPopupMenu( this , "save"); placement = new QPopupMenu( this , "placement"); options = new QPopupMenu( this , "options"); view = new QPopupMenu( this , "viewing"); save->insertItem( "Save &eps file", this, SLOT(savedepsfile()), CTRL+Key_E ); save->insertItem( "Save &stl file", this, SLOT(savedstlfile()), CTRL+Key_S ); file->insertItem( "&Load", this, SLOT(openedfile()), CTRL+Key_L ); generate_id = placement->insertItem( "&Generate", &p, SLOT(generate()), CTRL+Key_G ); generatefirst_id = placement->insertItem( "Generate &First", &p, SLOT(generateFirst()), CTRL+Key_F ); generatenext_id = placement->insertItem( "Generate &Next", &p, SLOT(generateNext()), CTRL+Key_N ); generateten_id = placement->insertItem( "Next &ten streamlines", &p, SLOT(generateTen()), CTRL+Key_T ); generateresume_id = placement->insertItem( "&Resume the placement", &p, SLOT(generateAll()), CTRL+Key_C ); clear_id = placement->insertItem( "&Clear", &p, SLOT(purge()), CTRL+Key_M ); drawstl_id = view->insertItem( "&Draw streamlines", &p, SLOT(draw_stl()), CTRL+Key_D ); drawpq_id = view->insertItem( "Draw &queue elements", &p, SLOT(draw_pq()), CTRL+Key_Q ); drawtr_id = view->insertItem( "Draw t&riangulation", &p, SLOT(draw_tr()), CTRL+Key_R ); drawbc_id = view->insertItem( "Draw &biggest circle", &p, SLOT(draw_bc()), CTRL+Key_B ); addimage_id = placement->insertItem( "&Image", this, SLOT(openedimage()), CTRL+Key_I ); options->insertItem( "Density...", &p, SLOT(density())); options->insertItem( "Saturation ration...", &p, SLOT(ratio())); options->insertItem( "Sampling step...", &p, SLOT(sampling())); options->insertItem( "Integrating step...", &p, SLOT(integrating())); placement->insertItem( "&Options ", options ); save_id = file->insertItem( "&Save", save ); menu->insertItem( "&File", file ); menu->insertItem( "&Placement", placement ); view_id = menu->insertItem( "&View ", view ); file->insertItem( "&Quit", qApp, SLOT(quit()), ALT+Key_F4 ); // desable all generator menu items placement->setItemEnabled(generate_id, false); placement->setItemEnabled(generatefirst_id, false); placement->setItemEnabled(generatenext_id, false); placement->setItemEnabled(generateten_id, false); placement->setItemEnabled(generateresume_id, false); placement->setItemEnabled(clear_id, false); menu->setItemEnabled(view_id, false); placement->setItemEnabled(addimage_id, false); file->setItemEnabled(save_id, false); connect(this, SIGNAL(fileloaded(const QString &)), &p, SLOT(load(const QString &))); connect(this, SIGNAL(imageloaded(const QString &)), &p, SLOT(image(const QString &))); connect(&p, SIGNAL(optionschanged()), this, SLOT(updatestatus())); }
vector<int> getRow(int rowIndex) { vector<int> ret; ret.push_back(1); for (int i = 0; i < rowIndex; ++i) generateNext(ret); return ret; }
void generateAll() { while (!completed) generateNext(false); draw(); }
void generateTen() { for (int i=0;i<10;i++) generateNext(false); draw(); }