Пример #1
0
void Player::setSkin(const QString& skin_name)
{
    QDir dir = QDir(Settings::path);
    dir.cd("skins");
#ifdef Q_OS_WIN
    dir.cd(skin_name);
#else
    if (!dir.cd(skin_name))
        dir = QDir(QDir::homePath() + "/.lplayer/skins/" + skin_name);
#endif
    // Load skin.qml
    if (chdir(dir.absolutePath().toUtf8().constData()))
    {
        QMessageBox::warning(this, "Error", tr("Failed to read skin!"));
        exit(EXIT_FAILURE);
    }
    QFile qssFile("skin.qss");
    if (!qssFile.open(QFile::ReadOnly | QFile::Text))
    {
        QMessageBox::warning(this, "Error", tr("Failed to read skin!"));
        exit(EXIT_FAILURE);
    }
    QString qss = QString::fromUtf8(qssFile.readAll());
    qssFile.close();
    setStyleSheet(qss);

    // Set fixed sizes
    QFile sizeFile("fixed_sizes");
    if (sizeFile.open(QFile::ReadOnly | QFile::Text))
    {
        QByteArray data = sizeFile.readAll().simplified().replace(" ", "");
        sizeFile.close();
        QStringList sizeInfos = QString::fromUtf8(data).split(';', QString::SkipEmptyParts);
        foreach (QString item, sizeInfos) {
            QStringList properties = item.split(',');
            QWidget *widget = findChild<QWidget*>(properties[0]);
            if (widget)
            {
                int w = properties[1].toInt(), h = properties[2].toInt();
                if (w)
                    widget->setFixedWidth(w);
                if (h)
                    widget->setFixedHeight(h);
                widget->setFocusPolicy(Qt::NoFocus);
            }
        }
Пример #2
0
void Gps::initGpsUart()
{

    // erase file gps3.txt


    // si la taille du fichier est inf à 500 Mo on enregistre les données
    while (size <= 51)
    {
        system("cat /dev/ttyO1 >> gps3.txt");
        cout<<"ecriture des donnees"<<endl;
        sizeFile();
        cout<< size<<endl;
    }
    cout<< size<<endl;
    cout<<"\nMemory full\n";


}
Пример #3
0
char *readFile(char *fileName)
{
  FILE *fp;
  int DEBUG2 = 0;

  if ((fp = fopen(fileName, "r")) == NULL)
    printf("Error: File could not be opened\n");
  else
  {

    int file_size = sizeFile(fileName);;
    if (DEBUG2) printf(" file size=%d", file_size);

    char *cadena = (char *)malloc(file_size);

    int read_chars = 1;
    int read_lines = 0;
    while(read_chars<(file_size-read_lines)) {
        fgets(&(cadena[read_chars-1]),file_size,fp);
        if (cadena[read_chars-1]!='>') {
 	       read_chars=strlen(cadena);
	}
        read_lines++;
        if (DEBUG2) printf(" read_chars=%d", read_chars);
        if (DEBUG2) printf(" read_lines=%d", read_lines);
    }

    if (DEBUG2) {
        int i;
	char *cadena2 = cadena;
	for(i=1;i<=read_chars;i++){
	   printf("[%d,%c],",i,*cadena2++);
	}
    }

    return cadena;
   }

}
Пример #4
0
int main(int argc, char *argv[]) {
	char str[50];
	FILE *file;
	int i,numberTrueAnswer=0;
	char *clientFile="/home/user/workspace/server/registration.txt";
	char numberTest='0';
	char *name=(char*)malloc(50*sizeof(char));


	int sockfd, newsockfd, portno, clilen;
	const int on = 1;
	char buffer[256];
	struct sockaddr_in serv_addr, cli_addr;
	int n;

	sockfd = socket(AF_INET, SOCK_STREAM, 0);
	if (sockfd < 0) {
		perror("ERROR opening socket");
		exit(1);
	}
	setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));
	bzero((char *) &serv_addr, sizeof(serv_addr));
	portno = 5001;
	serv_addr.sin_family = AF_INET;
	serv_addr.sin_addr.s_addr = INADDR_ANY;
	serv_addr.sin_port = htons(portno);

	if (bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0) {
		perror("ERROR on binding");
		exit(1);
	}
	listen(sockfd, 5);
	clilen = sizeof(cli_addr);

	newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, &clilen);
	if (newsockfd < 0) {
		perror("ERROR on accept");
		exit(1);
	}

	//Connect from client

	while(1){
	bzero(buffer, 256);
		n = read(newsockfd, buffer, 255);
		if (n < 0) {
				perror("ERROR reading from socket");
				exit(1);
		}
	if(buffer[0]=='!'){
		n = write(newsockfd, "Login", 5);
		break;
	}
	n = write(newsockfd, "ERROR", 5);
	}
	/*//Registration
	int numberClient;
	int clientSize=sizeFile(clientFile);
	struct Client c[clientSize];
	file = fopen(clientFile, "r");
	for (i = 0; fgets(str, sizeof(str), file); i++) {
						writeSizeClient(&c[i], &str);
	}
	fclose(file);
	while(1){
		numberClient=-1;
		bzero(buffer, 256);
		n = read(newsockfd, buffer, 255);
		for (i = 0; i<clientSize; i++) {
			if(strcmp(buffer, strcat(c[i].login,"\n"))==0){
				numberClient=i;
				break;
		}}
		if(numberClient!=-1){
			n = write(newsockfd, "Parol", 5);
			break;
		}
		n = write(newsockfd, "Login", 5);
		}
	//Enter Password
	while(1){
			bzero(buffer, 256);
			n = read(newsockfd, buffer, 255);
			if(strcmp(buffer, strcat(c[numberClient].parol, "\n"))==0){
					n = write(newsockfd, "OK", 2);
					break;
			}
			n = write(newsockfd, "Parol", 5);
			}
	//Enter last result
	char *string=writeLastResult(&c[numberClient]);
	printf("%s",string);*/

	//Number test
	while (1){
		bzero(buffer, 256);
		n = read(newsockfd, buffer, 255);
		numberTest = buffer[0];
		name=(char*)malloc(50*sizeof(char));
		sprintf(name, "%s%c%s", "/home/user/workspace/server/",numberTest, ".txt");
		if((file = fopen(name, "r"))!=NULL){
			n = write(newsockfd, "OK", 2);
			break;
		}
		n = write(newsockfd, "ERROR", 5);
		free(name);
	}
	int testSize = sizeFile(name);
	struct Line x[testSize];
	file = fopen(name, "r");
		for (i = 0; fgets(str, sizeof(str), file); i++) {
			writeSize(&x[i], &str);
		}
		fclose(file);
		for (i = 0; i < testSize; i++) {
		char *stringOut = writeToClient(&x[i]);
		n = write(newsockfd, stringOut, strlen(stringOut));
		printf("%d", strlen(stringOut));
		bzero(buffer, 256);
		n = read(newsockfd, buffer, 255);
		if (n < 0) {
			perror("ERROR reading from socket");
			exit(1);
		}
		printf("Answer: %s\n", buffer);
		if (buffer[0] == x[i].trueAnswer){
			n = write(newsockfd, "Right\n", 6);
			numberTrueAnswer=numberTrueAnswer+1;
		}
		else
			n = write(newsockfd, "Wrong\n", 6);
		if (n < 0) {
			perror("ERROR writing to socket");
			exit(1);
		}
	}

	free(name);
	name=(char*)malloc(100*sizeof(char));
	sprintf(name, "%s%d\n%s%d\n", "Number of question ",testSize,
			"Number of true answer is ",numberTrueAnswer);
	n = write(newsockfd, name, strlen(name));
	if (n < 0) {
				perror("ERROR writing to socket");
				exit(1);
			}
	n = write(newsockfd, "!\n", 2);
	for (i = 0; i < testSize; i++)
		freeLine(&x[i]);
	free(name);
	//for (i = 0; i < clientSize; i++)
		//freeClient(&c[i]);
	return 0;
}
Пример #5
0
bool QtCurveHandler::readConfig(bool compositingToggled)
{
    QtCurveConfig      oldConfig=m_config;
    KConfig            configFile("kwinqtcurverc");
    const KConfigGroup config(&configFile, "General");
    QFontMetrics       fm(m_titleFont);  // active font = inactive font
    int                oldSize=m_titleHeight,
                       oldToolSize=m_titleHeightTool;
    bool               changedBorder=false;

    // The title should stretch with bigger font sizes!
    m_titleHeight = qMax(16, fm.height() + 4); // 4 px for the shadow etc.
    // have an even title/button size so the button icons are fully centered...
    if (m_titleHeight%2 == 0)
        m_titleHeight++;

    fm = QFontMetrics(m_titleFontTool);  // active font = inactive font
    // The title should stretch with bigger font sizes!
    m_titleHeightTool = qMax(13, fm.height()); // don't care about the shadow etc.
    // have an even title/button size so the button icons are fully centered...
    if (m_titleHeightTool%2 == 0)
        m_titleHeightTool++;

    m_config.load(&configFile);

#if KDE_IS_VERSION(4, 3, 85)
    static bool borderHack=false;
    if(borderHack)
    {
    m_config.setOuterBorder(KWindowSystem::compositingActive() ? QtCurveConfig::SHADE_NONE :
                             (m_config.customShadows() ? QtCurveConfig::SHADE_SHADOW : QtCurveConfig::SHADE_DARK));
        changedBorder=true;
        borderHack=false;
    }
    else if(compositingToggled && !m_config.outerBorder() &&
           (m_config.borderSize()<QtCurveConfig::BORDER_TINY ||
            (wStyle()->pixelMetric((QStyle::PixelMetric)QtC_WindowBorder, 0L, 0L)&WINDOW_BORDER_COLOR_TITLEBAR_ONLY)))
    {
        QDBusConnection::sessionBus().send(QDBusMessage::createSignal("/KWin", "org.kde.KWin", "reloadConfig"));
        borderHack=true;
    }
#endif

    m_titleHeight+=2*titleBarPad();

    QFile in(xdgConfigFolder() + "/qtcurve/" BORDER_SIZE_FILE);
    int   prevSize(-1), prevToolSize(-1), prevSide(-1), prevBot(-1);

    if(in.open(QIODevice::ReadOnly))
    {
        QTextStream stream(&in);
        prevSize=in.readLine().toInt();
        prevToolSize=in.readLine().toInt();
        prevBot=in.readLine().toInt();
        prevSide=in.readLine().toInt();
        in.close();
    }

    setBorderSize();

    int borderEdge=borderEdgeSize()*2;
    bool borderSizesChanged=prevSize!=(m_titleHeight+borderEdge) || prevToolSize!=(m_titleHeightTool+borderEdge) ||
                            prevBot!=borderSize(true) || prevSide!=borderSize(false);
    if(borderSizesChanged)
    {
        KSaveFile sizeFile(xdgConfigFolder() + "/qtcurve/" BORDER_SIZE_FILE);

        if (sizeFile.open())
        {
            QTextStream stream(&sizeFile);
            stream << m_titleHeight+borderEdge << endl
                   << m_titleHeightTool+borderEdge << endl
                   << borderSize(true) << endl
                   << borderSize(false) << endl;
            stream.flush();
            sizeFile.finalize();
            sizeFile.close();
        }
    }
#if KDE_IS_VERSION(4, 3, 0)
    bool shadowChanged(false);

    if(customShadows())
    {
        QtCurveShadowConfiguration actShadow(QPalette::Active),
                                   inactShadow(QPalette::Inactive);

        actShadow.load(&configFile);
        inactShadow.load(&configFile);

        shadowChanged=m_shadowCache.shadowConfigurationChanged(actShadow) ||
                      m_shadowCache.shadowConfigurationChanged(inactShadow);

        m_shadowCache.setShadowConfiguration(actShadow);
        m_shadowCache.setShadowConfiguration(inactShadow);

        if(shadowChanged || oldConfig.roundBottom()!=roundBottom())
            m_shadowCache.reset();
    }
#endif

    if(m_dBus && (borderSizesChanged || changedBorder))
    {
        m_dBus->emitBorderSizes(); // KDE4 apps...
        borderSizeChanged(); // Gtk2 apps...
    }

    return changedBorder ||
           oldSize!=m_titleHeight ||
           oldToolSize!=m_titleHeightTool ||
#if KDE_IS_VERSION(4, 3, 0)
           shadowChanged ||
#endif
           m_config!=oldConfig;
}
Пример #6
0
void* thread1(int sock){
	printf("New client\n");
	char buffer[256];
	int n;
	char str[50];
		char result[50];
		FILE *file;
		int i, numberTrueAnswer = 0;
		char *clientFile = "/home/user/workspace/server/registration.txt";
		int numberTest = 0;
		char *name = (char*) malloc(50 * sizeof(char));
		while (1) {
				bzero(buffer, 256);
				n = read(sock, buffer, 1);
				if (n < 0) {
					perror("ERROR reading from socket");
					exit(1);
				}
				n = write(sock, buffer, 1);
				if (n < 0) {
					perror("ERROR writing to socket");
					exit(1);
			}
				if (buffer[0] == '!')
					break;
		}
			//Registration
			int numberClient;
			int clientSize = sizeFile(clientFile);
			struct Client c[50];
			file = fopen(clientFile, "r");
			if (file == NULL) {
				perror("ERROR open file");
				exit(1);
			}
			for (i = 0; fgets(str, sizeof(str), file); i++) {
				writeSizeClient(&c[i], &str);
			}
			fclose(file);
			char bufferNew[256];
			numberClient = -1;
			bzero(buffer, 256);
			bzero(bufferNew, 256);
			n = read(sock, buffer, 255);
			if (n < 0) {
				perror("ERROR reading from socket");
				exit(1);
			}
			for (i = 0; i < strlen(buffer) - 1; i++)
				bufferNew[i] = buffer[i];
			for (i = 0; i < clientSize; i++) {
				if (strcmp(bufferNew, c[i].login) == NULL) {
					numberClient = i;
					break;
				}
			}
			//New client
			if (numberClient == -1) {
				clientSize++;
				struct Client client;
				newUser(bufferNew, &client);
				c[clientSize - 1] = client;
				numberClient = clientSize - 1;
			}
			char strres[50];
			sprintf(strres,"%d#%d#%d#%s/\n",c[numberClient].numberTest,
					c[numberClient].sizeQuestion,c[numberClient].sizeTrueAnswer,c[numberClient].login);
			strcpy(result ,strres);
			n = write(sock, result, strlen(result));
				if (n < 0) {
					perror("ERROR writing to socket");
					exit(1);
				}
			//List of test
			while (1) {
				bzero(buffer, 256);
								n = read(sock, buffer, 1);
								if (n < 0) {
									perror("ERROR reading from socket");
									exit(1);
								}
								n = write(sock, buffer, 1);
								if (n < 0) {
									perror("ERROR writing to socket");
									exit(1);
							}
								if (buffer[0] == '1')
									break;
			}
			char res[60]="/" ;
			char s[3];
			for (i = 50; i >0; i--) {
				sprintf(name, "%s%d%s", "/home/user/workspace/server/test/", i, ".txt");
				if ((file = fopen(name, "r")) != NULL) {
					sprintf(s, "#%d", i);
					strcat(res, s);
					fclose(file);
				}
			}
			n = write(sock, res, strlen(res));
			if (n < 0) {
				perror("ERROR writing to socket");
				exit(1);
			}

		//Number test
			bzero(buffer, 256);
				n = read(sock, buffer, 255);
				if (n < 0) {
					perror("ERROR reading from socket");
					exit(1);
				}
				numberTest=toInt(buffer);
				sprintf(name, "%s%d%s", "/home/user/workspace/server/test/", numberTest,
						".txt");
				file = fopen(name, "r");
			int testSize = sizeFile(name);
			int trueAnswer;
			file = fopen(name, "r");
			if (file == NULL) {
				perror("ERROR open file");
				exit(1);
			}
			int end=0;
			while(1){
				if(!fgets(str, sizeof(str), file))
					end=1;
				while (1) {
								bzero(buffer, 256);
												n = read(sock, buffer, 1);
												if (n < 0) {
													perror("ERROR reading from socket");
													exit(1);
												}
												if(end)
													buffer[0]='/';
												n = write(sock, buffer, 1);
												if (n < 0) {
													perror("ERROR writing to socket");
													exit(1);
											}
												if (buffer[0] == '2' || buffer[0] == '/')
													break;
							}
				if(end)
					break;
				trueAnswer=readTrueAnswer(str);
				n = write(sock, str, strlen(str));
					if (n < 0) {
						perror("ERROR writing to socket");
						exit(1);
					}
					//Answer
				bzero(buffer, 256);
				n = read(sock, buffer, 1);
				if (n < 0) {
					perror("ERROR reading from socket");
					exit(1);
				}
				printf("Answer: %s\n", buffer);
				if (buffer[0] == trueAnswer+'0') {
					n = write(sock, "Right\n", 6);
					if (n < 0) {
						perror("ERROR writing to socket");
						exit(1);
					}
					numberTrueAnswer = numberTrueAnswer + 1;
				} else
					n = write(sock, "Wrong\n", 6);
				if (n < 0) {
					perror("ERROR writing to socket");
					exit(1);
				}
			}
			sprintf(name, "%d#%d#%d#%s/", numberTest,testSize, numberTrueAnswer,c[numberClient].login);
			n = write(sock, name, strlen(name));
			if (n < 0) {
				perror("ERROR writing to socket");
				exit(1);
			}


			newResult(&c[numberClient], numberTest, testSize, numberTrueAnswer);
			file = fopen("/home/user/workspace/server/registration.txt", "w");
			if (file == NULL) {
				perror("ERROR open file");
				exit(1);
			}
			for (i = 0; i < clientSize; i++) {
				fprintf(file, "%d#%d#%d#%s/\n", c[i].numberTest, c[i].sizeQuestion,
						c[i].sizeTrueAnswer, c[i].login);
			};
			fclose(file);
			free(name);
}