Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ qDebug()<<"Creando ventana..."; ui->setupUi(this); trayMenu = new QMenu("Intuta", this); trayIcon = new QSystemTrayIcon(this); manager = new QNetworkAccessManager(this); alarma = new QTimer(this); opciones = new QSettings(QSettings::IniFormat, QSettings::UserScope, "INTUTA"); ventanaRegistro = new RegistroWidget; crypto = new SimpleCrypt(this->CLAVE_CIFRADO); QObject::connect(this, SIGNAL(userPassReady()), SLOT(iniciarSesion())); QObject::connect(this, SIGNAL(inicioSesionExitoso()), SLOT(revisar())); QObject::connect(alarma, SIGNAL(timeout()), SLOT(setUserPass())); QObject::connect(this, SIGNAL(datosObtenidos(int)), SLOT(comparar1())); // QObject::connect(this, SIGNAL(nuevoMensaje(int,QStringList)), SLOT(informarNuevosMensajes(int,QStringList))); // QObject::connect(this, SIGNAL(nuevoRecurso(int,QStringList)), SLOT(informarNuevosRecursos(int,QStringList))); QObject::connect(this, SIGNAL(userPassReady()), SLOT(cambiarToolTip())); QObject::connect(this, SIGNAL(algoNuevo(QString)), ventanaRegistro, SLOT(registrarMensaje(QString))); alarma->setInterval(DEFAULT_INTERVAL); opciones->beginGroup("login"); ui->saveUserPass->blockSignals(true); ui->saveUserPass->setChecked(opciones->value("saveUserPass", false).toBool()); ui->saveUserPass->blockSignals(false); opciones->endGroup(); acRegistro = trayMenu->addAction("Ver registro", ventanaRegistro, SLOT(show())); trayMenu->addSeparator(); acRevisar = trayMenu->addAction("Revisar", this, SLOT(revisar())); acSetUserPass = trayMenu->addAction("Fijar usuario y contraseña", this, SLOT(show())); trayMenu->addSeparator(); acSalir = trayMenu->addAction("Salir", qApp, SLOT(quit())); trayIcon->setIcon(QIcon(":/img/intuta.svg")); trayIcon->setContextMenu(trayMenu); trayIcon->setToolTip("INTUTA\nSin configurar"); trayIcon->show(); }
main() { int opc, userType; char *criteria = malloc(sizeof(char)*200); char *result = malloc(sizeof(char)*BUFSIZ); Usuario* yo = malloc(sizeof(Usuario)); Producto* p = malloc(sizeof(Producto)); printf("Usuario: "); scanf("%15s",yo->login); printf("Contraseña: "); scanf("%15s",yo->pass); conectarBD(); userType = iniciarSesion(yo); if(userType == 1){ do{ //Admin User printf("\nAdministrador \n1. Mostrar productos \n2. Buscar un producto \n3. Agregar productos \n4. Cerrar sesión y salir\nSeleccione una opción: "); scanf("%d",&opc); switch(opc){ case 1: printf("%s",consultarProductos()); break; case 2: printf("Busqueda: "); scanf("%s",criteria); printf("%s", obtenerProducto(criteria)); break; case 3: //Add products printf("Introduce a continuación los datos del producto\n"); printf("idCategoria: "); setbuf( stdin, NULL ); scanf("%d",&(p->idCategoria)); printf("Nombre: "); setbuf( stdin, NULL ); gets(p->producto); printf("Precio: "); setbuf( stdin, NULL ); scanf("%f",&(p->precio)); printf("Existencia: "); setbuf( stdin, NULL ); scanf("%d",&(p->existencia)); printf("Descripción: "); setbuf( stdin, NULL ); gets(p->descripcion); agregarProducto(p); break; case 4: printf("Bye\n"); break; default: break; } }while(opc!=4); }else if(userType > 0){ do{ //Common User printf("\n1. Mostrar productos \n2. Buscar un producto \n3. Comprar productos \n4. Cerrar sesión y salir\nSeleccione una opción: "); scanf("%d",&opc); switch(opc){ case 1: printf("%s",consultarProductos()); break; case 2: printf("Busqueda: "); scanf("%s",criteria); printf("%s", obtenerProducto(criteria)); break; case 3: //Buy products break; case 4: printf("Bye\n"); break; default: break; } }while(opc!=4); } else { printf("No se encuentra el usuario\n"); } }