1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2024-09-28 14:30:51 +00:00

Gui: Use GridLayout for progress messages window

This commit is contained in:
gnosygnu 2017-02-17 11:34:22 -05:00
parent 4593483522
commit 22b6d4dbde
2 changed files with 20 additions and 5 deletions

View File

@ -22,6 +22,7 @@ import gplx.xowa.addons.wikis.searchs.*; import gplx.xowa.guis.menus.*; import g
import gplx.xowa.langs.*;
import gplx.xowa.guis.bnds.*; import gplx.xowa.guis.views.*; import gplx.xowa.guis.urls.url_macros.*; import gplx.xowa.addons.wikis.searchs.gui.htmlbars.*;
import gplx.xowa.guis.views.boots.*;
import gplx.gfui.layouts.swts.*;
public class Xoa_gui_mgr implements Gfo_evt_itm, Gfo_invk {
public Xoa_gui_mgr(Xoae_app app) {
this.ev_mgr = new Gfo_evt_mgr(this);
@ -44,12 +45,25 @@ public class Xoa_gui_mgr implements Gfo_evt_itm, Gfo_invk {
public Xog_menu_mgr Menu_mgr() {return menu_mgr;} private Xog_menu_mgr menu_mgr;
public Xog_url_macro_mgr Url_macro_mgr() {return url_macro_mgr;} private Xog_url_macro_mgr url_macro_mgr = new Xog_url_macro_mgr();
public void Show_prog() {
GfuiWin memo_win = kit.New_win_utl("memo_win", browser_win.Win_box());
GfuiTextBox memo_txt = kit.New_text_box("memo_txt", memo_win, Keyval_.new_(GfuiTextBox_.Ctor_Memo, true));
// get rects for positioning
RectAdp statusbar_rect = browser_win.Statusbar_grp().Rect();
RectAdp prog_box_rect = browser_win.Prog_box().Rect();
memo_win.Rect_set(RectAdp_.new_(prog_box_rect.X(), prog_box_rect.Y() - 75, prog_box_rect.Width(), 100));
memo_txt.Size_(memo_win.Size().Op_add(-8, -30));
// create window using rects
GfuiWin memo_win = kit.New_win_utl("memo_win", browser_win.Win_box());
memo_win.Layout_mgr_(new Swt_layout_mgr__grid().Cols_(1).Margin_w_(0).Margin_h_(0).Spacing_h_(0));
memo_win.Rect_set(RectAdp_.new_
( prog_box_rect.X()
, statusbar_rect.Y() - 60 // 60=100 - 30 (height of title bar and window border)
, prog_box_rect.Width() + 10 // 10=.Margin_w of statusbar_grp
, 100));
// create text
GfuiTextBox memo_txt = kit.New_text_box("memo_txt", memo_win, Keyval_.new_(GfuiTextBox_.Ctor_Memo, true));
memo_txt.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(Bool_.Y).Grab_excess_h_(Bool_.Y).Align_w__fill_().Align_h__fill_());
memo_txt.Text_(String_.Concat_lines_nl(browser_win.Usr_dlg().Gui_wkr().Prog_msgs().Xto_str_ary()));
// show and focus
memo_win.Show();
memo_win.Focus();
}

View File

@ -42,6 +42,7 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm {
public GfuiTextBox Search_box() {return search_box;} private GfuiTextBox search_box;
public GfuiBtn Search_exec_btn() {return search_exec_btn;} private GfuiBtn search_exec_btn;
public GfuiTextBox Find_box() {return find_box;} private GfuiTextBox find_box;
public Gfui_grp Statusbar_grp() {return statusbar_grp;} private Gfui_grp statusbar_grp;
public GfuiBtn Find_close_btn() {return find_close_btn;} private GfuiBtn find_close_btn;
public GfuiBtn Find_fwd_btn() {return find_fwd_btn;} private GfuiBtn find_fwd_btn;
public GfuiBtn Find_bwd_btn() {return find_bwd_btn;} private GfuiBtn find_bwd_btn;
@ -322,7 +323,7 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm {
tab_mgr.Tab_mgr().Layout_data_(new Swt_layout_data__grid().Grab_excess_h_(true).Align_w__fill_().Align_h__fill_().Grab_excess_w_(true));
// statusbar
Gfui_grp statusbar_grp = kit.New_grp("statusbar_grp", win_box);
this.statusbar_grp = kit.New_grp("statusbar_grp", win_box);
statusbar_grp.BackColor_(ColorAdp_.White);
find_close_btn = Xog_win_itm_.new_btn(app, kit, statusbar_grp, img_dir, "find_close_btn", "find_close.png" );
find_box = Xog_win_itm_.new_txt(app, kit, statusbar_grp, ui_font, "find_box" , true);