Compare commits

..

4 Commits

3 changed files with 18 additions and 2 deletions

View File

@@ -35,7 +35,7 @@ class Hello < CyberarmEngine::GuiState
background Gosu::Color::GRAY
stack do
banner "Hello World!"
label "Hello World!"
button "close" do
window.close

View File

@@ -79,7 +79,19 @@ module CyberarmEngine
end
def caret_position_under_mouse(mouse_x, mouse_y)
active_line = row_at(mouse_y)
# get y scroll offset of element to get EditBox's selected row
y_scroll_offset = 0
e = parent
while (e)
if e.is_a?(Container)
y_scroll_offset += e.scroll_position.y
# root element has no parent so loop will terminate
e = e.parent
end
end
active_line = row_at(mouse_y - y_scroll_offset)
right_offset = column_at(mouse_x, mouse_y)
buffer = @text_input.text.lines[0..active_line].join if active_line != 0

View File

@@ -271,10 +271,14 @@ module CyberarmEngine
end
def redirect_scroll_jump_to(edge)
return if window.text_input
@mouse_over.publish(:"scroll_jump_to_#{edge}", window.mouse_x, window.mouse_y) if (@mouse_over && !@menu) || (@mouse_over && @mouse_over == @menu)
end
def redirect_scroll_page(edge)
return if window.text_input
@mouse_over.publish(:"scroll_page_#{edge}", window.mouse_x, window.mouse_y) if (@mouse_over && !@menu) || (@mouse_over && @mouse_over == @menu)
end