/bike.h |
---|
41,11 → 41,14 |
private: |
QTcpSocket *socket; |
float velocity; |
float velocity; |
private slots: |
private slots: |
void readyRead(); |
void disconnected(); |
signals: |
void chat(QString name, QString message); |
}; |
#endif // BIKE_H |
/mainwindow.h |
---|
31,6 → 31,7 |
private slots: |
void newConnection(); |
void checkClients(); |
void chat(QString name, QString message); |
}; |
#endif // MAINWINDOW_H |
/bike.cpp |
---|
391,6 → 391,17 |
colour.setBlue(list[3].toInt()); |
} |
} |
else if (line.startsWith("CHAT ")) |
{ |
QString message = line.remove(0, 5); |
if (!message.isEmpty()) |
{ |
emit chat(name, message); |
} |
hadGo = true; |
} |
} |
} |
/mainwindow.cpp |
---|
80,6 → 80,7 |
{ |
QTcpSocket *socket = server->nextPendingConnection(); |
Bike *bike = new Bike(socket, id); |
connect(bike, SIGNAL(chat(QString,QString)), this, SLOT(chat(QString,QString))); |
id += 1; |
reset(); |
123,3 → 124,17 |
reset(); |
} |
} |
void MainWindow::chat(QString name, QString message) |
{ |
QString packet = "CHAT "; |
packet.append(name); |
packet.append(" "); |
packet.append(message); |
packet.append("\n"); |
for (int i = 0; i < bikes.count(); i++) |
{ |
bikes[i]->setText(packet); |
} |
} |