imported irssi.
[silc.git] / apps / irssi / src / fe-text / mainwindows.h
diff --git a/apps/irssi/src/fe-text/mainwindows.h b/apps/irssi/src/fe-text/mainwindows.h
new file mode 100644 (file)
index 0000000..491449c
--- /dev/null
@@ -0,0 +1,42 @@
+#ifndef __MAINWINDOWS_H
+#define __MAINWINDOWS_H
+
+#include "fe-windows.h"
+#include "screen.h"
+
+#define WINDOW_MIN_SIZE 2
+
+typedef struct {
+       WINDOW_REC *active;
+        GSList *sticky_windows; /* list of windows allowed to show only in this mainwindow */
+
+#ifdef USE_CURSES_WINDOWS
+       WINDOW *curses_win;
+#else
+#error disable-curses-windows is currently broken /* FIXME */
+#endif
+       int first_line, last_line, width, height;
+       int statusbar_lines;
+       void *statusbar;
+       void *statusbar_window_item;
+} MAIN_WINDOW_REC;
+
+extern GSList *mainwindows;
+extern MAIN_WINDOW_REC *active_mainwin;
+
+void mainwindows_init(void);
+void mainwindows_deinit(void);
+
+MAIN_WINDOW_REC *mainwindow_create(void);
+void mainwindow_destroy(MAIN_WINDOW_REC *window);
+
+void mainwindows_redraw(void);
+void mainwindows_recreate(void);
+
+void mainwindow_set_size(MAIN_WINDOW_REC *window, int size);
+void mainwindows_resize(int width, int height);
+
+int mainwindows_reserve_lines(int count, int up);
+GSList *mainwindows_get_sorted(int reverse);
+
+#endif