Mercurial Hosting > editor
comparison editor.luan @ 13:2baecd73d6bb
line numbers
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sat, 05 Apr 2025 08:21:52 -0600 |
parents | 27f2e1aaf8ff |
children | 357fdbf446cb |
comparison
equal
deleted
inserted
replaced
12:27f2e1aaf8ff | 13:2baecd73d6bb |
---|---|
9 local Swing = require "luan:swing/Swing.luan" | 9 local Swing = require "luan:swing/Swing.luan" |
10 local new_frame = require("luan:swing/Frame.luan").new or error() | 10 local new_frame = require("luan:swing/Frame.luan").new or error() |
11 local new_label = require("luan:swing/Label.luan").new or error() | 11 local new_label = require("luan:swing/Label.luan").new or error() |
12 local new_text_area = require("luan:swing/Text_area.luan").new or error() | 12 local new_text_area = require("luan:swing/Text_area.luan").new or error() |
13 local new_scroll_pane = require("luan:swing/Scroll_pane.luan").new or error() | 13 local new_scroll_pane = require("luan:swing/Scroll_pane.luan").new or error() |
14 local List = require "luan:swing/List.luan" | 14 local new_text_area_line_numbers = require("luan:swing/TextAreaLineNumbers.luan").new or error() |
15 local new_default_list = List.new_default_list or error() | |
16 local new_text_area_line_numbers = List.new_text_area_line_numbers or error() | |
17 local new_menu_bar = require("luan:swing/Menu_bar.luan").new or error() | 15 local new_menu_bar = require("luan:swing/Menu_bar.luan").new or error() |
18 local new_menu = require("luan:swing/Menu.luan").new or error() | 16 local new_menu = require("luan:swing/Menu.luan").new or error() |
19 local new_menu_item = require("luan:swing/Menu_item.luan").new or error() | 17 local new_menu_item = require("luan:swing/Menu_item.luan").new or error() |
20 local new_check_box_menu_item = require("luan:swing/Check_box_menu_item.luan").new or error() | 18 local new_check_box_menu_item = require("luan:swing/Check_box_menu_item.luan").new or error() |
21 local int_to_color = require("luan:swing/Color.luan").int_to_color or error() | 19 local int_to_color = require("luan:swing/Color.luan").int_to_color or error() |
20 local create_empty_border = require("luan:swing/Border.luan").create_empty_border or error() | |
22 local Logging = require "luan:logging/Logging.luan" | 21 local Logging = require "luan:logging/Logging.luan" |
23 local logger = Logging.logger "editor" | 22 local logger = Logging.logger "editor" |
24 | 23 |
25 | 24 |
26 local new_window | 25 local new_window |
184 text_area.tab_size = 4 | 183 text_area.tab_size = 4 |
185 text_area.set_font{ family="Monospaced", size=13 } | 184 text_area.set_font{ family="Monospaced", size=13 } |
186 text_area.caret_position = 0 | 185 text_area.caret_position = 0 |
187 --print(text_area.line_count) | 186 --print(text_area.line_count) |
188 local scroll_pane = new_scroll_pane(text_area) | 187 local scroll_pane = new_scroll_pane(text_area) |
189 local list = new_text_area_line_numbers(text_area) | 188 local line_numbers = new_text_area_line_numbers(text_area) |
190 list.foreground_color = int_to_color(0x888888) | 189 line_numbers.foreground_color = int_to_color(0x888888) |
191 --print(list.size) | 190 line_numbers.border = create_empty_border(0,8,0,8) |
192 scroll_pane.set_row_header_view(list) | 191 scroll_pane.set_row_header_view(line_numbers) |
193 frame.add(scroll_pane) | 192 frame.add(scroll_pane) |
194 function window.open() | 193 function window.open() |
195 local file_chooser = frame.file_chooser_load() | 194 local file_chooser = frame.file_chooser_load() |
196 if file ~= nil then | 195 if file ~= nil then |
197 file_chooser.directory = file.parent() | 196 file_chooser.directory = file.parent() |