From bc8dd01bbac36c03931517571f7d416e1c5bcbf7 Mon Sep 17 00:00:00 2001 From: Sankakumaru Date: Sat, 11 Feb 2017 01:43:06 +0900 Subject: [PATCH] =?UTF-8?q?Linux=20OS=E3=81=AEgtk3=20package=E3=81=8C?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E3=81=97=E3=81=9F=E5=A0=B4=E5=90=88=E3=81=AE?= =?UTF-8?q?=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main/logbook/data/context/GlobalContext.java | 16 +++++ main/logbook/gui/CalcExpDialog.java | 20 ++++++- main/logbook/gui/CalcPracticeExpDialog.java | 20 ++++++- main/logbook/gui/ConfigDialog.java | 61 ++++++++++++++++++-- 4 files changed, 107 insertions(+), 10 deletions(-) diff --git a/main/logbook/data/context/GlobalContext.java b/main/logbook/data/context/GlobalContext.java index 0a5b85a5..eec04fd5 100644 --- a/main/logbook/data/context/GlobalContext.java +++ b/main/logbook/data/context/GlobalContext.java @@ -201,6 +201,22 @@ public final class GlobalContext { INIT_COMPLETE = true; } + // Linux において gtk3 packageの有無により動作を変えるための設定。 + // OSの環境変数 GTK3PKG は logbook.sh 起動前に手動で設定しておくこと。 + // gtk3 packageが存在する場合の設定例. # export GTK3PKG=true + public static final boolean GTK3; + static { + String VAR_NAME = System.getenv("GTK3PKG"); + if (VAR_NAME.equals("true")) + { + GTK3 = true; + } + else + { + GTK3 = false; + } + } + private static enum MATERIAL_DIFF { NEW_VALUE, OBTAINED, CONSUMED, NONE; } diff --git a/main/logbook/gui/CalcExpDialog.java b/main/logbook/gui/CalcExpDialog.java index 3813accd..f0b7fba9 100644 --- a/main/logbook/gui/CalcExpDialog.java +++ b/main/logbook/gui/CalcExpDialog.java @@ -131,7 +131,15 @@ private void createContents() { label1.setText("今のレベル"); this.beforelv = new Spinner(plan, SWT.BORDER); GridData gdBeforelv = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdBeforelv.widthHint = SwtUtils.DPIAwareWidth(45); + if (logbook.data.context.GlobalContext.GTK3) + { + gdBeforelv.widthHint = SwtUtils.DPIAwareWidth(110); + gdBeforelv.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdBeforelv.widthHint = SwtUtils.DPIAwareWidth(45); + } this.beforelv.setLayoutData(gdBeforelv); this.beforelv.setMaximum(ExpTable.MAX_LEVEL); this.beforelv.setMinimum(1); @@ -149,7 +157,15 @@ private void createContents() { label4.setText("目標レベル"); this.afterlv = new Spinner(plan, SWT.BORDER); GridData gdAfterlv = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdAfterlv.widthHint = SwtUtils.DPIAwareWidth(45); + if (logbook.data.context.GlobalContext.GTK3) + { + gdAfterlv.widthHint = SwtUtils.DPIAwareWidth(110); + gdAfterlv.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdAfterlv.widthHint = SwtUtils.DPIAwareWidth(45); + } this.afterlv.setLayoutData(gdAfterlv); this.afterlv.setMaximum(ExpTable.MAX_LEVEL); this.afterlv.setMinimum(1); diff --git a/main/logbook/gui/CalcPracticeExpDialog.java b/main/logbook/gui/CalcPracticeExpDialog.java index fb39cfa1..9406b799 100644 --- a/main/logbook/gui/CalcPracticeExpDialog.java +++ b/main/logbook/gui/CalcPracticeExpDialog.java @@ -101,7 +101,15 @@ private void createContents() { this.shipNameLabels[0].setLayoutData(gdFirstShipName); this.firstShipLevel = new Spinner(practiceinfo, SWT.BORDER); GridData gdFirstShipLevel = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdFirstShipLevel.widthHint = SwtUtils.DPIAwareWidth(45); + if (logbook.data.context.GlobalContext.GTK3) + { + gdFirstShipLevel.widthHint = SwtUtils.DPIAwareWidth(110); + gdFirstShipLevel.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdFirstShipLevel.widthHint = SwtUtils.DPIAwareWidth(45); + } this.firstShipLevel.setLayoutData(gdFirstShipLevel); this.firstShipLevel.setMaximum(ExpTable.MAX_LEVEL); this.firstShipLevel.setMinimum(1); @@ -115,7 +123,15 @@ private void createContents() { this.shipNameLabels[1].setLayoutData(gdSecondShipName); this.secondShipLevel = new Spinner(practiceinfo, SWT.BORDER); GridData gdsecondShipLevel = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdsecondShipLevel.widthHint = SwtUtils.DPIAwareWidth(45); + if (logbook.data.context.GlobalContext.GTK3) + { + gdsecondShipLevel.widthHint = SwtUtils.DPIAwareWidth(110); + gdsecondShipLevel.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdsecondShipLevel.widthHint = SwtUtils.DPIAwareWidth(45); + } this.secondShipLevel.setLayoutData(gdsecondShipLevel); this.secondShipLevel.setMaximum(ExpTable.MAX_LEVEL); this.secondShipLevel.setMinimum(1); diff --git a/main/logbook/gui/ConfigDialog.java b/main/logbook/gui/ConfigDialog.java index 7c96f318..60bea0dc 100644 --- a/main/logbook/gui/ConfigDialog.java +++ b/main/logbook/gui/ConfigDialog.java @@ -237,7 +237,15 @@ public void widgetSelected(SelectionEvent e) { proxyPortSpinner.setMinimum(1); proxyPortSpinner.setSelection(AppConfig.get().getProxyPort()); GridData gdProxyPortSpinner = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdProxyPortSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + if (logbook.data.context.GlobalContext.GTK3) + { + gdProxyPortSpinner.widthHint = SwtUtils.DPIAwareWidth(110); + gdProxyPortSpinner.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdProxyPortSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + } proxyPortSpinner.setLayoutData(gdProxyPortSpinner); final Button sendDatabaseButton = new Button(compositeConnection, SWT.CHECK); @@ -380,7 +388,15 @@ public void widgetSelected(SelectionEvent e) { materialintervalSpinner.setMinimum(10); materialintervalSpinner.setSelection(AppConfig.get().getMaterialLogInterval()); GridData gdMaterialIntervalSpinner = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdMaterialIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + if (logbook.data.context.GlobalContext.GTK3) + { + gdMaterialIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(110); + gdMaterialIntervalSpinner.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdMaterialIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + } materialintervalSpinner.setLayoutData(gdMaterialIntervalSpinner); new Label(compositeReport, SWT.NONE); @@ -596,7 +612,15 @@ public void widgetSelected(SelectionEvent e) { condSpinner.setMinimum(0); condSpinner.setSelection(AppConfig.get().getOkCond()); GridData gdCondSpinner = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdCondSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + if (logbook.data.context.GlobalContext.GTK3) + { + gdCondSpinner.widthHint = SwtUtils.DPIAwareWidth(110); + gdCondSpinner.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdCondSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + } condSpinner.setLayoutData(gdCondSpinner); new Label(compositeNotify, SWT.NONE); @@ -629,7 +653,16 @@ public void widgetSelected(SelectionEvent e) { intervalSpinner.setMinimum(10); intervalSpinner.setSelection(AppConfig.get().getRemindInterbal()); GridData gdIntervalSpinner = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + if (logbook.data.context.GlobalContext.GTK3) + { + gdIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(110); + gdIntervalSpinner.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(55); + } + intervalSpinner.setLayoutData(gdIntervalSpinner); new Label(compositeNotify, SWT.NONE); @@ -648,7 +681,15 @@ public void widgetSelected(SelectionEvent e) { fullySpinner.setMinimum(0); fullySpinner.setSelection(AppConfig.get().getNotifyFully()); GridData gdFullySpinner = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdFullySpinner.widthHint = SwtUtils.DPIAwareWidth(55); + if (logbook.data.context.GlobalContext.GTK3) + { + gdFullySpinner.widthHint = SwtUtils.DPIAwareWidth(110); + gdFullySpinner.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdFullySpinner.widthHint = SwtUtils.DPIAwareWidth(55); + } fullySpinner.setLayoutData(gdFullySpinner); Label fullyLabel2 = new Label(compositeNotify, SWT.NONE); @@ -792,7 +833,15 @@ public void widgetSelected(SelectionEvent e) { opaqueIntervalSpinner.setMinimum(0); opaqueIntervalSpinner.setSelection(AppConfig.get().getOpaqueInterval()); GridData gdopaqueIntervalSpinner = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1); - gdopaqueIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(65); + if (logbook.data.context.GlobalContext.GTK3) + { + gdopaqueIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(130); + gdopaqueIntervalSpinner.heightHint = SwtUtils.DPIAwareHeight(36); + } + else + { + gdopaqueIntervalSpinner.widthHint = SwtUtils.DPIAwareWidth(65); + } opaqueIntervalSpinner.setLayoutData(gdopaqueIntervalSpinner); Label opaqueIntervalSuffix = new Label(opaqueIntervalGroup, SWT.NONE);