mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:07:47 +00:00
HexEditor: Created has_selection() method.
Created has_selection() method and fixed a few small issues.
This commit is contained in:
parent
c77fe5161c
commit
98e556fee9
3 changed files with 7 additions and 6 deletions
|
@ -46,7 +46,7 @@ void HexEditor::set_buffer(const ByteBuffer& buffer)
|
||||||
|
|
||||||
void HexEditor::fill_selection(u8 fill_byte)
|
void HexEditor::fill_selection(u8 fill_byte)
|
||||||
{
|
{
|
||||||
if (m_selection_start == -1 || m_selection_end == -1 || (m_selection_end - m_selection_start) < 0 || m_buffer.is_empty())
|
if (!has_selection())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for (int i = m_selection_start; i <= m_selection_end; i++) {
|
for (int i = m_selection_start; i <= m_selection_end; i++) {
|
||||||
|
@ -104,7 +104,7 @@ bool HexEditor::write_to_file(const StringView& path)
|
||||||
|
|
||||||
bool HexEditor::copy_selected_hex_to_clipboard()
|
bool HexEditor::copy_selected_hex_to_clipboard()
|
||||||
{
|
{
|
||||||
if (m_selection_start == -1 || m_selection_end == -1 || (m_selection_end - m_selection_start) < 0 || m_buffer.is_empty())
|
if (!has_selection())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
StringBuilder output_string_builder;
|
StringBuilder output_string_builder;
|
||||||
|
@ -118,7 +118,7 @@ bool HexEditor::copy_selected_hex_to_clipboard()
|
||||||
|
|
||||||
bool HexEditor::copy_selected_text_to_clipboard()
|
bool HexEditor::copy_selected_text_to_clipboard()
|
||||||
{
|
{
|
||||||
if (m_selection_start == -1 || m_selection_end == -1 || (m_selection_end - m_selection_start) < 0)
|
if (!has_selection())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
StringBuilder output_string_builder;
|
StringBuilder output_string_builder;
|
||||||
|
@ -132,7 +132,7 @@ bool HexEditor::copy_selected_text_to_clipboard()
|
||||||
|
|
||||||
bool HexEditor::copy_selected_hex_to_clipboard_as_c_code()
|
bool HexEditor::copy_selected_hex_to_clipboard_as_c_code()
|
||||||
{
|
{
|
||||||
if (m_selection_start == -1 || m_selection_end == -1 || (m_selection_end - m_selection_start) < 0 || m_buffer.is_empty())
|
if (!has_selection())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
StringBuilder output_string_builder;
|
StringBuilder output_string_builder;
|
||||||
|
|
|
@ -25,6 +25,7 @@ public:
|
||||||
void fill_selection(u8 fill_byte);
|
void fill_selection(u8 fill_byte);
|
||||||
bool write_to_file(const StringView& path);
|
bool write_to_file(const StringView& path);
|
||||||
|
|
||||||
|
bool has_selection() const { return !(m_selection_start == -1 || m_selection_end == -1 || (m_selection_end - m_selection_start) < 0 || m_buffer.is_empty()); }
|
||||||
bool copy_selected_text_to_clipboard();
|
bool copy_selected_text_to_clipboard();
|
||||||
bool copy_selected_hex_to_clipboard();
|
bool copy_selected_hex_to_clipboard();
|
||||||
bool copy_selected_hex_to_clipboard_as_c_code();
|
bool copy_selected_hex_to_clipboard_as_c_code();
|
||||||
|
|
|
@ -56,13 +56,13 @@ HexEditorWidget::HexEditorWidget()
|
||||||
if (input_box->exec() == GInputBox::ExecOK && !input_box->text_value().is_empty()) {
|
if (input_box->exec() == GInputBox::ExecOK && !input_box->text_value().is_empty()) {
|
||||||
auto valid = false;
|
auto valid = false;
|
||||||
auto file_size = input_box->text_value().to_int(valid);
|
auto file_size = input_box->text_value().to_int(valid);
|
||||||
if (valid) {
|
if (valid && file_size > 0) {
|
||||||
m_document_dirty = false;
|
m_document_dirty = false;
|
||||||
m_editor->set_buffer(ByteBuffer::create_zeroed(file_size));
|
m_editor->set_buffer(ByteBuffer::create_zeroed(file_size));
|
||||||
set_path(FileSystemPath());
|
set_path(FileSystemPath());
|
||||||
update_title();
|
update_title();
|
||||||
} else {
|
} else {
|
||||||
GMessageBox::show(String::format("Invalid file size entered.", strerror(errno)), "Error", GMessageBox::Type::Error, GMessageBox::InputType::OK, window());
|
GMessageBox::show("Invalid file size entered.", "Error", GMessageBox::Type::Error, GMessageBox::InputType::OK, window());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue