MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); QTextCodec *utfcodec = QTextCodec::codecForName("UTF-8"); QTextCodec::setCodecForTr(utfcodec); QTextCodec::setCodecForCStrings(utfcodec); base = QSqlDatabase::addDatabase("QSQLITE"); //указываем тип базы ui->statusBar->addWidget(&stBar); connect(ui->tableView, SIGNAL(clicked(QModelIndex)), SLOT(TableRead(QModelIndex))); connect(ui->ButtonSave, SIGNAL(clicked()), SLOT(SaveBaseAll())); connect(ui->ButtonDelete, SIGNAL(clicked()), SLOT(DeleteRecord())); connect(ui->ButtonSearch, SIGNAL(clicked()), SLOT(Search())); connect(ui->ButtonDeleteFilter, SIGNAL(clicked()), SLOT(NoSearch())); connect(ui->ActionTruncate, SIGNAL(triggered()), SLOT(Truncate())); connect(ui->ButtonAddRecord, SIGNAL(clicked()), SLOT(AddRecord())); connect(ui->ActionNewBackup, SIGNAL(triggered()), SLOT(SaveBackup())); connect(ui->ActionLoadBackup, SIGNAL(triggered()), SLOT(LoadBackup())); connect(ui->AboutBase, SIGNAL(triggered()), SLOT(AboutBase())); connect(ui->ActionConvert, SIGNAL(triggered()), SLOT(ConvertFromOperaNotes())); connect(ui->ActionOpenBase, SIGNAL(triggered()), SLOT(OpenBase())); setAcceptDrops(true); }
bool CModule_ControlSwitch::TableWrite( int8_t inSrcNode, SMsg_Table const& inProgram) { if(inProgram.type == eTableType_ControlSwitch) { if(inProgram.index >= eMaxControlSwitchCount) { return false; } controlSwitchArray[inProgram.index].id = inProgram.controlSwitch.id; controlSwitchArray[inProgram.index].straightDInPin = inProgram.controlSwitch.straightDInPin; controlSwitchArray[inProgram.index].turnDInPin = inProgram.controlSwitch.turnDInPin; controlSwitchArray[inProgram.index].touchID = inProgram.controlSwitch.touchID; WriteDataToEEPROM(controlSwitchArray + inProgram.index, eepromOffset + inProgram.index * sizeof(SControlSwitchConfig), sizeof(SControlSwitchConfig)); } else if(inProgram.type == eTableType_ControlSwitchToTurnoutMap) { if(inProgram.index >= eMaxControlSwitchToTurnoutMapCount) { return false; } controlSwitchToTurnoutMapArray[inProgram.index].controlSwitchID = inProgram.trackTurnoutMap.controlSwitchID; controlSwitchToTurnoutMapArray[inProgram.index].turnout1ID = inProgram.trackTurnoutMap.turnout1ID; controlSwitchToTurnoutMapArray[inProgram.index].turnout2ID = inProgram.trackTurnoutMap.turnout2ID; WriteDataToEEPROM(controlSwitchToTurnoutMapArray + inProgram.index, eepromOffset + sizeof(controlSwitchArray) + inProgram.index * sizeof(SControlSwitchToTurnoutMapConfig), sizeof(SControlSwitchToTurnoutMapConfig)); } return TableRead(inSrcNode, inProgram); }