diff --git a/150_gfui/src/gplx/gfui/kits/swts/Swt_core__base.java b/150_gfui/src/gplx/gfui/kits/swts/Swt_core__base.java index caf882993..84674e8ea 100644 --- a/150_gfui/src/gplx/gfui/kits/swts/Swt_core__base.java +++ b/150_gfui/src/gplx/gfui/kits/swts/Swt_core__base.java @@ -131,20 +131,16 @@ abstract class Swt_core__base extends GxwCore_base { } private static void Layout_data_set(Control control, Swt_layout_data v) { Swt_layout_data__grid gfui_data = (Swt_layout_data__grid)v; + GridData swt_data = new GridData(); - if (gfui_data.Align_w_fill()) swt_data.horizontalAlignment = GridData.FILL; - if (gfui_data.Align_h_fill()) swt_data.verticalAlignment = GridData.FILL; if (gfui_data.Grab_excess_w()) swt_data.grabExcessHorizontalSpace = gfui_data.Grab_excess_w(); if (gfui_data.Grab_excess_h()) swt_data.grabExcessVerticalSpace = gfui_data.Grab_excess_h(); - if (gfui_data.Hint_w() > 0) { - swt_data.widthHint = gfui_data.Hint_w(); - swt_data.horizontalAlignment = GridData.CENTER; - } - if (gfui_data.Hint_h() > 0) { - swt_data.heightHint = gfui_data.Hint_h(); - swt_data.verticalAlignment = GridData.CENTER; - } - if (gfui_data.Min_w() > 0) swt_data.minimumWidth = gfui_data.Min_w(); + if (gfui_data.Align_w() != Swt_layout_data__grid.Align__null) swt_data.horizontalAlignment = gfui_data.Align_w(); + if (gfui_data.Align_h() != Swt_layout_data__grid.Align__null) swt_data.verticalAlignment = gfui_data.Align_h(); + if (gfui_data.Hint_w() > -1) swt_data.widthHint = gfui_data.Hint_w(); + if (gfui_data.Hint_h() > -1) swt_data.heightHint = gfui_data.Hint_h(); + if (gfui_data.Min_w() > -1) swt_data.minimumWidth = gfui_data.Min_w(); + if (gfui_data.Min_h() > -1) swt_data.minimumHeight = gfui_data.Min_h(); control.setLayoutData(swt_data); } diff --git a/150_gfui/src/gplx/gfui/layouts/swts/Swt_layout_data__grid.java b/150_gfui/src/gplx/gfui/layouts/swts/Swt_layout_data__grid.java index 8f77e6e9e..8f3211d05 100644 --- a/150_gfui/src/gplx/gfui/layouts/swts/Swt_layout_data__grid.java +++ b/150_gfui/src/gplx/gfui/layouts/swts/Swt_layout_data__grid.java @@ -17,12 +17,18 @@ along with this program. If not, see . */ package gplx.gfui.layouts.swts; import gplx.*; import gplx.gfui.*; import gplx.gfui.layouts.*; public class Swt_layout_data__grid implements Swt_layout_data { - public boolean Grab_excess_h() {return grab_excess_h;} public Swt_layout_data__grid Grab_excess_h_(boolean v) {grab_excess_h = v; return this;} private boolean grab_excess_h; - public boolean Align_h_fill() {return align_h_fill;} public Swt_layout_data__grid Align_h_fill_(boolean v) {align_h_fill = v; return this;} private boolean align_h_fill; public boolean Grab_excess_w() {return grab_excess_w;} public Swt_layout_data__grid Grab_excess_w_(boolean v) {grab_excess_w = v; return this;} private boolean grab_excess_w; - public boolean Align_w_fill() {return align_w_fill;} public Swt_layout_data__grid Align_w_fill_(boolean v) {align_w_fill = v; return this;} private boolean align_w_fill; + public boolean Grab_excess_h() {return grab_excess_h;} public Swt_layout_data__grid Grab_excess_h_(boolean v) {grab_excess_h = v; return this;} private boolean grab_excess_h; + public int Align_w() {return align_w;} public Swt_layout_data__grid Align_w_(int v) {align_w = v; return this;} private int align_w = Align__null; + public int Align_h() {return align_h;} public Swt_layout_data__grid Align_h_(int v) {align_h = v; return this;} private int align_h = Align__null; public int Min_w() {return min_w;} public Swt_layout_data__grid Min_w_(int v) {min_w = v; return this;} private int min_w = -1; public int Min_h() {return min_h;} public Swt_layout_data__grid Min_h_(int v) {min_h = v; return this;} private int min_h = -1; public int Hint_w() {return hint_w;} public Swt_layout_data__grid Hint_w_(int v) {hint_w = v; return this;} private int hint_w = -1; public int Hint_h() {return hint_h;} public Swt_layout_data__grid Hint_h_(int v) {hint_h = v; return this;} private int hint_h = -1; + + public Swt_layout_data__grid Align_w__fill_() {return Align_w_(Align__fill);} + public Swt_layout_data__grid Align_h__fill_() {return Align_h_(Align__fill);} + + // SWT: maps to GridData.BEGINNING, etc + public static final int Align__null = 0, Align__bgn = 1, Align__mid = 2, Align__end = 3, Align__fill = 4; } diff --git a/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java b/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java index a3f1da15e..1539a0113 100644 --- a/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java +++ b/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java @@ -297,7 +297,7 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm { win_box.Layout_mgr_(new Swt_layout_mgr__grid().Cols_(1).Margin_w_(0).Margin_h_(0).Spacing_h_(0)); Gfui_grp toolbar_grp = kit.New_grp("toolbar_grp", win_box); toolbar_grp.BackColor_(ColorAdp_.White); - toolbar_grp.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w_fill_(true)); + toolbar_grp.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w__fill_()); toolbar_grp.Layout_mgr_(new Swt_layout_mgr__grid().Cols_(6).Margin_w_(0).Margin_h_(0).Spacing_h_(0)); go_bwd_btn = Xog_win_itm_.new_btn(app, kit, toolbar_grp, img_dir, "go_bwd_btn", "go_bwd.png" ); go_fwd_btn = Xog_win_itm_.new_btn(app, kit, toolbar_grp, img_dir, "go_fwd_btn", "go_fwd.png" ); @@ -305,15 +305,15 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm { url_exec_btn = Xog_win_itm_.new_btn(app, kit, toolbar_grp, img_dir, "url_exec_btn", "url_exec.png" ); search_box = Xog_win_itm_.new_txt(app, kit, toolbar_grp, ui_font, "search_box" , true); search_exec_btn = Xog_win_itm_.new_btn(app, kit, toolbar_grp, img_dir, "search_exec_btn", "search_exec.png" ); - url_box.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w_fill_(true).Min_w_(100)); - search_box.Layout_data_(new Swt_layout_data__grid().Hint_w_(110)); + url_box.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w__fill_().Min_w_(100)); + search_box.Layout_data_(new Swt_layout_data__grid().Hint_w_(10)); tab_mgr.Init_by_kit(kit); - tab_mgr.Tab_mgr().Layout_data_(new Swt_layout_data__grid().Grab_excess_h_(true).Align_h_fill_(true).Grab_excess_w_(true).Align_w_fill_(true)); + 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)); Gfui_grp statusbar_grp = kit.New_grp("statusbar_grp", win_box); statusbar_grp.BackColor_(ColorAdp_.White); - statusbar_grp.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w_fill_(true)); + statusbar_grp.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w__fill_()); statusbar_grp.Layout_mgr_(new Swt_layout_mgr__grid().Cols_(6).Margin_w_(0).Margin_h_(0).Spacing_h_(0)); 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); @@ -322,7 +322,7 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm { prog_box = Xog_win_itm_.new_txt(app, kit, statusbar_grp, ui_font, "prog_box" , false); info_box = Xog_win_itm_.new_txt(app, kit, statusbar_grp, ui_font, "note_box" , false); find_box.Layout_data_(new Swt_layout_data__grid().Hint_w_(110)); - prog_box.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w_fill_(true).Min_w_(100)); + prog_box.Layout_data_(new Swt_layout_data__grid().Grab_excess_w_(true).Align_w__fill_().Min_w_(100)); this.Lang_changed(app.Usere().Lang());