static BOOL InitResource (void) { if (!InitFixStr ()) { fprintf (stderr, "MiniGUI: Can not initialize Fixed String heap failure!\n"); goto failure; } #ifdef _CURSOR_SUPPORT if (!InitCursor ()) { fprintf (stderr, "MiniGUI: Count not initialize mouse cursor!\n"); goto failure; } #endif if (!InitMenu ()) { fprintf (stderr, "MiniGUI: Init Menu module failure!\n"); goto failure; } if (!InitControlClass ()) { fprintf(stderr, "MiniGUI: Init Control Class failure!\n"); goto failure; } if (!InitAccel ()) { fprintf(stderr, "MiniGUI: Init Accelerator failure!\n"); goto failure; } if (!InitDesktop ()) { fprintf (stderr, "MiniGUI: Init Desktop error!\n"); goto failure; } if (!InitFreeQMSGList ()) { fprintf (stderr, "MiniGUI: Init free QMSG list error!\n"); goto failure; } if (!InitDskMsgQueue ()) { fprintf (stderr, "MiniGUI: Init MSG queue error!\n"); goto failure; } return TRUE; failure: return FALSE; }
LDesktop::LDesktop(int deskNum, bool setdefault) : QObject(){ DPREFIX = "desktop-"+QString::number(deskNum)+"/"; desktopnumber = deskNum; desktop = QApplication::desktop(); defaultdesktop = setdefault; //(desktop->screenGeometry(desktopnumber).x()==0); desktoplocked = true; issyncing = bgupdating = false; usewinmenu=false; //Setup the internal variables settings = new QSettings(QSettings::UserScope, "LuminaDE","desktopsettings", this); //qDebug() << " - Desktop Settings File:" << settings->fileName(); if(!QFile::exists(settings->fileName())){ settings->setValue(DPREFIX+"background/filelist",QStringList()<<"default"); settings->sync(); } bgWindow = 0; bgDesktop = 0; QTimer::singleShot(1,this, SLOT(InitDesktop()) ); }
int main(int argc, char **argv) { struct sigaction sa; char *LogFile; memset(&sa, 0, sizeof(struct sigaction)); sa.sa_handler = SIG_DFL; sa.sa_flags |= SA_RESTART; if (sigaction(SIGCHLD, &sa, NULL) != 0) { Error("sigaction(2) failure"); } gtk_init(&argc, &argv); gtk_panda_init(&argc, &argv); gtk_set_locale(); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); LogFile = getenv("GLPUSH_LOGFILE"); if (LogFile == NULL) { InitLogger("glprint"); } else { InitLogger_via_FileName(LogFile); } TempDir = getenv("GLPUSH_TEMPDIR"); if (TempDir == NULL) { InitTempDir("glprint"); } else { InitTempDir_via_Dir(TempDir); } gl_config_init(); InitDesktop(); execute(); gtk_timeout_add(30 * 1000, push_action_exit, NULL); gtk_main(); sleep(3); return 0; }
// Routine to startup and install all the hooks and stuff BOOL vncDesktop::Startup() { KillScreenSaver(); if (!InitDesktop()) return FALSE; if (!InitBitmap()) return FALSE; if (!ThunkBitmapInfo()) return FALSE; EnableOptimisedBlits(); if (!SetPixFormat()) return FALSE; if (!SetPixShifts()) return FALSE; if (!SetPalette()) return FALSE; if (!InitWindow()) return FALSE; // Add the system hook /* if (!SetHooks( GetCurrentThreadId(), RFB_SCREEN_UPDATE, RFB_COPYRECT_UPDATE, RFB_MOUSE_UPDATE )) { //vnclog.Print(LL_INTERR, VNCLOG("failed to set system hooks\n")); // Switch on full screen polling, so they can see something, at least... m_server->PollFullScreen(TRUE); } else { //vnclog.Print(LL_INTERR, VNCLOG("set hooks OK\n")); } // Start up the keyboard and mouse filters SetKeyboardFilterHook(m_server->LocalInputsDisabled()); SetMouseFilterHook(m_server->LocalInputsDisabled()); */ m_server->PollFullScreen(TRUE); // Start a timer to handle Polling Mode. The timer will cause // an "idle" event once every quarter second, which is necessary if Polling // Mode is being used, to cause TriggerUpdate to be called. m_timerid = SetTimer(m_hwnd, 1, 250, NULL); // Initialise the buffer object m_buffer.SetDesktop(this); // Create the quarter-screen rectangle for polling m_qtrscreen = rfb::Rect(0, 0, m_bmrect.br.x, m_bmrect.br.y/4); // Everything is ok, so return TRUE return TRUE; }