#include <nmv-source-editor.h>
|
| | SourceEditor (Gtk::Window &a_parent_window, const UString &a_root_dir, Glib::RefPtr< Buffer > &a_buf, bool a_composite=false) |
| |
| virtual | ~SourceEditor () |
| |
| View & | source_view () const |
| |
| int | current_line () const |
| |
| void | current_line (int a_line) |
| |
| int | current_column () const |
| |
| const Loc * | current_location () const |
| |
| void | current_column (int &a_col) |
| |
| bool | move_where_marker_to_line (int a_line, bool a_do_scroll=true) |
| |
| void | unset_where_marker () |
| |
| bool | set_visual_breakpoint_at_line (int a_line, bool a_is_count_point, bool a_enabled) |
| |
| bool | remove_visual_breakpoint_from_line (int a_line) |
| |
| void | clear_decorations () |
| |
| bool | is_visual_breakpoint_set_at_line (int a_line) const |
| |
| bool | scroll_to_line (int a_line) |
| |
| void | scroll_to_iter (Gtk::TextIter &a_iter) |
| |
| void | set_path (const UString &a_path) |
| |
| void | get_path (UString &a_path) const |
| |
| const UString & | get_path () const |
| |
| void | get_file_name (UString &a_file_name) |
| |
| bool | get_word_at_position (int a_x, int a_y, UString &a_word, Gdk::Rectangle &a_start_rect, Gdk::Rectangle &a_end_rect) const |
| |
| bool | do_search (const UString &a_str, Gtk::TextIter &a_start, Gtk::TextIter &a_end, bool a_match_case=false, bool a_match_entire_word=false, bool a_search_backwards=false, bool a_clear_selection=false) |
| |
| void | setup_and_popup_menu (GdkEventButton *a_event, Gtk::Widget *attach_to, Gtk::Menu *custom_menu) |
| |
|
| sigc::signal< void, int, bool > & | marker_region_got_clicked_signal () const |
| |
| sigc::signal< void, const Gtk::TextBuffer::iterator & > & | insertion_changed_signal () const |
| |
|
| BufferType | get_buffer_type () const |
| |
| bool | current_address (Address &) const |
| |
| void | register_assembly_source_buffer (Glib::RefPtr< Buffer > &a_buf) |
| |
| void | register_non_assembly_source_buffer (Glib::RefPtr< Buffer > &a_buf) |
| |
| Glib::RefPtr< Buffer > | get_assembly_source_buffer () const |
| |
| Glib::RefPtr< Buffer > | get_non_assembly_source_buffer () const |
| |
| bool | switch_to_assembly_source_buffer () |
| |
| bool | switch_to_non_assembly_source_buffer () |
| |
| bool | assembly_buf_addr_to_line (const Address &, bool, int &) const |
| |
| bool | assembly_buf_line_to_addr (int, Address &) const |
| |
| bool | get_assembly_address_range (common::Range &a) const |
| |
| bool | move_where_marker_to_address (const Address &address, bool do_scroll, bool a_approximate) |
| |
| bool | place_cursor_at_line (size_t) |
| |
| bool | place_cursor_at_address (const Address &) |
| |
| bool | set_visual_breakpoint_at_address (const Address &a_address, bool is_countpoint, bool enabled) |
| |
| bool | remove_visual_breakpoint_from_address (const Address &) |
| |
| bool | scroll_to_address (const Address &a_address, bool a_approximate) |
| |
| static bool | add_asm (Gtk::Window &a_parent_window, const common::DisassembleInfo &, const std::list< common::Asm > &a_asm, bool a_append, const list< UString > &a_src_search_dirs, list< UString > &a_session_dirs, std::map< UString, bool > &a_ignore_paths, Glib::RefPtr< Buffer > &a_buf) |
| |
| static bool | load_asm (Gtk::Window &a_parent_window, const common::DisassembleInfo &, const std::list< common::Asm > &a_asm, bool a_append, const list< UString > &a_src_search_dirs, list< UString > &a_session_dirs, std::map< UString, bool > &a_ignore_paths, Glib::RefPtr< Buffer > &a_buf) |
| |
◆ BufferType
| Enumerator |
|---|
| BUFFER_TYPE_UNDEFINED | |
| BUFFER_TYPE_SOURCE | |
| BUFFER_TYPE_ASSEMBLY | |
◆ SourceEditor()
| nemiver::SourceEditor::SourceEditor |
( |
Gtk::Window & |
a_parent_window, |
|
|
const UString & |
a_root_dir, |
|
|
Glib::RefPtr< Buffer > & |
a_buf, |
|
|
bool |
a_composite = false |
|
) |
| |
|
explicit |
◆ ~SourceEditor()
| virtual nemiver::SourceEditor::~SourceEditor |
( |
| ) |
|
|
virtual |
◆ add_asm()
| static bool nemiver::SourceEditor::add_asm |
( |
Gtk::Window & |
a_parent_window, |
|
|
const common::DisassembleInfo & |
, |
|
|
const std::list< common::Asm > & |
a_asm, |
|
|
bool |
a_append, |
|
|
const list< UString > & |
a_src_search_dirs, |
|
|
list< UString > & |
a_session_dirs, |
|
|
std::map< UString, bool > & |
a_ignore_paths, |
|
|
Glib::RefPtr< Buffer > & |
a_buf |
|
) |
| |
|
static |
◆ assembly_buf_addr_to_line()
| bool nemiver::SourceEditor::assembly_buf_addr_to_line |
( |
const Address & |
, |
|
|
bool |
, |
|
|
int & |
|
|
) |
| const |
◆ assembly_buf_line_to_addr()
| bool nemiver::SourceEditor::assembly_buf_line_to_addr |
( |
int |
, |
|
|
Address & |
|
|
) |
| const |
◆ clear_decorations()
| void nemiver::SourceEditor::clear_decorations |
( |
| ) |
|
◆ create_source_buffer()
| static Glib::RefPtr<Buffer> nemiver::SourceEditor::create_source_buffer |
( |
| ) |
|
|
static |
◆ current_address()
| bool nemiver::SourceEditor::current_address |
( |
Address & |
| ) |
const |
◆ current_column() [1/2]
| int nemiver::SourceEditor::current_column |
( |
| ) |
const |
◆ current_column() [2/2]
| void nemiver::SourceEditor::current_column |
( |
int & |
a_col | ) |
|
◆ current_line() [1/2]
| int nemiver::SourceEditor::current_line |
( |
| ) |
const |
◆ current_line() [2/2]
| void nemiver::SourceEditor::current_line |
( |
int |
a_line | ) |
|
◆ current_location()
| const Loc* nemiver::SourceEditor::current_location |
( |
| ) |
const |
◆ do_search()
| bool nemiver::SourceEditor::do_search |
( |
const UString & |
a_str, |
|
|
Gtk::TextIter & |
a_start, |
|
|
Gtk::TextIter & |
a_end, |
|
|
bool |
a_match_case = false, |
|
|
bool |
a_match_entire_word = false, |
|
|
bool |
a_search_backwards = false, |
|
|
bool |
a_clear_selection = false |
|
) |
| |
◆ get_assembly_address_range()
| bool nemiver::SourceEditor::get_assembly_address_range |
( |
common::Range & |
a | ) |
const |
◆ get_assembly_source_buffer()
| Glib::RefPtr<Buffer> nemiver::SourceEditor::get_assembly_source_buffer |
( |
| ) |
const |
◆ get_buffer_type()
| BufferType nemiver::SourceEditor::get_buffer_type |
( |
| ) |
const |
A assembly buffer is a buffer which content doesn't come directly from a file. It as been composed in memory. We use assembly buffers to represent the assembly view of a text file being debugged. Unlike non-assembly buffers, meaningful locations inside the buffer are not necessarily line numbers. In an assembly view, a meaningful location is the address of a machine instruction. So there somehow must be a kind of mapping between the location used for the assembly buffer and the actual line number, because the underlying Buffer implementation relies on line numbers anyhow.
◆ get_file_mime_type()
| static bool nemiver::SourceEditor::get_file_mime_type |
( |
const UString & |
a_path, |
|
|
UString & |
a_mime_type |
|
) |
| |
|
static |
◆ get_file_name()
| void nemiver::SourceEditor::get_file_name |
( |
UString & |
a_file_name | ) |
|
◆ get_non_assembly_source_buffer()
| Glib::RefPtr<Buffer> nemiver::SourceEditor::get_non_assembly_source_buffer |
( |
| ) |
const |
◆ get_path() [1/2]
| const UString& nemiver::SourceEditor::get_path |
( |
| ) |
const |
◆ get_path() [2/2]
| void nemiver::SourceEditor::get_path |
( |
UString & |
a_path | ) |
const |
◆ get_word_at_position()
| bool nemiver::SourceEditor::get_word_at_position |
( |
int |
a_x, |
|
|
int |
a_y, |
|
|
UString & |
a_word, |
|
|
Gdk::Rectangle & |
a_start_rect, |
|
|
Gdk::Rectangle & |
a_end_rect |
|
) |
| const |
◆ insertion_changed_signal()
| sigc::signal<void, const Gtk::TextBuffer::iterator&>& nemiver::SourceEditor::insertion_changed_signal |
( |
| ) |
const |
◆ is_visual_breakpoint_set_at_line()
| bool nemiver::SourceEditor::is_visual_breakpoint_set_at_line |
( |
int |
a_line | ) |
const |
◆ load_asm()
| static bool nemiver::SourceEditor::load_asm |
( |
Gtk::Window & |
a_parent_window, |
|
|
const common::DisassembleInfo & |
, |
|
|
const std::list< common::Asm > & |
a_asm, |
|
|
bool |
a_append, |
|
|
const list< UString > & |
a_src_search_dirs, |
|
|
list< UString > & |
a_session_dirs, |
|
|
std::map< UString, bool > & |
a_ignore_paths, |
|
|
Glib::RefPtr< Buffer > & |
a_buf |
|
) |
| |
|
static |
◆ load_file()
| static bool nemiver::SourceEditor::load_file |
( |
Gtk::Window & |
a_parent, |
|
|
const UString & |
a_path, |
|
|
const std::list< std::string > & |
a_supported_encodings, |
|
|
bool |
a_enable_syntaxt_highlight, |
|
|
Glib::RefPtr< Buffer > & |
a_source_buffer |
|
) |
| |
|
static |
◆ marker_region_got_clicked_signal()
| sigc::signal<void, int, bool>& nemiver::SourceEditor::marker_region_got_clicked_signal |
( |
| ) |
const |
◆ move_where_marker_to_address()
| bool nemiver::SourceEditor::move_where_marker_to_address |
( |
const Address & |
address, |
|
|
bool |
do_scroll, |
|
|
bool |
a_approximate |
|
) |
| |
◆ move_where_marker_to_line()
| bool nemiver::SourceEditor::move_where_marker_to_line |
( |
int |
a_line, |
|
|
bool |
a_do_scroll = true |
|
) |
| |
◆ place_cursor_at_address()
| bool nemiver::SourceEditor::place_cursor_at_address |
( |
const Address & |
| ) |
|
◆ place_cursor_at_line()
| bool nemiver::SourceEditor::place_cursor_at_line |
( |
size_t |
| ) |
|
◆ register_assembly_source_buffer()
| void nemiver::SourceEditor::register_assembly_source_buffer |
( |
Glib::RefPtr< Buffer > & |
a_buf | ) |
|
◆ register_non_assembly_source_buffer()
| void nemiver::SourceEditor::register_non_assembly_source_buffer |
( |
Glib::RefPtr< Buffer > & |
a_buf | ) |
|
◆ remove_visual_breakpoint_from_address()
| bool nemiver::SourceEditor::remove_visual_breakpoint_from_address |
( |
const Address & |
| ) |
|
◆ remove_visual_breakpoint_from_line()
| bool nemiver::SourceEditor::remove_visual_breakpoint_from_line |
( |
int |
a_line | ) |
|
◆ scroll_to_address()
| bool nemiver::SourceEditor::scroll_to_address |
( |
const Address & |
a_address, |
|
|
bool |
a_approximate |
|
) |
| |
◆ scroll_to_iter()
| void nemiver::SourceEditor::scroll_to_iter |
( |
Gtk::TextIter & |
a_iter | ) |
|
◆ scroll_to_line()
| bool nemiver::SourceEditor::scroll_to_line |
( |
int |
a_line | ) |
|
◆ set_path()
| void nemiver::SourceEditor::set_path |
( |
const UString & |
a_path | ) |
|
◆ set_visual_breakpoint_at_address()
| bool nemiver::SourceEditor::set_visual_breakpoint_at_address |
( |
const Address & |
a_address, |
|
|
bool |
is_countpoint, |
|
|
bool |
enabled |
|
) |
| |
◆ set_visual_breakpoint_at_line()
| bool nemiver::SourceEditor::set_visual_breakpoint_at_line |
( |
int |
a_line, |
|
|
bool |
a_is_count_point, |
|
|
bool |
a_enabled |
|
) |
| |
◆ setup_and_popup_menu()
| void nemiver::SourceEditor::setup_and_popup_menu |
( |
GdkEventButton * |
a_event, |
|
|
Gtk::Widget * |
attach_to, |
|
|
Gtk::Menu * |
custom_menu |
|
) |
| |
◆ setup_buffer_mime_and_lang()
| static bool nemiver::SourceEditor::setup_buffer_mime_and_lang |
( |
Glib::RefPtr< Buffer > & |
a_buf, |
|
|
const std::string & |
a_mime_type = "text/x-c++" |
|
) |
| |
|
static |
◆ source_view()
| View& nemiver::SourceEditor::source_view |
( |
| ) |
const |
◆ switch_to_assembly_source_buffer()
| bool nemiver::SourceEditor::switch_to_assembly_source_buffer |
( |
| ) |
|
◆ switch_to_non_assembly_source_buffer()
| bool nemiver::SourceEditor::switch_to_non_assembly_source_buffer |
( |
| ) |
|
◆ unset_where_marker()
| void nemiver::SourceEditor::unset_where_marker |
( |
| ) |
|
The documentation for this class was generated from the following file: