diff --git a/vlib/uiold/examples/users_gui/README.md b/vlib/uiold/examples/users_gui/README.md deleted file mode 100644 index 61b45dd5cd..0000000000 --- a/vlib/uiold/examples/users_gui/README.md +++ /dev/null @@ -1 +0,0 @@ - diff --git a/vlib/uiold/examples/users_gui/screenshot.png b/vlib/uiold/examples/users_gui/screenshot.png deleted file mode 100644 index 472ababed1..0000000000 Binary files a/vlib/uiold/examples/users_gui/screenshot.png and /dev/null differ diff --git a/vlib/uiold/examples/users_gui/users.v b/vlib/uiold/examples/users_gui/users.v deleted file mode 100644 index a3ccdcca07..0000000000 --- a/vlib/uiold/examples/users_gui/users.v +++ /dev/null @@ -1,175 +0,0 @@ -module main - -import ( - ui - gx - os - //darwin -) - -const ( - NR_COLS = 3 - CELL_HEIGHT = 25 - CELL_WIDTH = 100 - TABLE_WIDTH = CELL_WIDTH * NR_COLS -) - -struct User { - first_name string - last_name string - age int -} - -struct Context { - mut: - first_name ui.TextBox - last_name ui.TextBox - age ui.TextBox - users []User - window &ui.Window - txt_pos int -} - -/* -// Current V -struct Window { - width: 500 - height: 300 - title: 'Users' - body: Layout { - body: [ - TextBox { - placeholder: 'First name' - }, - TextBox { - placeholder: 'Last name' - }, - TextBox { - placeholder: 'Age' - }, - Button { - title: 'Add user' - onclick: btn_click - }, - ] - } -} - -// Improved V -struct Window { - width: 500 - height: 300 - title: 'Users' - - Layout { - [ - TextBox { - placeholder: 'First name' - } - TextBox { - placeholder: 'Last name' - } - TextBox { - placeholder: 'Age' - } - Button { - title: 'Add user' - onclick: btn_click - } - ] - } -} - -/* - -Window { - width: 500 - height: 300 - title: 'Users' - VLayout { - TextBox { - placeholder: 'First name' - } - TextBox { - placeholder: 'Last name' - } - TextBox { - placeholder: 'Age' - } - Button { - title: 'Add user' - onclick: btn_click - } - } - - draw: draw_fn -} -*/ -*/ - -fn main() { - mut ctx := &Context { - txt_pos: 10 - } - ctx.users << User { - first_name: 'Sam' - last_name: 'Johnson' - age: 29 - } - ctx.window = ui.new_window(ui.WinCfg { - width: 500 - height: 300 - title: 'Users' - draw_fn: draw - ptr: ctx - }) - ctx.first_name = ctx.add_textbox('First name') - ctx.last_name = ctx.add_textbox('Last name') - ctx.age = ctx.add_textbox('Age') - mut btn := ui.new_button('Add user', ctx.window, btn_click) - btn.onclick(btn_click) - btn.widget.set_pos(TABLE_WIDTH + 50, ctx.txt_pos) - - for { - ui.wait_events() - } -} - -// TODO replace with `fn (ctx mut Context) btn_click() {` -fn btn_click(_ctx &Context) { - println('users.v: button click') - mut ctx := _ctx// TODO hack - ctx.users << User { - first_name: ctx.first_name.text() - last_name: ctx.last_name.text() - age: ctx.age.text().int() - } - ctx.window.refresh() -} - -// TODO replace with `fn (ctx mut Context) draw() {` -fn draw(ctx &Context) { - for i, user in ctx.users { - x := 10 - y := 10 + i * CELL_HEIGHT - // Outer border - ui.draw_empty_rect(x, y, TABLE_WIDTH, CELL_HEIGHT, gx.Gray) - // Vertical separators - ui.draw_line(x + CELL_WIDTH, y, x + CELL_WIDTH, y + CELL_HEIGHT, gx.Gray) - ui.draw_line(x + CELL_WIDTH * 2, y, x + CELL_WIDTH * 2, y + CELL_HEIGHT, gx.Gray) - // Text values - ui.draw_text_def(x + 5, y + 5, user.first_name) - ui.draw_text_def(x + 5 + CELL_WIDTH, y + 5, user.last_name) - ui.draw_text_def(x + 5 + CELL_WIDTH * 2, y + 5, user.age.str()) - } -} - -fn (ctx mut Context) add_textbox(placeholder string) ui.TextBox { - - mut txt_box := ui.new_textbox(ctx.window, false) - txt_box.set_placeholder(placeholder) - txt_box.widget.set_pos(TABLE_WIDTH + 50, ctx.txt_pos) - ctx.txt_pos += 30 - return txt_box -} -