Esempio n. 1
0
void
_moo_window_set_remember_size (GtkWindow  *window,
                               const char *prefs_key,
                               int         default_width,
                               int         default_height,
                               gboolean    remember_position)
{
    PositionInfo *pinfo;

    g_return_if_fail (prefs_key != NULL);

    pinfo = (PositionInfo*) g_object_get_data (G_OBJECT (window), "moo-position-info");

    if (pinfo)
        g_signal_handlers_disconnect_by_func (window, (gpointer) configure_event, pinfo);

    pinfo = g_new0 (PositionInfo, 1);
    pinfo->key_maximized = moo_prefs_make_key (prefs_key, "maximized", NULL);
    pinfo->key_width = moo_prefs_make_key (prefs_key, "width", NULL);
    pinfo->key_height = moo_prefs_make_key (prefs_key, "height", NULL);
    pinfo->key_x = moo_prefs_make_key (prefs_key, "x", NULL);
    pinfo->key_y = moo_prefs_make_key (prefs_key, "y", NULL);
    pinfo->remember_position = remember_position;

    moo_prefs_create_key (pinfo->key_maximized, MOO_PREFS_STATE, G_TYPE_BOOLEAN, FALSE);
    moo_prefs_create_key (pinfo->key_width, MOO_PREFS_STATE, G_TYPE_INT, default_width);
    moo_prefs_create_key (pinfo->key_height, MOO_PREFS_STATE, G_TYPE_INT, default_height);

    if (remember_position)
    {
        moo_prefs_create_key (pinfo->key_x, MOO_PREFS_STATE, G_TYPE_INT, G_MAXINT);
        moo_prefs_create_key (pinfo->key_y, MOO_PREFS_STATE, G_TYPE_INT, G_MAXINT);
    }

    g_object_set_data_full (G_OBJECT (window), "moo-position-info",
                            pinfo, (GDestroyNotify) position_info_free);
    set_initial_size (window, pinfo);
    g_signal_connect (window, "configure-event",
                      G_CALLBACK (configure_event), pinfo);
}
Esempio n. 2
0
/* Note: if compiling with Win32 be sure to use /subsystem:windows and
 * /entry:mainCRTStartup
 */
int main(int argc, char *argv[]) {
	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);

	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
	glutInitWindowPosition(0,0);
	glutInitWindowSize(INIT_WIN_W, INIT_WIN_H);
	disp_win = glutCreateWindow("QuasiPseudoSorta FlightSim");
	glutDisplayFunc(display);
	glutKeyboardFunc(keyfunc);
	glutMouseFunc(mouse_button);
	glutMotionFunc(track_motion);
	glutReshapeFunc(reshape);
	glutVisibilityFunc(vis); /* don't do idle things if they aren't seen */

	set_initial_size(INIT_WIN_W, INIT_WIN_H, INIT_AE_WIN_W, INIT_AE_WIN_H);
	init_look();
	spin_init();
	scene_init();
	glutSetWindow(disp_win);
	glutMainLoop();

	return 0; /* we'll never get here, of course */
}