Пример #1
0
static void gui_window_created(WINDOW_REC *window, void *automatic)
{
	MAIN_WINDOW_REC *parent;
        int new_parent;

	g_return_if_fail(window != NULL);

	new_parent = window_create_override == 0 ||
		window_create_override == 2 ||
		active_win == NULL || WINDOW_GUI(active_win) == NULL;
	parent = !new_parent ? WINDOW_MAIN(active_win) : mainwindow_create();
	if (parent == NULL) {
		/* not enough space for new window, but we really can't
		   abort creation of the window anymore, so create hidden
		   window instead. */
		parent = WINDOW_MAIN(active_win);
	}
	window_create_override = -1;

	if (parent->active == NULL) parent->active = window;
	window->gui_data = gui_window_init(window, parent);

	/* set only non-automatic windows sticky so that the windows
	   irssi creates at startup wont get sticky. */
	if (automatic == NULL &&
	    (parent->sticky_windows ||
	     (new_parent && settings_get_bool("autostick_split_windows"))))
		gui_window_set_sticky(window);

	signal_emit("gui window created", 1, window);
}
Пример #2
0
void gui_window_clear(WINDOW_REC *window)
{
    MAIN_WINDOW_REC *parent;

    g_return_if_fail(window != NULL);

    parent = WINDOW_GUI(window)->parent;
    gui_window_deinit(WINDOW_GUI(window));
    window->gui_data = gui_window_init(window, parent);

    window->lines = 0;

    if (is_window_visible(window))
        gui_window_redraw(window);
}
Пример #3
0
static void gui_window_created(WINDOW_REC *window)
{
    MAIN_WINDOW_REC *parent;

    g_return_if_fail(window != NULL);

    parent = window_create_override != 0 &&
             active_win != NULL && WINDOW_GUI(active_win) != NULL ?
             WINDOW_GUI(active_win)->parent : mainwindow_create();
    if (parent == NULL) {
        /* not enough space for new window, but we really can't
           abort creation of the window anymore, so create hidden
           window instead. */
        parent = WINDOW_GUI(active_win)->parent;
    }
    window_create_override = -1;

    if (parent->active == NULL) parent->active = window;
    window->gui_data = gui_window_init(window, parent);
    signal_emit("gui window created", 1, window);
}