/* TUI data manipulation routines.
- Copyright (C) 1998-2019 Free Software Foundation, Inc.
+ Copyright (C) 1998-2020 Free Software Foundation, Inc.
Contributed by Hewlett-Packard Company.
struct tui_source_window_base;
struct tui_source_window;
-/* This is a point definition. */
-struct tui_point
-{
- int x, y;
-};
-
/* A deleter that calls delwin. */
struct curses_deleter
{
return "";
}
+ /* Compute the maximum height of this window. */
+ virtual int max_height () const = 0;
+
+ /* Compute the minimum height of this window. */
+ virtual int min_height () const = 0;
+
+ /* Return true if this window can be boxed. */
+ virtual bool can_box () const
+ {
+ return false;
+ }
+
/* Resize this window. The parameters are used to set the window's
size and position. */
virtual void resize (int height, int width,
return handle != nullptr;
}
+ /* Disable output until the next call to doupdate. */
+ virtual void no_refresh ()
+ {
+ if (handle != nullptr)
+ wnoutrefresh (handle.get ());
+ }
+
/* Window handle. */
std::unique_ptr<WINDOW, curses_deleter> handle;
/* Type of window. */
/* Window height. */
int height = 0;
/* Origin of window. */
- struct tui_point origin = {0, 0};
- /* Viewport height. */
- int viewport_height = 0;
+ int x = 0;
+ int y = 0;
};
/* Constant definitions. */
{
}
- /* Compute the maximum height of this window. */
- virtual int max_height () const;
+ int max_height () const override;
+
+ int min_height () const override
+ {
+ return MIN_WIN_HEIGHT;
+ }
/* Called after the tab width has been changed. */
virtual void update_tab_width ()
return true;
}
- virtual bool can_box () const
+ bool can_box () const override
{
return true;
}
/* Window title to display. */
std::string title;
- /* Can this window ever be highlighted? */
- bool can_highlight = true;
-
/* Is this window highlighted? */
bool is_highlighted = false;
};
/* Data Manipulation Functions. */
-extern struct tui_win_info *tui_partial_win_by_name (const char *);
extern enum tui_layout_type tui_current_layout (void);
extern int tui_term_height (void);
extern void tui_set_term_height_to (int);