git-svn-id: svn://db.shs.com.ru/libs@152 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2017-01-10 14:00:36 +00:00
parent 869862e96f
commit f7ad7696ef
5 changed files with 23 additions and 15 deletions

View File

@@ -154,7 +154,7 @@ void CDUtils::CDCore::dataReceived(const PIString & from, const PIByteArray & da
if (d && d == connection.deviceByFullPath(from)) { if (d && d == connection.deviceByFullPath(from)) {
if (data.size() >= sizeof(4)) { if (data.size() >= sizeof(4)) {
const uint sig = *((const uint*)(data.data())); const uint sig = *((const uint*)(data.data()));
if (sig == 0x54424950) datatr.received(data); if (sig == PIBaseTransfer::packetSignature()) datatr.received(data);
else { else {
CDPacketType pt = (CDPacketType)sig; CDPacketType pt = (CDPacketType)sig;
switch(pt) { switch(pt) {
@@ -216,14 +216,14 @@ void CDCore::sendThread() {
bool ok = datatr.send(send_data); bool ok = datatr.send(send_data);
CDPacketType pt = (CDPacketType)wheader.type; CDPacketType pt = (CDPacketType)wheader.type;
switch (pt) { switch (pt) {
case CD_KSend: case CD_KSend:
if (ok) K_Sended(); if (ok) K_Sended();
else K_SendFail(); else K_SendFail();
break; break;
case CD_KQuery: case CD_KQuery:
if (!ok) K_ReceiveFail(); if (!ok) K_ReceiveFail();
default:
break; break;
default: break;
} }
} }

View File

@@ -22,7 +22,8 @@ CDKView::CDKView(QWidget *parent) : QTreeView(parent) {
CDKView::~CDKView() { CDKView::~CDKView() {
delete kmodel; if (kmodel) delete kmodel;
kmodel = 0;
} }
@@ -50,13 +51,13 @@ void CDKView::startPing() {
void CDKView::sendK() { void CDKView::sendK() {
bisyStatusChanged(true); busyStatusChanged(true);
K.send(); K.send();
} }
void CDKView::receiveK() { void CDKView::receiveK() {
bisyStatusChanged(true); busyStatusChanged(true);
K.request(); K.request();
} }
@@ -93,28 +94,28 @@ void CDKView::calculateK() {
void CDKView::k_sendFailed() { void CDKView::k_sendFailed() {
bisyStatusChanged(false); busyStatusChanged(false);
emit messageStatus("send failed"); emit messageStatus("send failed");
emit KSendFailed(); emit KSendFailed();
} }
void CDKView::k_sendSucceed() { void CDKView::k_sendSucceed() {
bisyStatusChanged(false); busyStatusChanged(false);
emit messageStatus("send success"); emit messageStatus("send success");
emit KSendSucceed(); emit KSendSucceed();
} }
void CDKView::k_receiveFailed() { void CDKView::k_receiveFailed() {
bisyStatusChanged(false); busyStatusChanged(false);
emit messageStatus("receive failed"); emit messageStatus("receive failed");
emit KReceiveFailed(); emit KReceiveFailed();
} }
void CDKView::k_receiveSucceed() { void CDKView::k_receiveSucceed() {
bisyStatusChanged(false); busyStatusChanged(false);
emit messageStatus("receive success"); emit messageStatus("receive success");
refresh(); refresh();
emit KReceiveSucceed(); emit KReceiveSucceed();

View File

@@ -48,7 +48,7 @@ signals:
void KReceiveFailed(); void KReceiveFailed();
void KReceiveSucceed(); void KReceiveSucceed();
void messageStatus(QString msg); void messageStatus(QString msg);
void bisyStatusChanged(bool bisy); void busyStatusChanged(bool bisy);
void _qcdk_sendFailed(); // PRIVATE void _qcdk_sendFailed(); // PRIVATE
void _qcdk_sendSucceed(); // PRIVATE void _qcdk_sendSucceed(); // PRIVATE

View File

@@ -456,6 +456,10 @@ void SQLTableWidget::setTableName(const QString & t) {
//((QSqlQueryModel * )model)->setQuery(QSqlQuery("SELECT id FROM " + table_ + ";")); //((QSqlQueryModel * )model)->setQuery(QSqlQuery("SELECT id FROM " + table_ + ";"));
setTableVisible(checkTable()); setTableVisible(checkTable());
updateTable(); updateTable();
foreach (const QString & wr, wait_rels) {
QStringList wrl = wr.split(";");
addRelation(wrl[0], wrl[1], wrl[2], wrl[3]);
}
} }
@@ -819,6 +823,8 @@ void SQLTableWidget::setColumnVisible(int ind, bool visible) {
bool SQLTableWidget::addRelation(const QString & this_column, const QString & other_table, const QString & other_key, const QString & other_column) { bool SQLTableWidget::addRelation(const QString & this_column, const QString & other_table, const QString & other_key, const QString & other_column) {
QString wr = this_column + ";" + other_table + ";" + other_key + ";" + other_column;
if (!wait_rels.contains(wr)) wait_rels << wr;
ColumnProperties * cp = const_cast<ColumnProperties * >(columnProperty(this_column)); ColumnProperties * cp = const_cast<ColumnProperties * >(columnProperty(this_column));
if (cp == 0) return false; if (cp == 0) return false;
cp->relation_table = other_table; cp->relation_table = other_table;

View File

@@ -284,6 +284,7 @@ private:
QList<SQLNewEdit * > column_news; QList<SQLNewEdit * > column_news;
QList<SQLFilterEdit * > column_filters; QList<SQLFilterEdit * > column_filters;
QVector<int> column_indexes; QVector<int> column_indexes;
QStringList wait_rels;
QMenu popup_menu, popup_col, popup_filter; QMenu popup_menu, popup_col, popup_filter;
QTime tm; QTime tm;
QActionGroup filters_group; QActionGroup filters_group;