~mateo-salta/nitroshare/nitroshare

« back to all changes in this revision

Viewing changes to src/main/main.cpp

  • Committer: Nathan Osman
  • Date: 2012-07-04 22:38:09 UTC
  • Revision ID: admin@quickmediasolutions.com-20120704223809-3f3w98omt2f90ba6
Added [empty] menu item to indicator when there are no machines available.

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
#include <QApplication>
18
18
#include <QDebug>
19
19
#include <QLocale>
20
 
#include <QMessageBox>
21
20
#include <QTranslator>
22
21
 
23
22
#include <dialogs/CFirstStartWizard.h>
24
23
#include <main/CTrayIcon.h>
25
 
#include <rpc/CRPCServer.h>
26
24
#include <util/defaults.h>
27
25
#include <util/settings.h>
28
26
 
29
 
void InitLocale()
 
27
int main(int argc, char *argv[])
30
28
{
 
29
    QApplication a(argc, argv);
 
30
    a.setQuitOnLastWindowClosed(false);
 
31
 
 
32
    /* Set information about the application. */
 
33
    a.setApplicationName("NitroShare");
 
34
    a.setOrganizationName("Nathan Osman");
 
35
    a.setOrganizationDomain("quickmediasolutions.com");
 
36
 
31
37
    /* Determine what the user's default locale is set to
32
38
       and attempt to load the appropriate translation. */
33
39
    QString locale = QLocale::system().name();
38
44
        qDebug() << "Unable to load translation" << QString("translations/%1.qm").arg(locale);
39
45
    else
40
46
        QApplication::installTranslator(&translator);
41
 
}
42
 
 
43
 
int main(int argc, char *argv[])
44
 
{
45
 
    QApplication a(argc, argv);
46
 
    a.setQuitOnLastWindowClosed(false);
47
 
 
48
 
    /* Set information about the application. */
49
 
    a.setApplicationName("NitroShare");
50
 
    a.setOrganizationName("Nathan Osman");
51
 
    a.setOrganizationDomain("quickmediasolutions.com");
52
 
 
53
 
    /* Initialize the locale and load the application defaults. */
54
 
    InitLocale();
 
47
 
 
48
    /* Load the application defaults. */
55
49
    Defaults::Init();
56
50
 
57
 
    // TODO: we need to send a message to anything occupying the RPC
58
 
    // port to see if it is NitroShare - if it is, then tell the user
59
 
    // that we are already running. If not, then try another port and
60
 
    // write it to the configuration file immediately.
61
 
 
62
 
    /* Determine if NitroShare is already running. */
63
 
    CRPCServer server;
64
 
    if(!server.Init())
65
 
    {
66
 
        qDebug() << "Unable to initialize RPC server. Assuming the application is already running.";
67
 
 
68
 
        QMessageBox::critical(NULL, QObject::tr("Error:"), QObject::tr("NitroShare is already running. Please close the current instance before launching the application again."));
69
 
        return 1;
70
 
    }
71
 
 
72
51
    /* If this is the first time the application is started, display
73
52
       the initial setup and configuration wizard. */
74
53
    if(!Settings::Get("Internal/FirstStart").toBool())
84
63
    }
85
64
 
86
65
    CTrayIcon icon;
87
 
    icon.connect(&server, SIGNAL(SendFiles(QStringList,QString)),
88
 
                          SLOT(OnSendFiles(QStringList,QString)));
89
66
    
90
67
    return a.exec();
91
68
}