OutputDirectory::OutputDirectory( Config *_config, QWidget *parent ) : QWidget( parent ), config( _config ) { QGridLayout *grid = new QGridLayout( this ); grid->setMargin( 0 ); QHBoxLayout *box = new QHBoxLayout( ); grid->addLayout( box, 0, 0 ); cMode = new KComboBox( this ); cMode->addItem( i18n("By meta data") ); cMode->addItem( i18n("Source directory") ); cMode->addItem( i18n("Specify output directory") ); cMode->addItem( i18n("Copy directory structure") ); box->addWidget( cMode ); connect( cMode, SIGNAL(activated(int)), this, SLOT(modeChangedSlot(int)) ); cDir = new KComboBox( true, this ); box->addWidget( cDir, 1 ); connect( cDir, SIGNAL(editTextChanged(const QString&)), this, SLOT(directoryChangedSlot(const QString&)) ); pDirSelect = new KPushButton( KIcon("folder"), "", this ); box->addWidget( pDirSelect ); pDirSelect->setFixedWidth( pDirSelect->height() ); pDirSelect->setToolTip( i18n("Choose an output directory") ); connect( pDirSelect, SIGNAL(clicked()), this, SLOT(selectDir()) ); pDirGoto = new KPushButton( KIcon("system-file-manager"), "", this ); box->addWidget( pDirGoto ); pDirGoto->setFixedWidth( pDirGoto->height() ); pDirGoto->setToolTip( i18n("Open the output directory with Dolphin") ); connect( pDirGoto, SIGNAL(clicked()), this, SLOT(gotoDir()) ); setMode( (OutputDirectory::Mode)config->data.general.lastOutputDirectoryMode ); }
//helper fonction for std::set<ui16> CSpell::rangeInHexes(unsigned int centralHex, ui8 schoolLvl ) const static std::set<ui16> getInRange(unsigned int center, int low, int high) { std::set<ui16> ret; if(low == 0) { ret.insert(center); } std::pair<int, int> mainPointForLayer[6]; //A, B, C, D, E, F points for(int b=0; b<6; ++b) mainPointForLayer[b] = hexToPair(center); for(int it=1; it<=high; ++it) //it - distance to the center { for(int b=0; b<6; ++b) mainPointForLayer[b] = gotoDir(mainPointForLayer[b], b); if(it>=low) { std::pair<int, int> curHex; //adding lines (A-b, B-c, C-d, etc) for(int v=0; v<6; ++v) { curHex = mainPointForLayer[v]; for(int h=0; h<it; ++h) { if(isGoodHex(curHex)) ret.insert(XYToHex(curHex)); curHex = gotoDir(curHex, (v+2)%6); } } } //if(it>=low) } return ret; }
// This function execute builtin functions void do_it(int bi) { switch(comtab[bi].builtin) { case BYE: goodbye = 1; // Set global goodbye variable to true break; case CDHOME: goHome(); break; case CD: // Go to specified path gotoDir(bi); break; case SETALIAS: // Adding alias to the alias table printf("adding alias to table\n"); createAlias(comtab[curr_cmd].atptr->args[0], comtab[curr_cmd].atptr->args[1]); printf("Done adding alias to table\n"); break; case UNALIAS: removeAlias(comtab[curr_cmd].atptr->args[0]); break; case PRINTALIAS: // Print either a specific alias or all aliases if( comtab[curr_cmd].nargs == 0) { printf("calling\n"); listAliases(); // Print all aliases } else { printAnAlias(comtab[curr_cmd].atptr->args[0]); // Print specific alias } break; case SETENV: // Set environment if( putenv( strcat(strcat(comtab[curr_cmd].atptr->args[0],"="),comtab[curr_cmd].atptr->args[1]) ) != 0) { printf("%s\n", strerror(errno)); } break; case UNSETENV: // Removing environment variables if( unsetenv(comtab[bi].atptr->args[0]) == -1) { printf("%s\n", strerror(errno)); } break; case PRINTENV: // Print environment variables printallEnv(); break; } }
static std::pair<int, int> gotoDir(std::pair<int, int> xy, int direction) { return gotoDir(xy.first, xy.second, direction); }