Ejemplo n.º 1
0
NSHARE::CText process_name(int pid)
{

	char _paths[PATH_MAX];
	char chrarry_NameOfProcess[300];
	char* chrptr_StringToCompare = NULL;
	sprintf(_paths, "%s%d/cmdline",PROC_DIRECTORY, pid);

	FILE* fd_CmdLineFile = fopen(_paths, "rt"); // open the file for reading text
	if (fd_CmdLineFile)
	{
		fscanf(fd_CmdLineFile, "%s", chrarry_NameOfProcess); // read from /proc/<NR>/cmdline
		fclose(fd_CmdLineFile); // close the file prior to exiting the routine

		if (strrchr(chrarry_NameOfProcess, '/'))
			chrptr_StringToCompare = strrchr(chrarry_NameOfProcess, '/') + 1;
		else
			chrptr_StringToCompare = chrarry_NameOfProcess;

		//printf("Process name: %s\n", chrarry_NameOfProcess);
		//printf("Pure Process name: %s\n", chrptr_StringToCompare );

		return CText(chrptr_StringToCompare);

	}
	return CText();
}
Ejemplo n.º 2
0
void ClockWidget::paintEvent(QPaintEvent *)
{
    QColor CBackground( palette().window().color());
    QColor CCircle(     palette().windowText().color());
    QColor CHMarkers(   Qt::red);//palette().dark().color());
    QColor CMMarkers(   palette().dark().color());
    QColor CHHand(      128,0,128);//palette().dark().color());
    QColor CMHand(      0,128,128);//palette().mid().color());
    QColor CSHand(      128,128,0);//palette().shadow().color());
    QColor CText(       palette().text().color());

    QPointF center((width())/2.0f, (height())/2.0f);
    float clockSize = height() > width() ? width()-3 : height()-3;
    if (clockSize <= 0)
        return;

    QPainter painter(this);
    QPen pen;
    QFont font("Helvetica");

    painter.setBackground(QBrush(CBackground));

    painter.setRenderHint(QPainter::Antialiasing);
    painter.setRenderHint(QPainter::HighQualityAntialiasing);

    painter.translate(center);

    if (systime)
        targetTime = QDateTime::currentDateTime();

    dateTime = dateTime.addSecs(qRound(dateTime.secsTo(targetTime) * 0.5));
    dateTime = dateTime.addMSecs(qRound(dateTime.msecsTo(targetTime) * 0.5));

    QTime time = dateTime.time();

    pen.setCapStyle(Qt::FlatCap);

    painter.setPen(Qt::NoPen);
    painter.setBrush(CBackground);
    painter.drawEllipse(QPointF(),clockSize * 0.485f, clockSize * 0.485f);
    painter.setBrush(Qt::NoBrush);


    painter.save();
    pen.setColor(CMMarkers);
    pen.setWidthF(clockSize*0.01);
    painter.setPen(pen);
    for (int i = 0; i < 60; i++)
    {
        painter.drawLine(QPointF(0, clockSize * 0.46f),QPoint(0, clockSize * 0.485f));
        painter.rotate(360/60);
    }
    painter.restore();


    painter.save();
    pen.setColor(CHMarkers);
    pen.setWidthF(clockSize*0.02);
    painter.setPen(pen);
    for (int i = 0; i < 12; i++)
    {
        painter.drawLine(QPointF(0, clockSize * 0.44f),QPoint(0, clockSize * 0.485f));
        painter.rotate(360/12);
    }
    painter.restore();

    pen.setColor(CCircle);
    pen.setWidthF(clockSize*0.01);
    painter.setPen(pen);
    painter.drawEllipse(QPointF(),clockSize * 0.485f, clockSize * 0.485f);

    pen.setColor(CText);
    painter.setPen(pen);

    QString weekday = "";
    switch (dateTime.date().dayOfWeek())
    {
    case 1: weekday = "Monday";
        break;
    case 2: weekday = "Tuesday";
        break;
    case 3: weekday = "Wednesday";
        break;
    case 4: weekday = "Thursday";
        break;
    case 5: weekday = "Friday";
        break;
    case 6: weekday = "Saturday";
        break;
    case 7: weekday = "Sunday";
        break;
    default:
        break;
    }

    font.setPointSizeF(clockSize * 0.05f);
    painter.setFont(font);
    painter.drawText(
                -clockSize*0.35f,
                -clockSize*0.3f,
                clockSize*0.35f,
                clockSize*0.1f,
                Qt::AlignCenter,
                weekday);

    font.setPointSizeF(clockSize * 0.15f);
    painter.setFont(font);
    painter.drawText(
                -clockSize*0.3f,
                -clockSize*0.2f,
                clockSize*0.25f,
                clockSize*0.25f,
                Qt::AlignCenter,
                QString::number(dateTime.date().day()));

    painter.drawText(
                clockSize*0.05f,
                -clockSize*0.2f,
                clockSize*0.25f,
                clockSize*0.25f,
                Qt::AlignCenter,
                QString::number(dateTime.date().month()));

    font.setPointSizeF(clockSize * 0.10f);
    painter.setFont(font);
    painter.drawText(
                -clockSize*0.3f,
                clockSize*0.05f,
                clockSize*0.6f,
                clockSize*0.25f,
                Qt::AlignCenter,
                QString::number(dateTime.date().year()));

    painter.setPen(Qt::NoPen);

    const QPoint hourHand[4] =
    {
        QPoint(0,clockSize*0.035f),
        QPoint(-1-clockSize*0.035f,0),
        QPoint(0,-clockSize*0.25f),
        QPoint(1+clockSize*0.035f,0)
    };

    painter.save();
    painter.setBrush(CHHand);
    painter.rotate((time.hour() + time.minute()/60.0f) * (360/12));
    painter.drawConvexPolygon(hourHand, 4);
    painter.drawPie(-clockSize*0.035f,
                    -clockSize*0.035f,
                    clockSize*0.07f,
                    clockSize*0.07f,
                    180*16,
                    180*16
                );
    painter.restore();


    const QPoint minuteHand[4] =
    {
        QPoint(0,clockSize*0.03f),
        QPoint(-1-clockSize*0.03f,0),
        QPoint(0,-clockSize*0.35f),
        QPoint(1+clockSize*0.03f,0)
    };

    painter.save();
    painter.setBrush(CMHand);
    painter.rotate((time.minute() + time.second()/60.0f) * (360/60));
    painter.drawConvexPolygon(minuteHand, 4);
    painter.drawPie(-clockSize*0.03f,
                    -clockSize*0.03f,
                    clockSize*0.06f,
                    clockSize*0.06f,
                    180*16,
                    180*16
                );
    painter.restore();

    const QPoint secondHand[4] =
    {
        QPoint(0,clockSize*0.02f),
        QPoint(-1-clockSize*0.02f,0),
        QPoint(0,-clockSize*0.40f),
        QPoint(1+clockSize*0.02f,0)
    };

    painter.save();
    painter.setBrush(CSHand);
    painter.rotate((time.second() + time.msec()/1000.0f) * (360/60));
    painter.drawConvexPolygon(secondHand, 4);
    painter.drawPie(-clockSize*0.02f,
                    -clockSize*0.02f,
                    clockSize*0.04f,
                    clockSize*0.04f,
                    180*16,
                    180*16
                );
    painter.restore();
}