Tree::menuClicDroit::menuClicDroit(MainWindow *mainWindow) { // Constructeur menu clic droit sur l'arborescence this->menu = new QMenu(); this->nouveauSample = new QAction(trUtf8("Nouvel échantillon..."), this->menu); connect(this->nouveauSample, SIGNAL(triggered()), mainWindow, SLOT(importerSmpl())); this->menu->addAction(this->nouveauSample); this->nouvelInstrument = new QAction(trUtf8("Nouvel instrument..."), this->menu); connect(this->nouvelInstrument, SIGNAL(triggered()), mainWindow, SLOT(nouvelInstrument())); this->menu->addAction(this->nouvelInstrument); this->nouveauPreset = new QAction(trUtf8("Nouveau preset..."), this->menu); connect(this->nouveauPreset, SIGNAL(triggered()), mainWindow, SLOT(nouveauPreset())); this->menu->addAction(this->nouveauPreset); this->menu->addSeparator(); // Remplacer / associer this->associer = new QAction(trUtf8("Associer à..."), this->menu); connect(this->associer, SIGNAL(triggered()), mainWindow, SLOT(associer())); this->menu->addAction(this->associer); this->remplacer = new QAction(trUtf8("Remplacer par..."), this->menu); connect(this->remplacer, SIGNAL(triggered()), mainWindow, SLOT(remplacer())); this->menu->addAction(this->remplacer); this->menu->addSeparator(); // Copier / coller / supprimer this->copier = new QAction(trUtf8("Copier"), this->menu); this->copier->setShortcut(QString("Ctrl+C")); connect(this->copier, SIGNAL(triggered()), mainWindow, SLOT(copier())); this->menu->addAction(this->copier); this->coller = new QAction(trUtf8("Coller"), this->menu); this->coller->setShortcut(QString("Ctrl+V")); connect(this->coller, SIGNAL(triggered()), mainWindow, SLOT(coller())); this->menu->addAction(this->coller); this->supprimer = new QAction(trUtf8("Supprimer"), this->menu); this->supprimer->setShortcut(QString("Del")); connect(this->supprimer, SIGNAL(triggered()), mainWindow, SLOT(supprimerElt())); this->menu->addAction(this->supprimer); this->menu->addSeparator(); // Renommer this->renommer = new QAction(trUtf8("Renommer..."), this->menu); this->renommer->setShortcut(Qt::Key_F2); connect(this->renommer, SIGNAL(triggered()), mainWindow, SLOT(renommer())); this->menu->addAction(this->renommer); this->menu->addSeparator(); // Fermer this->fermer = new QAction(trUtf8("Fermer le fichier"), this->menu); this->fermer->setShortcut(QString("Ctrl+W")); connect(this->fermer, SIGNAL(triggered()), mainWindow, SLOT(Fermer())); this->menu->addAction(this->fermer); }
int main(int argc, char *argv[]) { key_t cle; int idshm; char * memoire; circbuf bufferCirculaire; cle = ftok("/etc/passwd", 1); idshm = shmget(cle, 0, 0); memoire = shmat(idshm, NULL, SHM_RND); bufferCirculaire = circbuf_init(memoire, sizeof(char[8192])); if(argc > 1) { if((argv[1])[0] == '-') { if((argv[1])[1] == 'a') { for(int i = 0; i < circbuf_count(bufferCirculaire); i++) coller(circbuf_get(bufferCirculaire, i)); } else if((argv[1])[1] == 'l') { for(int i = 0; i < circbuf_count(bufferCirculaire); i++) printf("%d\t%s\n", i, strrchr(circbuf_get(bufferCirculaire, i), '/') + 1); } else if((argv[1])[1] == 'h') { afficher_aide(); } else { coller(circbuf_get(bufferCirculaire, atoi(&(argv[1])[1]))); } } else{ if(fopen(argv[1], "r")) { char c = (argv[1])[0]; if(c != '/') { char path[100]; getcwd(path, sizeof(path)); argv[1] = strcat(strcat(path, "/"), argv[1]); } printf("%s\n", argv[1]); circbuf_append(bufferCirculaire, argv[1]); } else { printf("Le fichier '%s' n'existe pas\n", argv[1]); } } } else { printf("Veuillez entrez un paramètre ou un nom de fichier!\n"); printf("Pour plus d'informations, utilisez l'aide en saisissant 'mycp -h'\n"); } circbuf_shut(bufferCirculaire); shmdt(memoire); return 0; }