diff --git a/.ground.ini b/.ground.ini new file mode 100644 index 0000000..93ee944 Binary files /dev/null and b/.ground.ini differ diff --git a/Mru1.pro b/Mru1.pro new file mode 100644 index 0000000..f8cd53f --- /dev/null +++ b/Mru1.pro @@ -0,0 +1,82 @@ +#------------------------------------------------- +# +# Project created by QtCreator 2023-04-11T08:56:14 +# +#------------------------------------------------- + +QT += core gui network + +TARGET = Mru1 +TEMPLATE = app + + +SOURCES += main.cpp\ + widget.cpp \ + graphicsviewmod.cpp \ + gcross.cpp \ + graphicsarcitem.cpp \ + groundobj.cpp \ + airobj.cpp \ + upravview.cpp \ + upravline.cpp \ + vvodsectotvet.cpp \ + vvodnomera.cpp \ + airticket.cpp \ + vvodnomeratrace.cpp \ + killtarget.cpp \ + kzstarget.cpp \ + resetcmd.cpp \ + vvod2z.cpp \ + table2z.cpp \ + abnticket.cpp \ + ctrlmode.cpp + +HEADERS += widget.h \ + graphicsviewmod.h \ + gcross.h \ + graphicsarcitem.h \ + groundobj.h \ + airobj.h \ + upravview.h \ + upravline.h \ + vvodsectotvet.h \ + vvodnomera.h \ + airticket.h \ + vvodnomeratrace.h \ + killtarget.h \ + kzstarget.h \ + resetcmd.h \ + vvod2z.h \ + table2z.h \ + abnticket.h \ + ctrlmode.h + +FORMS += widget.ui \ + vvodsectotvet.ui \ + airticket.ui \ + killtarget.ui \ + kzstarget.ui \ + vvod2z.ui \ + table2z.ui \ + abnticket.ui \ + ctrlmode.ui + +RESOURCES += \ + table2z.qrc \ + pics.qrc + + + + + + + + + + + + + + + + diff --git a/abnticket.cpp b/abnticket.cpp new file mode 100644 index 0000000..fa6a10d --- /dev/null +++ b/abnticket.cpp @@ -0,0 +1,79 @@ +#include "abnticket.h" +#include "ui_abnticket.h" + +abnticket::abnticket(QWidget *parent, int ab) : + QDialog(parent), + ui(new Ui::abnticket) +{ + ui->setupUi(this); + + setAttribute(Qt::WA_DeleteOnClose); + + hide(); + + n_Ab = 0; + vvodnomera vv(parent); + vv.setAbMax(4); + vv.setAbMin(1); + vv.exec(); + + n_Ab = vv.result(); + + if (n_Ab<=0) + { + + vv.close(); + this->close(); + } + else + { + fillUi(n_Ab); + ui->lineEdit->setText(QString::number(n_Ab)); + ((Widget*)parent)->changeOpenWidget(this); + } +} + +abnticket::~abnticket() +{ + delete ui; +} + +void abnticket::fillUi(int n_ab) { + Widget *p = (Widget*)this->parentWidget(); + if (p) { + const int abType = p->grObj[n_ab]->type; + if (abType == 12) { + ui->lineEdit_2->setText(QString::fromLocal8Bit("2A6")); + ui->lineEdit_3->setText(QString::fromLocal8Bit(" \"\"")); + } else + { + ui->lineEdit_2->setText(QString::fromLocal8Bit("9A331")); + ui->lineEdit_3->setText(QString::fromLocal8Bit(" \"\"")); + } + } +} + +void abnticket::closeEvent(QCloseEvent *event) +{ + ((Widget*)parent())->clearOpenWidget(); + event->accept(); +} + +void abnticket::on_pushButton_4_clicked() +{ + close(); +} + + +void abnticket::on_pushButton_3_clicked() +{ + close(); +} + + + +void abnticket::on_pushButton_2_clicked() +{ + // int n = ui->lineEdit->text().toInt(); + +} diff --git a/abnticket.h b/abnticket.h new file mode 100644 index 0000000..a190f22 --- /dev/null +++ b/abnticket.h @@ -0,0 +1,35 @@ +#ifndef ABNTICKET_H +#define ABNTICKET_H + +#include +#include "widget.h" + +namespace Ui { +class abnticket; +} + +class abnticket : public QDialog +{ + Q_OBJECT + +public: + abnticket(QWidget *parent = 0, int ab = 1); + ~abnticket(); + int n_Ab; + +private slots: + void closeEvent(QCloseEvent *event); + + void on_pushButton_4_clicked(); + + void on_pushButton_3_clicked(); + + void on_pushButton_2_clicked(); + +private: + Ui::abnticket *ui; + void fillUi(int nAb); +}; + +#endif // ABNTICKET_H + diff --git a/abnticket.ui b/abnticket.ui new file mode 100644 index 0000000..289b64e --- /dev/null +++ b/abnticket.ui @@ -0,0 +1,539 @@ + + + abnticket + + + + 0 + 0 + 367 + 368 + + + + Формуляр подчиненного + + + + + 10 + 10 + 351 + 301 + + + + QFrame::Box + + + QFrame::Raised + + + + + 210 + 150 + 131 + 23 + + + + Данные по типу ЗРК + + + + + + 175 + 114 + 31 + 16 + + + + шт + + + + + + 120 + 110 + 51 + 20 + + + + 0 + + + + + false + + + + 120 + 130 + 51 + 22 + + + + 0 + + + + 0% + + + + + + + 9 + 71 + 111 + 16 + + + + Режим работы + + + + + + 120 + 50 + 91 + 20 + + + + БМ "ТОР" + + + + + + 121 + 29 + 91 + 20 + + + + 9А331М + + + + + + 10 + 10 + 111 + 16 + + + + Номер подчиненного + + + + + + 9 + 91 + 111 + 16 + + + + Боеготовность + + + + + + 9 + 131 + 111 + 16 + + + + НЗ БК + + + + + + 10 + 30 + 111 + 16 + + + + Тип абонента + + + + + + 9 + 51 + 111 + 16 + + + + Уровень абонента + + + + + + 9 + 111 + 111 + 16 + + + + НЗ ракет + + + + + + 120 + 70 + 91 + 22 + + + + 3 + + + + Отказ + + + + + Тренаж + + + + + Дежурный + + + + + Боевой + + + + + + + 121 + 9 + 51 + 20 + + + + 1 + + + + + true + + + + 120 + 150 + 51 + 22 + + + + 0 + + + + Низ + + + + + Верх + + + + + + + 9 + 151 + 111 + 16 + + + + ПВС + + + + + + 120 + 90 + 91 + 22 + + + + 0 + + + + Небоеготов + + + + + Боеготов + + + + + + true + + + + 120 + 170 + 51 + 22 + + + + 0 + + + + 0% + + + + + 25% + + + + + 50% + + + + + 75% + + + + + 100% + + + + + + + 9 + 171 + 111 + 16 + + + + Текущий запас ГСМ + + + + + + 189 + 210 + 161 + 91 + + + + QFrame::Box + + + QFrame::Raised + + + + + 40 + 20 + 81 + 20 + + + + Сектор + + + Qt::AlignCenter + + + + + + 20 + 50 + 51 + 23 + + + + Зона + + + + + + 90 + 50 + 51 + 23 + + + + Сектор + + + + + + + 206 + 203 + 141 + 16 + + + + Обл. ответственности + + + + + + 20 + 220 + 121 + 17 + + + + Признак излучения + + + + + + 20 + 240 + 121 + 17 + + + + Базовый + + + + + + 20 + 260 + 121 + 17 + + + + Признак сектора + + + + + + 20 + 280 + 161 + 17 + + + + Запрет обновления из КС + + + true + + + + + + + 20 + 330 + 75 + 23 + + + + Запрос + + + + + + 140 + 330 + 75 + 23 + + + + Ввод + + + + + + 260 + 330 + 75 + 23 + + + + Отказ + + + + + + diff --git a/airobj.cpp b/airobj.cpp new file mode 100644 index 0000000..f86d288 --- /dev/null +++ b/airobj.cpp @@ -0,0 +1,224 @@ +#include "airobj.h" + +airObj::airObj() +{ + exist=false; + x=y=0; + h=100; + vx=vy = 10; + v0 = 14; + numer = uid = -1; + alt=0; + aType = gType = -1; + pic = QImage(); + col = Qt::white; + lastTime = QTime(); + + for (int i=0; i<6;i++) CU[i]=0; + + priznakAction = 0; +} + +void airObj::deleteTarget() +{ + prepareGeometryChange(); + + exist=false; + x=y=0; + h=100; + vx=vy = 10; + v0 = 14; + numer = uid = -1; + alt=0; + aType = gType = -1; + pic = QImage(); + col = Qt::white; + lastTime = QTime(); + for (int i=0; i<6;i++) CU[i]=0; + + priznakAction = 0; +} + +qreal airObj::kurs() +{ + if ((vx==0)&&(vy==0)) return 0; + + QLineF lf= QLineF(0,0,vx,vy); + return lf.angle(); + + +} + +bool airObj::haveCU() +{ + int ret=0; + for (int i=0; i<6; i++) ret+=CU[i]; + + return (ret>0); +} + +QRectF airObj::boundingRect() const +{ + qreal d=100; + return QRectF(x-d, y-d, 2*d, 2*d); +} + +void airObj::paint(QPainter *p, const QStyleOptionGraphicsItem *option, QWidget *widget) +{ + QPen pen; + if (exist) + { + pen=p->pen(); + pen.setWidth(3); + pen.setColor(col); + p->setPen(pen); + p->drawPoint(x, y); + + pen.setWidth(2); + p->setPen(pen); + QLineF lf(x, y, x+2*vx, y+2*vy); + if (QPointF(vx, vy).manhattanLength()<10) + { + lf.setLength(10); + } + p->drawLine(lf); + + + } +} + +void airObj::setExist(bool fl) +{ + if (fl!=exist) + { + prepareGeometryChange(); + exist = fl; + } + +} + +void airObj::setPic() +{ + int d; + QString s; + + if ((aType>0)&&(aType<16)) + { + d=aType; + } + else + { + d=0; + } + s = ":/new/pics/type_En"; + s.append(QString("%1").arg(d)); + s.append(".xpm"); + + pic = QImage(s); + pic.setColor(0, col.rgb()); +} + +void airObj::setGType(int g) +{ + if (g!=gType) + { + gType =g; + setColAsG(); + } +} + +void airObj::setPriznak(int pr) +{ + if (pr!=priznakAction) + { + prepareGeometryChange(); + priznakAction = pr; + switch (pr) + { + case 1: + priznakColor = Qt::green; + break; + case 2: + priznakColor = Qt::yellow; + break; + case 3: + priznakColor = Qt::red; + break; + default: + priznakColor = Qt::black; + break; + } + } +} + +void airObj::setAType(int a) +{ + if (a!=aType) + { + prepareGeometryChange(); + aType = a; + setPic(); + } +} + +void airObj::setColAsG() +{ + prepareGeometryChange(); + switch (gType) + { + case 3: + col=QColor(Qt::magenta); + break; + case 2: + col=QColor(Qt::red); + break; + case 1: + col=QColor(Qt::green); + break; + default: + col=QColor(Qt::yellow); + } + setPic(); +} + + +void airObj::setCoord(qreal cx, qreal cy, qreal ch) +{ + + x = cx; y= cy; h = ch; + + prepareGeometryChange(); +// oldLX = lX; +// oldLY = lY; + + +// lX=cy; +// lY=-cx; + + if (h>120) alt = 3; + else if ((h>40)&&(h<=120)) alt=2; + else if ((h>10)&&(h<=40)) alt=1; + else alt = 0; + + QString s = ":/new/pics/alt"; + s.append(QString("%1").arg(alt)); + if ((alt==0)&&(h<=2)) s.append("0"); + + s.append(".xpm"); + + picAlt = QImage(s); + picAlt.setColor(0, col.rgb()); + +} + +void airObj::setCoord(qreal cx, qreal cy) +{ + setCoord(cx, cy, h); +} + +void airObj::setSpeed(qreal vx1, qreal vy1) +{ + vx = vx1; + vy = vy1; + v0=sqrt(vx*vx+vy*vy); +} diff --git a/airobj.h b/airobj.h new file mode 100644 index 0000000..652b1da --- /dev/null +++ b/airobj.h @@ -0,0 +1,79 @@ +#ifndef AIROBJ_H +#define AIROBJ_H + +#include +#include +#include +#include +#include +#include +#include +#include + + +class airObj : public QGraphicsItem +{ + QObject *pParent; +public: + airObj(); + + int uid; + + qreal x, y, h; + qreal vx, vy, v0; + + int alt; + + bool exist; + QTime lastTime; + + int priznakAction; + QColor priznakColor; + + int aType; + int gType; // 0 - unkn, 1 - foe, 2 - own, 3 - own garant + QColor col; + + int numer; + QImage pic, picAlt; + +/* + c 1 6 + 1 - + 2 - + 21 - + 22 - +*/ + int CU[7]; + + + + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + void setGType(int g); + void setAType(int a); + void setColAsG(); + + void setPriznak(int pr); + + bool haveCU(); + void setCU(int ab, int code=1) { prepareGeometryChange(); CU[ab]=code; } + void setKZS(int ab) {prepareGeometryChange(); CU[ab]=2;} + void clearCU(int ab) {prepareGeometryChange(); CU[ab]=0;} + + + void deleteTarget(); + + void setCoord(qreal cx, qreal cy, qreal ch); + void setCoord(qreal cx, qreal cy); + void setSpeed(qreal vx, qreal vy); + QPointF getPos() {return QPointF(x, y);} + qreal kurs(); + + void setPic(); + + void setExist(bool fl); +}; + +#endif // AIROBJ_H diff --git a/airticket.cpp b/airticket.cpp new file mode 100644 index 0000000..c384b9f --- /dev/null +++ b/airticket.cpp @@ -0,0 +1,339 @@ +#include "airticket.h" +#include "ui_airticket.h" + +airTicket::airTicket(int tn, QWidget *parent) : + QDialog(parent), + ui(new Ui::airTicket) +{ + ui->setupUi(this); + + + setWindowTitle(QString::fromLocal8Bit(" %1").arg(tn+1)); + setGeometry(750, 150, 226, 521); + + ao = ((Widget*)parent)->targets.at(tn); + pbUC.clear(); + pbUC<pushButton<pushButton_2<pushButton_3 + <pushButton_4<pushButton_5<pushButton_6; + pbKZS.clear(); + + pbKZS<pushButton_7<pushButton_8<< ui->pushButton_9 + <pushButton_10<pushButton_11<pushButton_12; + + + lbParam.clear(); + lbParam <label_36<label_37<label_38 + <label_39<label_40<label_41<label_42; + + + + + for (int i=0; i<6; i++) + { + pbUC[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbUC[i]->setChecked(false); + pbKZS[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbKZS[i]->setChecked(false); + + connect(pbUC[i], SIGNAL(clicked()), this, SLOT(onCU_clicked())); + connect(pbKZS[i], SIGNAL(clicked()), this, SLOT(onKZS_clicked())); + } + msTick(); + + tmr = new QTimer(this); + connect(tmr, SIGNAL(timeout()), this, SLOT(msTick())); + tmr->start(500); + + + + + + + + +} + +airTicket::~airTicket() +{ + + ((Widget*)parent())->openAirTicket = 0; + + delete ui; +} + +void airTicket::on_pushButton_13_clicked() +{ + // ((Widget*)parent())->clearOpenWidget(); + this->close(); +} + + +void airTicket::msTick() +{ + QPointF myP = ((Widget*)parent())->ownTS; + QPointF trgP; + + + QLineF lf; + trgP = ao->getPos(); + + lf = QLineF(myP, trgP); + qreal an = 90-lf.angle(); + if (an<0) an+=360; + QString s = QString::number(an, 'f', 0); + s.append(""); + ui->label_2->setText(s); + + int DU = an/6; + int mDU = int((an-DU*6)/6*100); + s = QString::number(DU); + s.append("-"); + if (mDU<10) s.append("0"); + s.append(QString::number(mDU)); + ui->label_3->setText(s); + + qreal len = lf.length()/10; + s.setNum(len, 'f', 1); + s.append(QString::fromLocal8Bit(" ")); + ui->label_5->setText(s); + + qreal h = (ao->h)/10; + s.setNum(h, 'f', 2); + ui->label_7->setText(s); + + + qreal kurs = ao->kurs(); + qreal azim = an; + qreal res = 180-kurs+azim; + qreal P = len*cos(res*M_PI/180); + if (P<0) P=-P; + kurs=90-kurs; + if (kurs<0) kurs+=360; + s.setNum(kurs, 'f', 0); + s.append(" ("); + s.append(QString::number(P, 'f', 1)); + s.append(QString::fromLocal8Bit(" )")); + + + ui->label_9->setText(s); + qreal speed = ao->v0*10; + s.setNum(speed, 'f', 0); + s.append(QString::fromLocal8Bit(" /")); + + ui->label_10->setText(s); + + speed = speed *3.6; + s.setNum(speed, 'f',0); + s.append(QString::fromLocal8Bit(" /")); + ui->label_12->setText(s); + + switch (ao->gType) + { + case 1: + s = QString::fromLocal8Bit(""); + + QPushButton *pbt; + foreach (pbt, pbUC) pbt->show(); + foreach (pbt, pbKZS) pbt->show(); + + break; + case 2: + s = QString::fromLocal8Bit(""); + foreach (pbt, pbUC) pbt->hide(); + foreach (pbt, pbKZS) pbt->hide(); + break; + case 3: + s = QString::fromLocal8Bit(" ."); + foreach (pbt, pbUC) pbt->hide(); + foreach (pbt, pbKZS) pbt->hide(); + break; + default: + s = QString::fromLocal8Bit(""); + foreach (pbt, pbUC) pbt->show(); + foreach (pbt, pbKZS) pbt->show(); + + } + + if ((ao->gType == 3)||(ao->gType == 2)) + { + ui->label_46->hide(); + ui->label_47->hide(); + ui->frame_4->hide(); + ui->frame_5->hide(); + ui->pushButton_13->setGeometry(70,370,75,23); + + resize(width(), 400); + + + } + + ui->label_13->setText(s); + + ui->label_15->setText(QString::number(ao->aType)); + + ui->label_17->setText("1"); + + ui->label_19->setText(QString::fromLocal8Bit("")); + + ui->label_22->setText(QString::fromLocal8Bit("0")); + + qreal x = - ao->getPos().y()*100; + s.setNum(x, 'f', 0); s.append(" m."); + ui->label_25->setText(s); + + qreal y = ao->getPos().x()*100; + s.setNum(y, 'f', 0); s.append(" m."); + ui->label_27->setText(s); + + + for (int i=0; i<6; i++) + { + go = ((Widget*)parent())->grObj.at(i+1); + pbUC[i]->setEnabled(go->exist); + pbKZS[i]->setEnabled(go->exist); + + + if (pbUC[i]->isEnabled()) + { + if (ao->CU[i+1]==1) + { + pbUC[i]->setStyleSheet("background-color: rgb(0, 220, 100)"); + pbUC[i]->setChecked(true); + pbKZS[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbKZS[i]->setChecked(false); + } + if (ao->CU[i+1]==2) + { + pbKZS[i]->setStyleSheet("background-color: rgb(220, 0, 0)"); + pbKZS[i]->setChecked(true); + pbUC[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbUC[i]->setChecked(false); + } + if (ao->CU[i+1]==0) + { + pbUC[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbUC[i]->setChecked(false); + pbKZS[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbKZS[i]->setChecked(false); + + + } + + + } + else + { + pbUC[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbUC[i]->setChecked(false); + pbKZS[i]->setStyleSheet("background-color: rgb(220, 220, 220)"); + pbKZS[i]->setChecked(false); + + } + } + + + kurs = ao->kurs(); + trgP = ao->getPos(); + if (an<0) an+=360; + + for (int i=0;i<7;i++) + { + go = ((Widget*)parent())->grObj.at(i); + if (go->exist) + { + + myP = go->getPos(); + lf = QLineF(myP, trgP); + an = 90-lf.angle(); + res = 180-kurs+an; + len = lf.length()/10; + + if (ao->v0 == 0) + { + P = len; + } + else + { + + P = len*cos(res*M_PI/180); + if (P<0) P=-P; + } + s.setNum(P, 'f', 1); + lbParam.at(i)->setText(s); + } + } +} + +void airTicket::onCU_clicked() +{ + QPushButton *p = (QPushButton*)sender(); + int i = pbUC.indexOf(p); + QString s = QString::fromLocal8Bit(" > "); + + tmr->stop(); + go = ((Widget*)parent())->grObj.at(i+1); + if (p->isChecked()) + { + + ao->setCU(i+1); + int ret = go->addCU(ao->uid); // >0 + + if (ret>=0) + { + foreach (ao_temp, ((Widget*)parent())->targets) + if (ao_temp->uid == ret) ao_temp->clearCU(i+1); + + } + + p->setStyleSheet("background-color: rgb(0, 220, 100)"); + + s.append(QString::number(i+1)); + s.append(QString::fromLocal8Bit(" ")); + s.append(QString::number(ao->numer+1)); + s.append(" ZZ 11 "); + s.append(QString::fromLocal8Bit("' '")); + // ((Widget*)parent())->addLogText(s); + ((Widget*)parent())->sendCU(i+1, 11, ao->uid); + + } + else + { + ao->clearCU(i+1); + go->removeCU(ao->uid); + ((Widget*)parent())->sendCU(i+1, 99, ao->uid); + p->setStyleSheet("background-color: rgb(220, 220, 220)"); + } + tmr->start(500); + +} +void airTicket::onKZS_clicked() +{ + QPushButton *p = (QPushButton*)sender(); + + int i = pbKZS.indexOf(p); + QString s = QString::fromLocal8Bit(" > "); + + tmr->stop(); + go = ((Widget*)parent())->grObj.at(i+1); + if (p->isChecked()) + { + ao->setCU(i+1,2); + go->removeCU(ao->uid); + p->setStyleSheet("background-color: rgb(220, 0, 0)"); + s.append(QString::number(i+1)); + s.append(QString::fromLocal8Bit(" ")); + s.append(QString::number(ao->numer+1)); + s.append(" ZZ 33 "); + s.append(QString::fromLocal8Bit("'. '")); +// ((Widget*)parent())->addLogText(s); + ((Widget*)parent())->sendCU(i+1, 33, ao->uid); + } + else + { + ao->clearCU(i+1); + ((Widget*)parent())->sendCU(i+1, 99, ao->uid); + p->setStyleSheet("background-color: rgb(220, 220, 220)"); + } + tmr->start(500); + +} diff --git a/airticket.h b/airticket.h new file mode 100644 index 0000000..b43a736 --- /dev/null +++ b/airticket.h @@ -0,0 +1,43 @@ +#ifndef AIRTICKET_H +#define AIRTICKET_H + +#include +#include "widget.h" + +namespace Ui { +class airTicket; +} + +class airTicket : public QDialog +{ + Q_OBJECT + +public: + explicit airTicket(int tn = 0, QWidget *parent = 0); + ~airTicket(); + airObj *ao, *ao_temp; + groundObj *go; + QList pbUC, pbKZS; + QListlbParam; + QTimer *tmr; + + +private slots: + void on_pushButton_13_clicked(); + void msTick(); + +// void on_pushButton_clicked(); + +// void on_pushButton_2_clicked(); + + void onCU_clicked(); + void onKZS_clicked(); + +private: + Ui::airTicket *ui; +}; + +#endif // AIRTICKET_H + + + diff --git a/airticket.ui b/airticket.ui new file mode 100644 index 0000000..5523cd2 --- /dev/null +++ b/airticket.ui @@ -0,0 +1,1246 @@ + + + airTicket + + + + 0 + 0 + 226 + 521 + + + + Form + + + + :/new/pics/type_En1.xpm:/new/pics/type_En1.xpm + + + + + 10 + 10 + 206 + 291 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + 0 + 10 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Азимут + + + + + + 100 + 10 + 51 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 150 + 10 + 51 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 0 + 30 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Дальность + + + + + + 100 + 30 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 0 + 50 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Высота + + + + + + 100 + 50 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 0 + 70 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Курс (парам.) + + + + + + 100 + 70 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 100 + 90 + 51 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 0 + 90 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Скорость + + + + + + 150 + 90 + 51 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + + + + + + + 100 + 115 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + чужой + + + + + + 0 + 115 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + ГП + + + + + + 100 + 135 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + 0-ТН + + + + + + 0 + 135 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Тип + + + + + + 100 + 155 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + 1 + + + + + + 0 + 155 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Количество + + + + + + 100 + 175 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + нет + + + + + + 0 + 175 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Маневр + + + + + + 0 + 195 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + ПД + + + + + + 100 + 195 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + 0 + + + + + + 100 + 222 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + 11 + + + + + + 0 + 222 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Источник + + + + + + 100 + 240 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + 0 + + + + + + 0 + 240 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + X + + + + + + 100 + 260 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + 0 + + + + + + 0 + 260 + 101 + 21 + + + + QFrame::Panel + + + QFrame::Sunken + + + 2 + + + 1 + + + Y + + + + + + + 40 + 300 + 154 + 21 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + 3 + + + 1 + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + QFrame::Panel + + + QFrame::Sunken + + + 0 + + + + + + + + + 4 + 320 + 221 + 31 + + + + QFrame::Panel + + + QFrame::Raised + + + + 3 + + + 1 + + + + + П + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + + 6 + + + + QFrame::Panel + + + QFrame::Sunken + + + + + + + + + + км + + + + + + + + + 10 + 350 + 201 + 16 + + + + Аб 0 1 2 3 4 5 6 + + + + + + 100 + 370 + 46 + 13 + + + + УЦ + + + + + + 10 + 390 + 191 + 31 + + + + QFrame::Panel + + + QFrame::Plain + + + 1 + + + + 2 + + + 3 + + + + + 1 + + + true + + + + + + + 2 + + + true + + + + + + + 3 + + + true + + + + + + + 4 + + + true + + + + + + + 5 + + + true + + + + + + + 6 + + + true + + + + + + + + + 10 + 450 + 191 + 31 + + + + QFrame::Panel + + + QFrame::Plain + + + 1 + + + + 2 + + + 3 + + + + + 1 + + + true + + + + + + + 2 + + + true + + + + + + + 3 + + + true + + + + + + + 4 + + + true + + + + + + + 5 + + + true + + + + + + + 6 + + + true + + + + + + + + + 100 + 430 + 46 + 13 + + + + КЗС + + + + + + 70 + 490 + 75 + 23 + + + + Убрать + + + + + + + + diff --git a/bmp/1.bmp b/bmp/1.bmp new file mode 100644 index 0000000..702b9f2 --- /dev/null +++ b/bmp/1.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *tor_batr[]={ +"16 16 2 1", +"# c #000000", +". c None", +".....#####......", +"...##.....##....", +"..#.........#...", +".#...#...#...#..", +".#...#...#...#..", +"#...###.###...#.", +"#....#...#....#.", +"#....#...#....#.", +"#....#...#....#.", +"#..#.#...#.#..#.", +".#.#########.#..", +".#.#.......#.#..", +"..#.........#...", +"...##.....##....", +".....#####......", +"................"}; diff --git a/bmp/2.bmp b/bmp/2.bmp new file mode 100644 index 0000000..273b27b --- /dev/null +++ b/bmp/2.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +".!!!.......!!!.!", +"!.!!.!!!!!.!!.!!", +"!.!!.......!!.!!", +"!!.!.!!!!!.!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/3.bmp b/bmp/3.bmp new file mode 100644 index 0000000..ce593bc --- /dev/null +++ b/bmp/3.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!.!.!.!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/4.bmp b/bmp/4.bmp new file mode 100644 index 0000000..7105572 --- /dev/null +++ b/bmp/4.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +"!.!!.......!!.!!", +"!.!!.!!!!!.!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/5.bmp b/bmp/5.bmp new file mode 100644 index 0000000..63b4a97 --- /dev/null +++ b/bmp/5.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/6.bmp b/bmp/6.bmp new file mode 100644 index 0000000..94d4420 --- /dev/null +++ b/bmp/6.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/7.bmp b/bmp/7.bmp new file mode 100644 index 0000000..304180e --- /dev/null +++ b/bmp/7.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *tor_batr[]={ +"16 16 2 1", +"# c #000000", +". c None", +".....#####......", +"...##.....##....", +"..#.........#...", +".#...#...#...#..", +".#...#...#...#..", +"#...###.###...#.", +"#....#...#....#.", +"#....#...#....#.", +"#..#.#...#.#..#.", +"#..#########..#.", +".#.#.......#..#..", +".#.#########.#..", +"..##.......##...", +"...##.....##....", +".....#####......", +"................"}; diff --git a/bmp/8.bmp b/bmp/8.bmp new file mode 100644 index 0000000..ce593bc --- /dev/null +++ b/bmp/8.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!.!.!.!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/9.bmp b/bmp/9.bmp new file mode 100644 index 0000000..781b0dc --- /dev/null +++ b/bmp/9.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *tor_batr[]={ +"16 16 2 1", +"# c #000000", +". c None", +".....#####......", +"...##.....##....", +"..#.........#...", +".#...#...#...#..", +".#...#...#...#..", +"#...###.###...#.", +"#....#...#....#.", +"#....#...#....#.", +"#..#.#...#.#..#.", +"#..#########..#.", +".#.#########.#..", +".#.#########.#..", +"..##.......##...", +"...##.....##....", +".....#####......", +"................"}; diff --git a/bmp/aerodrom.bmp b/bmp/aerodrom.bmp new file mode 100644 index 0000000..7ad2154 --- /dev/null +++ b/bmp/aerodrom.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *tor_batr[]={ +"16 16 2 1", +"# c #000000", +". c None", +".....#####......", +"...###...###....", +"..#..#...#..#...", +".#...#...#...#..", +".#...#...#...#..", +"#....#...#....#.", +"#....#...#....#.", +"#....#...#....#.", +"#....#...#....#.", +"#....#...#....#.", +".#...#...#...#..", +".#...#...#...#..", +"..#..#...#..#...", +"...###...###....", +".....#####......", +"................"}; diff --git a/bmp/archer.bmp b/bmp/archer.bmp new file mode 100644 index 0000000..b262935 --- /dev/null +++ b/bmp/archer.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!...!!!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!.!!!!!.!!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!!!!!!.!!.!!!", +"!.!!!.!!!.!!!.!!", +".!!!.!!!!.!!!!.!", +".!!.......!!!!.!", +".!!!.!!!!.!!!!.!", +"!.!!!.!!!.!!!.!!", +"!!.!!!!!!.!!.!!!", +"!!!.!!!!!!!.!!!!", +"!!!!.!!!!!.!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/army.bmp b/bmp/army.bmp new file mode 100644 index 0000000..cfef8bd --- /dev/null +++ b/bmp/army.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * army_xpm[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!...........!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!.!.!!!!!.!.!!", +"!!!...........!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bcp.bmp b/bmp/bcp.bmp new file mode 100644 index 0000000..c8d1294 --- /dev/null +++ b/bmp/bcp.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *I[]={ +"16 16 2 1", +"# c #000000", +". c none", +".......#........", +".......#........", +"....#######.....", +".......#........", +".......#........", +"....#######.....", +".......#........", +".......#........", +"......###.......", +".....##.##......", +"....##...##.....", +"...##.....##....", +"..##.......##...", +".##.........##..", +".#############..", +"................"}; diff --git a/bmp/bmp1.bmp b/bmp/bmp1.bmp new file mode 100644 index 0000000..ddbd994 --- /dev/null +++ b/bmp/bmp1.bmp @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"#######.", +"#######.", +".#####..", +"..###...", +"...#....", +"........", +"........"}; diff --git a/bmp/bmp16.bmp b/bmp/bmp16.bmp new file mode 100644 index 0000000..799c0fc --- /dev/null +++ b/bmp/bmp16.bmp @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +".#....#.", +"..#..#..", +"...##...", +"...##...", +"..#..#..", +".#....#.", +"........"}; diff --git a/bmp/bmp2.bmp b/bmp/bmp2.bmp new file mode 100644 index 0000000..afaaeff --- /dev/null +++ b/bmp/bmp2.bmp @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"........", +"#######.", +"#######.", +"#######.", +"........", +"........", +"........"}; diff --git a/bmp/bmp4.bmp b/bmp/bmp4.bmp new file mode 100644 index 0000000..670f461 --- /dev/null +++ b/bmp/bmp4.bmp @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +".######.", +".######.", +".######.", +".######.", +".######.", +".######.", +"........"}; diff --git a/bmp/bmp8.bmp b/bmp/bmp8.bmp new file mode 100644 index 0000000..b49b39b --- /dev/null +++ b/bmp/bmp8.bmp @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"...#....", +"..###...", +".#####..", +"#######.", +"#######.", +"........", +"........"}; diff --git a/bmp/brig.bmp b/bmp/brig.bmp new file mode 100644 index 0000000..252cfae --- /dev/null +++ b/bmp/brig.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * brig_xpm[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!...........!!", +"!!!..!!!!!!!!.!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!.!!!", +"!!!..!!!!!!..!!!", +"!!!..!!!!!!.!!!!", +"!!!..!!!!!..!!!!", +"!!!........!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bt_osa.bmp b/bmp/bt_osa.bmp new file mode 100644 index 0000000..814c572 --- /dev/null +++ b/bmp/bt_osa.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +"!.!!.......!!.!!", +"!.!!.!!!!!.!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bt_panc.bmp b/bmp/bt_panc.bmp new file mode 100644 index 0000000..969000b --- /dev/null +++ b/bmp/bt_panc.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *bt_panc[]={ +"16 16 2 1", +"# c #000000", +". c none", +".....#####......", +"...##.....##....", +"..#.........#...", +".#.....#.....#..", +".#....###....#..", +"#......#......#.", +"#...#..#..#...#.", +"#...#..#..#...#.", +"#......#......#.", +"#..#...#...#..#.", +".#.#########.#..", +".#...........#..", +"..#.........#...", +"...##.....##....", +".....#####......", +"................"}; diff --git a/bmp/bt_pzrk.bmp b/bmp/bt_pzrk.bmp new file mode 100644 index 0000000..251d95d --- /dev/null +++ b/bmp/bt_pzrk.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_pzrk_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!!!!!!.!!!", +"!.!!!!!!!!!!!.!!", +"!.!!!!!.!!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +"!.!!!.....!!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bt_sh.bmp b/bmp/bt_sh.bmp new file mode 100644 index 0000000..99fb673 --- /dev/null +++ b/bmp/bt_sh.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_sh_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +".!!!.!!.!!.!!!.!", +".!!!.!!.!!.!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bt_smesh.bmp b/bmp/bt_smesh.bmp new file mode 100644 index 0000000..d5c504e --- /dev/null +++ b/bmp/bt_smesh.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_tung_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!...!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +".!!!.!!.!!.!!!.!", +".!!!.!!.!!.!!.!", +".!!.!!!.!!!.!!.!", +"!.!.........!.!!", +"!.!.........!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bt_str.bmp b/bmp/bt_str.bmp new file mode 100644 index 0000000..63b4a97 --- /dev/null +++ b/bmp/bt_str.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!...!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/bt_tung.bmp b/bmp/bt_tung.bmp new file mode 100644 index 0000000..1f4d8ad --- /dev/null +++ b/bmp/bt_tung.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * bt_tung_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!.....!!!!!!", +"!!!..!!!!!..!!!!", +"!!.!!!!.!!!!.!!!", +"!.!!!!...!!!!.!!", +"!.!!!!...!!!!.!!", +".!!!!!!.!!!!!!.!", +".!!!.!!.!!.!!!.!", +".!!!.!!.!!.!!!.!", +".!!!!!!.!!!!!!.!", +".!!.!!!.!!!.!!.!", +"!.!.........!.!!", +"!.!!!!!!!!!!!.!!", +"!!.!!!!!!!!!.!!!", +"!!!..!!!!!..!!!!", +"!!!!!.....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/buk.bmp b/bmp/buk.bmp new file mode 100644 index 0000000..6f764a9 --- /dev/null +++ b/bmp/buk.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * buk_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!.........!!!!", +"!!!..!!!!!..!!!!", +"!!!..!!!!!!..!!!", +"!!!..!!!!!!!.!!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!!.!!", +"!!!..!!!!!!!!..!", +"!!!............!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/diviz.bmp b/bmp/diviz.bmp new file mode 100644 index 0000000..f715c04 --- /dev/null +++ b/bmp/diviz.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * diviz_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!............!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!..!!!", +"!!!..!!!!!..!!!!", +"!!!..!!!!..!!!!!", +"!!!..!!!!!..!!!!", +"!!!..!!!!!!..!!!", +"!!!..!!!!!!!..!!", +"!!!............!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/fr.bmp b/bmp/fr.bmp new file mode 100644 index 0000000..596747a --- /dev/null +++ b/bmp/fr.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * fr_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!....!!!!!!!!!!!", +"!.!!.....!!!!!!!", +"!.!!!!!!!.!!!!!!", +"!.!!!!!!!...!!!!", +"!.!!!!!!!!!!..!!", +"!.!!!!!!!!!!!..!", +"!.!!!!!!!!!!!!.!", +"!......!!!!!!!.!", +"!.!!!!......!..!", +"!.!!!!!!!!....!!", +"!.!!!!!!!!!!!!!!", +"!.!!!!!!!!!!!!!!", +"!.!!!!!!!!!!!!!!", +"!.!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/greenball.xpm b/bmp/greenball.xpm new file mode 100644 index 0000000..99ebbbe --- /dev/null +++ b/bmp/greenball.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static char*redball[]={ +"16 16 6 1", +"# c None", +"a c #7bff7b", +"b c #008000", +". c None", +"d c #ffffff", +"c c #00ff00", +"................", +".....aaaaaa.....", +"...aaaaaaaaaa...", +"..aaaccccccaaa..", +"..aaccccccccaa..", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +"..aaccccccccaa..", +"..aaaccccccaaa..", +"...aaaaaaaaaa...", +".....aaaaaa.....", +"................", +"................"}; diff --git a/bmp/greyball.xpm b/bmp/greyball.xpm new file mode 100644 index 0000000..f0a5bc9 --- /dev/null +++ b/bmp/greyball.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static char*redball[]={ +"16 16 6 1", +"# c None", +"a c #b4e6ee", +"b c #008000", +". c None", +"d c #ffffff", +"c c #7b999c", +"................", +".....aaaaaa.....", +"...aaaaaaaaaa...", +"..aaaccccccaaa..", +"..aaccccccccaa..", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +"..aaccccccccaa..", +"..aaaccccccaaa..", +"...aaaaaaaaaa...", +".....aaaaaa.....", +"................", +"................"}; diff --git a/bmp/korp.bmp b/bmp/korp.bmp new file mode 100644 index 0000000..ec98590 --- /dev/null +++ b/bmp/korp.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * korp_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!...........!!", +"!!!.!!!!!!!!!.!!", +"!!!...........!!", +"!!!.!!!!!!!!!.!!", +"!!!.!!!!!!!!!.!!", +"!!!.!!!!!!!!!.!!", +"!!!...........!!", +"!!!.!!!!!!!!!.!!", +"!!!...........!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!.!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/nalet.bmp b/bmp/nalet.bmp new file mode 100644 index 0000000..42f3102 --- /dev/null +++ b/bmp/nalet.bmp @@ -0,0 +1,26 @@ +/* XPM */ +static char *nalet[]={ +"20 20 2 1", +"= c #00ff00", +". c none", +"....................", +"....................", +"....................", +"....................", +"......===..===......", +"......===..===......", +"......===..===......", +"......===..===......", +"......===..===......", +"..===..........===..", +"....===......===....", +".......===.===......", +".........===........", +"....................", +"....................", +"...................." +"...................." +"...................." +"...................." +"...................." +}; diff --git a/bmp/osa.bmp b/bmp/osa.bmp new file mode 100644 index 0000000..315efab --- /dev/null +++ b/bmp/osa.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!..........!!", +"!!!.!!!!!!!!!.!!", +"!!.!!!!!!..!!.!!", +"!.!!!!!!!.!!!.!!", +".!!!!.!!!.!!!.!!", +".!!.......!!!.!!", +".!!!!.!!!.!!!.!!", +"!.!!!!!!!.!!!.!!", +"!!.!!!!!!..!!.!!", +"!!!.!!!!!!!!!.!!", +"!!!!..........!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/otdpzrk.bmp b/bmp/otdpzrk.bmp new file mode 100644 index 0000000..afd5c34 --- /dev/null +++ b/bmp/otdpzrk.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * otdpzrk_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!.............!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!.............!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/pancir.bmp b/bmp/pancir.bmp new file mode 100644 index 0000000..9f8d7d5 --- /dev/null +++ b/bmp/pancir.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!..........!!", +"!!!.!!!!!!!!!.!!", +"!!.!!!!!..!!!.!!", +"!.!!!..!!.!!!.!!", +".!!!!!!!!.!!!.!!", +".!!.......!!!.!!", +".!!!!!!!!.!!!.!!", +"!.!!!..!!.!!!.!!", +"!!.!!!!!..!!!.!!", +"!!!.!!!!!!!!!.!!", +"!!!!..........!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/prv.bmp b/bmp/prv.bmp new file mode 100644 index 0000000..59d745a --- /dev/null +++ b/bmp/prv.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * rls_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!!.....!!!!!!!", +"!!!!....!!!!!!!!", +"!!!!....!!!!!!!!", +"!!!!.!!..!!!!!!!", +"!!!!!!!!..!!!!!!", +"!!!!!!!!...!!!!!", +"!!!!!!!!.!..!!!!", +"!!!!!!!!.!!!!!!!", +"!!!!!.........!!", +"!!!..!!!!!!!!.!!", +"!!..!!!!!!!!!.!!", +"!!..!!!!!!!!!.!!", +"!!..!!!!!!!!!.!!", +"!!!..!!!!!!!!.!!", +"!!!!!.........!!"}; diff --git a/bmp/redball.xpm b/bmp/redball.xpm new file mode 100644 index 0000000..e86a15d --- /dev/null +++ b/bmp/redball.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static char*redball[]={ +"16 16 6 1", +"# c None", +"a c #ff7d7b", +"b c #800000", +". c None", +"d c #ffffff", +"c c #ff0000", +"................", +".....aaaaaa.....", +"...aaaaaaaaaa...", +"..aaaccccccaaa..", +"..aaccccccccaa..", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +".aaccccccccccaa.", +"..aaccccccccaa..", +"..aaaccccccaaa..", +"...aaaaaaaaaa...", +".....aaaaaa.....", +"................", +"................"}; diff --git a/bmp/rlp.bmp b/bmp/rlp.bmp new file mode 100644 index 0000000..e81886f --- /dev/null +++ b/bmp/rlp.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * rlp_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +".!!!!!!!!!!!!!.!", +"...............!", +".!!.!!!!!!!.!!.!", +"!!!.!!!!!!!.!!!!", +"!!!.!!!!!!!.!!!!", +"!!!.!!!!!!!.!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!.!!!!!.!.!!!", +"!!.!.!!!!!.!.!!!", +"!.!!!.!!!.!!!.!!", +"!.!!!.!!!.!!!.!!", +"!.!!!.!!!.!!!.!!", +".!!!!!.!.!!!!!.!", +".!!!!!.!.!!!!!.!", +".......!.......!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/rls.bmp b/bmp/rls.bmp new file mode 100644 index 0000000..b45713f --- /dev/null +++ b/bmp/rls.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * rls_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!.!!.!!!!!.!!.!", +"!!.!!.!!!!!.!!.!", +"!.!.........!.!!", +".!!.!!!.!.!!.!!!", +".!!.!!!.!.!!.!!!", +"!!!!!!!.!!!!!!!!", +"!!!!!!!.!!!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!..!..!!!!!!", +"!!!!..!!!..!!!!!", +"!!!..!!!!!..!!!!", +"!!..!!!!!!!..!!!", +"!..!!!!!!!!!..!!", +"..!!!!!!!!!!!..!", +"...............!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/rlsnlc.bmp b/bmp/rlsnlc.bmp new file mode 100644 index 0000000..2d2e9b0 --- /dev/null +++ b/bmp/rlsnlc.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * rlsnlc_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!..!!!!!!!!!!!!!", +"!!..!!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!.....!!!!!!!!", +"!!!..!!.!!!!!!!!", +"!!..!!!.!!!!!!!!", +"!..!!!...!!!!!!!", +"!!!!!..!..!!!!!!", +"!!!!..!!!..!!!!!", +"!!!..!!!!!..!!!!", +"!!..!!!!!!!..!!!", +"!..!!!!!!!!!..!!", +"..!!!!!!!!!!!..!", +"...............!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/rlsso.bmp b/bmp/rlsso.bmp new file mode 100644 index 0000000..a3d6e21 --- /dev/null +++ b/bmp/rlsso.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * rls_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!...!!!!!!!!!", +"!!!!..!!!!!!!!!!", +"!!!!.!.!!!!!!!!!", +"!!!!!!!.!!!!!!!!", +"!!!!!!.!.!!!!!!!", +"!!!.!.!!.!!!!!!!", +"!!!..!!!.!!!!!!!", +"!!!...!!.!!!!!!!", +"!!!!!!!..!!!!!!!", +"!!!!!..!!..!!!!!", +"!!!!..!!!!..!!!!", +"!!!..!!!!!!..!!!", +"!!!..!!!!!!..!!!", +"!!!!..!!!!..!!!!", +"!!!!!..!!..!!!!!", +"!!!!!!!..!!!!!!!"}; diff --git a/bmp/rubinlabel.xpm b/bmp/rubinlabel.xpm new file mode 100644 index 0000000..d06ebd7 --- /dev/null +++ b/bmp/rubinlabel.xpm @@ -0,0 +1,85 @@ +/* XPM */ +static char *rubinlabel[]={ +"80 80 2 1", +". c None", +"# c #000000", +".................................#############..................................", +".............................#####################..............................", +"..........................###########################.....................####..", +".......................###########............##########...............#######..", +".....................#########...................#########...........#########..", +"....................########.......................########.......###########...", +"..................########.....................................#############....", +".................#######.....................................##############.....", +"...............######.....................................################......", +"..............######...................................##################.......", +".............######..................................###################........", +"............######................................#####################.........", +"...........#####...............................#######################..........", +"..........#####..............................########################...........", +".........#####............................##########################............", +"........#####..........................############################..#..........", +"........####.........................#############################...##.........", +".......#####......................####################..#########....###........", +"......#####.....................###################....#########.....####.......", +"......####.....................#################......#########......####.......", +".....####............................................#########........####......", +"....#####...........................................#########..........####.....", +"....####...........................................#########...........####.....", +"...#####..........................................#########............#####....", +"...####..........................................#########..............####....", +"...####.........................................#########...............####....", +"..####.........................................#########.................####...", +"..####........................................#########..................####...", +"..####.......................................#########...................####...", +".####.......................................#########.....................####..", +".####......................................#########......................####..", +".####.....................................#########.......................####..", +".####....................................#########........................####..", +"#####...................................#########.........................#####.", +"####...................................#########...........................####.", +"####..................................#########............................####.", +"####.................................#########.............................####.", +"####................................#########..............................####.", +"####...............................#########...............................####.", +"####..............................#########................................####.", +"####.............................#########.................................####.", +"####............................#########..................................####.", +"####...........................#########...................................####.", +"####..........................#########....................................####.", +"####.........................#########.....................................####.", +"#####.......................#########.....................................#####.", +".####......................#########......................................####..", +".####.....................#########.......................................####..", +".####....................#########........................................####..", +".####...................#########.........................................####..", +"..####.................#########.........................................####...", +"..#####...............#########.........................................#####...", +"..#####..............#########..........................................#####...", +"...####.............#########...........................................####....", +"...#####...........#########...........................................#####....", +"...#####..........#########.....###....................................#####....", +"....####.........#########.....#####...................................####.....", +"....#####.......#########.....#######.................................#####.....", +".....#####.....#########......#######................................#####......", +"......####....#########.......#######................................####.......", +"......####...#########.........#####.................................####.......", +".......##...#########...........###.................................####........", +"...........#########...............................................####.........", +"..........#########.....###.......................................#####.........", +".........#########.....#####.....................................#####..........", +"........#########.....#######...................................#####...........", +".......#########......#######..................................#####............", +"......#########.......#######.................................#####.............", +".....#########....#....#####................................######..............", +"....#########....###....###................................######...............", +"...#########....#####....................................#######................", +"..#########......######.................................######..................", +"..########........#######.............................#######...................", +"...######.....###...#######.........................#######.....................", +"....####.....#####...#########...................#########......................", +".....##.....#######....###########..........############........................", +"............#######.......###########################...........................", +"............#######..........#####################..............................", +".............#####...............#############..................................", +"..............###..............................................................."}; diff --git a/bmp/sh.bmp b/bmp/sh.bmp new file mode 100644 index 0000000..3a3a9c8 --- /dev/null +++ b/bmp/sh.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * sh_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!...!!!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!.!!!!!.!!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!!!!!..!!.!!!", +"!.!!!..!!.!!!.!!", +".!!!!!!!!.!!!!.!", +".!!.......!!!!.!", +".!!!!!!!!.!!!!.!", +"!.!!!..!!.!!!.!!", +"!!.!!!!!..!!.!!!", +"!!!.!!!!!!!.!!!!", +"!!!!.!!!!!.!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/sosed.bmp b/bmp/sosed.bmp new file mode 100644 index 0000000..e81886f --- /dev/null +++ b/bmp/sosed.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * rlp_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +".!!!!!!!!!!!!!.!", +"...............!", +".!!.!!!!!!!.!!.!", +"!!!.!!!!!!!.!!!!", +"!!!.!!!!!!!.!!!!", +"!!!.!!!!!!!.!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!.!!!!!.!.!!!", +"!!.!.!!!!!.!.!!!", +"!.!!!.!!!.!!!.!!", +"!.!!!.!!!.!!!.!!", +"!.!!!.!!!.!!!.!!", +".!!!!!.!.!!!!!.!", +".!!!!!.!.!!!!!.!", +".......!.......!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/str.bmp b/bmp/str.bmp new file mode 100644 index 0000000..15d55fc --- /dev/null +++ b/bmp/str.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * str_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #C0C0C0", +"= c #808080", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!...!!!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!.!!!!!.!!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!!!!!..!!.!!!", +"!.!!!!!!!.!!!.!!", +".!!!!.!!!.!!!!.!", +".!!.......!!!!.!", +".!!!!.!!!.!!!!.!", +"!.!!!!!!!.!!!.!!", +"!!.!!!!!..!!.!!!", +"!!!.!!!!!!!.!!!!", +"!!!!.!!!!!.!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/tor2.bmp b/bmp/tor2.bmp new file mode 100644 index 0000000..7170ba0 --- /dev/null +++ b/bmp/tor2.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * tor2_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!....!!!!!!", +"!!!!!.!!!!.!!!!!", +"!!!!.!!!!!!.!!!!", +"!!!.!!!!!..!.!!!", +"!!.!!!.!!!.!!.!!", +"!.!!.......!!!.!", +".!!!!!.!!!.!!!!.", +".!!!!!!!!!.!!!!.", +".!!!!!.!!!.!!!!.", +"!.!!.......!!!.!", +"!!.!!!.!!!.!!.!!", +"!!!.!!!!!..!.!!!", +"!!!!.!!!!!!.!!!!", +"!!!!!.!!!!.!!!!!", +"!!!!!!....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/tor_batr.bmp b/bmp/tor_batr.bmp new file mode 100644 index 0000000..1312afc --- /dev/null +++ b/bmp/tor_batr.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *tor_batr[]={ +"16 16 2 1", +"# c #000000", +". c none", +".....#####......", +"...##.....##....", +"..#.........#...", +".#...#...#...#..", +".#...#...#...#..", +"#...###.###...#.", +"#....#...#....#.", +"#....#...#....#.", +"#....#...#....#.", +"#..#.#...#.#..#.", +".#.#########.#..", +".#...........#..", +"..#.........#...", +"...##.....##....", +".....#####......", +"................"}; diff --git a/bmp/tung.bmp b/bmp/tung.bmp new file mode 100644 index 0000000..f407fdd --- /dev/null +++ b/bmp/tung.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * tung_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!...!!!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!.!!!!!.!!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!!!..!!...!!!", +"!.!!!!!!!!!.!.!!", +".!!..!!!!!!.!!.!", +".!..........!!.!", +".!!..!!!!!!.!!.!", +"!.!!!!!!!!!.!.!!", +"!!.!!!..!!...!!!", +"!!!.!!!!!!!.!!!!", +"!!!!.!!!!!.!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/type_En1.bmp b/bmp/type_En1.bmp new file mode 100644 index 0000000..c3e2093 --- /dev/null +++ b/bmp/type_En1.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/bmp/type_En10.bmp b/bmp/type_En10.bmp new file mode 100644 index 0000000..e16c144 --- /dev/null +++ b/bmp/type_En10.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +".........#......", +".........##.....", +"...#.....#####..", +"...#.....#####..", +"...##...########", +"...########.....", +"...#######......", +"...######.......", +"..#########.....", +".#############..", +"#####...........", +"###.............", +"................", +"................"}; diff --git a/bmp/type_En11.bmp b/bmp/type_En11.bmp new file mode 100644 index 0000000..f1e79dc --- /dev/null +++ b/bmp/type_En11.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"....#.....###...", +"....##...####...", +"....###.####....", +"....#######.....", +"....######......", +"....#######.....", +"...#########....", +"..####..........", +".####...........", +".###............", +".##.............", +"................", +"................"}; diff --git a/bmp/type_En12.bmp b/bmp/type_En12.bmp new file mode 100644 index 0000000..36afec0 --- /dev/null +++ b/bmp/type_En12.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"..............##", +".............###", +".....##.....####", +"....##......##..", +"...##.......##..", +"..##...######...", +".##.#########...", +"##.###..####....", +"...#...#######..", +"...#..####......", +"...######.......", +"...####.##......", +"........#.......", +"................"}; diff --git a/bmp/type_En13.bmp b/bmp/type_En13.bmp new file mode 100644 index 0000000..e2b7e1b --- /dev/null +++ b/bmp/type_En13.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"...###..###.....", +"..####.###......", +".##.#####.......", +"##..##########..", +"....###########.", +"...###...##.....", +"..###...##......", +".###...##.......", +"###...##........", +"##..............", +"................"}; diff --git a/bmp/type_En14.bmp b/bmp/type_En14.bmp new file mode 100644 index 0000000..6758467 --- /dev/null +++ b/bmp/type_En14.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"..........##....", +"....###...###...", +"...##.##..###...", +"..##..##.###....", +".##..##.###.....", +"##..##.###......", +"##..#####.......", +"##.###########..", +"###.###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/bmp/type_En15.bmp b/bmp/type_En15.bmp new file mode 100644 index 0000000..2fa1c9d --- /dev/null +++ b/bmp/type_En15.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###.##.......", +"..###..######...", +".###...#####....", +"###....##.#.....", +"##.....###......", +".......##......."}; diff --git a/bmp/type_En2.bmp b/bmp/type_En2.bmp new file mode 100644 index 0000000..dc53674 --- /dev/null +++ b/bmp/type_En2.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####...#.....", +"..###..#..##....", +".###....#.#.#...", +"###......##..#..", +"##........#.....", +"................"}; diff --git a/bmp/type_En3.bmp b/bmp/type_En3.bmp new file mode 100644 index 0000000..c966330 --- /dev/null +++ b/bmp/type_En3.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..##......", +"..###..##.##....", +".###..##....##..", +"###...##....##..", +"##...##....##...", +"....##......##.."}; diff --git a/bmp/type_En4.bmp b/bmp/type_En4.bmp new file mode 100644 index 0000000..96f7363 --- /dev/null +++ b/bmp/type_En4.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###..#..####..", +".###....##..#...", +"###.....#..#....", +"##.....####.....", +"................"}; diff --git a/bmp/type_En5.bmp b/bmp/type_En5.bmp new file mode 100644 index 0000000..a8210e9 --- /dev/null +++ b/bmp/type_En5.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###...#.##...", +"..###.....##....", +".###...#.##.....", +"###....###......", +"##.....####.....", +".......#........"}; diff --git a/bmp/type_En6.bmp b/bmp/type_En6.bmp new file mode 100644 index 0000000..9f3401c --- /dev/null +++ b/bmp/type_En6.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"...........##...", +"..........###...", +"....#....##.....", +"....######......", +"....#####.......", +"....#####.......", +"....#######.....", +"................", +"................", +"................", +"................", +"................"}; diff --git a/bmp/type_En7.bmp b/bmp/type_En7.bmp new file mode 100644 index 0000000..d4ed9c7 --- /dev/null +++ b/bmp/type_En7.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###..#........", +".###...#####....", +"###....#####....", +"##.....##.......", +".......##......."}; diff --git a/bmp/type_En8.bmp b/bmp/type_En8.bmp new file mode 100644 index 0000000..8acd894 --- /dev/null +++ b/bmp/type_En8.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"........#.......", +".......##.......", +"......###.......", +"......#####.....", +"......##########", +".....##########.", +"....##########..", +"...######.......", +"..######........", +"..#####.........", +".#####..........", +".##.............", +"................", +"................"}; diff --git a/bmp/type_En9.bmp b/bmp/type_En9.bmp new file mode 100644 index 0000000..1b862a3 --- /dev/null +++ b/bmp/type_En9.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"...........###..", +"....#.....####..", +"....#.....####..", +"....##....#####.", +"....###..#####..", +"....#########...", +"....#######.....", +"....########....", +"...###########..", +"..##############", +".#####..........", +"#####...........", +"###.............", +"................"}; diff --git a/bmp/type_EnP1.bmp b/bmp/type_EnP1.bmp new file mode 100644 index 0000000..8c15e10 --- /dev/null +++ b/bmp/type_EnP1.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#....", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......###....##", +"..##############", +".##############.", +".......###....##", +"........###.....", +".........###....", +"..........##....", +"...........##....", +"............#....", +"................"}; diff --git a/bmp/type_EnP10.bmp b/bmp/type_EnP10.bmp new file mode 100644 index 0000000..20faec4 --- /dev/null +++ b/bmp/type_EnP10.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +".........#......", +"........##.....#", +".......###....##", +"......####...###", +"..#############.", +".###############", +"..#############.", +"......####...###", +".......###....##", +"........##.....#", +".........#......", +"................", +"................"}; diff --git a/bmp/type_EnP11.bmp b/bmp/type_EnP11.bmp new file mode 100644 index 0000000..873737e --- /dev/null +++ b/bmp/type_EnP11.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"..........#.....", +".........##.....", +"........###.....", +".......####.....", +"..##############", +".###############", +"..##############", +".......####.....", +"........###.....", +".........##.....", +"..........#.....", +"................", +"................"}; diff --git a/bmp/type_EnP12.bmp b/bmp/type_EnP12.bmp new file mode 100644 index 0000000..2be8900 --- /dev/null +++ b/bmp/type_EnP12.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"###########.....", +"###########.....", +"....##..........", +"..######........", +".##....##....###", +"##......########", +"################", +"###########.....", +".#########......", +"..#.....#.......", +".##.....##......", +"................", +"................"}; diff --git a/bmp/type_EnP13.bmp b/bmp/type_EnP13.bmp new file mode 100644 index 0000000..384e88c --- /dev/null +++ b/bmp/type_EnP13.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".....#######....", +"........####....", +".......####...##", +"..##############", +".##############.", +".......####...##", +"........###.....", +".....#######....", +"..........##....", +"...........##...", +"............#...", +"................"}; diff --git a/bmp/type_EnP14.bmp b/bmp/type_EnP14.bmp new file mode 100644 index 0000000..9d6fe27 --- /dev/null +++ b/bmp/type_EnP14.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +".....#######...", +"...###.....###..", +"..###.......###.", +"...###.....###..", +".....#######....", +".......###......", +".......###....##", +"..##############", +".##############.", +".......###....##", +"........###.....", +".........###....", +"..........##....", +"...........##...", +"............#...", +"................"}; diff --git a/bmp/type_EnP15.bmp b/bmp/type_EnP15.bmp new file mode 100644 index 0000000..62daf85 --- /dev/null +++ b/bmp/type_EnP15.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......###....##", +"..##############", +".##############.", +".....#.####...##", +"....##..###.....", +"...####..###....", +"..##..##..##....", +".########..##...", +"............#....", +"................"}; diff --git a/bmp/type_EnP2.bmp b/bmp/type_EnP2.bmp new file mode 100644 index 0000000..4d3d879 --- /dev/null +++ b/bmp/type_EnP2.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......###....##", +".###############", +"###############.", +"..#....###....##", +"..#..#..###.....", +"..#.##...###....", +"..##.#....##....", +"..#..#.....##....", +"............#....", +"................"}; diff --git a/bmp/type_EnP3.bmp b/bmp/type_EnP3.bmp new file mode 100644 index 0000000..0623dcb --- /dev/null +++ b/bmp/type_EnP3.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#....", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......###....##", +"..##############", +".##############.", +"...##..###....##", +"..##.##.###.....", +".##..##..###....", +".##...##..##....", +"##.....##..##....", +"##....##....#....", +"................"}; diff --git a/bmp/type_EnP4.bmp b/bmp/type_EnP4.bmp new file mode 100644 index 0000000..9286027 --- /dev/null +++ b/bmp/type_EnP4.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#....", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......####...##", +"..##############", +".##############.", +"....#..####...##", +"....#...###.....", +"....#....###....", +".######...##....", +".#....#....##...", +".######.....#...", +"................"}; diff --git a/bmp/type_EnP5.bmp b/bmp/type_EnP5.bmp new file mode 100644 index 0000000..8b6fa57 --- /dev/null +++ b/bmp/type_EnP5.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......####...##", +"..##############", +".##############.", +".....#.####...##", +"..#..#..###.....", +".##..#...###....", +"########..##....", +".##........##...", +"..#.........#...", +"................"}; diff --git a/bmp/type_EnP6.bmp b/bmp/type_EnP6.bmp new file mode 100644 index 0000000..d6c7a56 --- /dev/null +++ b/bmp/type_EnP6.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"....#...........", +"...##...........", +"..###...........", +".####...........", +"##############..", +".####...........", +"..###...........", +"...##...........", +"....#...........", +"................", +"................", +"................"}; diff --git a/bmp/type_EnP7.bmp b/bmp/type_EnP7.bmp new file mode 100644 index 0000000..43f3174 --- /dev/null +++ b/bmp/type_EnP7.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......####...##", +"..##############", +".##############.", +"....#..####...##", +"....#...###.....", +"...###...###....", +"..##.##...##....", +".##...##...##...", +"............#...", +"................"}; diff --git a/bmp/type_EnP8.bmp b/bmp/type_EnP8.bmp new file mode 100644 index 0000000..cb3c7b2 --- /dev/null +++ b/bmp/type_EnP8.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"..............##", +".............###", +"............###.", +"...........####.", +".##.###########.", +"###############.", +"###############.", +".##.###########.", +"............###.", +".............###", +"..............##", +"................", +"................"}; diff --git a/bmp/type_EnP9.bmp b/bmp/type_EnP9.bmp new file mode 100644 index 0000000..70d1ffb --- /dev/null +++ b/bmp/type_EnP9.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +".........#......", +"........##......", +".......###......", +"......####....##", +"......####...###", +"..##############", +".##############.", +".##############.", +"..##############", +"......####...###", +"......####....##", +".......###......", +"........##......", +".........#......", +"................"}; diff --git a/bmp/type_Our1.bmp b/bmp/type_Our1.bmp new file mode 100644 index 0000000..e2b7e1b --- /dev/null +++ b/bmp/type_Our1.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"...###..###.....", +"..####.###......", +".##.#####.......", +"##..##########..", +"....###########.", +"...###...##.....", +"..###...##......", +".###...##.......", +"###...##........", +"##..............", +"................"}; diff --git a/bmp/type_Our10.bmp b/bmp/type_Our10.bmp new file mode 100644 index 0000000..c3e2093 --- /dev/null +++ b/bmp/type_Our10.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/bmp/type_Our11.bmp b/bmp/type_Our11.bmp new file mode 100644 index 0000000..d737b03 --- /dev/null +++ b/bmp/type_Our11.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"............#...", +"....##....####..", +"....##...####...", +"....###.####....", +"....######......", +"....########....", +"...###########..", +"..####..........", +".###............", +"###.............", +"##..............", +"................", +"................"}; diff --git a/bmp/type_Our12.bmp b/bmp/type_Our12.bmp new file mode 100644 index 0000000..3ff220f --- /dev/null +++ b/bmp/type_Our12.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"..............##", +".............###", +".....##.....####", +"....##......##..", +"...##.......##..", +"..##..#######...", +".##.###.#####...", +"##.##....###....", +"...#....######..", +"...#...###......", +"...######.......", +"...####.##......", +"........#.......", +"................"}; diff --git a/bmp/type_Our13.bmp b/bmp/type_Our13.bmp new file mode 100644 index 0000000..d4ed9c7 --- /dev/null +++ b/bmp/type_Our13.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###..#........", +".###...#####....", +"###....#####....", +"##.....##.......", +".......##......."}; diff --git a/bmp/type_Our14.bmp b/bmp/type_Our14.bmp new file mode 100644 index 0000000..d2695cd --- /dev/null +++ b/bmp/type_Our14.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..........", +"..###....##.....", +".###......##....", +"#############...", +"##........##....", +".........##....."}; diff --git a/bmp/type_Our15.bmp b/bmp/type_Our15.bmp new file mode 100644 index 0000000..a8e598b --- /dev/null +++ b/bmp/type_Our15.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###.#######...", +".###..####......", +"###...##.##.....", +"##....##........", +"......##........"}; diff --git a/bmp/type_Our2.bmp b/bmp/type_Our2.bmp new file mode 100644 index 0000000..5c6a533 --- /dev/null +++ b/bmp/type_Our2.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"...###....###...", +"..####...###....", +".##.##..###.....", +"##..##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..#..##...", +"..###...#.##....", +".###....###.....", +"###...#####.....", +"##...#######....", +"......#####....."}; diff --git a/bmp/type_Our3.bmp b/bmp/type_Our3.bmp new file mode 100644 index 0000000..5ba887f --- /dev/null +++ b/bmp/type_Our3.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..#.......", +"..###...#.......", +".###....#.......", +"###...#####.....", +"##...#######....", +"......#####....."}; diff --git a/bmp/type_Our4.bmp b/bmp/type_Our4.bmp new file mode 100644 index 0000000..cae6e64 --- /dev/null +++ b/bmp/type_Our4.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....#.#..###....", +"....#..####.....", +"....#...###.....", +"....#....###....", +"....#......###..", +"....###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/bmp/type_Our5.bmp b/bmp/type_Our5.bmp new file mode 100644 index 0000000..d4ed9c7 --- /dev/null +++ b/bmp/type_Our5.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###..#........", +".###...#####....", +"###....#####....", +"##.....##.......", +".......##......."}; diff --git a/bmp/type_Our6.bmp b/bmp/type_Our6.bmp new file mode 100644 index 0000000..36afec0 --- /dev/null +++ b/bmp/type_Our6.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"..............##", +".............###", +".....##.....####", +"....##......##..", +"...##.......##..", +"..##...######...", +".##.#########...", +"##.###..####....", +"...#...#######..", +"...#..####......", +"...######.......", +"...####.##......", +"........#.......", +"................"}; diff --git a/bmp/type_Our7.bmp b/bmp/type_Our7.bmp new file mode 100644 index 0000000..dc53674 --- /dev/null +++ b/bmp/type_Our7.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####...#.....", +"..###..#..##....", +".###....#.#.#...", +"###......##..#..", +"##........#.....", +"................"}; diff --git a/bmp/type_Our8.bmp b/bmp/type_Our8.bmp new file mode 100644 index 0000000..6758467 --- /dev/null +++ b/bmp/type_Our8.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"..........##....", +"....###...###...", +"...##.##..###...", +"..##..##.###....", +".##..##.###.....", +"##..##.###......", +"##..#####.......", +"##.###########..", +"###.###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/bmp/type_Our9.bmp b/bmp/type_Our9.bmp new file mode 100644 index 0000000..5ba887f --- /dev/null +++ b/bmp/type_Our9.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..#.......", +"..###...#.......", +".###....#.......", +"###...#####.....", +"##...#######....", +"......#####....."}; diff --git a/bmp/type_OurP1.bmp b/bmp/type_OurP1.bmp new file mode 100644 index 0000000..d483598 --- /dev/null +++ b/bmp/type_OurP1.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".....#######....", +"........####.....", +".......####...##", +"..##############", +".##############.", +".......####...##", +"........###.....", +".....#######....", +"..........##....", +"...........##...", +"............#...", +"................"}; diff --git a/bmp/type_OurP10.bmp b/bmp/type_OurP10.bmp new file mode 100644 index 0000000..8c15e10 --- /dev/null +++ b/bmp/type_OurP10.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#....", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......###....##", +"..##############", +".##############.", +".......###....##", +"........###.....", +".........###....", +"..........##....", +"...........##....", +"............#....", +"................"}; diff --git a/bmp/type_OurP11.bmp b/bmp/type_OurP11.bmp new file mode 100644 index 0000000..b033947 --- /dev/null +++ b/bmp/type_OurP11.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"...........#....", +"..........##....", +".........##.....", +"........###.....", +".......####.....", +"..##############", +".###############", +"..##############", +".......####.....", +"........###.....", +".........##.....", +"..........##....", +"...........#....", +"................"}; diff --git a/bmp/type_OurP12.bmp b/bmp/type_OurP12.bmp new file mode 100644 index 0000000..2d8ba9a --- /dev/null +++ b/bmp/type_OurP12.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"###########.....", +"###########.....", +"....##..........", +"..######........", +".########....###", +"##.....#########", +"##.....#########", +"###########.....", +".#########......", +"..#.....#.......", +".##.....##......", +"................", +"................"}; diff --git a/bmp/type_OurP13.bmp b/bmp/type_OurP13.bmp new file mode 100644 index 0000000..322a7af --- /dev/null +++ b/bmp/type_OurP13.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........###....", +"........###.....", +".......####...##", +"..##############", +".##############.", +"....#..####...##", +"....#...###.....", +"...###...###....", +"..##.##...##....", +".##...##..##....", +"...........#....", +"................"}; diff --git a/bmp/type_OurP14.bmp b/bmp/type_OurP14.bmp new file mode 100644 index 0000000..669f25f --- /dev/null +++ b/bmp/type_OurP14.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#....", +"...........##...", +"..........##....", +".........###....", +"........###.....", +".......###....##", +"..##############", +".##############.", +"...##..###....##", +"...##...###.....", +"...##....###....", +".#.##.#...##....", +"..####.....##....", +"...##.......#....", +"................"}; diff --git a/bmp/type_OurP15.bmp b/bmp/type_OurP15.bmp new file mode 100644 index 0000000..6dacca3 --- /dev/null +++ b/bmp/type_OurP15.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........###....", +"........###.....", +".......####...##", +"..##############", +".##############.", +"....#..####...##", +"....#...###.....", +"...###...###....", +"..#####...##....", +".##.#.##..##....", +"##..#..##..#....", +"................"}; diff --git a/bmp/type_OurP2.bmp b/bmp/type_OurP2.bmp new file mode 100644 index 0000000..1026b3e --- /dev/null +++ b/bmp/type_OurP2.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"............#...", +"...........##...", +"..........##....", +".....#######....", +"........###......", +".......###....##", +"..##############", +".##############.", +"....#..###....##", +"....#...###.....", +"....########....", +"....#.....##....", +"..#####....##...", +".#######... #....", +"..#####........."}; diff --git a/bmp/type_OurP3.bmp b/bmp/type_OurP3.bmp new file mode 100644 index 0000000..116102b --- /dev/null +++ b/bmp/type_OurP3.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........##.....", +"........###......", +".......###....##", +"..##############", +".##############.", +"....#..###....##", +"....#...##......", +"....#....##.....", +"..#####...##....", +".#######..##....", +"..#####....#....", +"................"}; diff --git a/bmp/type_OurP4.bmp b/bmp/type_OurP4.bmp new file mode 100644 index 0000000..31f9e2b --- /dev/null +++ b/bmp/type_OurP4.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........#.#....", +"........#..#....", +".......#...#..##", +"..######...#####", +".#######...####.", +".......#...#..##", +"........#..#....", +".........#.#....", +"..........##....", +"..........##....", +"...........#....", +"................"}; diff --git a/bmp/type_OurP5.bmp b/bmp/type_OurP5.bmp new file mode 100644 index 0000000..322a7af --- /dev/null +++ b/bmp/type_OurP5.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........###....", +"........###.....", +".......####...##", +"..##############", +".##############.", +"....#..####...##", +"....#...###.....", +"...###...###....", +"..##.##...##....", +".##...##..##....", +"...........#....", +"................"}; diff --git a/bmp/type_OurP6.bmp b/bmp/type_OurP6.bmp new file mode 100644 index 0000000..2d8ba9a --- /dev/null +++ b/bmp/type_OurP6.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"###########.....", +"###########.....", +"....##..........", +"..######........", +".########....###", +"##.....#########", +"##.....#########", +"###########.....", +".#########......", +"..#.....#.......", +".##.....##......", +"................", +"................"}; diff --git a/bmp/type_OurP7.bmp b/bmp/type_OurP7.bmp new file mode 100644 index 0000000..ea0cb40 --- /dev/null +++ b/bmp/type_OurP7.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........###....", +"........###.....", +".......###....##", +".###############", +"###############.", +"..#....###....##", +"..#..#..###.....", +"..#.##...###....", +"..##.#....##....", +"..#..#....##....", +"...........#....", +"................"}; diff --git a/bmp/type_OurP8.bmp b/bmp/type_OurP8.bmp new file mode 100644 index 0000000..9d6fe27 --- /dev/null +++ b/bmp/type_OurP8.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +".....#######...", +"...###.....###..", +"..###.......###.", +"...###.....###..", +".....#######....", +".......###......", +".......###....##", +"..##############", +".##############.", +".......###....##", +"........###.....", +".........###....", +"..........##....", +"...........##...", +"............#...", +"................"}; diff --git a/bmp/type_OurP9.bmp b/bmp/type_OurP9.bmp new file mode 100644 index 0000000..116102b --- /dev/null +++ b/bmp/type_OurP9.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"...........#....", +"..........##....", +"..........##....", +".........##.....", +"........###......", +".......###....##", +"..##############", +".##############.", +"....#..###....##", +"....#...##......", +"....#....##.....", +"..#####...##....", +".#######..##....", +"..#####....#....", +"................"}; diff --git a/bmp/undef.bmp b/bmp/undef.bmp new file mode 100644 index 0000000..a64f68a --- /dev/null +++ b/bmp/undef.bmp @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"................", +"................", +".......###......", +".....#######....", +".....#######....", +".....#######....", +".......###......", +"................", +"................", +"................", +"................", +"................"}; diff --git a/bmp/unknow.bmp b/bmp/unknow.bmp new file mode 100644 index 0000000..a5047e1 --- /dev/null +++ b/bmp/unknow.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * unknow_xpm[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!!!!......!!!!", +"!!!!!..!!!!..!!!", +"!!!!..!!!!!!..!!", +"!!!!..!!!!!!..!!", +"!!!!!!!!!!!!..!!", +"!!!!!!!!!!!..!!!", +"!!!!!!!!!!..!!!!", +"!!!!!!!!!..!!!!!", +"!!!!!!!!..!!!!!!", +"!!!!!!!!..!!!!!!", +"!!!!!!!!..!!!!!!", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!..!!!!!!", +"!!!!!!!!..!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/vzvpzrk.bmp b/bmp/vzvpzrk.bmp new file mode 100644 index 0000000..a275007 --- /dev/null +++ b/bmp/vzvpzrk.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * vzvpzrk_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!", +"!.............!!", +"!.!!!!!!!!!!!.!!", +"!.!!!!!!!!!!!.!!", +"!.!!!!!!!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!...!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!!!!.!!!!!.!!", +"!.!!.......!!.!!", +"!.!!!!!!!!!!!.!!", +"!.............!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/zdn.bmp b/bmp/zdn.bmp new file mode 100644 index 0000000..2270676 --- /dev/null +++ b/bmp/zdn.bmp @@ -0,0 +1,36 @@ +/* XPM */ +static char * zdn_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!....!!!!!!!!!", +"!!!..!...!!!!!!!", +"!!!..!!!...!!!!!", +"!!!..!!!!!...!!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!..!!!", +"!!!..!!!!...!!!!", +"!!!..!!...!!!!!!", +"!!!.....!!!!!!!!", +"!!!...!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/bmp/zrp.bmp b/bmp/zrp.bmp new file mode 100644 index 0000000..ee4fa2f --- /dev/null +++ b/bmp/zrp.bmp @@ -0,0 +1,37 @@ +/* XPM */ +static char * zrp_bmp[] = { +"16 16 17 1", +"! c None", +". c #000000", +"+ c #800000", +"@ c #008000", +"# c #808000", +"$ c #000080", +"% c #800080", +"& c #008080", +"* c #808080", +"= c #C0C0C0", +"- c #FF0000", +"; c #00FF00", +"> c #FFFF00", +", c #0000FF", +"' c #FF00FF", +") c #00FFFF", +" c #FFFFFF", +"!!!!!!!!!!!!!!!!", +"!!!...........!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!..!!", +"!!!..!!!!!!!..!!", +"!!!...........!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!", +"!!!..!!!!!!!!!!!",}; + diff --git a/ctrlmode.cpp b/ctrlmode.cpp new file mode 100644 index 0000000..e19362f --- /dev/null +++ b/ctrlmode.cpp @@ -0,0 +1,38 @@ +#include "ctrlmode.h" +#include "ui_ctrlmode.h" +#include "widget.h" + +ctrlMode::ctrlMode(QWidget *parent) : + QDialog(parent), + ui(new Ui::ctrlMode) +{ + ui->setupUi(this); + + + + + ui->checkBox_2->setChecked(((Widget*)parent)->vklCCR); + ui->checkBox_4->setChecked(((Widget*)parent)->sendCCR); + + + +} + +ctrlMode::~ctrlMode() +{ + delete ui; +} + +void ctrlMode::on_pushButton_2_clicked() +{ + close(); +} + +void ctrlMode::on_pushButton_clicked() +{ + + ((Widget*)parent())->vklCCR = ui->checkBox_2->isChecked(); + ((Widget*)parent())->sendCCR = ui->checkBox_4->isChecked(); + + close(); +} diff --git a/ctrlmode.h b/ctrlmode.h new file mode 100644 index 0000000..e600968 --- /dev/null +++ b/ctrlmode.h @@ -0,0 +1,27 @@ +#ifndef CTRLMODE_H +#define CTRLMODE_H + +#include + +namespace Ui { +class ctrlMode; +} + +class ctrlMode : public QDialog +{ + Q_OBJECT + +public: + explicit ctrlMode(QWidget *parent = 0); + ~ctrlMode(); + +private slots: + void on_pushButton_2_clicked(); + + void on_pushButton_clicked(); + +private: + Ui::ctrlMode *ui; +}; + +#endif // CTRLMODE_H diff --git a/ctrlmode.ui b/ctrlmode.ui new file mode 100644 index 0000000..de301ab --- /dev/null +++ b/ctrlmode.ui @@ -0,0 +1,764 @@ + + + ctrlMode + + + + 0 + 0 + 519 + 452 + + + + Режимы управления + + + + + 10 + 20 + 101 + 17 + + + + ВключитьКБД + + + + + + 10 + 50 + 101 + 17 + + + + ВключитьЦЦР + + + + + + 10 + 80 + 101 + 17 + + + + ВключитьРСО + + + + + + 120 + 50 + 101 + 17 + + + + ВыдатьЦЦР + + + + + + 120 + 80 + 101 + 17 + + + + ВыдатьРСО + + + + + + 120 + 20 + 101 + 17 + + + + ВыдатьКБД + + + + + + 230 + 50 + 111 + 21 + + + + АтвЦУ выдавать + + + + + + 230 + 20 + 101 + 17 + + + + АвтКЗС + + + + + + 250 + 70 + 91 + 16 + + + + только в СО + + + + + + 350 + 20 + 161 + 81 + + + + Задержка рекомендации + + + + + 40 + 40 + 71 + 20 + + + + 0.0 + + + + + + 120 + 40 + 46 + 13 + + + + сек + + + + + + false + + + + 10 + 120 + 251 + 91 + + + + Запрет автоматического РСО + + + + false + + + + 20 + 20 + 111 + 17 + + + + Абонент 1 + + + + + false + + + + 20 + 40 + 111 + 17 + + + + Абонент 2 + + + + + false + + + + 20 + 60 + 111 + 17 + + + + Абонент 3 + + + + + false + + + + 140 + 60 + 111 + 17 + + + + Абонент 6 + + + + + false + + + + 140 + 40 + 111 + 17 + + + + Абонент 5 + + + + + false + + + + 140 + 20 + 111 + 17 + + + + Абонент 4 + + + + + + false + + + + 10 + 220 + 251 + 91 + + + + Режим базовости + + + + false + + + + 20 + 20 + 111 + 17 + + + + Абонент 1 + + + + + false + + + + 20 + 40 + 111 + 17 + + + + Абонент 2 + + + + + false + + + + 20 + 60 + 111 + 17 + + + + Абонент 3 + + + + + false + + + + 140 + 60 + 111 + 17 + + + + Абонент 6 + + + + + false + + + + 140 + 40 + 111 + 17 + + + + Абонент 5 + + + + + false + + + + 140 + 20 + 111 + 17 + + + + Абонент 4 + + + + + + false + + + + 10 + 330 + 251 + 91 + + + + Запрос помеховой обстановки + + + + false + + + + 20 + 20 + 111 + 17 + + + + Абонент 1 + + + + + false + + + + 20 + 40 + 111 + 17 + + + + Абонент 2 + + + + + false + + + + 20 + 60 + 111 + 17 + + + + Абонент 3 + + + + + false + + + + 140 + 60 + 111 + 17 + + + + Абонент 6 + + + + + false + + + + 140 + 40 + 111 + 17 + + + + Абонент 5 + + + + + false + + + + 140 + 20 + 111 + 17 + + + + Абонент 4 + + + + + + false + + + + 280 + 120 + 231 + 91 + + + + Режимы сосредоточения + + + + false + + + + 10 + 20 + 82 + 17 + + + + Режим 1 + + + + + false + + + + 10 + 40 + 82 + 17 + + + + Режим 2 + + + + + false + + + + 10 + 60 + 82 + 17 + + + + Режим 3 + + + + + + false + + + + 270 + 220 + 241 + 201 + + + + Режим базовости + + + + false + + + + 10 + 130 + 111 + 17 + + + + Абонент 1 + + + + + false + + + + 10 + 150 + 111 + 17 + + + + Абонент 2 + + + + + false + + + + 10 + 170 + 111 + 17 + + + + Абонент 3 + + + + + false + + + + 130 + 170 + 111 + 17 + + + + Абонент 6 + + + + + false + + + + 130 + 150 + 111 + 17 + + + + Абонент 5 + + + + + false + + + + 130 + 130 + 111 + 17 + + + + Абонент 4 + + + + + false + + + + 20 + 30 + 141 + 17 + + + + Автоматический + + + true + + + + + false + + + + 20 + 90 + 82 + 17 + + + + Ручной + + + + + false + + + + 40 + 60 + 171 + 17 + + + + защита от ПРР + + + + + + + 10 + 420 + 75 + 23 + + + + Ввод + + + + + + 430 + 420 + 75 + 23 + + + + Отказ + + + + + + diff --git a/gcross.cpp b/gcross.cpp new file mode 100644 index 0000000..2fdfe1d --- /dev/null +++ b/gcross.cpp @@ -0,0 +1,73 @@ +#include "gcross.h" + +gCross::gCross(qreal px, qreal py) +{ + x = px; + y = py; + dim=5; + col = QColor(Qt::lightGray); + +} + +gCross::gCross(QPointF p) +{ + x = p.x(); + y = p.y(); + dim=5; + col = QColor(Qt::lightGray); + +} + + +QRectF gCross::boundingRect() const +{ + qreal d = dim; + + return QRectF(x-d, y-d, 2*d, 2*d); +} + + +void gCross::setColor(QColor c) +{ + if (col!=c) { + prepareGeometryChange(); + col = c; + } +} + +void gCross::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) +{ + qreal d = dim; + painter->setPen(QPen(col)); + QPointF p1(x-d, y-d); + QPointF p2(x+d, y+d); + QPointF p3(x-d, y+d); + QPointF p4(x+d, y-d); + + painter->drawLine(p1, p2); + painter->drawLine(p3, p4); + +} + +void gCross::setPos(QPointF p) +{ + qreal px, py; + px= p.x(); py= p.y(); + + if ((x!=px)||(y!=py) ) { + prepareGeometryChange(); + x=px; y=py; + } +} + + +void gCross::setSize(qreal d) +{ + + if (dim!=d) { + prepareGeometryChange(); + dim=d; + } +} + + diff --git a/gcross.h b/gcross.h new file mode 100644 index 0000000..e940b90 --- /dev/null +++ b/gcross.h @@ -0,0 +1,37 @@ +#ifndef GCROSS_H +#define GCROSS_H + +#include +#include +#include +#include "math.h" + +class gCross : public QGraphicsItem +{ + +public: + gCross(qreal x=0, qreal y=0); + gCross(QPointF p); + QRectF boundingRect() const; + + + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + QColor color() {return col;} + void setColor(QColor c); + + void setPos(QPointF p); + void setPos(qreal x, qreal y) {setPos(QPointF(x, y));} + + void setSize(qreal d); + +private: + qreal x, y, dim; + QColor col; +signals: + +public slots: + +}; + +#endif // GCROSS_H diff --git a/graphicsarcitem.cpp b/graphicsarcitem.cpp new file mode 100644 index 0000000..b32b29b --- /dev/null +++ b/graphicsarcitem.cpp @@ -0,0 +1,93 @@ +#include "graphicsarcitem.h" + +graphicsArcItem::graphicsArcItem(qreal x, qreal y, qreal r, qreal a1, qreal a2) +{ + this->x = x; + this->y = y; + this->r = r; + this->a1 = a1; + this->a2 = a2; + this->col = QColor(Qt::black); + this->textLeft=""; + this->textRight=""; + this->textVisible=false; +} + +QRectF graphicsArcItem::boundingRect() const +{ + return QRectF(x-r, y-r, 2*r, 2*r); +} + +//QPainterPath graphicsArcItem::shape() const +//{ +// QPainterPath path; +// path.moveTo(x+r, y+r); +// path.arcTo(boundingRect(), a2, a1); +// return path; +//} + +void graphicsArcItem::setColor(QColor c) +{ + if (col!=c) { + prepareGeometryChange(); + col = c; + } +} +void graphicsArcItem::setRadius(qreal rr) +{ + if (r!=rr) { + prepareGeometryChange(); + r = rr; + } +} + +void graphicsArcItem::setAngle1(qreal a) +{ + if (a1 != a) { + prepareGeometryChange(); + a1=a; + } +} +void graphicsArcItem::setAngle2(qreal a) +{ + if (a2 != a) { + prepareGeometryChange(); + a2=a; + } +} +void graphicsArcItem::setAngles(qreal aa, qreal ab) +{ + setAngle1(aa); + setAngle2(ab); +} + +void graphicsArcItem::setText(QString str1, QString str2) +{ + if ((textLeft!=str1)||(textRight!=str2)) + { + prepareGeometryChange(); + textLeft = str1; + textRight = str2; + } +} + +void graphicsArcItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) +{ + painter->setPen(QPen(col)); + painter->drawPie(boundingRect(), a1*16, (a2-a1)*16); + + if (textVisible) + { + + qreal fs = r/223; + + + painter->setPen(QPen(Qt::white)); + QFont f = painter->font(); + f.setPointSizeF(fs*7); + painter->setFont(f); + + painter->drawText(x+0.95*r*cos(a1/180*M_PI), y-0.95*r*sin(a1/180*M_PI), textLeft); + painter->drawText(x+0.95*r*cos(a2/180*M_PI), y-0.95*r*sin(a2/180*M_PI), textRight); + } +} diff --git a/graphicsarcitem.h b/graphicsarcitem.h new file mode 100644 index 0000000..cdf41e8 --- /dev/null +++ b/graphicsarcitem.h @@ -0,0 +1,48 @@ +#ifndef GRAPHICSARCITEM_H +#define GRAPHICSARCITEM_H + +#include +#include +#include +#include "math.h" + +class graphicsArcItem : public QGraphicsItem +{ +public: + graphicsArcItem(qreal x=0, qreal y=0, qreal r=0, qreal a1=0, qreal a2=0); + QRectF boundingRect() const; +// QPainterPath shape() const; + + + + + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + qreal radius() {return r;} + QColor color() {return col;} + qreal angle1() {return a1;} + qreal angle2() {return a2;} + void setColor(QColor c); + void setRadius(qreal rr); + void setAngle1(qreal a); + void setAngle2(qreal a); + void setAngles(qreal aa, qreal ab); + bool isTextVisible() {return textVisible;} + void setTextVisible(bool fl) {textVisible=fl;} + + void setText(QString str1="", QString str2=""); + void setText1(QString str) {prepareGeometryChange();textLeft=str;} + void setText2(QString str) {prepareGeometryChange();textRight=str;} + + + +private: + qreal x, y, r, a1, a2; + QColor col; + bool textVisible; + QString textLeft, textRight; +}; + +#endif // GRAPHICSARCITEM_H + + diff --git a/graphicsviewmod.cpp b/graphicsviewmod.cpp new file mode 100644 index 0000000..3415efa --- /dev/null +++ b/graphicsviewmod.cpp @@ -0,0 +1,435 @@ +#include "graphicsviewmod.h" +#include "widget.h" + +GraphicsViewMod::GraphicsViewMod(QWidget *parent):QGraphicsView(parent) +{ + setViewportUpdateMode(QGraphicsView::FullViewportUpdate); + setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + + uid = 0; + drawCoords = false; + defSize = 10; + dScale = 5; + obj=0; + drawSpecialLine = false; + setMouseTracking(true); +} + + + +void GraphicsViewMod::drawBackground(QPainter *painter, const QRectF &rect) +{ + + int x1, x2, y1, y2; + QPointF p1, p2; + QPointF l1, l2; + + painter->save(); + painter->setBrush(QBrush(Qt::black)); + painter->drawRect(rect); + painter->restore(); + + painter->setBackground(QBrush(Qt::black)); + painter->setBackground(QBrush(Qt::SolidPattern)); + + p1 = mapToScene(10, 10); + p2 = mapToScene(width()-10, height()-10); + QPointF pt; + pt = mapToScene(10,20); + defSize = pt.y()-p1.y(); + + x1= p1.x()/100; y1=p1.y()/100; + + x2 = p2.x()/100+1; y2=p2.y()/100+1; + + dScale = x2-x1; + + if (drawCoords) + { + + painter->setPen(QColor(Qt::darkGray)); + + + + + QFont f = painter->font(); + f.setPointSizeF(defSize); + painter->setFont(f); + + + for (int i=x1; idrawLine(l1, l2); + + if (dScale<30) + { + + painter->drawText(l1, QString::number(i)); + painter->drawText(l2, QString::number(i)); + + } + + } + for (int i=y1; idrawLine(l1, l2); + + if (dScale<30) + { + + painter->drawText(l1, QString::number(-i)); + painter->drawText(l2, QString::number(-i)); + + } + + } + + + } + + + x1=reper.x()-defSize/2; x2=reper.x()+defSize/2; + y1=reper.y()-defSize/2; y2=reper.y()+defSize/2; + painter->setPen(QColor(Qt::red)); + painter->drawLine(x1,y1,x2,y2); + painter->drawLine(x1,y2,x2,y1); + + + + + + +} + + +void GraphicsViewMod::drawForeground(QPainter *painter, const QRectF &rect) +{ + qreal dim, x, y; + QRectF target; + QImage pic; + QPointF p; + + QFont f = painter->font(); + f.setPointSizeF(defSize); + painter->setPen(Qt::lightGray); + painter->setFont(f); + + + if (dScale<30) dim = 2*defSize; else dim = 100; + + + groundObj *gro; + airObj *tarr; + +/* */ + + for (int i=0;icount(); i++) + { + + gro = obj->at(i); + + if (gro->exist) + { + + p = gro->getPos(); + x=p.x(); y=p.y(); + target=QRectF(x, y-dim, dim, dim); + pic = gro->pic; + if (gro->boegotov) + pic.setColor(0, QColor(Qt::cyan).rgb()); + else + pic.setColor(0, QColor(Qt::red).rgb()); + + painter->drawImage(target, pic); + + if (i) painter->drawText(target.topRight(), QString::number(i)); + } + } +/* */ + + int cu; + QPen penCU; + QPointF ptar; + + + for (int i=0;icount(); i++) + { + tarr = tar->at(i); + if (tarr->exist) + { + p = tarr->getPos(); + x=p.x(); y=p.y(); + target=QRectF(x, y-dim, dim, dim); + pic = tarr->pic; + +// pic.setColor(0, tarr->col.rgb() ); + + + QLineF lf(0,0,tarr->vx,tarr->vy); + if (lf.angle()<90) + { + target.moveTop(y+dim/4*3); + } else + { + target.moveLeft(x+dim/2); + } + + + + painter->setPen(QColor(tarr->col)); + painter->drawImage(target, pic); + + painter->save(); + if (uid==1) + if (tarr->priznakAction) + { + penCU = painter->pen(); + penCU.setColor(tarr->priznakColor); + penCU.setWidthF(2); + painter->setPen(penCU); + + painter->drawRect(target); + } + painter->restore(); + + target.moveLeft(target.right()); + target.setWidth(dim/2); + target.setHeight(dim/2); + + + pic = tarr->picAlt; + painter->drawImage(target, pic); + + + painter->drawText(target.bottomRight(), "8"); + ptar = target.center(); + ptar+=QPointF(0,dim); + painter->drawText(ptar, QString::number(tarr->numer+1)); + + + for (int j=1; j<7; j++) + { + cu = tarr->CU[j]; + if (cu) + { + painter->save(); + + penCU = painter->pen(); + if (cu%20==1) penCU.setColor(Qt::green); else penCU.setColor(Qt::red); + if (cu>20) penCU.setStyle(Qt::DashLine); else penCU.setStyle(Qt::DotLine); + painter->setPen(penCU); + + if (obj->at(j)->exist) painter->drawLine(p, obj->at(j)->getPos()); + + painter->restore(); + } + } + } + + + } + +/* */ + if (drawSpecialLine) + { + painter->setPen(QColor(200, 0, 200)); + painter->drawLine(QPointF(0,0), cursPos); + } +/* */ + KO tKO; + QPointF p2Z; + QString st; + + + QDateTime curTime = QDateTime::currentDateTime(); + int ms = curTime.time().second() ; + + if (ms%2) + { + + painter->save(); + f.setPointSizeF(defSize-2); + painter->setFont(f); + painter->setPen(Qt::white); + + + + + int siz = ((Widget*)parent()->parent())->cmdKO.size(); + for (int i=1; iparent())->cmdKO.at(i)) ; + gro = obj->at(i); + if (gro->exist) + { + if (tKO.ZZ!=99) + { + if ((tKO.x==0)&&(tKO.y==0)) + p2Z = gro->getPos(); + else + p2Z = QPointF(tKO.x, tKO.y); + + + + st = QString("%1 %2%3").arg(i).arg((tKO.ZZ<10)?"0":"").arg(tKO.ZZ); + painter->drawText(p2Z, st); + } + + } + + } + painter->restore(); + + + } +} + +void GraphicsViewMod::mouseMoveEvent(QMouseEvent *e) +{ + QPoint p; + QPointF pf; + QWidget *w; + QString st; + + if (uid == 1) + { + w = ((Widget*)parent()->parent())->openWidget; + if (w) + { + p = e->pos(); + pf = mapToScene(p); + + + switch (((Widget*)parent()->parent())->openWidgetType) + { + case 1: + + break; + default: + // drawSpecialLine = false; + break; + } + } + else + { + drawSpecialLine=false; + } + + } + e->accept(); +} + + +void GraphicsViewMod::mouseReleaseEvent(QMouseEvent *e) +{ + + QPoint p; + QPointF pf; + int px, py; + QWidget *w; + QLineF lf; + qreal dist; + QString st; + + if (uid==1) + { + if (e->button() & Qt::RightButton) + { + p = e->pos(); + QPointF p1; + + QPointF pSc = mapToScene(p); + + airObj *ao; + for (int i=0; icount(); i++) + { + ao = tar->at(i); + if (ao->exist) + { + p1 =ao->getPos()-pSc; + if (p1.manhattanLength()<30) + { + ((Widget*)parent()->parent())->curAirTicketNum=ao->numer; + QTimer::singleShot(100, ((Widget*)parent()->parent()), SLOT(msAirTicketFree()) ); + break; + + } + + } + } + + + } + + + if (e->button() & Qt::LeftButton) + { + if (e->modifiers() & Qt::ShiftModifier) + { + p=e->pos(); + pf = mapToScene(p); + lf = QLineF(QPointF(0,0), pf); + + dist = lf.length()/10; + px = int (pf.x()*100); + py = int (pf.y()*100); + st = QString(" [%1 %2] d=").arg(px).arg(py); + st.append(QString::number(dist, 'f', 2)); + ((Widget*)parent()->parent())->addLogText(st); + } + + w = ((Widget*)parent()->parent())->openWidget; + if (w) + { + p = e->pos(); + pf = mapToScene(p); + + px = -int(pf.y()*100); + py = int(pf.x()*100); + + switch (((Widget*)parent()->parent())->openWidgetType) + { + case 2: // + + ((vvod2z*)w)->setCoord(px, py); + + // ((Widget*)parent()->parent())->addLogText(QString("[%1] [%2]").arg(px).arg(py)); + + break; + + case 1: // _ + ((vvodSectOtvet*)w)->setAngles(pf); + + default: + break; + } + } + } + } + if (uid==2) + { + if (e->button() & Qt::LeftButton) + { + p = e->pos(); + pf = mapToScene(p); + ((Widget*)parent()->parent())->setCentr(pf); + + } + + } + e->accept(); +} + +void GraphicsViewMod::wheelEvent(QWheelEvent *e) +{ + + + e->ignore(); + + +} diff --git a/graphicsviewmod.h b/graphicsviewmod.h new file mode 100644 index 0000000..bfade60 --- /dev/null +++ b/graphicsviewmod.h @@ -0,0 +1,49 @@ +#ifndef GRAPHICSVIEWMOD_H +#define GRAPHICSVIEWMOD_H + +#include +#include +#include +#include +#include "math.h" +#include "groundobj.h" +#include "airobj.h" + +class GraphicsViewMod : public QGraphicsView +{ + +public: + GraphicsViewMod(QWidget *parent); + + + QPointF reper; + + int uid, dScale; + + bool drawSpecialLine; + QPointF cursPos; + + + bool isDrawCoords() {return drawCoords;} + void setDrawCoords(bool f=true) { drawCoords=f;} + + qreal defSize; + QList *obj; + QList *tar; + + + void setLinks(QList *g, QList*t) {obj=g;tar=t;} +protected: + void drawForeground(QPainter *painter, const QRectF &rect); + void drawBackground(QPainter *painter, const QRectF &rect); + bool drawCoords; + +private: + virtual void mouseReleaseEvent(QMouseEvent *event); + virtual void mouseMoveEvent(QMouseEvent *event); + virtual void wheelEvent(QWheelEvent *event); + + +}; + +#endif // GRAPHICSVIEWMOD_H diff --git a/ground.ini b/ground.ini new file mode 100644 index 0000000..cbae22d Binary files /dev/null and b/ground.ini differ diff --git a/groundobj.cpp b/groundobj.cpp new file mode 100644 index 0000000..9356364 --- /dev/null +++ b/groundobj.cpp @@ -0,0 +1,299 @@ +#include "groundobj.h" + +groundObj::groundObj( ) + +{ + x=y=type=0; + exist=true; + boegotov = false; + type = 0; + n_Ab = 0; + pic = QImage(":/new/pics/ground0.xpm"); + + priznakSektor = false; + angle1 = 0; + angle2 = 0; + alt_n = 0; + hMin=0; + hMax=8479; + + initRockets(0,0); +} +void groundObj::initRockets(int _allR, int _activeR) { + allR = _allR; activeR = _activeR; + hasCU.clear(); + for (int i=0; i0) + { + if (hasCU.contains((int)ud)) + { + return -1; + } + else + { + int t = 0; + t= hasCU.indexOf(((int) -1)); + if (t<0) + { + qDebug("Error:: hasCU in grObj wrong Index"); + } + else + { + hasCU[t] = ud; + activeR--; + } + } + return -1; + } + else + { + int t = hasCU.first(); + + hasCU.removeFirst(); + hasCU.append(ud); + + return t; + } +} + +void groundObj::removeCU(int ud) +{ + if (activeRsetPen(Qt::green); + p->drawEllipse(p0, 0.5, 0.5); + + + if (type==1 || type == 12) // type == 1 is TOR, type == 12 is Shilks + { + if (priznakSektor) + { + br = p->brush(); + br.setStyle(Qt::NoBrush); + p->setBrush(br); + pen = p->pen(); + pen.setColor(Qt::red); + pen.setStyle(Qt::DashLine); + p->setPen(pen); + + const qreal elRadius = (type==12) ? 25 : 160; + p->drawEllipse(p0, elRadius, elRadius); + + pen.setColor(Qt::cyan); + if (boegotov) pen.setStyle(Qt::SolidLine); + else pen.setStyle(Qt::DashLine); + p->setPen(pen); + + qreal a1 = (90-angle1); if (a1<0) a1+=360; + qreal a2 = (90-angle2); if (a2<0) a2+=360; + p->drawPie(QRectF(p0-QPointF(320,320), QSize(640,640)), a2*16, (angle2-angle1)*16); + + pen.setStyle(Qt::SolidLine); + pen.setColor(Qt::darkGreen); + pen.setWidthF(3); + p->setPen(pen); + p->drawArc(QRectF(p0-QPointF(280,280), QSize(560,560)), a2*16, (angle2-angle1)*16); + p->drawArc(QRectF(p0-QPointF(120,120), QSize(240,240)), a2*16, (angle2-angle1)*16); + + p->setPen(Qt::white); + f = p->font(); + f.setPointSize(10); + f.setItalic(true); + p->setFont(f); + + ptemp = p0+QPointF(320,0); + lf = QLineF(p0, ptemp); lf.setAngle(a1); + + s = QString::number(n_Ab); + if (alt_n==1) s.append("H"); + if (alt_n==2) s.append("B"); + if (alt_n==3) + { + qreal hmi = hMin/1000; + s.append(" "); + s.append(QString::number(hmi, 'f', 1 )); + } + + + p->drawText(QRectF(lf.p2(), QSizeF(45, 15)), s); + lf = QLineF(p0, ptemp); lf.setAngle(a2); + if (alt_n==3) + { + s = QString::number(n_Ab); + s.append(" "); + qreal hma = hMax/1000; + s.append(QString::number(hma, 'f', 1 )); + } + + p->drawText(QRectF(lf.p2(), QSizeF(45, 15)), s); + } + + } + + + } + else + { + p->setBrush(Qt::NoBrush); + p->setPen(Qt::NoPen); + p->drawPoint(0,0); + + } + + + +} + +void groundObj::setSektor(qreal a1, qreal a2) +{ + while (a1>a2) { a2+=360; } + + if ((a1!=angle1)||(a2!=angle2)|| (!priznakSektor)) + { + prepareGeometryChange(); + priznakSektor = true; + angle1 = a1; + angle2 = a2; + } +} + +void groundObj::clearSektor() +{ + if (priznakSektor || angle1 || angle2) + { + prepareGeometryChange(); + priznakSektor = false; + angle1 = angle2 = 0; + + + } +} + +void groundObj::setType(int t) +{ + if (type!=t) + { + prepareGeometryChange(); + type=t; + + if (t==0) + { + pic = QImage(":/new/pics/ground0.xpm"); + } + if (t==1) + { + pic = QImage(":/new/pics/tor2.xpm"); + initRockets(8, 4); + } + if (t==12) { + pic = QImage(":/new/pics/sh.xpm"); + initRockets(4, 1); + } + } +} + +void groundObj::setPos(QPointF p) +{ + QPointF lp(x, y); + if (lp!=p) + { + prepareGeometryChange(); + x = p.x(); + y = p.y(); + + } + +} + +void groundObj::setPos(qreal x, qreal y) +{ + setPos(QPointF(x, y)); +} + +void groundObj::mousePressEvent(QGraphicsSceneMouseEvent *e) +{ + +} + +void groundObj::setOgrH(int al) +{ + prepareGeometryChange(); + alt_n = al; +} + +void groundObj::setOgrH(int al, qreal min, qreal max) +{ + + hMin = min; + hMax = max; + setOgrH(al); +} diff --git a/groundobj.cpp_old b/groundobj.cpp_old new file mode 100644 index 0000000..7d099aa --- /dev/null +++ b/groundobj.cpp_old @@ -0,0 +1,100 @@ +#include "groundobj.h" + +groundObj::groundObj(QObject *parent) + +{ + x=y=type=0; + exist=true; + + + QString s; + s=":/new/pics/ground0.xpm"; + icon = QIcon(s); + n_Ab = 0; + +} + +QRectF groundObj::boundingRect() const +{ + qreal d = 150; + return QRectF(-50+x,-50+y,d,d); +} + +void groundObj::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) +{ + + if (exist) + { + + + QImage im(50,50,QImage::Format_ARGB32); + im.fill(Qt::transparent); + + QPainter *p = new QPainter(&im); + p->setBrush(Qt::SolidPattern); + + pic = icon.pixmap(15, 15); + + +//// +// if ((viewSettings==0)||(viewSettings==2)) + p->drawPixmap(15, 15, pic); +//// +// if ((viewSettings!=1)&&(viewSettings!=3)) +// p->drawPolygon(altPoly[alt]); +//// +// if ((viewSettings!=1)&&(viewSettings!=2)) +// { +// QFont f = p->font(); +// f.setPointSizeF(7); +// p->setFont(f); +// p->drawText(32, 33, QString::number(numb)); +// } + + p->end(); + +// if ((an>45)&&(an<210)) + painter->drawImage(x, y, im); +// else +// painter->drawImage(lX/scIndex-35, lY/scIndex-45, im); + + } + else + { + painter->setBrush(Qt::NoBrush); + painter->setPen(Qt::NoPen); + painter->drawPoint(0,0); + + } + + + +} + + +void groundObj::setType(int t) +{ + if (type!=t) + { + prepareGeometryChange(); + type=t; + } +} + +void groundObj::setPos(QPointF p) +{ + QPointF lp(x, y); + if (lp!=p) + { + prepareGeometryChange(); + x = p.x(); + y = p.y(); + + } + +} + +void groundObj::setPos(qreal x, qreal y) +{ + setPos(QPointF(x, y)); +} diff --git a/groundobj.h b/groundobj.h new file mode 100644 index 0000000..9ee1df5 --- /dev/null +++ b/groundobj.h @@ -0,0 +1,70 @@ +#ifndef GROUNDOBJ_H +#define GROUNDOBJ_H + +#include +#include +#include +#include +#include +#include +#include +#include + +class groundObj : public QGraphicsItem +{ + void initRockets(int _allR, int _activeR); +public: + groundObj(); + + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + qreal x, y; + int uid; + + int type; + int n_Ab; + // QString name; + bool exist; + bool boegotov; + + int allR, activeR; + + bool priznakSektor; + qreal angle1, angle2; + int alt_n; + qreal hMin, hMax; + + QImage pic; + + QListhasCU; // uid , -1 + + + void setPos(qreal xp, qreal yp); + void setPos(QPointF p); + QPointF getPos() {return QPointF(x, y);} + void setType(int t); + void setBoegotov(bool b = true); + void setRockets(int r); + void setExist(bool b); + void setPriznakSektor(bool fl = true); + void setOgrH(int al, qreal min, qreal max); + void setOgrH(int al); + + int addCU(int uid); + void removeCU(int uid); + + void setSektor(qreal a1, qreal a2); + void clearSektor(); + +private: + virtual void mousePressEvent ( QGraphicsSceneMouseEvent * event ); + +signals: + +public slots: + + +}; + +#endif // GROUNDOBJ_H diff --git a/groundobj.h_old b/groundobj.h_old new file mode 100644 index 0000000..62343be --- /dev/null +++ b/groundobj.h_old @@ -0,0 +1,38 @@ +#ifndef GROUNDOBJ_H +#define GROUNDOBJ_H + +#include +#include +#include +#include + +class groundObj : public QGraphicsItem +{ + Q_OBJECT +public: + groundObj(QObject *parent = 0); + + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + qreal x, y; + int type; + int n_Ab; +// QString name; + bool exist; + QIcon icon; + QPixmap pic; + bool boegotov; + + void setPos(qreal xp, qreal yp); + void setPos(QPointF p); + void setType(int t); + + +signals: + +public slots: + +}; + +#endif // GROUNDOBJ_H diff --git a/killtarget.cpp b/killtarget.cpp new file mode 100644 index 0000000..1aebbde --- /dev/null +++ b/killtarget.cpp @@ -0,0 +1,141 @@ +#include "killtarget.h" +#include "ui_killtarget.h" + +killTarget::killTarget(QWidget *parent) : + QDialog(parent), + ui(new Ui::killTarget) +{ + ui->setupUi(this); + + + ui->label_4->hide(); + ui->label_5->hide(); + + ui->label_6->setText(QString::fromLocal8Bit(": 1 255")); + + ui->lineEdit->setText("0"); + ui->lineEdit_2->setText("0"); + + + + QTimer *tmr = new QTimer(this); + connect(tmr, SIGNAL(timeout()), this, SLOT(msTick())); + tmr->start(500); +} + +killTarget::~killTarget() +{ + delete ui; +} + +void killTarget::msTick() +{ + + + airObj *target=0; + groundObj *grO=0; + int n_ab = ui->lineEdit->text().toInt(); + int n_tr = ui->lineEdit_2->text().toInt(); + if ((n_tr<1)||(n_tr>99)) + { + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(": 1 99")); + } + else + { + target = ((Widget*)parent())->targets.at(n_tr-1); + if (target->exist == false) + { + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(" %1 ").arg(n_tr)); + } + + + + if ((n_ab<0)||(n_ab>6)) + { + + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(" 0 6")); + } + else + { + grO = ((Widget*)parent())->grObj.at(n_ab); + if (grO->exist==false) + { + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(" %1").arg(n_ab)); + + } + else + { + if (target->exist) + { + + QPointF pt = target->getPos(); + QPointF p0 = grO->getPos(); + QLineF lf = QLineF(p0,pt); + qreal dist = lf.length()/10; + + qreal azim = 90-lf.angle(); + if (azim<0) azim+=360; + + int du = azim/6; + QString s; + ui->label_4->setText(QString::fromLocal8Bit("%1 ").arg(du)); + ui->label_4->show(); + s.setNum(azim, 'f', 0); + s.append(""); + ui->label_5->setText(s); + ui->label_5->show(); + s.setNum(dist, 'f', 1); + s.prepend(QString::fromLocal8Bit(": : ")); + ui->label_6->setText(s); + } + } + } + + + } + + +} + +void killTarget::on_pushButton_2_clicked() +{ + close(); + + ((Widget*)parent())->clearOpenWidget(); +} + +void killTarget::on_pushButton_clicked() +{ + int grNum = ui->lineEdit->text().toInt(); // + + int tarNum = ui->lineEdit_2->text().toInt(); // + airObj *ao, *ao_temp; + + + + ao = ((Widget*)parent())->targets[tarNum-1]; + + ao->setCU(grNum); + + ((Widget*)parent())->sendCU(grNum, 11, ao->uid); + + int ret = ((Widget*)parent())->grObj[grNum]->addCU(ao->uid); + if (ret>=0) + { + foreach (ao_temp, ((Widget*)parent())->targets) + if (ao_temp->uid == ret) ao_temp->clearCU(grNum); + + } + + close(); + ((Widget*)parent())->clearOpenWidget(); + +} diff --git a/killtarget.h b/killtarget.h new file mode 100644 index 0000000..04b5d5a --- /dev/null +++ b/killtarget.h @@ -0,0 +1,29 @@ +#ifndef KILLTARGET_H +#define KILLTARGET_H + +#include +#include "widget.h" + +namespace Ui { +class killTarget; +} + +class killTarget : public QDialog +{ + Q_OBJECT + +public: + explicit killTarget(QWidget *parent = 0); + ~killTarget(); + +private slots: + void msTick(); + void on_pushButton_2_clicked(); + + void on_pushButton_clicked(); + +private: + Ui::killTarget *ui; +}; + +#endif // KILLTARGET_H diff --git a/killtarget.ui b/killtarget.ui new file mode 100644 index 0000000..4afc498 --- /dev/null +++ b/killtarget.ui @@ -0,0 +1,146 @@ + + + killTarget + + + + 0 + 0 + 250 + 223 + + + + Уничтожить цель + + + + + 10 + 20 + 231 + 151 + + + + QFrame::Box + + + QFrame::Sunken + + + + + 20 + 20 + 71 + 16 + + + + Абонент + + + + + + 20 + 50 + 71 + 16 + + + + Трасса + + + + + + 130 + 20 + 61 + 20 + + + + + + + 130 + 50 + 61 + 20 + + + + + + + 70 + 100 + 46 + 13 + + + + 7 ДУ + + + + + + 70 + 120 + 46 + 13 + + + + 44 + + + + + + 20 + 110 + 201 + 16 + + + + TextLabel + + + + + + + 20 + 180 + 75 + 23 + + + + Ввод + + + + + + 130 + 180 + 75 + 23 + + + + Отказ + + + + + + diff --git a/kzstarget.cpp b/kzstarget.cpp new file mode 100644 index 0000000..8282031 --- /dev/null +++ b/kzstarget.cpp @@ -0,0 +1,167 @@ +#include "kzstarget.h" +#include "ui_kzstarget.h" + +kzsTarget::kzsTarget(QWidget *parent) : + QDialog(parent), + ui(new Ui::kzsTarget) +{ + ui->setupUi(this); + + + ui->label_4->hide(); + ui->label_5->hide(); + + ui->label_6->setText(QString::fromLocal8Bit(": 1 99")); + + ui->lineEdit->setText("0"); + ui->lineEdit_2->setText("0"); + + + + QTimer *tmr = new QTimer(this); + connect(tmr, SIGNAL(timeout()), this, SLOT(msTick())); + tmr->start(500); +} + +kzsTarget::~kzsTarget() +{ + delete ui; +} + +void kzsTarget::msTick() +{ + + + airObj *target = 0; + groundObj *grO; + + int n_tr = ui->lineEdit_2->text().toInt(); + if ((n_tr<1)||(n_tr>99)) + { + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(": 1 99")); + } + else + { + target = ((Widget*)parent())->targets.at(n_tr-1); + if (target->exist == false) + { + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(" %1 ").arg(n_tr)); + } + } + + int n_ab = ui->lineEdit->text().toInt(); + + if ((n_ab<0)||(n_ab>6)) + { + + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(" 0 6")); + } + else + { + grO = ((Widget*)parent())->grObj.at(n_ab); + if (grO->exist==false) + { + ui->label_4->hide(); + ui->label_5->hide(); + ui->label_6->setText(QString::fromLocal8Bit(" %1").arg(n_ab)); + + } + else + { + if (target) if (target->exist) + { + + QPointF pt = target->getPos(); + QPointF p0 = grO->getPos(); + QLineF lf = QLineF(p0,pt); + qreal dist = lf.length()/10; + + qreal azim = 90-lf.angle(); + if (azim<0) azim+=360; + + int du = azim/6; + QString s; + ui->label_4->setText(QString::fromLocal8Bit("%1 ").arg(du)); + ui->label_4->show(); + s.setNum(azim, 'f', 0); + s.append(""); + ui->label_5->setText(s); + ui->label_5->show(); + s.setNum(dist, 'f', 1); + s.prepend(QString::fromLocal8Bit(": : ")); + ui->label_6->setText(s); + } + } + } + +} + +void kzsTarget::on_pushButton_2_clicked() +{ + close(); + + ((Widget*)parent())->clearOpenWidget(); +} + +void kzsTarget::on_pushButton_clicked() +{ + QMessageBox msg(this); + msg.setWindowTitle(QString::fromLocal8Bit("")); + msg.setIcon(QMessageBox::Information); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + + int i = ui->lineEdit->text().toInt(); + + int t = ui->lineEdit_2->text().toInt(); + airObj *ao; + groundObj *go; + + if ((i>0)&&(i<7)) + { + go = ((Widget*)parent())->grObj.at(i); + if (!go->exist) + { + msg.setText(QString::fromLocal8Bit(" %1").arg(i)); + msg.exec(); + + } + else + { + + if ((t<1)||(t>99)) + { + msg.setText(QString::fromLocal8Bit(" 1 99")); + msg.exec(); + } + else + { + ao = ((Widget*)parent())->targets[t-1]; + if (!ao->exist) + { + msg.setText(QString::fromLocal8Bit(" %1 ").arg(t)); + msg.exec(); + } + else + { + go->removeCU(ao->uid); + ao->setKZS(i); + ((Widget*)parent())->sendCU(i, 33, ao->uid); + ((Widget*)parent())->clearOpenWidget(); + close(); + } + } + } + } + else + { + msg.setText(QString::fromLocal8Bit(" 1 6")); + msg.exec(); + + } +} diff --git a/kzstarget.h b/kzstarget.h new file mode 100644 index 0000000..f0d83b0 --- /dev/null +++ b/kzstarget.h @@ -0,0 +1,29 @@ +#ifndef KZSTARGET_H +#define KZSTARGET_H + +#include +#include "widget.h" + +namespace Ui { +class kzsTarget; +} + +class kzsTarget : public QDialog +{ + Q_OBJECT + +public: + explicit kzsTarget(QWidget *parent = 0); + ~kzsTarget(); + +private slots: + void msTick(); + void on_pushButton_2_clicked(); + + void on_pushButton_clicked(); + +private: + Ui::kzsTarget *ui; +}; + +#endif // KZSTARGET_H diff --git a/kzstarget.ui b/kzstarget.ui new file mode 100644 index 0000000..f14c0e9 --- /dev/null +++ b/kzstarget.ui @@ -0,0 +1,146 @@ + + + kzsTarget + + + + 0 + 0 + 250 + 223 + + + + Запрет стрельбы по цели + + + + + 10 + 20 + 231 + 151 + + + + QFrame::Box + + + QFrame::Sunken + + + + + 20 + 20 + 71 + 16 + + + + Абонент + + + + + + 20 + 50 + 71 + 16 + + + + Трасса + + + + + + 130 + 20 + 61 + 20 + + + + + + + 130 + 50 + 61 + 20 + + + + + + + 70 + 100 + 46 + 13 + + + + 7 ДУ + + + + + + 70 + 120 + 46 + 13 + + + + 44 + + + + + + 20 + 110 + 201 + 16 + + + + TextLabel + + + + + + + 20 + 180 + 75 + 23 + + + + Ввод + + + + + + 130 + 180 + 75 + 23 + + + + Отказ + + + + + + diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..31801bf --- /dev/null +++ b/main.cpp @@ -0,0 +1,13 @@ +#include +#include "widget.h" + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + Widget w; + +// w.setWindowFlags(Qt::FramelessWindowHint); + w.show(); + + return a.exec(); +} diff --git a/pics.qrc b/pics.qrc new file mode 100644 index 0000000..7963f92 --- /dev/null +++ b/pics.qrc @@ -0,0 +1,28 @@ + + + pics/type_En0.xpm + pics/type_En1.xpm + pics/type_En2.xpm + pics/type_En3.xpm + pics/type_En4.xpm + pics/type_En5.xpm + pics/type_En6.xpm + pics/type_En7.xpm + pics/type_En8.xpm + pics/type_En9.xpm + pics/type_En10.xpm + pics/type_En11.xpm + pics/type_En12.xpm + pics/type_En13.xpm + pics/type_En14.xpm + pics/type_En15.xpm + pics/ground0.xpm + pics/tor2.xpm + pics/alt0.xpm + pics/alt1.xpm + pics/alt2.xpm + pics/alt3.xpm + pics/alt00.xpm + pics/sh.xpm + + diff --git a/pics/alt0.xpm b/pics/alt0.xpm new file mode 100644 index 0000000..ddbd994 --- /dev/null +++ b/pics/alt0.xpm @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"#######.", +"#######.", +".#####..", +"..###...", +"...#....", +"........", +"........"}; diff --git a/pics/alt00.xpm b/pics/alt00.xpm new file mode 100644 index 0000000..d680f7f --- /dev/null +++ b/pics/alt00.xpm @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"#######.", +"#######.", +".#####..", +"..###...", +"...#....", +"........", +"########"}; diff --git a/pics/alt1.xpm b/pics/alt1.xpm new file mode 100644 index 0000000..afaaeff --- /dev/null +++ b/pics/alt1.xpm @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"........", +"#######.", +"#######.", +"#######.", +"........", +"........", +"........"}; diff --git a/pics/alt2.xpm b/pics/alt2.xpm new file mode 100644 index 0000000..670f461 --- /dev/null +++ b/pics/alt2.xpm @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +".######.", +".######.", +".######.", +".######.", +".######.", +".######.", +"........"}; diff --git a/pics/alt3.xpm b/pics/alt3.xpm new file mode 100644 index 0000000..b49b39b --- /dev/null +++ b/pics/alt3.xpm @@ -0,0 +1,13 @@ +/* XPM */ +static char *bmp1[]={ +"8 8 2 1", +"# c #000000", +". c none", +"........", +"...#....", +"..###...", +".#####..", +"#######.", +"#######.", +"........", +"........"}; diff --git a/pics/ground0.xpm b/pics/ground0.xpm new file mode 100644 index 0000000..7b17c2e --- /dev/null +++ b/pics/ground0.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *I[]={ +"16 16 2 1", +"# c #ff0000", +". c none", +".......#........", +".......#........", +"....#######.....", +".......#........", +".......#........", +"....#######.....", +".......#........", +".......#........", +"......###.......", +".....##.##......", +"....##...##.....", +"...##.....##....", +"..##.......##...", +".##.........##..", +".#############..", +"................"}; diff --git a/pics/sh.xpm b/pics/sh.xpm new file mode 100644 index 0000000..37aa06e --- /dev/null +++ b/pics/sh.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char * tor2_bmp[] = { +"16 16 2 1", +". c #ff0000", +"! c None", +"!!!!!!...!!!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!.!!!!!.!!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!!!!!..!!.!!!", +"!.!!!..!!.!!!.!!", +".!!!!!!!!.!!!!.!", +".!!.......!!!!.!", +".!!!!!!!!.!!!!.!", +"!.!!!..!!.!!!.!!", +"!!.!!!!!..!!.!!!", +"!!!.!!!!!!!.!!!!", +"!!!!.!!!!!.!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/pics/sh3.xpm b/pics/sh3.xpm new file mode 100644 index 0000000..a35a1c5 --- /dev/null +++ b/pics/sh3.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char * sh_bmp[] = { +"16 16 2 1", +"! c None", +". c #ff0000", +"!!!!!!...!!!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!.!!!!!.!!!!!", +"!!!.!!!!!!!.!!!!", +"!!.!!!!!..!!.!!!", +"!.!!!..!!.!!!.!!", +".!!!!!!!!.!!!!.!", +".!!.......!!!!.!", +".!!!!!!!!.!!!!.!", +"!.!!!..!!.!!!.!!", +"!!.!!!!!..!!.!!!", +"!!!.!!!!!!!.!!!!", +"!!!!.!!!!!.!!!!!", +"!!!!!.!!!.!!!!!!", +"!!!!!!...!!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/pics/tor2.xpm b/pics/tor2.xpm new file mode 100644 index 0000000..d5e2245 --- /dev/null +++ b/pics/tor2.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char * tor2_bmp[] = { +"16 16 2 1", +". c #ff0000", +"! c None", +"!!!!!!....!!!!!!", +"!!!!!.!!!!.!!!!!", +"!!!!.!!!!!!.!!!!", +"!!!.!!!!!..!.!!!", +"!!.!!!.!!!.!!.!!", +"!.!!.......!!!.!", +".!!!!!.!!!.!!!!.", +".!!!!!!!!!.!!!!.", +".!!!!!.!!!.!!!!.", +"!.!!.......!!!.!", +"!!.!!!.!!!.!!.!!", +"!!!.!!!!!..!.!!!", +"!!!!.!!!!!!.!!!!", +"!!!!!.!!!!.!!!!!", +"!!!!!!....!!!!!!", +"!!!!!!!!!!!!!!!!"}; diff --git a/pics/tor_batr.xpm b/pics/tor_batr.xpm new file mode 100644 index 0000000..1312afc --- /dev/null +++ b/pics/tor_batr.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *tor_batr[]={ +"16 16 2 1", +"# c #000000", +". c none", +".....#####......", +"...##.....##....", +"..#.........#...", +".#...#...#...#..", +".#...#...#...#..", +"#...###.###...#.", +"#....#...#....#.", +"#....#...#....#.", +"#....#...#....#.", +"#..#.#...#.#..#.", +".#.#########.#..", +".#...........#..", +"..#.........#...", +"...##.....##....", +".....#####......", +"................"}; diff --git a/pics/type_0o.xpm b/pics/type_0o.xpm new file mode 100644 index 0000000..a64f68a --- /dev/null +++ b/pics/type_0o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"................", +"................", +".......###......", +".....#######....", +".....#######....", +".....#######....", +".......###......", +"................", +"................", +"................", +"................", +"................"}; diff --git a/pics/type_10e.xpm b/pics/type_10e.xpm new file mode 100644 index 0000000..f1e79dc --- /dev/null +++ b/pics/type_10e.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"....#.....###...", +"....##...####...", +"....###.####....", +"....#######.....", +"....######......", +"....#######.....", +"...#########....", +"..####..........", +".####...........", +".###............", +".##.............", +"................", +"................"}; diff --git a/pics/type_10o.xpm b/pics/type_10o.xpm new file mode 100644 index 0000000..f1e79dc --- /dev/null +++ b/pics/type_10o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"....#.....###...", +"....##...####...", +"....###.####....", +"....#######.....", +"....######......", +"....#######.....", +"...#########....", +"..####..........", +".####...........", +".###............", +".##.............", +"................", +"................"}; diff --git a/pics/type_11e.xpm b/pics/type_11e.xpm new file mode 100644 index 0000000..f1e79dc --- /dev/null +++ b/pics/type_11e.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"....#.....###...", +"....##...####...", +"....###.####....", +"....#######.....", +"....######......", +"....#######.....", +"...#########....", +"..####..........", +".####...........", +".###............", +".##.............", +"................", +"................"}; diff --git a/pics/type_11o.xpm b/pics/type_11o.xpm new file mode 100644 index 0000000..f1e79dc --- /dev/null +++ b/pics/type_11o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"....#.....###...", +"....##...####...", +"....###.####....", +"....#######.....", +"....######......", +"....#######.....", +"...#########....", +"..####..........", +".####...........", +".###............", +".##.............", +"................", +"................"}; diff --git a/pics/type_1e.xpm b/pics/type_1e.xpm new file mode 100644 index 0000000..c3e2093 --- /dev/null +++ b/pics/type_1e.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/pics/type_1o.xpm b/pics/type_1o.xpm new file mode 100644 index 0000000..e2b7e1b --- /dev/null +++ b/pics/type_1o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"...###..###.....", +"..####.###......", +".##.#####.......", +"##..##########..", +"....###########.", +"...###...##.....", +"..###...##......", +".###...##.......", +"###...##........", +"##..............", +"................"}; diff --git a/pics/type_6e.xpm b/pics/type_6e.xpm new file mode 100644 index 0000000..9f3401c --- /dev/null +++ b/pics/type_6e.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"...........##...", +"..........###...", +"....#....##.....", +"....######......", +"....#####.......", +"....#####.......", +"....#######.....", +"................", +"................", +"................", +"................", +"................"}; diff --git a/pics/type_6o.xpm b/pics/type_6o.xpm new file mode 100644 index 0000000..9f3401c --- /dev/null +++ b/pics/type_6o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"...........##...", +"..........###...", +"....#....##.....", +"....######......", +"....#####.......", +"....#####.......", +"....#######.....", +"................", +"................", +"................", +"................", +"................"}; diff --git a/pics/type_7e.xpm b/pics/type_7e.xpm new file mode 100644 index 0000000..e16c144 --- /dev/null +++ b/pics/type_7e.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +".........#......", +".........##.....", +"...#.....#####..", +"...#.....#####..", +"...##...########", +"...########.....", +"...#######......", +"...######.......", +"..#########.....", +".#############..", +"#####...........", +"###.............", +"................", +"................"}; diff --git a/pics/type_7o.xpm b/pics/type_7o.xpm new file mode 100644 index 0000000..e16c144 --- /dev/null +++ b/pics/type_7o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +".........#......", +".........##.....", +"...#.....#####..", +"...#.....#####..", +"...##...########", +"...########.....", +"...#######......", +"...######.......", +"..#########.....", +".#############..", +"#####...........", +"###.............", +"................", +"................"}; diff --git a/pics/type_8e.xpm b/pics/type_8e.xpm new file mode 100644 index 0000000..36afec0 --- /dev/null +++ b/pics/type_8e.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"..............##", +".............###", +".....##.....####", +"....##......##..", +"...##.......##..", +"..##...######...", +".##.#########...", +"##.###..####....", +"...#...#######..", +"...#..####......", +"...######.......", +"...####.##......", +"........#.......", +"................"}; diff --git a/pics/type_8o.xpm b/pics/type_8o.xpm new file mode 100644 index 0000000..36afec0 --- /dev/null +++ b/pics/type_8o.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"..............##", +".............###", +".....##.....####", +"....##......##..", +"...##.......##..", +"..##...######...", +".##.#########...", +"##.###..####....", +"...#...#######..", +"...#..####......", +"...######.......", +"...####.##......", +"........#.......", +"................"}; diff --git a/pics/type_En0.xpm b/pics/type_En0.xpm new file mode 100644 index 0000000..a64f68a --- /dev/null +++ b/pics/type_En0.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"................", +"................", +".......###......", +".....#######....", +".....#######....", +".....#######....", +".......###......", +"................", +"................", +"................", +"................", +"................"}; diff --git a/pics/type_En1.xpm b/pics/type_En1.xpm new file mode 100644 index 0000000..c3e2093 --- /dev/null +++ b/pics/type_En1.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/pics/type_En10.xpm b/pics/type_En10.xpm new file mode 100644 index 0000000..e16c144 --- /dev/null +++ b/pics/type_En10.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +".........#......", +".........##.....", +"...#.....#####..", +"...#.....#####..", +"...##...########", +"...########.....", +"...#######......", +"...######.......", +"..#########.....", +".#############..", +"#####...........", +"###.............", +"................", +"................"}; diff --git a/pics/type_En11.xpm b/pics/type_En11.xpm new file mode 100644 index 0000000..f1e79dc --- /dev/null +++ b/pics/type_En11.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"....#.....###...", +"....##...####...", +"....###.####....", +"....#######.....", +"....######......", +"....#######.....", +"...#########....", +"..####..........", +".####...........", +".###............", +".##.............", +"................", +"................"}; diff --git a/pics/type_En12.xpm b/pics/type_En12.xpm new file mode 100644 index 0000000..36afec0 --- /dev/null +++ b/pics/type_En12.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"..............##", +".............###", +".....##.....####", +"....##......##..", +"...##.......##..", +"..##...######...", +".##.#########...", +"##.###..####....", +"...#...#######..", +"...#..####......", +"...######.......", +"...####.##......", +"........#.......", +"................"}; diff --git a/pics/type_En13.xpm b/pics/type_En13.xpm new file mode 100644 index 0000000..e2b7e1b --- /dev/null +++ b/pics/type_En13.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"...###..###.....", +"..####.###......", +".##.#####.......", +"##..##########..", +"....###########.", +"...###...##.....", +"..###...##......", +".###...##.......", +"###...##........", +"##..............", +"................"}; diff --git a/pics/type_En14.xpm b/pics/type_En14.xpm new file mode 100644 index 0000000..6758467 --- /dev/null +++ b/pics/type_En14.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"..........##....", +"....###...###...", +"...##.##..###...", +"..##..##.###....", +".##..##.###.....", +"##..##.###......", +"##..#####.......", +"##.###########..", +"###.###########.", +"...###..........", +"..###...........", +".###............", +"###.............", +"##..............", +"................"}; diff --git a/pics/type_En15.xpm b/pics/type_En15.xpm new file mode 100644 index 0000000..2fa1c9d --- /dev/null +++ b/pics/type_En15.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###.##.......", +"..###..######...", +".###...#####....", +"###....##.#.....", +"##.....###......", +".......##......."}; diff --git a/pics/type_En2.xpm b/pics/type_En2.xpm new file mode 100644 index 0000000..dc53674 --- /dev/null +++ b/pics/type_En2.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####...#.....", +"..###..#..##....", +".###....#.#.#...", +"###......##..#..", +"##........#.....", +"................"}; diff --git a/pics/type_En3.xpm b/pics/type_En3.xpm new file mode 100644 index 0000000..c966330 --- /dev/null +++ b/pics/type_En3.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###..##......", +"..###..##.##....", +".###..##....##..", +"###...##....##..", +"##...##....##...", +"....##......##.."}; diff --git a/pics/type_En4.xpm b/pics/type_En4.xpm new file mode 100644 index 0000000..96f7363 --- /dev/null +++ b/pics/type_En4.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###..#..####..", +".###....##..#...", +"###.....#..#....", +"##.....####.....", +"................"}; diff --git a/pics/type_En5.xpm b/pics/type_En5.xpm new file mode 100644 index 0000000..a8210e9 --- /dev/null +++ b/pics/type_En5.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...###...#.##...", +"..###.....##....", +".###...#.##.....", +"###....###......", +"##.....####.....", +".......#........"}; diff --git a/pics/type_En6.xpm b/pics/type_En6.xpm new file mode 100644 index 0000000..9f3401c --- /dev/null +++ b/pics/type_En6.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"................", +"................", +"...........##...", +"..........###...", +"....#....##.....", +"....######......", +"....#####.......", +"....#####.......", +"....#######.....", +"................", +"................", +"................", +"................", +"................"}; diff --git a/pics/type_En7.xpm b/pics/type_En7.xpm new file mode 100644 index 0000000..d4ed9c7 --- /dev/null +++ b/pics/type_En7.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"...........#....", +"....#.....##....", +"....##....###...", +"....##....###...", +"....##...###....", +"....##..###.....", +"....##.###......", +"....#####.......", +"....##########..", +"....###########.", +"...####.........", +"..###..#........", +".###...#####....", +"###....#####....", +"##.....##.......", +".......##......."}; diff --git a/pics/type_En8.xpm b/pics/type_En8.xpm new file mode 100644 index 0000000..8acd894 --- /dev/null +++ b/pics/type_En8.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"........#.......", +".......##.......", +"......###.......", +"......#####.....", +"......##########", +".....##########.", +"....##########..", +"...######.......", +"..######........", +"..#####.........", +".#####..........", +".##.............", +"................", +"................"}; diff --git a/pics/type_En9.xpm b/pics/type_En9.xpm new file mode 100644 index 0000000..1b862a3 --- /dev/null +++ b/pics/type_En9.xpm @@ -0,0 +1,21 @@ +/* XPM */ +static char *flier[]={ +"16 16 2 1", +"# c #000000", +". c none", +"................", +"................", +"...........###..", +"....#.....####..", +"....#.....####..", +"....##....#####.", +"....###..#####..", +"....#########...", +"....#######.....", +"....########....", +"...###########..", +"..##############", +".#####..........", +"#####...........", +"###.............", +"................"}; diff --git a/resetcmd.cpp b/resetcmd.cpp new file mode 100644 index 0000000..cd3cd02 --- /dev/null +++ b/resetcmd.cpp @@ -0,0 +1,95 @@ +#include "resetCmd.h" +#include "ui_kzstarget.h" + +resetCmd::resetCmd(QWidget *parent) : + QDialog(parent), + ui(new Ui::kzsTarget) +{ + ui->setupUi(this); + + setWindowTitle(QString::fromLocal8Bit(" ")); + + ui->label_4->hide(); + ui->label_5->hide(); + + ui->label_6->setText(QString::fromLocal8Bit(": 1 255")); + + ui->lineEdit->setText("0"); + ui->lineEdit_2->setText("0"); + + + +} + +resetCmd::~resetCmd() +{ + delete ui; +} + + +void resetCmd::on_pushButton_2_clicked() +{ + close(); + + ((Widget*)parent())->clearOpenWidget(); +} + +void resetCmd::on_pushButton_clicked() +{ + QMessageBox msg(this); + msg.setWindowTitle(QString::fromLocal8Bit("")); + msg.setIcon(QMessageBox::Information); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + + int goNum = ui->lineEdit->text().toInt(); + int tarNum = ui->lineEdit_2->text().toInt(); + airObj *ao; + groundObj *go; + + if ((goNum>0)&&(goNum<7)) + { + + go = ((Widget*)parent())->grObj.at(goNum); + + if (!go->exist) + { + msg.setText(QString::fromLocal8Bit(" %1").arg(goNum)); + msg.exec(); + + } + else + { + if ((tarNum<1)||(tarNum>99)) + { + msg.setText(QString::fromLocal8Bit(" 1 99")); + msg.exec(); + + } + else + { + ao = ((Widget*)parent())->targets.at(tarNum-1); + if (!ao->exist) + { + msg.setText(QString::fromLocal8Bit(" %1 ").arg(tarNum)); + msg.exec(); + } + else + { + go->removeCU(ao->uid); + ao->clearCU(goNum); + ((Widget*)parent())->sendCU(goNum, 99, ao->uid); + ((Widget*)parent())->clearOpenWidget(); + close(); + } + } + + } + } + else + { + msg.setText(QString::fromLocal8Bit(" 1 6")); + msg.exec(); + + } + +} diff --git a/resetcmd.h b/resetcmd.h new file mode 100644 index 0000000..257231b --- /dev/null +++ b/resetcmd.h @@ -0,0 +1,30 @@ +#ifndef RESETCMD_H +#define RESETCMD_H + +#include +#include "widget.h" + + +namespace Ui { +class kzsTarget; +} + +class resetCmd : public QDialog +{ + Q_OBJECT + +public: + explicit resetCmd(QWidget *parent = 0); + ~resetCmd(); + +private slots: +// void msTick(); + void on_pushButton_2_clicked(); + + void on_pushButton_clicked(); + +private: + Ui::kzsTarget *ui; +}; + +#endif // RESETCMD_H diff --git a/table2z.cpp b/table2z.cpp new file mode 100644 index 0000000..cf71322 --- /dev/null +++ b/table2z.cpp @@ -0,0 +1,60 @@ +#include "table2z.h" +#include "ui_table2z.h" + +#include "vvod2z.h" +#include + +table2Z::table2Z(QWidget *parent) : + QDialog(parent), + ui(new Ui::table2Z) +{ + ui->setupUi(this); + setAttribute(Qt::WA_DeleteOnClose); + +// - + ui->tableWidget->setColumnCount(10); + ui->tableWidget->setRowCount(10); + QStringList nums; + for (int i=0; i<10; i++) nums << QString::number(i); + ui->tableWidget->setHorizontalHeaderLabels(nums); + + ui->tableWidget->setVerticalHeaderLabels(nums); + + char buf[1024]; + QFile file(":/new/table2z/text.txt"); + if (file.open(QFile::ReadOnly)) + { + for (int i=0; i<10; i++) + for (int j=0; j<10; j++) + { + file.readLine(buf, sizeof(buf)); + QTableWidgetItem *newItem = new QTableWidgetItem(QString::fromLocal8Bit(buf)); + ui->tableWidget->setItem(i,j, newItem); + } + + } + connect(ui->tableWidget, SIGNAL(cellDoubleClicked(int,int)), this, SLOT(double_click(int,int))); + + ui->lineEdit->setFocus(); +} + +table2Z::~table2Z() +{ + delete ui; +} + + +void table2Z::on_lineEdit_returnPressed() +{ + QString st = ui->lineEdit->text(); + if (!st.isEmpty()) ((vvod2z*)parent())->curCode = st.toInt(); + ((vvod2z*)parent())->msUpdate(); + close(); +} + +void table2Z::double_click(int x, int y) +{ + int res = x*10+y; + ui->lineEdit->setText(QString::number(res)); + on_lineEdit_returnPressed(); +} diff --git a/table2z.h b/table2z.h new file mode 100644 index 0000000..0118a5d --- /dev/null +++ b/table2z.h @@ -0,0 +1,27 @@ +#ifndef TABLE2Z_H +#define TABLE2Z_H + +#include + +namespace Ui { +class table2Z; +} + +class table2Z : public QDialog +{ + Q_OBJECT + +public: + explicit table2Z(QWidget *parent = 0); + ~table2Z(); +public slots: + void double_click(int x, int y); + +private slots: + void on_lineEdit_returnPressed(); + +private: + Ui::table2Z *ui; +}; + +#endif // TABLE2Z_H diff --git a/table2z.qrc b/table2z.qrc new file mode 100644 index 0000000..308c3d1 --- /dev/null +++ b/table2z.qrc @@ -0,0 +1,5 @@ + + + table2z/text.txt + + diff --git a/table2z.ui b/table2z.ui new file mode 100644 index 0000000..28c59c9 --- /dev/null +++ b/table2z.ui @@ -0,0 +1,73 @@ + + + table2Z + + + + 0 + 0 + 667 + 482 + + + + Ввод команды 2Z + + + + + 2 + 2 + 663 + 453 + + + + + Arial + 6 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + Qt::ElideNone + + + 64 + + + 42 + + + + + + 570 + 460 + 51 + 20 + + + + + + + 520 + 464 + 46 + 13 + + + + Команда + + + + + + diff --git a/table2z/text.txt b/table2z/text.txt new file mode 100644 index 0000000..128e399 --- /dev/null +++ b/table2z/text.txt @@ -0,0 +1,100 @@ + + + + + + + + + + + + + . . + + + . + . + + + + + + + + +. +. + . . + + + + + +. + + + +. +. + 3 + + + + + + + + + . . + 4 + + N1 + N2 + N3 + N4 + + . + + + 5 + . + N1 + N2 + N3 + N4 + +( ) . + + . + + + N1 . + N2 . + N3 . + N4 . + . + . . . +() . + + + . + N1 + N2 + N3 + N4 + + N1 . . + +() . + + + N1 + N2 + N3 + N4 + + + + + diff --git a/upravline.cpp b/upravline.cpp new file mode 100644 index 0000000..60a7d64 --- /dev/null +++ b/upravline.cpp @@ -0,0 +1,156 @@ +#include "upravline.h" + +upravLine::upravLine() +{ + + pic = QImage(); + targetNum = -1; + tar = 0; + +} + + +QRectF upravLine::boundingRect() const +{ + return QRectF(0, 0, 360, 45); +} + +void upravLine::setTarget(airObj *t) +{ + tar = t; + setPic(tar->pic, tar->picAlt); + setNum(tar->numer); + +} + +void upravLine::clear() +{ + + pic = QImage(); + picAlt = QImage(); + targetNum = -1; + +} + +void upravLine::setPic(QImage im, QImage im1) +{ + prepareGeometryChange(); + pic = im; + picAlt = im1; +} + + +void upravLine::setNum(int i) +{ + if (i!=targetNum) + { + prepareGeometryChange(); + targetNum=i; + } + +} + + +void upravLine::paint(QPainter *p, const QStyleOptionGraphicsItem *option, QWidget *widget) + +{ + QBrush br; + QRectF r(6,10,20,20); + p->drawImage(r, pic); + + p->save(); + p->setPen(Qt::darkGray); + if (tar->priznakAction) + { + p->setPen(tar->priznakColor); + } + p->drawRect(r); + p->restore(); + + + QPointF pf = r.topRight(); + pf+=QPointF(4, 7); + p->setPen(tar->col); + QFont f = p->font(); + f.setPixelSize(12); + p->setFont(f); + p->drawText(pf, QString::number(tar->numer+1)); + + r = QRectF(30, 20, 10,10); + p->drawImage(r, picAlt); + + + + + + for (int i=0; i<6;i++) + { + pf = QPointF(69+45*i+5,25); + if (tar->CU[i+1]==1)//drawY + { + + + p->setPen(Qt::green); + f.setPixelSize(20); + p->setFont(f); + p->drawText(pf, "Y"); + + } + if (tar->CU[i+1]==2)//drawZ + { + + p->setPen(Qt::red); + f.setPixelSize(20); + p->setFont(f); + + + p->drawText(pf, "Z"); + + + } + + + if (tar->CU[i+1]==21)//drawY_invert + { + + br = p->brush(); + br.setStyle(Qt::SolidPattern); + br.setColor(Qt::green); + p->setBrush(br); + p->setPen(Qt::green); + p->drawRect(pf.x(),pf.y()-18, 16,18); + p->setPen(Qt::black); + f.setPixelSize(20); + p->setFont(f); + + + p->drawText(pf, "Y"); + + } + + + if (tar->CU[i+1]==22) //drawZ_invert + { + + br = p->brush(); + br.setStyle(Qt::SolidPattern); + br.setColor(Qt::red); + p->setBrush(br); + p->setPen(Qt::red); + p->drawRect(pf.x(),pf.y()-18, 16,18); + p->setPen(Qt::black); + f.setPixelSize(20); + p->setFont(f); + + + p->drawText(pf, "Z"); + + } + } + + + + + +} + diff --git a/upravline.h b/upravline.h new file mode 100644 index 0000000..5f96d1f --- /dev/null +++ b/upravline.h @@ -0,0 +1,34 @@ +#ifndef UPRAVLINE_H +#define UPRAVLINE_H + +#include +#include +#include "airobj.h" + +class upravLine : public QGraphicsItem +{ +public: + + + upravLine(); + + int targetNum; + + QImage pic, picAlt; + + airObj *tar; + + void setTarget(airObj *t); + void setPic(QImage im, QImage im1); + void clear(); + void setNum(int i); + + +private: + QRectF boundingRect() const; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); + + +}; + +#endif // UPRAVLINE_H diff --git a/upravview.cpp b/upravview.cpp new file mode 100644 index 0000000..6cda6ca --- /dev/null +++ b/upravview.cpp @@ -0,0 +1,144 @@ +#include "upravview.h" +#include + +upravView::upravView(QWidget *parent) : + QGraphicsView(parent) +{ + + +} + +void upravView::msTick() +{ + qDebug("1234"); + + +} + + +void upravView::drawBackground(QPainter *painter, const QRectF &rect) +{ + + painter->save(); + painter->setBrush(QBrush(Qt::darkGray)); + painter->drawRect(rect); + painter->restore(); + painter->setPen(Qt::lightGray); + + + + +} + + +void upravView::drawForeground(QPainter *painter, const QRectF &rect) +{ + QPointF p1, p2, p; + p1 = rect.topLeft(); + p2 = rect.bottomRight(); + painter->setPen(Qt::lightGray); + + QBrush br = painter->brush(); + br.setStyle(Qt::SolidPattern); + br.setColor(Qt::darkGray); + painter->setBrush(br); + + painter->drawRect(p1.x(),p1.y(), rect.width(), 59); + + for (int i=69; i<380;i+=45) + { + + painter->drawLine(i, p1.y(), i,p1.y()+60); + } + + + + groundObj* me = obj->at(0); + + int targetsCount = 0; + int acAbRock = 0; + int acAbAll = 0; + for (int i=0; i< tar->count(); i++) if (tar->at(i)->exist) targetsCount++; + for (int i=1; icount(); i++) + if (obj->at(i)->exist) + { + if (obj->at(i)->boegotov) + { + // if (obj->at(i)->allR) + acAbRock++; + acAbAll+=obj->at(i)->activeR; + } + } + + QImage pic = me->pic; + pic.setColor(0, QColor(Qt::cyan).rgb()); + QRectF r(p1.x()+25, p1.y()+10, 30, 30); + painter->drawImage(r, pic); + + QFont f=painter->font(); + f.setPointSize(12); + painter->setFont(f); + + painter->setPen(Qt::yellow); + painter->drawText(p1.x(), p1.y()+20, QString::number(targetsCount)); + painter->drawText(p1.x()+60, p1.y()+20, QString::number(acAbRock)); + painter->drawText(p1.x()+55, p1.y()+50, QString::number(acAbAll)); + + + + for (int i=1; i<7; i++) + { + me = obj->at(i); + if (me->exist) + { + pic = me->pic; + if (me->boegotov) + { + pic.setColor(0, QColor(Qt::cyan).rgb()); + } + else + { + pic.setColor(0, QColor(Qt::red).rgb()); + } + QRectF r(p1.x()+75+45*(i-1), p1.y()+5, 28, 28); + painter->drawImage(r, pic); + + + painter->save(); + painter->setPen(Qt::white); + p=r.topLeft(); + p+=QPointF(-2, 7); + f.setPixelSize(12); + painter->setFont(f); + painter->drawText(p, tr("%1").arg(i)); + + painter->restore(); + + painter->setPen(Qt::green); + + f.setPixelSize(11); + painter->setFont(f); + p=r.topRight(); + p+=QPointF(2, 13); + + + if (me->activeR==0) + painter->setPen(Qt::red); + painter->drawText(p, tr("%1").arg(me->allR)); + + + p+=QPointF(0, 15); + painter->drawText(p, tr("%1").arg(me->activeR)); + painter->setPen(Qt::white); + for (int k =0;k<4;k++) + painter->drawRect(QRectF(r.bottomLeft()+QPointF(9*k,5), QSizeF(7,7))); + } + } + +} + + +void upravView::mouseReleaseEvent(QMouseEvent *e) +{ + e->accept(); +} diff --git a/upravview.h b/upravview.h new file mode 100644 index 0000000..dfcf89e --- /dev/null +++ b/upravview.h @@ -0,0 +1,32 @@ +#ifndef UPRAVVIEW_H +#define UPRAVVIEW_H + +#include +#include +#include +#include +#include "groundobj.h" +#include "airobj.h" + +class upravView : public QGraphicsView +{ +public: + upravView(QWidget *parent); + + QList *obj; + QList *tar; + + void setLinks(QList *g, QList *t) {obj=g;tar=t;} + +private slots: + void msTick(); + +protected: + void drawForeground(QPainter *painter, const QRectF &rect); + void drawBackground(QPainter *painter, const QRectF &rect); + +private: + virtual void mouseReleaseEvent(QMouseEvent *event); +}; + +#endif // UPRAVVIEW_H diff --git a/vvod2z.cpp b/vvod2z.cpp new file mode 100644 index 0000000..12fa4ef --- /dev/null +++ b/vvod2z.cpp @@ -0,0 +1,127 @@ +#include "vvod2z.h" +#include "ui_vvod2z.h" + +vvod2z::vvod2z(QWidget *parent) : + QDialog(parent), + ui(new Ui::vvod2z) +{ + ui->setupUi(this); + setAttribute(Qt::WA_DeleteOnClose); + + setWindowTitle(QString::fromLocal8Bit(" 2Z")); + + groundObj *go; + int n = ((Widget*)parent)->grObj.count(); + for (int i=1; igrObj[i]; + if (go->exist) + { + ui->comboBox->addItem(QString::number(i)); + } + } + + if (ui->comboBox->count()>=1) + { + ui->comboBox->setCurrentIndex(1); + } + ui->lineEdit_2->setFocus(); + ui->lineEdit_2->selectAll(); + + +} + +vvod2z::~vvod2z() +{ + delete ui; +} + +void vvod2z::on_pushButton_3_clicked() +{ + close(); +} + +void vvod2z::on_pushButton_clicked() +{ + curCode = ui->lineEdit_2->text().toInt(); + int trNum = ui->lineEdit_5->text().toInt(); + int nAb = ui->comboBox->currentIndex(); + qreal x = ui->lineEdit_3->text().toFloat(); + qreal y = ui->lineEdit_4->text().toFloat(); + + + if (trNum) // + { + airObj *ao = ((Widget*)parent())->targets[trNum-1]; + + if (ao->exist) + { + ((Widget*)parent())->sendCU(nAb, curCode, ao->uid, x, y); + close(); + } + else + { + QMessageBox msg(this); + + msg.setWindowTitle(QString::fromLocal8Bit("")); + msg.setIcon(QMessageBox::Information); + msg.setText(QString::fromLocal8Bit(" %1 ").arg(trNum)); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + msg.exec(); + + } + } + else // + { + + ((Widget*)parent())->sendCU(nAb, curCode, 0, x, y); + + close(); + } +} + +void vvod2z::on_pushButton_2_clicked() +{ + t2z = new table2Z(this); + t2z->show(); + +} + +void vvod2z::msUpdate() +{ + ui->lineEdit_2->setText(QString::number(curCode)); + +} + +void vvod2z::closeEvent(QCloseEvent *event) +{ + ((Widget*)parent())->clearOpenWidget(); + event->accept(); +} + +void vvod2z::setCoord(int x, int y) +{ + ui->lineEdit_3->setText(QString::number(x)); + ui->lineEdit_4->setText(QString::number(y)); + +} + +void vvod2z::on_lineEdit_2_returnPressed() +{ + on_pushButton_clicked(); +} + +void vvod2z::on_lineEdit_5_returnPressed() +{ + ui->lineEdit_3->setFocus(); +} + +void vvod2z::on_lineEdit_3_returnPressed() +{ + ui->lineEdit_4->setFocus(); +} + +void vvod2z::on_lineEdit_4_returnPressed() +{ + on_pushButton_clicked(); +} diff --git a/vvod2z.h b/vvod2z.h new file mode 100644 index 0000000..5ffb90b --- /dev/null +++ b/vvod2z.h @@ -0,0 +1,47 @@ +#ifndef VVOD2Z_H +#define VVOD2Z_H + +#include + +#include "widget.h" +#include "table2z.h" + +namespace Ui { +class vvod2z; +} + +class vvod2z : public QDialog +{ + Q_OBJECT + +public: + explicit vvod2z(QWidget *parent = 0); + ~vvod2z(); + int curCode; + table2Z *t2z; +public slots: + void msUpdate(); + void setCoord(int x, int y); + +private slots: + void on_pushButton_3_clicked(); + + void on_pushButton_clicked(); + + void on_pushButton_2_clicked(); + + void closeEvent(QCloseEvent *event); + + void on_lineEdit_2_returnPressed(); + + void on_lineEdit_5_returnPressed(); + + void on_lineEdit_3_returnPressed(); + + void on_lineEdit_4_returnPressed(); + +private: + Ui::vvod2z *ui; +}; + +#endif // VVOD2Z_H diff --git a/vvod2z.ui b/vvod2z.ui new file mode 100644 index 0000000..c6ca933 --- /dev/null +++ b/vvod2z.ui @@ -0,0 +1,255 @@ + + + vvod2z + + + + 0 + 0 + 249 + 224 + + + + Ввод ДКО + + + + + 0 + 0 + 241 + 61 + + + + + + + + + 10 + 9 + 111 + 16 + + + + Код абонента + + + + + + 100 + 5 + 61 + 22 + + + + + 0 + + + + + + + 101 + 33 + 61 + 20 + + + + 0 + + + + + + 11 + 37 + 111 + 16 + + + + Команда + + + + + + 170 + 30 + 61 + 23 + + + + Текст + + + + + + + 10 + 190 + 61 + 23 + + + + Ввод + + + true + + + + + + 10 + 70 + 231 + 111 + + + + Ввод координат точки высветки + + + + + 93 + 50 + 61 + 20 + + + + 0 + + + + + + 10 + 54 + 111 + 16 + + + + Xтв + + + + + + 93 + 80 + 61 + 20 + + + + 0 + + + + + + 10 + 84 + 111 + 16 + + + + Yтв + + + + + + 161 + 54 + 16 + 16 + + + + м + + + + + + 161 + 84 + 21 + 16 + + + + м + + + + + + 10 + 25 + 111 + 16 + + + + Трасса + + + + + + 93 + 21 + 61 + 20 + + + + 0 + + + + + + + 170 + 190 + 61 + 23 + + + + Отказ + + + + + lineEdit_2 + pushButton_2 + lineEdit_5 + lineEdit_3 + lineEdit_4 + pushButton + pushButton_3 + comboBox + + + + diff --git a/vvodnomera.cpp b/vvodnomera.cpp new file mode 100644 index 0000000..6d78e06 --- /dev/null +++ b/vvodnomera.cpp @@ -0,0 +1,92 @@ +#include "vvodnomera.h" + +vvodnomera::vvodnomera(QWidget *parent) : + QDialog(parent) +{ + + setWindowTitle(QString::fromLocal8Bit(" ")); + + Qt::WindowFlags flag = Qt::Dialog; + flag |= Qt::WindowCloseButtonHint; + setWindowFlags(flag); + + + // + + abMaxCount = 15; + abMinNum = 1; + + QFrame *fr=new QFrame(this); + fr->setGeometry(20,20,200,54); + fr->setFrameShape(QFrame::Box); + fr->setFrameShadow(QFrame::Sunken); + fr->setLineWidth(2); + + QLabel *lb= new QLabel(this); + lb->setGeometry(50,30,130,20); + lb->setText(QString::fromLocal8Bit(" ")); + + le = new QLineEdit(this); + le->setGeometry(170, 30, 35, 20); + le->setText("1"); + le->selectAll(); + + QPushButton *pbOk = new QPushButton(this); + pbOk->setGeometry(40,85, 65, 23); + pbOk->setText(QString::fromLocal8Bit("")); + connect(pbOk, SIGNAL(clicked()), this, SLOT(msOk())); + + + QPushButton *pbCancel = new QPushButton(this); + pbCancel->setGeometry(150,85, 65, 23); + pbCancel->setText(QString::fromLocal8Bit("")); + connect(pbCancel, SIGNAL(clicked()), this, SLOT(msCancel())); + + + + +} + +void vvodnomera::setTitle(QString s) +{ + setWindowTitle(s); +} + +void vvodnomera::msOk() +{ + int r = le->text().toInt(); + if ((rabMaxCount)) + { + QMessageBox msg(this); + msg.setWindowTitle(QString::fromLocal8Bit(" ")); + msg.setIcon(QMessageBox::Information); + msg.setText(QString::fromLocal8Bit(" : %2 %1").arg(abMaxCount).arg(abMinNum)); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + msg.exec(); + } + else + + { + this->done(r); + + } +} + +void vvodnomera::msCancel() +{ + this->done(-1); +} + +void vvodnomera::keyPressEvent(QKeyEvent *e) +{ + if (e->key() == Qt::Key_Escape) + { + msCancel(); + } + e->accept(); +} + +void vvodnomera::closeEvent(QCloseEvent *e) +{ + +} diff --git a/vvodnomera.h b/vvodnomera.h new file mode 100644 index 0000000..609d7ef --- /dev/null +++ b/vvodnomera.h @@ -0,0 +1,37 @@ +#ifndef VVODNOMERA_H +#define VVODNOMERA_H + +#include +#include +#include +#include +#include +#include +#include "widget.h" + +class vvodnomera : public QDialog +{ + Q_OBJECT +public: + explicit vvodnomera(QWidget *parent = 0); + QLineEdit *le; + + int abMaxCount, abMinNum; + + void setTitle(QString s); + void setAbMax(int i) {abMaxCount = i;} + void setAbMin(int i) {abMinNum = i;} + +signals: + + +private slots: + void msCancel(); + void msOk(); +private: + virtual void keyPressEvent(QKeyEvent *); + virtual void closeEvent(QCloseEvent *); + +}; + +#endif // VVODNOMERA_H diff --git a/vvodnomeratrace.cpp b/vvodnomeratrace.cpp new file mode 100644 index 0000000..408f686 --- /dev/null +++ b/vvodnomeratrace.cpp @@ -0,0 +1,96 @@ +#include "vvodnomeratrace.h" + +vvodnomeratrace::vvodnomeratrace(QWidget *parent) : + QDialog(parent) +{ + + setWindowTitle(QString::fromLocal8Bit(" ")); +// setAttribute(Qt::WA_DeleteOnClose); + + setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); + setResult(-1); + + QFrame *fr=new QFrame(this); + fr->setGeometry(20,20,200,54); + fr->setFrameShape(QFrame::Box); + fr->setFrameShadow(QFrame::Sunken); + fr->setLineWidth(2); + + QLabel *lb= new QLabel(this); + lb->setGeometry(50,30,130,20); + lb->setText(QString::fromLocal8Bit(" ")); + + le = new QLineEdit(this); + le->setGeometry(170, 30, 35, 20); + le->setText("0"); + le->setInputMask("00"); + + QPushButton *pbOk = new QPushButton(this); + pbOk->setGeometry(40,85, 65, 23); + pbOk->setText(QString::fromLocal8Bit("")); + connect(pbOk, SIGNAL(clicked()), this, SLOT(msOk())); + + + QPushButton *pbCancel = new QPushButton(this); + pbCancel->setGeometry(150,85, 65, 23); + pbCancel->setText(QString::fromLocal8Bit("")); + connect(pbCancel, SIGNAL(clicked()), this, SLOT(msCancel())); + + + + +} + +void vvodnomeratrace::setTitle(QString s) +{ + setWindowTitle(s); +} + +void vvodnomeratrace::msOk() +{ + int r = le->text().toInt(); + + + if ((r<=0)||(r>(((Widget*)parent())->targets.size()))) + { + QMessageBox msg(this); + msg.setWindowTitle(QString::fromLocal8Bit("")); + msg.setIcon(QMessageBox::Information); + msg.setText(QString::fromLocal8Bit(" %1 ").arg(r)); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + msg.exec(); + } + else + + { + if (((Widget*)parent())->targets.at(r-1)->exist) + this->done(r); + else + { + QMessageBox msg(this); + msg.setWindowTitle(QString::fromLocal8Bit("2")); + msg.setIcon(QMessageBox::Information); + msg.setText(QString::fromLocal8Bit(" %1 ").arg(r)); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + msg.exec(); + + } + + } + + +} + +void vvodnomeratrace::msCancel() +{ + this->done(-1); +} + +void vvodnomeratrace::keyPressEvent(QKeyEvent *e) +{ + if (e->key() == Qt::Key_Escape) + { + msCancel(); + } + e->accept(); +} diff --git a/vvodnomeratrace.h b/vvodnomeratrace.h new file mode 100644 index 0000000..358724f --- /dev/null +++ b/vvodnomeratrace.h @@ -0,0 +1,32 @@ +#ifndef VVODNOMERATRACE_H +#define VVODNOMERATRACE_H + +#include +#include +#include +#include +#include +#include +#include "widget.h" + +class vvodnomeratrace : public QDialog +{ + Q_OBJECT +public: + explicit vvodnomeratrace(QWidget *parent = 0); + QLineEdit *le; + +signals: + +public slots: + void setTitle(QString s); +private slots: + void msCancel(); + void msOk(); + +private: + virtual void keyPressEvent(QKeyEvent *); + +}; + +#endif // VVODNOMERA_H diff --git a/vvodsectotvet.cpp b/vvodsectotvet.cpp new file mode 100644 index 0000000..05eae00 --- /dev/null +++ b/vvodsectotvet.cpp @@ -0,0 +1,145 @@ +#include "vvodsectotvet.h" +#include "ui_vvodsectotvet.h" + +vvodSectOtvet::vvodSectOtvet(QWidget *parent) : + QDialog(parent), + ui(new Ui::vvodSectOtvet) +{ + ui->setupUi(this); + setAttribute(Qt::WA_DeleteOnClose); + Widget *w = (Widget*)parent; + + hide(); + + n_Ab = 0; + vvodnomera vv(parent); + vv.setAbMax(6); + vv.setAbMin(1); + vv.exec(); + + n_Ab = vv.result(); + + if (n_Ab<1) + { + + vv.close(); + this->close(); + } + else + { + w->changeOpenWidget(this, 1); + ui->lineEdit->setText(QString::number(n_Ab)); + ui->lineEdit->setEnabled(0); + obj = ((Widget*)parent)->grObj.at(n_Ab); + + if (obj->priznakSektor) + { + ui->lineEdit_2->setText(QString::number(obj->angle1)); + ui->lineEdit_3->setText(QString::number(obj->angle2)); + + } + + ui->comboBox->setCurrentIndex(obj->alt_n); + if (obj->alt_n==3) { + ui->lineEdit_4->setEnabled(true); + ui->lineEdit_5->setEnabled(true); + + } + } +} + + + +vvodSectOtvet::~vvodSectOtvet() +{ + delete ui; +} + +void vvodSectOtvet::closeEvent(QCloseEvent *event) +{ + ((Widget*)parent())->clearOpenWidget(); + event->accept(); +} + +void vvodSectOtvet::on_pushButton_2_clicked() +{ + close(); +} + +void vvodSectOtvet::on_pushButton_clicked() +{ + + if (ui->checkBox_2->isChecked()) + { + obj->setPriznakSektor(false); + ((Widget*)parent())->addLogText(QString::fromLocal8Bit(" > %1 ZZ 99 ' ' ").arg(n_Ab)); + // ((Widget*)parent())->sendCU(n_Ab, 99); + ((Widget*)parent())->sendKRU(n_Ab,0); // + } + else + { + if (ui->checkBox->isChecked()) + { + + if (ui->comboBox->currentIndex()) + ((Widget*)parent())->addLogText(QString::fromLocal8Bit(" > %1 ZZ 66 '( ) . ' ").arg(n_Ab)); + else + ((Widget*)parent())->addLogText(QString::fromLocal8Bit(" > %1 ZZ 77 '() . ' ").arg(n_Ab)); + + } + + obj->setSektor(ui->lineEdit_2->text().toDouble(), ui->lineEdit_3->text().toDouble()); + + obj->setOgrH( ui->comboBox->currentIndex(), ui->lineEdit_4->text().toDouble(), ui->lineEdit_5->text().toDouble()); + + obj->setPriznakSektor(); + + if (ui->comboBox->currentIndex()) + ((Widget*)parent())->sendCU(n_Ab, 66); + else + ((Widget*)parent())->sendCU(n_Ab, 77); + + + ((Widget*)parent())->sendKRU(n_Ab,1); // + + } + + ((Widget*)parent())->writeGroundOpt(); + + close(); + +} + +void vvodSectOtvet::on_comboBox_activated(int index) +{ + if (ui->comboBox->currentIndex() == 3) + { + ui->lineEdit_4->setEnabled(true); + ui->lineEdit_5->setEnabled(true); + } + else + { + ui->lineEdit_4->setEnabled(false); + ui->lineEdit_5->setEnabled(false); + + } +} + +void vvodSectOtvet::setAngles(QPointF pf) +{ + static bool curCounter = false; + + QPointF p0 = obj->getPos(); + QLineF lf = QLineF(p0,pf); + qreal an = 90-lf.angle(); + if (an<0) an+=360; + + if (curCounter) + ui->lineEdit_3->setText(QString::number(int(an))); + else + ui->lineEdit_2->setText(QString::number(int(an))); + + + + curCounter = !curCounter; +} diff --git a/vvodsectotvet.h b/vvodsectotvet.h new file mode 100644 index 0000000..b3c0263 --- /dev/null +++ b/vvodsectotvet.h @@ -0,0 +1,42 @@ +#ifndef VVODSECTOTVET_H +#define VVODSECTOTVET_H + +#include +#include +#include "vvodnomera.h" +#include "widget.h" + +#include "groundobj.h" + +namespace Ui { +class vvodSectOtvet; +} + +class vvodSectOtvet : public QDialog +{ + Q_OBJECT + +public: + explicit vvodSectOtvet(QWidget *parent = 0); + ~vvodSectOtvet(); + + int n_Ab; + groundObj *obj; + + void setAngles(QPointF pf); + +private slots: + + void closeEvent(QCloseEvent *event); + + void on_pushButton_2_clicked(); + + void on_pushButton_clicked(); + + void on_comboBox_activated(int index); + +private: + Ui::vvodSectOtvet *ui; +}; + +#endif // VVODSECTOTVET_H diff --git a/vvodsectotvet.ui b/vvodsectotvet.ui new file mode 100644 index 0000000..8183c0a --- /dev/null +++ b/vvodsectotvet.ui @@ -0,0 +1,415 @@ + + + vvodSectOtvet + + + + 0 + 0 + 289 + 288 + + + + Ввод сектора ответственности + + + + + 10 + 10 + 271 + 111 + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + 20 + 10 + 111 + 16 + + + + + 9 + + + + Номер подчиенного + + + + + + 160 + 10 + 71 + 16 + + + + 0 + + + + + + 20 + 30 + 121 + 16 + + + + + 9 + + + + Левая граница сектора + + + + + + 160 + 30 + 71 + 16 + + + + 0 + + + + + + 240 + 30 + 41 + 16 + + + + + 9 + + + + град + + + + + + 240 + 50 + 41 + 16 + + + + + 9 + + + + град + + + + + + 20 + 50 + 121 + 16 + + + + + 9 + + + + Праваяграница сектора + + + + + + 160 + 50 + 71 + 16 + + + + 0 + + + + + + 20 + 70 + 71 + 16 + + + + + 9 + + + + Эшелон + + + + + + 130 + 70 + 101 + 22 + + + + + 0-без огр + + + + + 1-нижний + + + + + 2-верхний + + + + + 3-дипазон + + + + + + + true + + + + 10 + 120 + 271 + 61 + + + + Диапазон + + + + + 20 + 30 + 31 + 16 + + + + Hmin + + + + + false + + + + 50 + 27 + 41 + 20 + + + + 0 + + + Qt::AlignCenter + + + + + + 100 + 30 + 31 + 16 + + + + м + + + + + false + + + + 180 + 27 + 41 + 20 + + + + 8479 + + + Qt::AlignCenter + + + + + + 230 + 30 + 31 + 16 + + + + м + + + + + + 150 + 30 + 31 + 16 + + + + Hmax + + + + + + true + + + + 10 + 180 + 271 + 61 + + + + + + + + + 20 + 10 + 141 + 16 + + + + Выдать в КС + + + + + + 200 + 10 + 31 + 17 + + + + + + + true + + + + + + 20 + 30 + 141 + 16 + + + + Сброс сектора + + + + + + 200 + 30 + 31 + 17 + + + + + + + + + + + 50 + 250 + 75 + 23 + + + + Ввод + + + + + + 160 + 250 + 75 + 23 + + + + Отказ + + + + + + diff --git a/widget.cpp b/widget.cpp new file mode 100644 index 0000000..24c040e --- /dev/null +++ b/widget.cpp @@ -0,0 +1,1642 @@ +#include "widget.h" +#include "ui_widget.h" +#include +#include + +Widget::Widget(QWidget *parent) : + QWidget(parent), + ui(new Ui::Widget) +{ + + ownTS = QPointF(0,0); + reper = QPointF(0,0); + curCentr = reper; + + openWidget = 0; + openWidgetType = 0; + openAirTicket = 0; + curAirTicketNum = 0; + currentNum = 0; + + sendCCR = false; + vklCCR = false; + + ui->setupUi(this); + + str2Z.clear(); + QByteArray b; + + currentTaskNum = 0; + + + QFile file(":/new/table2z/text.txt"); + QString st; + if (file.open(QFile::ReadOnly)) + { + for (int i=0; i<100; i++) + { + b = file.readLine() ; + b.truncate(b.size()-2); + st = QString::fromLocal8Bit(b); + str2Z << st; + } + } + file.close(); + + + + + for (int i=0;i<9;i++) + grScales[i] = ui->comboBox_2->itemText(i).toInt(); + + groundObj *go; + KO tKO; + cmdKO.clear(); + + for (int i=0;i<15;i++) + { + go = new groundObj(); + go->exist=(i<5); + go->n_Ab = i; + grObj<setBoegotov(true); + + grObj[1]->setPos(QPointF(0, 150)); + grObj[1]->setType(1); + grObj[1]->setBoegotov(false); + + + grObj[2]->setPos(QPointF(150, 0)); + grObj[2]->setType(1); + grObj[2]->setBoegotov(false); + + + grObj[3]->setPos(QPointF(0, -100)); + grObj[3]->setType(1); +// grObj[3]->setSektor(30,170); + grObj[3]->setBoegotov(false); + + + + grObj[4]->setPos(QPointF(-150, 0)); + grObj[4]->setType(1); + grObj[4]->setBoegotov(false); + + + airObj *tar; + for (int i=0; i<100; i++) + { + tar = new airObj(); + tar->exist=false; + tar->numer= 0; + tar->uid = -1; + targets<setPriznak(3); + + + QFont f = ui->label->font(); + f.setPointSizeF(10); + ui->label->setFont(f); + f.setBold(true); + ui->label_2->setFont(f); + ui->textEdit->setReadOnly(true); + addLogText(QString::fromLocal8Bit(" 1 - ")); + + +////////////////////// + createActions1(); + createMenu1(); + + createActions2(); + createMenu2(); +///////////////////// + renewArmWin(); + tmr = new QTimer(this); + connect(tmr, SIGNAL(timeout()), this, SLOT(renewArmWin())); + connect(tmr, SIGNAL(timeout()), this, SLOT(checkTargetsAndKRU())); + tmr->start(1000); + + tmrCheckTaskStop = new QTimer(this); + connect(tmrCheckTaskStop, SIGNAL(timeout()), this, SLOT(stopTask())); + +////////////////////////////////// + initGraph(); +////////////////////////////////// + ui->comboBox_2->setCurrentIndex(4); + + QTimer::singleShot(100,this, SLOT(magicTemp())); + + +/////////////////////////////////// + initNetwork(); + + + initUprav(); +///////////////////////////////////// + tmrUpr = new QTimer(this); + connect(tmrUpr, SIGNAL(timeout()), SLOT(refreshUprTab())); + tmrUpr->start(1000); + + + readGroundOpt(); +} + +Widget::~Widget() +{ + + delete ui; +} + + +void Widget::readGroundOpt() +{ + QFile f("ground.ini"); + qreal a1,a2, hmin, hmax; + int alt; + bool pr; + + + if (f.open(QIODevice::ReadOnly )) + { + QDataStream out(&f); + for (int i=1; i<6; i++) + { + out >> pr >> a1 >> a2 >> alt >> hmin >> hmax; + + grObj[i]->setSektor(a1, a2); + grObj[i]->setOgrH(alt, hmin, hmax); + grObj[i]->setPriznakSektor(pr); + } + + + f.close(); + } + else + { + qDebug("File 'ground.ini' not found"); + } + + + + +} + +void Widget::writeGroundOpt() +{ + QFile f("ground.ini"); + groundObj *g ; + + if (f.open(QIODevice::WriteOnly )) + { + QDataStream out(&f); + + for (int i = 1; i<6; i++) + { + g = grObj[i]; + out << g->priznakSektor << g->angle1 << g->angle2 << g->alt_n << g->hMin << g->hMax; + } + } + f.close(); +} + + +void Widget::checkTargetsAndKRU() +{ + QTime time = QTime::currentTime(); + for (int i=0; iexist) + { + if (targets[i]->lastTime.secsTo(time)>3) { + hashIdToNum.remove(targets[i]->uid); + targets[i]->deleteTarget(); + } + } + } + + if ((time.second()%10) ==0) + { + for (int i=1; i<6; i++) + { + if (grObj[i]->priznakSektor) + { + sendKRU(i, 1); + } + else + { + sendKRU(i, 0); + } + } + } +} + +void Widget::stopTask() +{ + if (tmrCheckTaskStop->isActive()) tmrCheckTaskStop->stop(); + + if (tmrUpr->isActive()) tmrUpr->stop(); + currentTaskNum = 0; + for (int i=0; i<7; i++) + { + if (grObj[i]->type==2) grObj[i]->activeR=1; else grObj[i]->activeR=4; + grObj[i]->hasCU.clear(); + for (int i=0; iactiveR; i++) grObj[i]->hasCU<<-1; + + } + + for (int i=0; i<100; i++) + { + + if (uLines[i]!=0) + { + delete uLines[i]; + uLines[i]=0; + } + targets[i]->deleteTarget(); + } + hashIdToNum.clear(); + gsc->update(); + tmrUpr->start(1000); + // if (! nTmr->isActive()) nTmr->start(500); +} + + +int Widget::findTargetFromId(int id) +{ + if (hashIdToNum.contains(id)) return hashIdToNum[id]; + return -1; +// int ret=-1; +// for (int i=0; iuid==id) {ret = i; break;} +// } +// return ret; +} + +int Widget::findNextNum(int n) +{ + int i; + for (i=n; iexist == false) { + currentNum=i; + return i; + }; + + for (i=0; iexist == false) + { + currentNum=i; + return i; + }; +// . : , + + i=currentNum; + + currentNum = (i+1) % (targets.count()); + return i; +} + +void Widget::addTarget(int id, int aType, int gType, qreal cX, qreal cY, qreal cH, qreal vX, qreal vY) +{ + qreal dist; + QLineF lf; + QString st; + + int num = findTargetFromId(id); + if (num<0) { + num=findNextNum(currentNum); + targets[num]->uid=id; + hashIdToNum[id]=num; + targets[num]->exist=true; + targets[num]->numer=num; + targets[num]->setGType(gType); + targets[num]->setAType(aType); + targets[num]->setSpeed(vX, vY); + targets[num]->setCoord(cX, cY, cH); + + currentNum++; + + } + else + { + targets[num]->setGType(gType); + targets[num]->setAType(aType); + targets[num]->setSpeed(vX, vY); + targets[num]->setCoord(cX, cY, cH); + } +// qDebug(QString::fromLocal8Bit("id = %1 num = %2").arg(id).arg(num).toAscii()); + targets[num]->lastTime = QTime::currentTime(); + + + if (vklCCR) + if (!targets[num]->haveCU()) + { + for (int i=1; i<6;i++) + { + if (grObj[i]->exist) + { + lf = QLineF(grObj[i]->getPos(), targets[num]->getPos()); + dist = lf.length(); + if (dist<100) + { + if ((targets[num]->gType==0)||(targets[num]->gType==1)) + { + targets[num]->setCU(i, 21); + break; + } + else + { + targets[num]->setCU(i, 22); + break; + } + } + } + } + } +} + + +void Widget::initNetwork() +{ + currentTaskNum = 0; + readyForTask = 0; + udpSend = new QUdpSocket(this); + nTmr = new QTimer(this); + connect(nTmr, SIGNAL(timeout()), this, SLOT(synhrTimeout())); + + nTmr->start(500); + + + udpNewTask = new QUdpSocket(this); + udpNewTask->bind(6691); + connect(udpNewTask, SIGNAL(readyRead()), this, SLOT(newTaskRead())); + +} + +void Widget::newTaskRead() +{ + int len, cnt, mesType; + int nAb, code2Z, tarNum; + + + qint8 tByte; + qint16 tWord; + qint32 tLong; + + static int counterForTargets=0; + + int tarMesType; + float fx,fy,fh, tFloat; + float vx, vy, vh; + fx=fy=fh=vx=vy=vh=0; + int gosPr=0; + QString st; + QByteArray buf; + buf.clear(); + int ret; + int uid; // + + // addLogText("newTaskRead"); + + groundObj *gro; + + QByteArray datagram; + QDataStream d(&datagram, QIODevice::ReadOnly); + d.setByteOrder(QDataStream::LittleEndian); + + + while (udpNewTask->hasPendingDatagrams()) + { + datagram.clear(); + len = udpNewTask->pendingDatagramSize(); + datagram.resize(len); + udpNewTask->readDatagram(datagram.data(), datagram.size()); + + d.setFloatingPointPrecision(QDataStream::SinglePrecision); + d>>tWord; + // addLogText(QString(" init1 = %1").arg(tWord)); + d>>tWord; + currentTaskNum = tWord; + // addLogText(QString(" init2 = %1").arg(tWord)); + + d>>tWord; +// addLogText(QString(" init3 = %1").arg(tWord)); + + mesType = tWord; + switch (mesType) + { + case 2: // + d>>tWord>>tLong; + d>>tWord; + ownId = tWord; + // addLogText(QString(" ownID = %1").arg(ownId)); + + + break; + case 3: // +// if (nTmr->isActive()) nTmr->stop(); + + counterForTargets += 1; + counterForTargets = counterForTargets % 18; + + if (tmrCheckTaskStop->isActive()) tmrCheckTaskStop->stop(); + tmrCheckTaskStop->start(3500); + + d>>tWord; + cnt = tWord; + d>>tLong; + qint16 lId; + + + for (int i=0;i>lId; + d>>tWord; + tarMesType = tWord; + + d>>tWord; + d>>tByte>>tByte; + + + d>>fx>>fy>>fh; + + + + d>>tFloat>>tFloat>>tFloat; + d>>vx>>vy>>vh; + d>>tLong; + d>>tByte; + d>>tByte; + int CDType= tByte; + + d>>tByte; +// addLogText(tr(" size = %1").arg(tByte)); + + buf.resize(tByte); + for (int j=0;j>tByte; buf[j] = tByte; + } + gosPr = 0; + if (buf.size()==1) + {if (int(buf[0])==0) gosPr = 2; else gosPr = 1;} + + // addLogText(QString(" air target = %2 %1 %3 ").arg(tarMesType).arg(lId).arg(gosPr)); + + if (CDType==1) { + if (counterForTargets == 1 && lId /*&& tarMesType!=13 + && tarMesType!=14*/) + { + if (tarMesType==0) + { + if (hashIdToNum.contains(lId)) { + ret = hashIdToNum[lId]; + if (targets[ret]->exist) { + targets[ret]->deleteTarget(); + hashIdToNum.remove(lId); + } + } + } + else + { + addTarget(lId, 1, gosPr, fx/100, -fy/100, fh/100, vx/10, -vy/10); + + } + } + + } + } + + break; + case 6: // + + gro = 0; + d>>tWord>>tLong>>tWord; + uid = tWord; +// addLogText(QString(" gr %1").arg(uid)); + + gro = grObj.at(uid); + gro->exist = true; + + d>>tWord; + gro->setType(tWord); + d>>fx>>fy>>fh; + gro->setPos(qreal(fx/100),(qreal)-fy/100); + d>>tByte; + gro->setBoegotov(tByte); + d>>tWord; + gro->setRockets(tWord); + + + break; + + case 9: + + d>>tWord>>tLong>>tWord; + nAb = tWord; + + d>>tWord; + tarNum = tWord; + + d >> fx >> fy; + + d >> tByte; + code2Z = tByte; + + if (tarNum == 0) // + { + st=QString::fromLocal8Bit(" < %1 ZZ %2%3 '%4'").arg(nAb).arg((code2Z<10)?"0":"").arg(code2Z).arg(str2Z[code2Z]); +// st.append(QString::number(nAb)); +// st.append(" ZZ "); +// if (code2Z<10) st.append("0"); +// st.append(QString::number(code2Z)); +// st.append(" '"); +// st.append(str2Z[code2Z]); +// st.append("'"); + } + else + { + tarNum = findTargetFromId(tarNum); + if (tarNum!=-1) + { + st = QString::fromLocal8Bit(" < %1 %2 ZZ %5 %3 '%4'").arg(nAb).arg(tarNum+1).arg(code2Z).arg(str2Z[code2Z]).arg((code2Z<10)?"0":""); + + + + } + else + { + st = QString::fromLocal8Bit(" < %1 ZZ %4 %2 '%3'").arg(nAb).arg(code2Z).arg(str2Z[code2Z]).arg((code2Z<10)?"0":""); + } + + } + + + addLogText(st); + + break; + default: + break; + + + } + + + } + +} + +void Widget::processSendingDatagrams(QByteArray buf, int port) +{ + udpSend->writeDatagram(buf.data(), buf.size(), QHostAddress("192.168.1.255"), port); +} + +void Widget::sendCU(int nAb, int ZZ, int uid, qreal x, qreal y) +{ + + QByteArray buf; + QDataStream d(&buf, QIODevice::WriteOnly); + d.setByteOrder(QDataStream::LittleEndian); + d.setFloatingPointPrecision(QDataStream::SinglePrecision); + + d <<(qint16)25 << (qint16) currentTaskNum << (qint16)7 << (qint16)1; + d <<(qint32)0 << (qint16) nAb; + + if (uid<0) uid=0; // + d << (qint16) uid; + d << (float) x << (float)y; // + d << (qint8)ZZ; + + + if (nAb!=0) processSendingDatagrams(buf); + + QString st; + if (uid && hashIdToNum.contains(uid)) + { + st = QString::fromLocal8Bit(" > %1 %2 ZZ %3%4 '%5'").arg(nAb).arg(hashIdToNum[uid]+1).arg((ZZ<10)?"0":"").arg(ZZ).arg(str2Z[ZZ]); + addLogText(st); + st = QString::fromLocal8Bit("uid = %1").arg(uid); + addLogText(st); + } + else + { + + if ((nAb>0)&&(nAb<=15)) + { + cmdKO[nAb].x = y/100; + cmdKO[nAb].y = -x/100; + cmdKO[nAb].ZZ = ZZ; + st = QString::fromLocal8Bit(" > %1 ZZ %2%3 '%4'").arg(nAb).arg((ZZ<10)?"0":"").arg(ZZ).arg(str2Z[ZZ]); + if ((ZZ==77)||(ZZ==66)) + { + cmdKO[nAb].ZZ=99; + } + else + addLogText(st); + } + else + { + if (nAb==0) + { + for (int ii=1;ii %1 ZZ %2%3 '%4'").arg(ii).arg((ZZ<10)?"0":"").arg(ZZ).arg(str2Z[ZZ]); + if (grObj[ii]->exist) + { + addLogText(st); + + buf[12]=ii; + + processSendingDatagrams(buf); + } + } + } + } + + + } + +} + +void Widget::sendKRU(int nAb, int zoneType) +{ + QByteArray buf; + QDataStream d(&buf, QIODevice::WriteOnly); + d.setByteOrder(QDataStream::LittleEndian); + d.setFloatingPointPrecision(QDataStream::SinglePrecision); + d<< (qint16)63 << (qint16) currentTaskNum << (qint16)8 << (qint16)1; + d<<(qint32)0 << (qint16) nAb; + + groundObj *gr; + qreal an=-1, an_2=-1; + + if ((nAb>0)&&(nAb<7)) + { + gr = grObj[nAb]; + d<<(qint8)zoneType; + an_2 = (gr->angle2-gr->angle1)/2; + an = gr->angle1+an_2; + an_2=an_2*2; + if (an_2<0) an_2+=180; + if (an<0) an+=360; + if (an>=360) an-=360; + + + d << (float)an << (float)an_2; + // addLogText(tr("angle [%1 %2]").arg(an).arg(an_2)); + for (int i =0; i <10; i++) d<< (float)0; + + } + else + { + d<<(qint8)0; + for (int i=0;i<12;i++) d << (float)0; + + } + +// QString s = QString("bis = "); +// s.append( QString::number(an, 'f',0)); +// s.append( " len/2 = "); +// s.append(QString::number(an_2, 'f',0)); + +// addLogText(s); + + processSendingDatagrams(buf); +} + +void Widget::synhrTimeout() +{ +// addLogText("synhrTime"); + QByteArray buf; + QDataStream d(&buf, QIODevice::WriteOnly); + d.setByteOrder(QDataStream::LittleEndian); + d<< (qint16)20; + + if (currentTaskNum==0) // + { + d << (qint16)0; + } + else + { + d<<(qint16)currentTaskNum; + } + + d << (qint16)1 << (qint16)1; + + QTime time = QTime::currentTime(); + d << (qint8)time.hour()<<(qint8)time.minute()<<(qint8)time.second()<<((quint8) (time.msec()/10)); // 999 - 1 + d << (qint16)10 << (qint16)currentTaskNum << (qint16)1 << (qint16)0 ; + + processSendingDatagrams(buf, 6690); + + +} + +void Widget::initUprav() +{ + gsc1 = new QGraphicsScene(this); + gsc1->setSceneRect(0,0,360,460); + + gscUprav = new QGraphicsScene(this); + gscUprav->setSceneRect(0,0,360,4600); + + gvUprav = ui->graphicsView_3; + gvUprav->setScene(gsc1); + gvUprav->centerOn(0,0); + gvUprav->setLinks(&grObj, &targets); + + + ui->graphicsView_4->setScene(gscUprav); + ui->graphicsView_4->centerOn(0,0); + QGraphicsLineItem *li; + + + for (int i=69; iwidth(); i+=45) + { + li = new QGraphicsLineItem(); + li->setPen(QPen(Qt::lightGray)); + li->setLine(i, 0, i, gscUprav->height()); + gscUprav->addItem(li); + + } + + for (int i=60; iheight(); i+=45) + { + li = new QGraphicsLineItem(); + li->setPen(QPen(Qt::lightGray)); + li->setLine(0, i, gscUprav->width(), i); + gscUprav->addItem(li); + + } + + + tmr = new QTimer(this); + connect(tmr, SIGNAL(timeout()), this, SLOT(refreshUprTab())); + tmr->start(1000); + +} + +void Widget::magicTemp() +{ + ui->comboBox_4->setCurrentIndex(3); +} + +void Widget::initGraph() +{ + + + + gsc = new QGraphicsScene(this); + gsc->setSceneRect(-11310,-11310,22610, 22610); // + + + yellowBrick = gsc->addRect(0,0,1,1,QPen(QColor(Qt::yellow))); + + gv1 = ui->graphicsView; + gv2 = ui->graphicsView_2; + + gv1->uid = 0x1; + gv2->uid = 0x2; + + setReper(QPointF(0,0)); + setOwnTS(QPointF(0,0)); + curCentr = ownTS; + + gv1->setScene(gsc); + + gv1->centerOn(curCentr); + gv1->setDrawCoords(); + + gv2->setScene(gsc); + + gv2->centerOn(reper); + gv2->setDrawCoords(false); + +// gArc = new graphicsArcItem(); +// gArc->setPos(ownTS); +// gArc->setColor(Qt::cyan); +// gArc->setAngles(15, 45); +// gArc->setRadius(400); +// gsc->addItem(gArc); + + + grObj[0]->setPos(ownTS); + grObj[0]->setType(0); + + for (int i=0; iaddItem(grObj[i]); + } + + for (int i=0; iaddItem(targets[i]); + + } + + gv1->setLinks(&grObj, &targets); + gv2->setLinks(&grObj, &targets); + +} + + +void Widget::setCentr(QPointF p) +{ + curCentr = p; + int d=grScales[ui->comboBox_2->currentIndex()]*10, d2=d*2; + + + gv1->fitInView(curCentr.x()-d,curCentr.y()-d,d2,d2, Qt::KeepAspectRatioByExpanding); + gv1->setSceneRect(curCentr.x()-d,curCentr.y()-d,d2,d2); + + QRectF r = gv1->sceneRect(); + QString s = QString("%1x%2").arg(r.width()/10).arg(r.height()/10); + + ui->pushButton_41->setText(s); + + r.setTopLeft(r.topLeft()-QPointF(5,5)); + r.setBottomRight(r.bottomRight()+QPointF(5, 5)); + + + + yellowBrick->setRect(r); + + + + +} + +void Widget::setOwnTS(QPointF p) +{ + ownTS = p; +} + +void Widget::setReper(QPointF p) +{ + reper = p; + gv1->reper = p; + gv2->reper = p; + +} + +void Widget::renewArmWin() +{ + QDateTime curTime = QDateTime::currentDateTime(); + QString s; + s = curTime.toString("dd-MM-yyyy"); + ui->labelDate->setText(s); + s = curTime.toString("hh:mm:ss"); + ui->labelTime->setText(s); + + + ui->pbARM1->setStyleSheet("background-color: rgb(0, 220, 100)"); + ui->pbRLS->setStyleSheet("background-color: rgb(0, 220, 100)"); +// ui->pbARM2->setStyleSheet("background-color: rgb(0, 220, 100)"); + // ui->pbV1->setStyleSheet("background-color: rgb(0, 220, 100)"); + + +} + +void Widget::addLogText(QString s) +{ + QDateTime t = QDateTime::currentDateTime(); + s.prepend(t.toString("hh:mm:ss ")); + ui->textEdit->append(s); +} + +void Widget::centerOnReper() +{ + setCentr(reper); + +} +void Widget::centerOnTS() +{ + setCentr(ownTS); +} + +void Widget::createMenu1() +{ + QFont font(ui->label_2->font()); + font.setPointSizeF(8); + ui->label_2->setFont(font); + + QList la; + + menu1 = new QMenuBar(ui->Menu1); + menu1->setGeometry(5,25,280,28); + + QFont lf = menu1->font(); + lf.setPointSizeF(8); + menu1->setFont(lf); + + mSelect = menu1->addMenu(QString::fromLocal8Bit("")); + m1Sel = mSelect->addMenu(QString::fromLocal8Bit(" ")); + la.clear(); + la<addActions(la); + + mSelect->addAction(m1SelVO); + m1SelNO = mSelect->addMenu(QString::fromLocal8Bit(" ")); + la.clear(); + la<addActions(la); + + m1Soderzh = mSelect->addMenu(QString::fromLocal8Bit(" ")); + + la.clear(); + la<addActions(la); + + la.clear(); + la<addActions(la); + + m1Coord = mSelect->addMenu(QString::fromLocal8Bit(" ")); + la.clear(); + la<addActions(la); + + la.clear(); + la<addActions(la); + + + + + mParam = menu1->addMenu(QString::fromLocal8Bit("")); + m2Centr = mParam->addMenu(QString::fromLocal8Bit(" ")); + la.clear(); + la<addActions(la); + la.clear(); + la<addActions(la); + m2Font = mParam->addMenu(QString::fromLocal8Bit("")); + la.clear(); + la<addActions(la); + mParam->addAction(m2Select); + mParam->addSeparator(); + mParam->addAction(m2Save); + + + mMap = menu1->addMenu(QString::fromLocal8Bit("")); + la.clear(); + la<addActions(la); + + la.clear(); + + +} + + +void Widget::createActions1() +{ + m1Sel_a1 = new QAction(QString::fromLocal8Bit(" ..."), this); + m1Sel_a2 = new QAction(QString::fromLocal8Bit(" ..."), this); + m1SelVO = new QAction(QString::fromLocal8Bit(" "), this); + + m1SelNO_a1 = new QAction(QString::fromLocal8Bit(" ..."), this); + m1SelNO_a2 = new QAction(QString::fromLocal8Bit("..."), this); + + m1Soderzh_a1 = new QAction(QString::fromLocal8Bit(" ..."), this); + m1Soderzh_a2 = new QAction(QString::fromLocal8Bit("..."), this); + + m1CharRLS = new QAction(QString::fromLocal8Bit(" "), this); + m1CharTarg = new QAction(QString::fromLocal8Bit(" "), this); + m1CharPeleng = new QAction(QString::fromLocal8Bit(" "), this); + m1Table = new QAction(QString::fromLocal8Bit(" "), this); + + m1Coord_a1 = new QAction(QString::fromLocal8Bit(" ()"), this); + m1Coord_a2 = new QAction(QString::fromLocal8Bit(" ()"), this); + + m1MessRLS = new QAction(QString::fromLocal8Bit(" 1122-1"), this); + m1Trace = new QAction(QString::fromLocal8Bit(" ..."), this); + + + m2Centr_a1 = new QAction(QString::fromLocal8Bit("..."), this); + connect(m2Centr_a1, SIGNAL(triggered()), this, SLOT(centerOnReper())); + + m2Centr_a2 = new QAction(QString::fromLocal8Bit(" "), this); + connect(m2Centr_a2, SIGNAL(triggered()), this, SLOT(centerOnTS())); + + m2Temp = new QAction(QString::fromLocal8Bit(" ..."), this); + m2Draw = new QAction(QString::fromLocal8Bit("..."), this); + m2Font_a1 = new QAction(QString::fromLocal8Bit(" "), this); + m2Font_a2 = new QAction(QString::fromLocal8Bit("..."), this); + m2Select = new QAction(QString::fromLocal8Bit(" ..."), this); + m2Save = new QAction(QString::fromLocal8Bit(""), this); + + m3Open = new QAction(QString::fromLocal8Bit("..."), this); + m3Bright = new QAction(QString::fromLocal8Bit("..."), this); + m3Layers = new QAction(QString::fromLocal8Bit("..."), this); + + +} + +void Widget::createMenu2() +{ + QList la; + + menu2 = new QMenuBar(ui->Menu2); + menu2->setGeometry(0,0,680,25); + + QFont lf = menu2->font(); + lf.setPointSizeF(8); + menu2->setFont(lf); + + mPrep = menu2->addMenu(QString::fromLocal8Bit("")); + mDev = menu2->addMenu(QString::fromLocal8Bit("")); + mSopr = menu2->addMenu(QString::fromLocal8Bit(".")); + mObob = menu2->addMenu(QString::fromLocal8Bit("")); + mUprav = menu2->addMenu(QString::fromLocal8Bit("")); + mReg = menu2->addMenu(QString::fromLocal8Bit("")); + mTren = menu2->addMenu(QString::fromLocal8Bit("")); + mFK = menu2->addMenu(QString::fromLocal8Bit("")); + mExit = menu2->addMenu(QString::fromLocal8Bit("")); + + + + + la.clear(); + la<addActions(la); + m4PerC = mPrep->addMenu(QString::fromLocal8Bit(" ")); + la.clear(); + la<addActions(la); + mPrep->addAction(m4Table); + mPrep->addAction(m4Resend); + mPrep->addSeparator(); + mPrep->addAction(m4Save); + mPrep->addAction(m4Load); + + la.clear(); + la<addActions(la); + + la.clear(); + la<addActions(la); + + la.clear(); + la<addActions(la); + m7Ukr = mObob->addMenu(QString::fromLocal8Bit("")); + la.clear(); + for (int i=0; i<8; i++) la<addActions(la); + + la.clear(); + for (int i=0; i<6; i++) la<addActions(la); + + la.clear(); + for (int i=0; i<5; i++) la<addActions(la); + + la.clear(); + for (int i=0; i<7; i++) la<addActions(la); + m10ImitVKP = mTren->addMenu(QString::fromLocal8Bit(" ")); + m10ImitVKP->addAction(m10ImitVKP_a1); + m10ImitVKP->addAction(m10ImitVKP_a2); + mTren->addAction(m10Tren[7]); + + la.clear(); + for (int i=0; i<7; i++) la<addActions(la); + + mExit->addAction(m12Restart); + mExit->addAction(m12Exit); + + + connect(ui->pb_f1, SIGNAL(clicked()), this, SLOT(msAirTicket())); + connect(ui->pb_f2, SIGNAL(clicked()), this, SLOT(msAbnTicket())); + connect(ui->pb_f4, SIGNAL(clicked()), this, SLOT(msResetTarget())); + connect(ui->pb_f5, SIGNAL(clicked()), this, SLOT(msKillTarget())); + connect(ui->pb_f6, SIGNAL(clicked()), this, SLOT(msResetCmd())); + connect(ui->pb_f7, SIGNAL(clicked()), this, SLOT(msKzsTarget())); + connect(ui->pb_f8, SIGNAL(clicked()), this, SLOT(msVvod2Z())); + + +} + +void Widget::createActions2() +{ + m4Conf = new QAction(QString::fromLocal8Bit(" Ctrl+11"), this); + m4Reper = new QAction(QString::fromLocal8Bit(" Ctrl+12"), this); + m4Mesto = new QAction(QString::fromLocal8Bit(" Ctrl+13"), this); + m4Reglam = new QAction(QString::fromLocal8Bit(" -498 Ctrl+14"), this); + m4TTX = new QAction(QString::fromLocal8Bit(" Ctrl+15"), this); + m4Date = new QAction(QString::fromLocal8Bit("/ Ctrl+16"), this); + m4PerC_a1 = new QAction(QString::fromLocal8Bit(" - Ctrl+17"), this); + m4PerC_a2 = new QAction(QString::fromLocal8Bit("- Ctrl+18"), this); + m4PerC_a3 = new QAction(QString::fromLocal8Bit("- 1 2 Ctrl+19"), this); + m4Table = new QAction(QString::fromLocal8Bit(" "), this); + m4Resend = new QAction(QString::fromLocal8Bit(" "), this); + m4Save = new QAction(QString::fromLocal8Bit(" "), this); + m4Load = new QAction(QString::fromLocal8Bit(" "), this); + + m5RST = new QAction(QString::fromLocal8Bit(" Ctrl+23"), this); + m5RLS = new QAction(QString::fromLocal8Bit(" Ctrl+24"), this); + m5R910 = new QAction(QString::fromLocal8Bit("910 Ctrl+25"), this); + + m6AZ = new QAction(QString::fromLocal8Bit(" Ctrl+31"), this); + m6AZPT = new QAction(QString::fromLocal8Bit(" Ctrl+32"), this); + m6Manual = new QAction(QString::fromLocal8Bit(" Ctrl+33"), this); + + m7Trace = new QAction(QString::fromLocal8Bit(" Ctrl+41"), this); + m7Otozhd = new QAction(QString::fromLocal8Bit(" Ctrl+42"), this); + m7Opov = new QAction(QString::fromLocal8Bit(" Ctrl+43"), this); + + m7Ukr_1[0] = new QAction(QString::fromLocal8Bit(" "), this); + m7Ukr_1[1] = new QAction(QString::fromLocal8Bit(""), this); + m7Ukr_1[2] = new QAction(QString::fromLocal8Bit(""), this); + m7Ukr_1[3] = new QAction(QString::fromLocal8Bit(""), this); + m7Ukr_1[4] = new QAction(QString::fromLocal8Bit(""), this); + m7Ukr_1[5] = new QAction(QString::fromLocal8Bit(""), this); + m7Ukr_1[6] = new QAction(QString::fromLocal8Bit(" "), this); + m7Ukr_1[7] = new QAction(QString::fromLocal8Bit(" "), this); + + m8Upr[0] = new QAction(QString::fromLocal8Bit(" Ctrl+51"), this); + connect(m8Upr[0], SIGNAL(triggered()), this, SLOT(msCtrlModes())); + m8Upr[1] = new QAction(QString::fromLocal8Bit(" Ctrl+52"), this); + connect(m8Upr[1], SIGNAL(triggered()), this, SLOT(msVvodSectOtvet())); + m8Upr[2] = new QAction(QString::fromLocal8Bit(" Ctrl+53"), this); + m8Upr[3] = new QAction(QString::fromLocal8Bit(" Ctrl+54"), this); + m8Upr[4] = new QAction(QString::fromLocal8Bit(" Ctrl+55"), this); + m8Upr[5] = new QAction(QString::fromLocal8Bit(" Ctrl+56"), this); + + m9Reg[0] = new QAction(QString::fromLocal8Bit(" Ctrl+62"), this); + m9Reg[1] = new QAction(QString::fromLocal8Bit(" Ctrl+63"), this); + m9Reg[2] = new QAction(QString::fromLocal8Bit(" Ctrl+64"), this); + m9Reg[3] = new QAction(QString::fromLocal8Bit(" Ctrl+65"), this); + m9Reg[4] = new QAction(QString::fromLocal8Bit(" Ctrl+66"), this); + + m10Tren[0] = new QAction(QString::fromLocal8Bit(" Ctrl+71"), this); + m10Tren[1] = new QAction(QString::fromLocal8Bit(" Ctrl+72"), this); + m10Tren[2] = new QAction(QString::fromLocal8Bit(" / Ctrl+73"), this); + m10Tren[3] = new QAction(QString::fromLocal8Bit(" Ctrl+74"), this); + m10Tren[4] = new QAction(QString::fromLocal8Bit(" Ctrl+75"), this); + m10Tren[5] = new QAction(QString::fromLocal8Bit(" Ctrl+76"), this); + m10Tren[6] = new QAction(QString::fromLocal8Bit(" "), this); + m10Tren[7] = new QAction(QString::fromLocal8Bit("/ Ctrl+79"), this); + m10ImitVKP_a1 = new QAction(QString::fromLocal8Bit(", , Ctrl+77"), this); + m10ImitVKP_a2 = new QAction(QString::fromLocal8Bit(" Ctrl+78"), this); + + + m11FK[0] = new QAction(QString::fromLocal8Bit(" Ctrl+81"), this); + m11FK[1] = new QAction(QString::fromLocal8Bit(" Ctrl+82"), this); + m11FK[2] = new QAction(QString::fromLocal8Bit("911 Ctrl+83"), this); + m11FK[3] = new QAction(QString::fromLocal8Bit("-498 Ctrl+84"), this); + m11FK[4] = new QAction(QString::fromLocal8Bit("- Ctrl+85"), this); + m11FK[5] = new QAction(QString::fromLocal8Bit(" Ctrl+86"), this); + m11FK[6] = new QAction(QString::fromLocal8Bit("910 Ctrl+89"), this); + + m12Restart = new QAction(QString::fromLocal8Bit(" Ctrl+95"), this); + m12Exit = new QAction(QString::fromLocal8Bit(" Ctrl+96"), this); + + +} + +void Widget::on_pushButton_40_clicked() +{ + ui->pushButton_39->setChecked(false); + ui->pushButton_38->setChecked(false); + ui->pushButton_40->setChecked(true); + ui->label_2->setText(QString::fromLocal8Bit("- ")); + ui->label_2->setStyleSheet("color: black"); + +} + +void Widget::on_pushButton_39_clicked() +{ + ui->pushButton_39->setChecked(true); + ui->pushButton_38->setChecked(false); + ui->pushButton_40->setChecked(false); + ui->label_2->setText(QString::fromLocal8Bit(" ")); + ui->label_2->setStyleSheet("color: black"); + +} + +void Widget::on_pushButton_38_clicked() +{ + + ui->pushButton_39->setChecked(false); + ui->pushButton_38->setChecked(true); + ui->pushButton_40->setChecked(false); + ui->label_2->setText(QString::fromLocal8Bit(" ")); + ui->label_2->setStyleSheet("color: red"); + + QMessageBox msg(this); + msg.setWindowTitle(QString::fromLocal8Bit("!")); + msg.setIcon(QMessageBox::Information); + msg.setText(QString::fromLocal8Bit(" ")); + msg.addButton(QString::fromLocal8Bit(""),QMessageBox::AcceptRole); + + + msg.exec(); + +} + + +void Widget::on_comboBox_2_currentIndexChanged(int index) +{ + + setCentr(curCentr); + QTimer::singleShot(50,this, SLOT(setCentr())); + + + +} + +void Widget::on_comboBox_4_currentIndexChanged(int index) +{ + int d=grScales[index]*10, d2=d*2; + gv2->fitInView(reper.x()-d,reper.y()-d,d2,d2, Qt::KeepAspectRatioByExpanding); + gv2->setSceneRect(reper.x()-d,reper.y()-d,d2,d2); + + gv2->centerOn(reper); + + QRectF r = gv2->sceneRect(); + QString s = QString("%1x%2").arg(r.width()/10).arg(r.height()/10); + + ui->pushButton_50->setText(s); + +} + +void Widget::keyPressEvent ( QKeyEvent *e ) +{ + +// int c = e->key(); +// static int cOld=0; +// int res = 0; + bool fl=true; // + +//// Crtl+1x, Crtl+2x, Crtl+5x Crtl+9x +// if (e->modifiers() & Qt::ControlModifier) +// { +// if ((c>=0x30) && (c<=0x39)) +// { +// if ((cOld==0x31)||(cOld==0x32)||(cOld==0x35)||(cOld==0x39)) +// { +// res = (cOld-0x30)*10+c-0x30; +//// ui->lineEdit->setText(QString::number(res, 10)); + +// switch (res) +// { +// case 21: +//// +// break; + +// default: +// break; +// } + + +// } +// cOld = c; +// } +// else +// cOld = 0; + + +// fl =false; +// } + +// if (e->modifiers() & Qt::AltModifier) +// { +// switch (c) { +// case 0x31: + +// releaseKeyboard(); +// break; +// case 0x32: + +// releaseKeyboard(); +// break; +// default: +// break; +// } +// fl = false; + +// } + + switch (e->key()) + { + case Qt::Key_F1: + +// addLogText("F1 pressed"); + QTimer::singleShot(100, this, SLOT(msAirTicket())); + break; + case Qt::Key_F2: + +// addLogText("F2 pressed"); + QTimer::singleShot(100, this, SLOT(msAbnTicket())); + break; + case Qt::Key_F3: + +// addLogText("F3 pressed"); + + + break; + case Qt::Key_F4: + + QTimer::singleShot(100, this, SLOT(msResetTarget())); +// addLogText("F4 pressed"); + break; + case Qt::Key_F5: + +// addLogText("F5 pressed"); + QTimer::singleShot(100, this, SLOT(msKillTarget())); + break; + case Qt::Key_F6: + + // addLogText("F6 pressed"); + QTimer::singleShot(100, this, SLOT(msResetCmd())); + break; + case Qt::Key_F7: + +//// addLogText("F7 pressed"); + QTimer::singleShot(100, this, SLOT(msKzsTarget())); + break; + case Qt::Key_F8: + + QTimer::singleShot(100, this, SLOT(msVvod2Z())); + // addLogText("F8 pressed"); + break; + case Qt::Key_F9: + +// addLogText("F9 pressed"); + + break; + default: + break; + } + + if (fl) QWidget::keyPressEvent(e); +} + +void Widget::msResetTarget() +{ + vvodnomeratrace *vnt; + vnt = new vvodnomeratrace(this); + + vnt->setTitle(QString::fromLocal8Bit(" ")); + vnt->exec(); + int num = vnt->result(); + vnt->close(); + if (num>0) + { + targets[num-1]->exist = false; + targets[num-1]->uid = -1; + hashIdToNum[num]=-1; + } +} + +void Widget::refreshUprTab() +{ + + upravLine *ul; + bool fl; + + bool dbgFlag=false; + + if (tmrCheckTaskStop->isActive()) + { + + for (int i=0;i<100; i++) + { + if (uLines[i]!=0) + { + if (uLines[i]->tar->exist) + { + if (!uLines[i]->tar->haveCU()) + { + delete uLines[i]; + uLines[i]=0; + } + } + else + { + delete uLines[i]; + uLines[i]=0; + } + } + + } + + + } + + for (int i=0; iexist) + { + if (targets[i]->haveCU()) + { + fl = true; + for (int j=0; j<100; j++) + { + if (uLines[j]!=0) + if (uLines[j]->tar == targets[i]) + { + fl = false; + break; + } + } + if (fl) // true - + { + for (int j=0;j<100;j++) + { + if (uLines[j]==0) + { + ul = new upravLine(); + ul->setTarget(targets[i]); + gscUprav->addItem(ul); + // ul->setPos(0, 60+j*45); + uLines[j]=ul; + + + break; + } + } + } +// if (uLines.indexOf(targets[i])==-1) +// { + + +// ul = new upravLine(); +// ul->setTarget(targets[i]); +// gscUprav->addItem(ul); +// ul->setPos(0, 60+i*45); + +// if (uLines.indexOf(0)!=-1) +// { +// uLines.at(uLines.indexOf(0)) = ul; +// } +// else +// uLines<tar == targets[i]) { + delete uLines[j]; + uLines[j]=0; + dbgFlag = true; + break; + } + } + + } + + } + + } + + QQueue q; + for (int i=0; i<100; ++i) { + if (uLines[i]==0) + q.enqueue(i); + else if (!q.empty()) { + int pos = q.dequeue(); + std::swap(uLines[i], uLines[pos]); + q.enqueue(i); + } + } + + for (int i=0; i<100; ++i) + if (uLines[i]) + uLines[i]->setPos(0, 60+i*45); + + + + gsc1->update(); + + gscUprav->update(); +} + +void Widget::msVvodSectOtvet() +{ + vvodSectOtvet *l=new vvodSectOtvet(this); + l->show(); +} + +void Widget::msAirTicket() +{ + int d; + vvodnomeratrace vv(this); + vv.exec(); + d = vv.result(); + if (d>0) + { + if (openAirTicket) + openAirTicket->close(); + + airTicket *airT = new airTicket(d-1, this ); + openAirTicket = airT; + + airT->show(); + curAirTicketNum = d; + + } + + vv.close(); +} + +void Widget::msAirTicketFree() +{ + int d = curAirTicketNum; + if ((d>=0)&&(targets.at(d)->exist)) + { + if (openAirTicket) + openAirTicket->close(); + + airTicket *airT = new airTicket(d, this); + openAirTicket = airT; + airT->show(); + } + +} + +void Widget::changeOpenWidget(QObject *p, int code) +{ + if (openWidget) openWidget->close(); + openWidgetType = code; + openWidget = (QWidget*)p; +} + +void Widget::clearOpenWidget() +{ + openWidget = 0; + openWidgetType = 0; +} + +void Widget::msKillTarget() +{ + killTarget *killT = new killTarget(this); + changeOpenWidget(killT); + killT->show(); +} + +void Widget::msKzsTarget() +{ + kzsTarget *kzsT = new kzsTarget(this); + changeOpenWidget(kzsT); + kzsT->show(); +} + +void Widget::msResetCmd() +{ + resetCmd *resCmd = new resetCmd(this); + changeOpenWidget(resCmd); + resCmd->show(); +} + +void Widget::msVvod2Z() +{ + vvod2z *l=new vvod2z(this); + changeOpenWidget(l, 2); + + l->show(); +} + +void Widget::msAbnTicket() +{ + abnticket *l=new abnticket(this); + + l->show(); + +} + +void Widget::msCtrlModes() +{ + ctrlMode *l = new ctrlMode(this); + changeOpenWidget(l); + l->show(); +} diff --git a/widget.h b/widget.h new file mode 100644 index 0000000..e6d0906 --- /dev/null +++ b/widget.h @@ -0,0 +1,267 @@ +#ifndef WIDGET_H +#define WIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "graphicsviewmod.h" +#include "graphicsarcitem.h" +#include "groundobj.h" +#include "airobj.h" +#include "upravview.h" +#include "upravline.h" + +#include "vvodsectotvet.h" +#include "vvodnomeratrace.h" +#include "airticket.h" +#include "killtarget.h" +#include "kzstarget.h" +#include "resetcmd.h" +#include "vvod2z.h" +#include "abnticket.h" +#include "ctrlmode.h" + + +namespace Ui { + class Widget; +} + +struct KO +{ + int ZZ; + qreal x; + qreal y; +}; + + +class Widget : public QWidget +{ + Q_OBJECT + +public: + explicit Widget(QWidget *parent = 0); + ~Widget(); + + + QTimer *tmr; + QTimer *tmrCheckTaskStop; + QTimer *tmrUpr; + int tempCurTarg; + QWidget *openWidget; + int openWidgetType; + QWidget *openAirTicket; + int curAirTicketNum; + + int currentNum; + +/* */ + QPointF reper; + QPointF ownTS; + QPointF curCentr; + + + + QList cmdKO; + +/* */ + + void initNetwork(); + int currentTaskNum; + int readyForTask; + int ownId; + QTimer *nTmr; + + void sendCU(int nAb, int ZZ, int uid=0, qreal x =0, qreal y=0); + void sendKRU(int nAb, int zoneType); + + QUdpSocket *udpSocket; + QUdpSocket *udpNewTask; + QUdpSocket *udpSend; + +/* */ + int grScales[9]; + QGraphicsScene *gsc; + GraphicsViewMod *gv1, *gv2; + QGraphicsRectItem *yellowBrick; + + graphicsArcItem *gArc; + QList grObj; + + QList targets; + QHash hashIdToNum; + +/* */ + + QGraphicsScene *gscUprav; + upravView *gvUprav; + QGraphicsScene *gsc1; + upravLine* uLines[100]; +/* 2Z */ + + QList str2Z; +/* () */ + bool vklCCR, sendCCR; + +/* 1 */ + QMenuBar *menu1; + QMenu *mSelect; + QMenu *mParam; + QMenu *mMap; +/* */ + QMenu *m1Sel; + QAction *m1Sel_a1, *m1Sel_a2; + QAction *m1SelVO; + QMenu *m1SelNO; + QAction *m1SelNO_a1, *m1SelNO_a2; + QMenu *m1Soderzh; + QAction *m1Soderzh_a1, *m1Soderzh_a2; + QAction *m1CharRLS; + QAction *m1CharTarg; + QAction *m1CharPeleng; + QAction *m1Table; + QMenu *m1Coord; + QAction *m1Coord_a1, *m1Coord_a2; + QAction *m1MessRLS; + QAction *m1Trace; + +/* */ + QMenu *m2Centr; + QAction *m2Centr_a1, *m2Centr_a2; + QAction *m2Temp; + QAction *m2Draw; + QMenu *m2Font; + QAction *m2Font_a1, *m2Font_a2; + QAction *m2Select; + QAction *m2Save; +/* */ + QAction *m3Open, *m3Bright, *m3Layers; + + + +/*Menu2*/ + QMenuBar *menu2, *menu3; + QMenu *mPrep, *mDev, *mSopr, *mObob, *mUprav, *mReg, *mTren, *mFK, *mExit; +/* */ + QAction *m4Conf, *m4Reper, *m4Mesto, *m4Reglam, *m4TTX, *m4Date; + QMenu *m4PerC; + QAction *m4PerC_a1,*m4PerC_a2,*m4PerC_a3; + QAction *m4Table, *m4Resend, *m4Save, *m4Load; +/* */ + QAction *m5RST, *m5RLS, *m5R910; +/* */ + QAction *m6AZ, *m6AZPT, *m6Manual; +/* */ + QAction *m7Trace, *m7Otozhd, *m7Opov; + QMenu *m7Ukr; + QAction *m7Ukr_1[8]; +/* */ + QAction *m8Upr[6]; +/* */ + QAction *m9Reg[5]; + +/* */ + QAction *m10Tren[8]; + QMenu *m10ImitVKP; + QAction *m10ImitVKP_a1, *m10ImitVKP_a2; +/* */ + QAction *m11FK[7]; +/* */ + QAction *m12Restart, *m12Exit; + + + + + void createMenu1(); + void createActions1(); + + void createMenu2(); + void createActions2(); + + void setReper(QPointF p); + void setOwnTS(QPointF p); + void setCentr(QPointF p); + + + void changeOpenWidget(QObject *p, int code=0); + void clearOpenWidget(); + + void addTarget(int id, int aType, int gType, qreal cX, qreal cY, qreal cH, qreal vX, qreal vY); + int findTargetFromId(int d); + int findNextNum(int d); + + + void readGroundOpt(); + void writeGroundOpt(); + +public slots: + + + void setCentr() {setCentr(curCentr);} + + void renewArmWin(); + void checkTargetsAndKRU(); + + void addLogText(QString s); + + void centerOnReper(); + void centerOnTS(); + + + + void magicTemp(); + void refreshUprTab(); +/* */ + void synhrTimeout(); + void newTaskRead(); + void processSendingDatagrams(QByteArray buf, int port=6690); + + void stopTask(); + + /* */ + void msVvodSectOtvet(); + + void msAirTicket(); + void msAirTicketFree(); + + void msKillTarget(); + void msKzsTarget(); + void msResetTarget(); + void msResetCmd(); + void msVvod2Z(); + void msAbnTicket(); + void msCtrlModes(); + +private slots: + void on_pushButton_40_clicked(); + + void on_pushButton_39_clicked(); + + void on_pushButton_38_clicked(); + + + void on_comboBox_2_currentIndexChanged(int index); + + void on_comboBox_4_currentIndexChanged(int index); + + + +private: + void initGraph(); + void initUprav(); + Ui::Widget *ui; + virtual void keyPressEvent ( QKeyEvent * e ); +}; + +#endif // WIDGET_H diff --git a/widget.ui b/widget.ui new file mode 100644 index 0000000..6dc9df7 --- /dev/null +++ b/widget.ui @@ -0,0 +1,1806 @@ + + + Widget + + + + 0 + 0 + 1043 + 768 + + + + + 0 + 0 + + + + MRU-1 + + + + + 0 + 0 + 401 + 71 + + + + + + 0 + 0 + 681 + 81 + + + + + + + + + 140 + 0 + 261 + 16 + + + + УЧЕБНО-ТРЕНИРОВОЧНЫЙ РЕЖИМ + + + Qt::RichText + + + + + + 40 + 0 + 61 + 16 + + + + АРМ1 + + + Qt::AutoText + + + + + + + + 0 + 60 + 681 + 601 + + + + + + 10 + 0 + 641 + 31 + + + + QFrame::Box + + + QFrame::Sunken + + + + false + + + + 0 + 2 + 41 + 23 + + + + 82x70 + + + true + + + true + + + false + + + + + + 40 + 4 + 31 + 23 + + + + Сел. + + + true + + + + + + 70 + 4 + 61 + 22 + + + + + полный + + + + + пустой + + + + + источник + + + + + номер + + + + + без ТЦ + + + + + + + 130 + 4 + 41 + 22 + + + + + 800 + + + + + 400 + + + + + 200 + + + + + 90 + + + + + 45 + + + + + 35 + + + + + 25 + + + + + 12 + + + + + 6 + + + + + + + 170 + 4 + 41 + 23 + + + + Карта + + + true + + + + + + 210 + 4 + 41 + 23 + + + + РучнВ + + + true + + + + + + 250 + 4 + 51 + 23 + + + + Расст-е + + + true + + + + + + 300 + 4 + 21 + 23 + + + + БР + + + true + + + + + + 320 + 4 + 21 + 23 + + + + ДР + + + true + + + + + + 340 + 4 + 21 + 23 + + + + ТР + + + true + + + true + + + + + false + + + + 0 + 3 + 41 + 23 + + + + 82x70 + + + true + + + true + + + false + + + + + + + 3 + 32 + 651 + 561 + + + + Qt::NoFocus + + + false + + + border-color: rgb(0, 0, 0); + + + QFrame::Box + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QGraphicsView::FullViewportUpdate + + + + + + + 660 + 50 + 361 + 281 + + + + + + 0 + 0 + 341 + 61 + + + + 0 + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + + + + 0 + 0 + 361 + 281 + + + + Qt::ScrollBarAlwaysOn + + + Qt::ScrollBarAlwaysOff + + + + + 128 + 128 + 128 + + + + + + + 150 + 150 + 150 + + + + + QGraphicsView::FullViewportUpdate + + + graphicsView_4 + graphicsView_3 + + + + + 660 + 620 + 361 + 141 + + + + + + 10 + 10 + 21 + 16 + + + + APM + + + + + true + + + + 10 + 30 + 21 + 16 + + + + Qt::NoFocus + + + 1 + + + false + + + + + + 10 + 50 + 21 + 16 + + + + 2 + + + + + + 10 + 70 + 21 + 16 + + + + В1 + + + + + + 10 + 90 + 21 + 16 + + + + ВСК + + + + + + 10 + 110 + 21 + 16 + + + + + + + + + + 40 + 50 + 21 + 16 + + + + ПРД + + + + + + 40 + 70 + 21 + 16 + + + + ПРМ + + + + + + 60 + 70 + 16 + 16 + + + + 0 + + + + + + 60 + 50 + 16 + 16 + + + + + + + + + + 80 + 50 + 16 + 16 + + + + + + + + + + 80 + 70 + 16 + 16 + + + + 0 + + + + + + 120 + 50 + 16 + 16 + + + + + + + + + + 100 + 50 + 16 + 16 + + + + + + + + + + 120 + 70 + 16 + 16 + + + + 0 + + + + + + 100 + 70 + 16 + 16 + + + + 0 + + + + + + 70 + 30 + 41 + 16 + + + + М-498 + + + + + + 210 + 50 + 16 + 16 + + + + + + + + + + 330 + 50 + 16 + 16 + + + + 1 + + + + + + 170 + 50 + 16 + 16 + + + + + + + + + + 190 + 50 + 16 + 16 + + + + + + + + + + 210 + 70 + 16 + 16 + + + + 0 + + + + + + 170 + 70 + 16 + 16 + + + + 0 + + + + + + 190 + 70 + 16 + 16 + + + + 0 + + + + + + 330 + 70 + 16 + 16 + + + + 2 + + + + + + 230 + 70 + 16 + 16 + + + + 0 + + + + + + 290 + 70 + 16 + 16 + + + + 0 + + + + + + 250 + 70 + 16 + 16 + + + + 0 + + + + + + 270 + 70 + 16 + 16 + + + + 0 + + + + + + 210 + 30 + 41 + 16 + + + + Н911 + + + + + + 330 + 30 + 31 + 16 + + + + Р910 + + + + + + 130 + 90 + 41 + 16 + + + + РСТ + + + + + + 130 + 110 + 16 + 16 + + + + 4 + + + + + + 70 + 110 + 16 + 16 + + + + 1 + + + + + + 90 + 110 + 16 + 16 + + + + 2 + + + + + + 110 + 110 + 16 + 16 + + + + 3 + + + + + + 210 + 110 + 16 + 16 + + + + 8 + + + + + + 150 + 110 + 16 + 16 + + + + 5 + + + + + + 190 + 110 + 16 + 16 + + + + 7 + + + + + + 170 + 110 + 16 + 16 + + + + 6 + + + + + + 240 + 90 + 41 + 16 + + + + АВСК + + + + + + 290 + 90 + 41 + 16 + + + + РЛС + + + + + + 330 + 90 + 41 + 16 + + + + СН + + + + + + 330 + 110 + 16 + 16 + + + + + + + + + + 290 + 110 + 16 + 16 + + + + + + + + + + 250 + 110 + 16 + 16 + + + + + + + + + + 70 + 10 + 41 + 16 + + + + ДАТА + + + + + + 120 + 10 + 71 + 16 + + + + + 0 + 0 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 210 + 10 + 41 + 16 + + + + ВРЕМЯ + + + + + + 260 + 10 + 71 + 16 + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + 0 + 0 + 361 + 141 + + + + + + + + + + + 660 + 330 + 361 + 281 + + + + + + 0 + 0 + 361 + 31 + + + + QFrame::Box + + + QFrame::Sunken + + + + false + + + + 0 + 2 + 41 + 23 + + + + 82x70 + + + true + + + true + + + false + + + + + + 40 + 4 + 31 + 23 + + + + Сел. + + + true + + + + + + 70 + 4 + 61 + 22 + + + + + полный + + + + + пустой + + + + + источник + + + + + номер + + + + + без ТЦ + + + + + + + 130 + 4 + 41 + 22 + + + + + 800 + + + + + 400 + + + + + 200 + + + + + 90 + + + + + 45 + + + + + 35 + + + + + 25 + + + + + 12 + + + + + 6 + + + + + + + 170 + 4 + 41 + 23 + + + + Карта + + + true + + + + + + 212 + 4 + 51 + 23 + + + + Расст-е + + + true + + + + + false + + + + 0 + 4 + 41 + 23 + + + + 82x70 + + + true + + + true + + + false + + + + + + + 0 + 30 + 361 + 251 + + + + false + + + Qt::NoFocus + + + QFrame::Box + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QGraphicsView::FullViewportUpdate + + + + + + + 4 + 648 + 651 + 111 + + + + + 11 + + + + background-color: rgb(0, 0, 0); +border-color: rgb(255, 255, 255); +color: rgb(4, 255, 0); + + + Qt::ScrollBarAlwaysOn + + + Qt::ScrollBarAlwaysOff + + + + + + 380 + 0 + 641 + 71 + + + + + + 0 + 0 + 641 + 51 + + + + + + + + + 20 + 30 + 16 + 16 + + + + + 9 + + + + 1 + + + + + + 30 + 25 + 30 + 23 + + + + ФЦ + + + + + + 70 + 30 + 16 + 16 + + + + + 9 + + + + 2 + + + + + + 80 + 25 + 30 + 23 + + + + ФП + + + + + + 120 + 30 + 16 + 16 + + + + + 9 + + + + 3 + + + + + + 130 + 25 + 30 + 23 + + + + ЗП + + + + + + 170 + 30 + 16 + 16 + + + + + 9 + + + + 4 + + + + + + 180 + 25 + 31 + 23 + + + + СТ + + + + + + 220 + 30 + 16 + 16 + + + + + 9 + + + + 5 + + + + + + 230 + 25 + 30 + 23 + + + + УЦ + + + + + + 485 + 26 + 31 + 23 + + + + РЕГ + + + + + + 330 + 26 + 31 + 23 + + + + КЗС + + + + + + 270 + 30 + 16 + 16 + + + + + 9 + + + + 6 + + + + + + 320 + 30 + 16 + 16 + + + + + 9 + + + + 7 + + + + + + 430 + 26 + 31 + 23 + + + + ДПД + + + + + + 280 + 25 + 31 + 23 + + + + СЦ + + + + + + 470 + 30 + 16 + 16 + + + + + 9 + + + + 10 + + + + + + 380 + 26 + 31 + 23 + + + + 2Z + + + + + + 420 + 30 + 16 + 16 + + + + + 9 + + + + 9 + + + + + + 370 + 30 + 16 + 16 + + + + + 9 + + + + 8 + + + + + + 525 + 30 + 16 + 16 + + + + + 9 + + + + 11 + + + + + + 540 + 26 + 31 + 23 + + + + ВП + + + + + Menu2 + Menu1 + Lupa + tabUpr + armWin + oknoVO + textEdit + + + + + GraphicsViewMod + QGraphicsView +
graphicsviewmod.h
+
+ + upravView + QGraphicsView +
upravview.h
+
+
+ + +