Fix cma broadcast bug.

Add desktop shortcut for windows installer.
This commit is contained in:
codestation
2015-02-22 13:18:02 -04:30
parent c5211f21d2
commit c8cd387334
5 changed files with 24 additions and 7 deletions

View File

@@ -59,8 +59,8 @@ CmaBroadcast::CmaBroadcast(QObject *parent) :
setAvailable(); setAvailable();
socket = new QUdpSocket(this); socket = new QUdpSocket(this);
socket->bind(QHostAddress::Any, QCMA_REQUEST_PORT);
connect(socket, SIGNAL(readyRead()), this, SLOT(readPendingDatagrams())); connect(socket, SIGNAL(readyRead()), this, SLOT(readPendingDatagrams()));
socket->bind(QHostAddress::AnyIPv4, QCMA_REQUEST_PORT);
} }
void CmaBroadcast::readPendingDatagrams() void CmaBroadcast::readPendingDatagrams()

View File

@@ -45,7 +45,14 @@ bool CmaClient::in_progress = false;
CmaClient *CmaClient::this_object = NULL; CmaClient *CmaClient::this_object = NULL;
CmaClient::CmaClient(Database *db, QObject *parent) : CmaClient::CmaClient(Database *db, QObject *parent) :
QObject(parent), m_db(db) QObject(parent), m_db(db), m_broadcast(NULL)
{
this_object = this;
}
CmaClient::CmaClient(Database *db, CmaBroadcast *broadcast, QObject *parent) :
QObject(parent), m_db(db), m_broadcast(broadcast)
{ {
this_object = this; this_object = this;
} }
@@ -92,15 +99,13 @@ void CmaClient::connectWireless()
setActive(true); setActive(true);
CmaBroadcast *broadcast = new CmaBroadcast(this);
do { do {
qDebug("Waiting for wireless connection"); qDebug("Waiting for wireless connection");
if((vita = VitaMTP_Get_First_Wireless_Vita(&host, 0, CC::deviceRegistered, CC::generatePin, CC::registrationComplete)) != NULL) { if((vita = VitaMTP_Get_First_Wireless_Vita(&host, 0, CC::deviceRegistered, CC::generatePin, CC::registrationComplete)) != NULL) {
qDebug("Starting new wireless connection"); qDebug("Starting new wireless connection");
broadcast->setUnavailable(); m_broadcast->setUnavailable();
processNewConnection(vita); processNewConnection(vita);
broadcast->setAvailable(); m_broadcast->setAvailable();
} else { } else {
mutex.lock(); mutex.lock();
if(in_progress) { if(in_progress) {

View File

@@ -36,6 +36,7 @@ class CmaClient : public QObject
Q_OBJECT Q_OBJECT
public: public:
explicit CmaClient(Database *db, QObject *parent = 0); explicit CmaClient(Database *db, QObject *parent = 0);
explicit CmaClient(Database *db, CmaBroadcast *broadcast, QObject *parent = 0);
static bool isRunning(); static bool isRunning();
void launch(); void launch();
@@ -55,6 +56,7 @@ private:
static void registrationComplete(); static void registrationComplete();
Database *m_db; Database *m_db;
CmaBroadcast *m_broadcast;
static QString tempOnlineId; static QString tempOnlineId;
//TODO: move all the control variables to the client manager class //TODO: move all the control variables to the client manager class

View File

@@ -95,8 +95,9 @@ void ClientManager::start()
} }
if(!settings.value("disableWireless", false).toBool()) { if(!settings.value("disableWireless", false).toBool()) {
CmaBroadcast *broadcast = new CmaBroadcast(this);
wireless_thread = new QThread(); wireless_thread = new QThread();
client = new CmaClient(m_db); client = new CmaClient(m_db, broadcast);
wireless_thread->setObjectName("wireless_thread"); wireless_thread->setObjectName("wireless_thread");
connect(wireless_thread, SIGNAL(started()), client, SLOT(connectWireless())); connect(wireless_thread, SIGNAL(started()), client, SLOT(connectWireless()));
connect(client, SIGNAL(messageSent(QString)), this, SIGNAL(messageSent(QString))); connect(client, SIGNAL(messageSent(QString)), this, SIGNAL(messageSent(QString)));

View File

@@ -31,6 +31,10 @@ Function finishPageRunFunction
ExecShell "" "$INSTDIR\${PRODUCT_EXE_NAME}" ExecShell "" "$INSTDIR\${PRODUCT_EXE_NAME}"
FunctionEnd FunctionEnd
Function finishpageaction
CreateShortcut "$desktop\Qcma.lnk" "$instdir\qcma.exe"
FunctionEnd
### Variables ### Variables
Var StartMenuFolder Var StartMenuFolder
@@ -60,6 +64,11 @@ InstallDir "$PROGRAMFILES\${PRODUCT_NAME}"
!insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder !insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
!insertmacro MUI_PAGE_INSTFILES !insertmacro MUI_PAGE_INSTFILES
!define MUI_FINISHPAGE_SHOWREADME ""
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_FINISHPAGE_SHOWREADME_TEXT "Create Desktop Shortcut"
!define MUI_FINISHPAGE_SHOWREADME_FUNCTION finishpageaction
!define MUI_FINISHPAGE_RUN "" !define MUI_FINISHPAGE_RUN ""
!define MUI_FINISHPAGE_RUN_NOTCHECKED !define MUI_FINISHPAGE_RUN_NOTCHECKED
!define MUI_FINISHPAGE_RUN_FUNCTION finishPageRunFunction !define MUI_FINISHPAGE_RUN_FUNCTION finishPageRunFunction