LLDB mainline
Statusline.h
Go to the documentation of this file.
1//===-- Statusline.h -----------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_CORE_STATUSLINE_H
10#define LLDB_CORE_STATUSLINE_H
11
12#include "lldb/lldb-forward.h"
13#include <cstdint>
14#include <string>
15
16namespace lldb_private {
18public:
19 Statusline(Debugger &debugger);
21
22 /// Reduce the scroll window and draw the statusline.
23 void Enable();
24
25 /// Hide the statusline and extend the scroll window.
26 void Disable();
27
28 /// Redraw the statusline. If update is false, this will redraw the last
29 /// string.
30 void Redraw(bool update = true);
31
32 /// Inform the statusline that the terminal dimensions have changed.
34
35private:
36 /// Draw the statusline with the given text.
37 void Draw(std::string msg);
38
44
45 /// Set the scroll window for the given mode.
47
49 std::string m_last_str;
50 uint64_t m_terminal_width = 0;
51 uint64_t m_terminal_height = 0;
52};
53} // namespace lldb_private
54#endif // LLDB_CORE_STATUSLINE_H
A class to manage flag bits.
Definition Debugger.h:80
void UpdateScrollWindow(ScrollWindowMode mode)
Set the scroll window for the given mode.
void Enable()
Reduce the scroll window and draw the statusline.
void TerminalSizeChanged()
Inform the statusline that the terminal dimensions have changed.
Statusline(Debugger &debugger)
void Disable()
Hide the statusline and extend the scroll window.
void Redraw(bool update=true)
Redraw the statusline.
void Draw(std::string msg)
Draw the statusline with the given text.
A class that represents a running process on the host machine.