Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
11
Добавлен:
03.06.2014
Размер:
22.31 Кб
Скачать
#include "archcp.h"

ArchCP::ArchCP(QWidget *parent, Qt::WFlags flags)
	: QMainWindow(parent, flags)
{
	ui.setupUi(this);

	go();
	s=0;

	pp=0;

	connect(ui.pushButton_2,SIGNAL(clicked()),this,SLOT(checker()));
	connect(ui.pushButton_3,SIGNAL(clicked()),this,SLOT(reset()));
}

ArchCP::~ArchCP()
{

}

void ArchCP::reset()
{

	ui.lineEdit_9->clear();
	ui.lineEdit->clear();
	ui.lineEdit_2->clear();
	ui.lineEdit_8->setText("0");

	flags_enabled();
	ui.lineEdit_3->setText("0");
	ui.lineEdit_4->setText("0");
	ui.lineEdit_5->setText("0");
	ui.lineEdit_6->setText("0");
	ui.lineEdit_7->setText("0");
	flags_disabled();

	ui.textEdit->clear();
}

void ArchCP::checker()
{
	if(ui.lineEdit_9->text()=="RDM"||
		ui.lineEdit_9->text()=="WDM"||
		ui.lineEdit_9->text()=="RFW"||
		ui.lineEdit_9->text()=="WFW"||
		ui.lineEdit_9->text()=="MOV"||
		ui.lineEdit_9->text()=="ADD"||
		ui.lineEdit_9->text()=="SUB"||
		ui.lineEdit_9->text()=="MUX"||
		ui.lineEdit_9->text()=="DIV"||
		ui.lineEdit_9->text()=="MORE"||
		ui.lineEdit_9->text()=="LESS"||
		ui.lineEdit_9->text()=="MEQ"||
		ui.lineEdit_9->text()=="LEQ"||
		ui.lineEdit_9->text()=="EQ"||
		ui.lineEdit_9->text()=="NEQ"||
		ui.lineEdit_9->text()=="SETI"||
		ui.lineEdit_9->text()=="RESI"||
		ui.lineEdit_9->text()=="CALL"||
		ui.lineEdit_9->text()=="RET")
	{
		if((
			ui.lineEdit->text()=="000001"||
			ui.lineEdit->text()=="000010"||
		ui.lineEdit->text()=="000011"||
		ui.lineEdit->text()=="000100"||
		ui.lineEdit->text()=="000101"||
		ui.lineEdit->text()=="000110"||
		ui.lineEdit->text()=="000111"||
		ui.lineEdit->text()=="001000"||
		ui.lineEdit->text()=="001001"||
		ui.lineEdit->text()=="001010"||
		ui.lineEdit->text()=="001011"||
		ui.lineEdit->text()=="001100"||
		ui.lineEdit->text()=="001101"||
		ui.lineEdit->text()=="001110"||
		ui.lineEdit->text()=="001111"||
		ui.lineEdit->text()=="010000"||
		ui.lineEdit->text()=="010001"||
		ui.lineEdit->text()=="010010"||
		ui.lineEdit->text()=="010011"||
		ui.lineEdit->text()=="010100"||
		ui.lineEdit->text()=="010101"||
		ui.lineEdit->text()=="010110"||
		ui.lineEdit->text()=="010111"||
		ui.lineEdit->text()=="011000"||
		ui.lineEdit->text()=="011001"||
		ui.lineEdit->text()=="011010"||
		ui.lineEdit->text()=="011011"||
		ui.lineEdit->text()=="011100"||
		ui.lineEdit->text()=="011101"||
		ui.lineEdit->text()=="011110"||
		ui.lineEdit->text()=="011111"||
		ui.lineEdit->text()=="100000"||
		ui.lineEdit->text()=="100001"||
		ui.lineEdit->text()=="100010"||
		ui.lineEdit->text()=="100011"||
		ui.lineEdit->text()=="100100"||
		ui.lineEdit->text()=="100101"||
		ui.lineEdit->text()=="100110"||
		ui.lineEdit->text()=="100111"||
		ui.lineEdit->text()=="101000"||
		ui.lineEdit->text()=="101001"||
		ui.lineEdit->text()=="101010"||
		ui.lineEdit->text()=="101011"||
		ui.lineEdit->text()=="101100"||
		ui.lineEdit->text()=="101101"||
		ui.lineEdit->text()=="101110"||
		ui.lineEdit->text()=="101111"||
		ui.lineEdit->text()=="110000"||
		ui.lineEdit->text()=="110001"||
		ui.lineEdit->text()=="110010"||
		ui.lineEdit->text()=="110011"||
		ui.lineEdit->text()=="110100"||
		ui.lineEdit->text()=="110101"||
		ui.lineEdit->text()=="110110"||
		ui.lineEdit->text()=="110111"||
		ui.lineEdit->text()=="111000"||
		ui.lineEdit->text()=="111001"||
		ui.lineEdit->text()=="111010"||
		ui.lineEdit->text()=="111011"||
		ui.lineEdit->text()=="111100"||
		ui.lineEdit->text()=="111101"||
		ui.lineEdit->text()=="111110"||
		ui.lineEdit->text()=="111111")&&
		(
		ui.lineEdit_2->text()=="000001"||
		ui.lineEdit_2->text()=="000010"||
		ui.lineEdit_2->text()=="000011"||
		ui.lineEdit_2->text()=="000100"||
		ui.lineEdit_2->text()=="000101"||
		ui.lineEdit_2->text()=="000110"||
		ui.lineEdit_2->text()=="000111"||
		ui.lineEdit_2->text()=="001000"||
		ui.lineEdit_2->text()=="001001"||
		ui.lineEdit_2->text()=="001010"||
		ui.lineEdit_2->text()=="001011"||
		ui.lineEdit_2->text()=="001100"||
		ui.lineEdit_2->text()=="001101"||
		ui.lineEdit_2->text()=="001110"||
		ui.lineEdit_2->text()=="001111"||
		ui.lineEdit_2->text()=="010000"||
		ui.lineEdit_2->text()=="010001"||
		ui.lineEdit_2->text()=="010010"||
		ui.lineEdit_2->text()=="010011"||
		ui.lineEdit_2->text()=="010100"||
		ui.lineEdit_2->text()=="010101"||
		ui.lineEdit_2->text()=="010110"||
		ui.lineEdit_2->text()=="010111"||
		ui.lineEdit_2->text()=="011000"||
		ui.lineEdit_2->text()=="011001"||
		ui.lineEdit_2->text()=="011010"||
		ui.lineEdit_2->text()=="011011"||
		ui.lineEdit_2->text()=="011100"||
		ui.lineEdit_2->text()=="011101"||
		ui.lineEdit_2->text()=="011110"||
		ui.lineEdit_2->text()=="011111"||
		ui.lineEdit_2->text()=="100000"||
		ui.lineEdit_2->text()=="100001"||
		ui.lineEdit_2->text()=="100010"||
		ui.lineEdit_2->text()=="100011"||
		ui.lineEdit_2->text()=="100100"||
		ui.lineEdit_2->text()=="100101"||
		ui.lineEdit_2->text()=="100110"||
		ui.lineEdit_2->text()=="100111"||
		ui.lineEdit_2->text()=="101000"||
		ui.lineEdit_2->text()=="101001"||
		ui.lineEdit_2->text()=="101010"||
		ui.lineEdit_2->text()=="101011"||
		ui.lineEdit_2->text()=="101100"||
		ui.lineEdit_2->text()=="101101"||
		ui.lineEdit_2->text()=="101110"||
		ui.lineEdit_2->text()=="101111"||
		ui.lineEdit_2->text()=="110000"||
		ui.lineEdit_2->text()=="110001"||
		ui.lineEdit_2->text()=="110010"||
		ui.lineEdit_2->text()=="110011"||
		ui.lineEdit_2->text()=="110100"||
		ui.lineEdit_2->text()=="110101"||
		ui.lineEdit_2->text()=="110110"||
		ui.lineEdit_2->text()=="110111"||
		ui.lineEdit_2->text()=="111000"||
		ui.lineEdit_2->text()=="111001"||
		ui.lineEdit_2->text()=="111010"||
		ui.lineEdit_2->text()=="111011"||
		ui.lineEdit_2->text()=="111100"||
		ui.lineEdit_2->text()=="111101"||
		ui.lineEdit_2->text()=="111110"||
		ui.lineEdit_2->text()=="111111")
			)T();
		else
		{
			QMessageBox::critical(0, QString::fromLocal8Bit("Ошибка"), 
			QString::fromLocal8Bit("Нужно использовать 000001 - 111111"));
		}
	}
	else 
	{
		//error
		QMessageBox::critical(0, QString::fromLocal8Bit("Ошибка"), 
			QString::fromLocal8Bit("Проверьте правильность ввода имени команды"));
	}
}

int ArchCP::whois(QString a)
{
		int p1=0;
		if(a=="000001")p1=1;
		if(a=="000010")p1=2;
		if(a=="000011")p1=3;
		if(a=="000100")p1=4;
		if(a=="000101")p1=5;
		if(a=="000110")p1=6;
		if(a=="000111")p1=7;
		if(a=="001000")p1=8;
		if(a=="001001")p1=9;
		if(a=="001010")p1=10;
		if(a=="001011")p1=11;
		if(a=="001100")p1=12;
		if(a=="001101")p1=13;
		if(a=="001110")p1=14;
		if(a=="001111")p1=15;
		if(a=="010000")p1=16;
		if(a=="010001")p1=17;
		if(a=="010010")p1=18;
		if(a=="010011")p1=19;
		if(a=="010100")p1=20;
		if(a=="010101")p1=21;
		if(a=="010110")p1=22;
		if(a=="010111")p1=23;
		if(a=="011000")p1=24;
		if(a=="011001")p1=25;
		if(a=="011010")p1=26;
		if(a=="011011")p1=27;
		if(a=="011100")p1=28;
		if(a=="011101")p1=29;
		if(a=="011110")p1=30;
		if(a=="011111")p1=31;
		if(a=="100000")p1=32;
		if(a=="100001")p1=33;
		if(a=="100010")p1=34;
		if(a=="100011")p1=35;
		if(a=="100100")p1=36;
		if(a=="100101")p1=37;
		if(a=="100110")p1=38;
		if(a=="100111")p1=39;
		if(a=="101000")p1=40;
		if(a=="101001")p1=41;
		if(a=="101010")p1=42;
		if(a=="101011")p1=43;
		if(a=="101100")p1=44;
		if(a=="101101")p1=45;
		if(a=="101110")p1=46;
		if(a=="101111")p1=47;
		if(a=="110000")p1=48;
		if(a=="110001")p1=49;
		if(a=="110010")p1=50;
		if(a=="110011")p1=51;
		if(a=="110100")p1=52;
		if(a=="110101")p1=53;
		if(a=="110110")p1=54;
		if(a=="110111")p1=55;
		if(a=="111000")p1=56;
		if(a=="111001")p1=57;
		if(a=="111010")p1=58;
		if(a=="111011")p1=59;
		if(a=="111100")p1=60;
		if(a=="111101")p1=61;
		if(a=="111110")p1=62;
		if(a=="111111")p1=63;
		return p1;
}

void ArchCP::T()
{
	QString CO=ui.lineEdit_9->text();
	QString pole1=ui.lineEdit->text();
	QString pole2=ui.lineEdit_2->text();

	int p1=0,p2=0;
	int g;

	if(pp==0)
	{
		if(CO=="RDM"||CO=="RFW")
		{
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			ui.tableWidget_3->setItem(p2, 0, new QTableWidgetItem(ui.tableWidget_2->item(p1, 0)->text()));
		
			if(CO=="RDM") msg=msg+tr("\nRDM A%1 AR%2").arg(p1).arg(p2);
			if(CO=="RFW") msg=msg+tr("\nRFW A%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();

		}
		if(CO=="WDM"||CO=="WFW")
		{
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;
	
			ui.tableWidget_2->setItem(p1, 0, new QTableWidgetItem(ui.tableWidget_3->item(p2, 0)->text()));

			if(CO=="WDM") msg=msg+tr("\nWDM A%1 AR%2").arg(p1).arg(p2);//ui.tableWidget_3->item(p2, 0)->text()
			if(CO=="WFW") msg=msg+tr("\nWFW A%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}
		if(CO=="MOV")
		{
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;
	
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem(ui.tableWidget_3->item(p2, 0)->text()));

			msg=msg+tr("\nMOV AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="ADD")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			ans=f1+f2;
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nADD AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			if(ans==0)ui.lineEdit_3->setText("1");
			else ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			if(ans<=0)ui.lineEdit_5->setText("1");
			else ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="SUB")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			ans=f1-f2;
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nSUB AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			if(ans==0)ui.lineEdit_3->setText("1");
			else ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			if(ans<=0)ui.lineEdit_5->setText("1");
			else ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="MUX")
		{
			float ans=0., f1=0., f2=0.;
			p1=whois(pole1)-1, p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			ans=f1*f2;

			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nMUX AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			if(ans==0)ui.lineEdit_3->setText("1");
			else ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			if(ans<=0)ui.lineEdit_5->setText("1");
			else ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="DIV")
		{
			float ans=0., f1=0., f2=0.;
			p1=whois(pole1)-1, p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			ans=f1/f2;

			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nDIV AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			if(ans==0)ui.lineEdit_3->setText("1");
			else ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			if(ans<=0)ui.lineEdit_5->setText("1");
			else ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="MORE")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			if(f1>f2) ans=f1; else {if(f2>f1)ans=f2;}
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nMORE AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="LESS")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			if(f1<f2) ans=f1; else {if(f2<f1)ans=f2;}
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nLESS AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="MEQ")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			if(f1>=f2) ans=f1; else {if(f2>f1)ans=f2;}
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nMEQ AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="LEQ")
		{
			float ans=0., f1=0., f2=0.;
			p1=whois(pole1)-1, p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			if(f1<=f2) ans=f1; else {if(f2<f1)ans=f2;}
			ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nLEQ AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="EQ")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			if(f1==f2) ans=f1; else {}
			if(f1==f2) ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nEQ AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="NEQ")
		{
			float ans=0.,
				f1=0.,
				f2=0.;
			p1=whois(pole1)-1;
			p2=whois(pole2)-1;

			f1=ui.tableWidget_3->item(p1, 0)->text().toFloat();
			f2=ui.tableWidget_3->item(p2, 0)->text().toFloat();
			if(f1!=f2) ans=f1; else {}
			if(f1!=f2) ui.tableWidget_3->setItem(p1, 0, new QTableWidgetItem( tr("%1").arg(ans) ));
		
			msg=msg+tr("\nNEQ AR%1 AR%2").arg(p1).arg(p2);
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="SETI")
		{
			msg=msg+tr("\nSETI");
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("1");
			flags_disabled();
		}

		if(CO=="RESI")
		{
			msg=msg+tr("\nRESI");
			ui.textEdit->setText( msg );

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}

		if(CO=="CALL")
		{
			pp=1;

			msg=msg+tr("\nCALL");
			ui.textEdit->setText( msg );
			rps=ui.lineEdit_8->text().toInt();

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}
	}

	
	if(pp==1)
	{
		if(CO=="RET")
		{
			pp=0;

			msg=msg+tr("\nRET");
			ui.textEdit->setText( msg );
			ui.lineEdit_8->setText(tr("%1").arg(rps));

			flags_enabled();
			ui.lineEdit_3->setText("0");
			ui.lineEdit_4->setText("0");
			ui.lineEdit_5->setText("0");
			ui.lineEdit_6->setText("0");
			ui.lineEdit_7->setText("0");
			flags_disabled();
		}
	}
	
	s=ui.lineEdit_8->text().toInt()+1;
	
	ui.lineEdit_8->setText(tr("%1").arg(s));

}

void ArchCP::flags_disabled()
{
	ui.lineEdit_3->setDisabled(true);
	ui.lineEdit_4->setDisabled(true);
	ui.lineEdit_5->setDisabled(true);
	ui.lineEdit_6->setDisabled(true);
	ui.lineEdit_7->setDisabled(true);
}

void ArchCP::flags_enabled()
{
	ui.lineEdit_3->setDisabled(false);
	ui.lineEdit_4->setDisabled(false);
	ui.lineEdit_5->setDisabled(false);
	ui.lineEdit_6->setDisabled(false);
	ui.lineEdit_7->setDisabled(false);
}

void ArchCP::go()
{
		flags_disabled();
		
		//ui.tableWidget->setDisabled(true);
		ui.tableWidget->setColumnCount(2);
		ui.tableWidget->setRowCount(19);
		ui.tableWidget->setHorizontalHeaderItem(0, new QTableWidgetItem(QString::fromLocal8Bit("Мнемоника")));
		ui.tableWidget->setHorizontalHeaderItem(1, new QTableWidgetItem(QString::fromLocal8Bit("КОп")));
		
		ui.tableWidget->setItem(0, 0, new QTableWidgetItem(tr("RDM")));
		ui.tableWidget->setItem(0, 1, new QTableWidgetItem(tr("000001")));
		
		ui.tableWidget->setItem(1, 0, new QTableWidgetItem(tr("WDM")));
		ui.tableWidget->setItem(1, 1, new QTableWidgetItem(tr("000010")));

		ui.tableWidget->setItem(2, 0, new QTableWidgetItem(tr("RFW")));
		ui.tableWidget->setItem(2, 1, new QTableWidgetItem(tr("000011")));

		ui.tableWidget->setItem(3, 0, new QTableWidgetItem(tr("WFW")));
		ui.tableWidget->setItem(3, 1, new QTableWidgetItem(tr("000100")));

		ui.tableWidget->setItem(4, 0, new QTableWidgetItem(tr("MOV")));
		ui.tableWidget->setItem(4, 1, new QTableWidgetItem(tr("000101")));

		ui.tableWidget->setItem(5, 0, new QTableWidgetItem(tr("ADD")));
		ui.tableWidget->setItem(5, 1, new QTableWidgetItem(tr("000110")));

		ui.tableWidget->setItem(6, 0, new QTableWidgetItem(tr("SUB")));
		ui.tableWidget->setItem(6, 1, new QTableWidgetItem(tr("000111")));

		ui.tableWidget->setItem(7, 0, new QTableWidgetItem(tr("MUX")));
		ui.tableWidget->setItem(7, 1, new QTableWidgetItem(tr("001000")));

		ui.tableWidget->setItem(8, 0, new QTableWidgetItem(tr("DIV")));
		ui.tableWidget->setItem(8, 1, new QTableWidgetItem(tr("001001")));

		ui.tableWidget->setItem(9, 0, new QTableWidgetItem(tr("MORE")));
		ui.tableWidget->setItem(9, 1, new QTableWidgetItem(tr("001010")));

		ui.tableWidget->setItem(10, 0, new QTableWidgetItem(tr("LESS")));
		ui.tableWidget->setItem(10, 1, new QTableWidgetItem(tr("001011")));

		ui.tableWidget->setItem(11, 0, new QTableWidgetItem(tr("MEQ")));
		ui.tableWidget->setItem(11, 1, new QTableWidgetItem(tr("001100")));

		ui.tableWidget->setItem(12, 0, new QTableWidgetItem(tr("LEQ")));
		ui.tableWidget->setItem(12, 1, new QTableWidgetItem(tr("001101")));

		ui.tableWidget->setItem(13, 0, new QTableWidgetItem(tr("EQ")));
		ui.tableWidget->setItem(13, 1, new QTableWidgetItem(tr("001110")));

		ui.tableWidget->setItem(14, 0, new QTableWidgetItem(tr("NEQ")));
		ui.tableWidget->setItem(14, 1, new QTableWidgetItem(tr("001111")));

		ui.tableWidget->setItem(15, 0, new QTableWidgetItem(tr("SETI")));
		ui.tableWidget->setItem(15, 1, new QTableWidgetItem(tr("100010")));

		ui.tableWidget->setItem(16, 0, new QTableWidgetItem(tr("RESI")));
		ui.tableWidget->setItem(16, 1, new QTableWidgetItem(tr("100011")));

		ui.tableWidget->setItem(17, 0, new QTableWidgetItem(tr("CALL")));
		ui.tableWidget->setItem(17, 1, new QTableWidgetItem(tr("100000")));

		ui.tableWidget->setItem(18, 0, new QTableWidgetItem(tr("RET")));
		ui.tableWidget->setItem(18, 1, new QTableWidgetItem(tr("100001")));

		//ui.tableWidget->setShowGrid(false);
		//ui.tableWidget->setDisabled(true);

		for(int i=0;i<=18;++i)
		ui.tableWidget->setRowHeight(i,30);


		ui.tableWidget_3->setColumnCount(1);
		ui.tableWidget_3->setRowCount(64);
		ui.tableWidget_3->setHorizontalHeaderItem(0, new QTableWidgetItem(QString::fromLocal8Bit("000001-111111")));

		ui.tableWidget_2->setColumnCount(1);
		ui.tableWidget_2->setRowCount(64);	
		ui.tableWidget_2->setHorizontalHeaderItem(0, new QTableWidgetItem(QString::fromLocal8Bit("000001-111111")));
		ui.tableWidget_2->setItem(0, 0, new QTableWidgetItem(tr("6")));
		ui.tableWidget_2->setItem(1, 0, new QTableWidgetItem(tr("5")));
		ui.tableWidget_2->setItem(2, 0, new QTableWidgetItem(tr("5.35")));
		ui.tableWidget_2->setItem(3, 0, new QTableWidgetItem(tr("7")));
		ui.tableWidget_2->setItem(4, 0, new QTableWidgetItem(tr("9")));
		ui.tableWidget_2->setItem(5, 0, new QTableWidgetItem(tr("1")));
}
Соседние файлы в папке ArchCP
  • #
    03.06.201422.31 Кб11archcp.cpp
  • #
    03.06.2014509 б10archcp.h
  • #
    03.06.201466 б11archcp.qrc
  • #
    03.06.20149.63 Кб10archcp.ui
  • #
    03.06.201410.79 Кб10ArchCP.vcxproj
  • #
    03.06.20142.67 Кб10ArchCP.vcxproj.filters