Beispiel #1
0
int ConfigScroller::processEvent (const Event& event)
{
    int key;
    int table;

    switch (event.key) {

    case KB_ESC:
	mExitKey = KB_ESC;
	postEvent (Event (EV_QUIT));
	break;

    case KB_ENTER:
	// Launch command edit window
	myScreen.sendEvent (Event(EV_STATUS_MSG, (DWORD) ""));
	key = mScrollCfg.getCursor ();
	switch (key) {
	case 0:		    // "Select Color Scheme"
	    table = getColorTable ();
	    selectColorTable (++table);
	    myScreen.sendEvent (Event (EV_COLOR_CHANGE));
	    if (mDialog != NULL)
		mDialog->draw ();
	    draw ();
	    break;

	case 1:		    // "Export Custom Commands"
	    exportReg ();
	    break;

	case 2:		    // "Import Custom Commands"
	    importReg ();
	    break;

	case 3:		    // "Register DLL Server"
	    registerServer ();
	    break;

	case 4:		    // "Unregister DLL Server"
	    unregisterServer ();
	    break;

	default:
	    break;
	}
	// drawLine (mCursor);
        break;

    default:
        return Scroller::processEvent (event);
    }

    return 1;
}
Beispiel #2
0
void Notifier::loop()
{
    STACKLOG;
	
	if (!advertised && Config::getServerMode() == SERVER_AUTO)
	{
		Logger::log(LOG_WARN, "using LAN mode, probably no internet users will "
				"be able to join your server!");
	}
	else if (!advertised && Config::getServerMode() == SERVER_INET)
	{
		Logger::log(LOG_ERROR, "registration failed, exiting!");
		return;
	}

	//heartbeat
	while (!exit)
	{
		// update some statistics (handy to use in here, as we have a minute-timer basically)
		Messaging::updateMinuteStats();
		Sequencer::updateMinuteStats();
		//Sequencer::printStats();

		//every minute
#ifndef _WIN32
		sleep(60);
#else
		Sleep(60*1000);
#endif

		if(advertised && !exit)
		{
			bool result = sendHearbeat();
			if (result) error_count=0;
			if(!result && Config::getServerMode() == SERVER_INET)
			{
				error_count++;
				if (error_count==5) 
				{
					Logger::log(LOG_ERROR,"heartbeat failed, exiting!");
					break;
				}
				else
				{
					Logger::log(LOG_WARN,"heartbeat failed, will try again");
				}
			}else if(!result && Config::getServerMode() != SERVER_INET)
				Logger::log(LOG_ERROR,"heartbeat failed!");
		}
	}

	unregisterServer();
}
Beispiel #3
0
int runIdc(int argc, char **argv)
{
    QString error;
    QString tlbfile;
    QString idlfile;
    QString input;
    QString version = QLatin1String("1.0");
    
    int i = 1;
    while (i < argc) {
        QString p = QString::fromLocal8Bit(argv[i]).toLower();
        
        if (p == QLatin1String("/idl") || p == QLatin1String("-idl")) {
            ++i;
            if (i > argc) {
                error = QLatin1String("Missing name for interface definition file!");
                break;
            }
            idlfile = QLatin1String(argv[i]);
            idlfile = idlfile.trimmed().toLower();            
        } else if (p == QLatin1String("/version") || p == QLatin1String("-version")) {
            ++i;
            if (i > argc)
                version = QLatin1String("1.0");
            else
                version = QLatin1String(argv[i]);
        } else if (p == QLatin1String("/tlb") || p == QLatin1String("-tlb")) {
            ++i;
            if (i > argc) {
                error = QLatin1String("Missing name for type library file!");
                break;
            }
            tlbfile = QLatin1String(argv[i]);
            tlbfile = tlbfile.trimmed().toLower();            
        } else if (p == QLatin1String("/v") || p == QLatin1String("-v")) {
            fprintf(stdout, "Qt Interface Definition Compiler version 1.0\n");
            return 0;
        } else if (p == QLatin1String("/regserver") || p == QLatin1String("-regserver")) {
            if (!registerServer(input)) {
                fprintf(stderr, "Failed to register server!\n");
                return 1;
            }
            fprintf(stderr, "Server registered successfully!\n");
            return 0;
        } else if (p == QLatin1String("/unregserver") || p == QLatin1String("-unregserver")) {
            if (!unregisterServer(input)) {
                fprintf(stderr, "Failed to unregister server!\n");
                return 1;
            }
            fprintf(stderr, "Server unregistered successfully!\n");
            return 0;
        } else if (p[0] == QLatin1Char('/') || p[0] == QLatin1Char('-')) {
            error = QLatin1String("Unknown option \"") + p + QLatin1Char('\"');
            break;
        } else {
            input = QLatin1String(argv[i]);
            input = input.trimmed().toLower();            
        }
        i++;
    }
    if (!error.isEmpty()) {
        fprintf(stderr, "%s", error.toLatin1().data());
        fprintf(stderr, "\n");
        return 5;
    }
    if (input.isEmpty()) {
        fprintf(stderr, "No input file specified!\n");
        return 1;
    }
    if (input.endsWith(QLatin1String(".exe")) && tlbfile.isEmpty() && idlfile.isEmpty()) {
        fprintf(stderr, "No type output file specified!\n");
        return 2;
    }
    if (input.endsWith(QLatin1String(".dll")) && idlfile.isEmpty() && tlbfile.isEmpty()) {
        fprintf(stderr, "No interface definition file and no type library file specified!\n");
        return 3;
    }
    slashify(input);
    if (!tlbfile.isEmpty()) {
        slashify(tlbfile);
        QFile file(tlbfile);
        if (!file.open(QIODevice::ReadOnly)) {
            fprintf(stderr, "Couldn't open %s for read\n", (const char*)tlbfile.toLocal8Bit().data());
            return 4;
        }
        QByteArray data = file.readAll();
        QString error;
        bool ok = attachTypeLibrary(input, 1, data, &error);
        fprintf(stderr, "%s", error.toLatin1().data());
        fprintf(stderr, "\n");
        return ok ? 0 : 4;
    } else if (!idlfile.isEmpty()) {
        slashify(idlfile);
        idlfile = quotePath(idlfile);
        fprintf(stderr, "\n\n%s\n\n", (const char*)idlfile.toLocal8Bit().data());
        quotePath(input);
        HRESULT res = dumpIdl(input, idlfile, version);
        
        switch(res) {
        case S_OK:
            break;
        case E_FAIL:
            fprintf(stderr, "IDL generation failed trying to run program %s!\n", (const char*)input.toLocal8Bit().data());
            return res;
        case -1:
            fprintf(stderr, "Couldn't open %s for writing!\n", (const char*)idlfile.toLocal8Bit().data());
            return res;
        case 1:
            fprintf(stderr, "Malformed appID value in %s!\n", (const char*)input.toLocal8Bit().data());
            return res;
        case 2:
            fprintf(stderr, "Malformed typeLibID value in %s!\n", (const char*)input.toLocal8Bit().data());
            return res;
        case 3:
            fprintf(stderr, "Class has no metaobject information (error in %s)!\n", (const char*)input.toLocal8Bit().data());
            return res;
        case 4:
            fprintf(stderr, "Malformed classID value in %s!\n", (const char*)input.toLocal8Bit().data());
            return res;
        case 5:
            fprintf(stderr, "Malformed interfaceID value in %s!\n", (const char*)input.toLocal8Bit().data());
            return res;
        case 6:
            fprintf(stderr, "Malformed eventsID value in %s!\n", (const char*)input.toLocal8Bit().data());
            return res;
            
        default:
            fprintf(stderr, "Unknown error writing IDL from %s\n", (const char*)input.toLocal8Bit().data());
            return 7;
        }
    }
    return 0;
}