From 4a315722b12ab709334590f4f613f597a7dfb5d9 Mon Sep 17 00:00:00 2001 From: Eyck Jentzsch Date: Tue, 16 Nov 2021 09:33:09 +0100 Subject: [PATCH] add help browser window instead of dialog --- .../Application.e4xmi | 5 +- .../META-INF/MANIFEST.MF | 1 + .../icons/accept.png | Bin 0 -> 781 bytes .../icons/arrow_redo.png | Bin 0 -> 625 bytes .../icons/arrow_refresh.png | Bin 0 -> 685 bytes .../icons/arrow_undo.png | Bin 0 -> 631 bytes .../scviewer/e4/application/Messages.java | 2 + .../e4/application/handlers/HelpHandler.java | 17 +- .../e4/application/messages.properties | 2 + .../application/parts/help/HelpBrowser.java | 152 ++++++++++++++++++ 10 files changed, 170 insertions(+), 9 deletions(-) create mode 100644 plugins/com.minres.scviewer.e4.application/icons/accept.png create mode 100644 plugins/com.minres.scviewer.e4.application/icons/arrow_redo.png create mode 100644 plugins/com.minres.scviewer.e4.application/icons/arrow_refresh.png create mode 100644 plugins/com.minres.scviewer.e4.application/icons/arrow_undo.png create mode 100644 plugins/com.minres.scviewer.e4.application/src/com/minres/scviewer/e4/application/parts/help/HelpBrowser.java diff --git a/plugins/com.minres.scviewer.e4.application/Application.e4xmi b/plugins/com.minres.scviewer.e4.application/Application.e4xmi index 90b71f5..c289e0d 100644 --- a/plugins/com.minres.scviewer.e4.application/Application.e4xmi +++ b/plugins/com.minres.scviewer.e4.application/Application.e4xmi @@ -1,6 +1,6 @@ - + @@ -134,6 +134,9 @@ + + + diff --git a/plugins/com.minres.scviewer.e4.application/META-INF/MANIFEST.MF b/plugins/com.minres.scviewer.e4.application/META-INF/MANIFEST.MF index aa8d0d8..66f49b5 100644 --- a/plugins/com.minres.scviewer.e4.application/META-INF/MANIFEST.MF +++ b/plugins/com.minres.scviewer.e4.application/META-INF/MANIFEST.MF @@ -38,5 +38,6 @@ Require-Bundle: javax.inject;bundle-version="1.0.0", org.eclipse.equinox.p2.metadata.repository;bundle-version="1.3.400" Bundle-RequiredExecutionEnvironment: JavaSE-11 Import-Package: com.minres.scviewer.database, + javax.annotation;version="1.0.0";resolution:=optional, javax.inject;version="1.0.0" Automatic-Module-Name: com.minres.scviewer.e4.application diff --git a/plugins/com.minres.scviewer.e4.application/icons/accept.png b/plugins/com.minres.scviewer.e4.application/icons/accept.png new file mode 100644 index 0000000000000000000000000000000000000000..89c8129a490b329f3165f32fa0781701aab417ea GIT binary patch literal 781 zcmV+o1M>WdP)4-QibtN)VXQDpczE`xXAkUjh%RI>;okxb7K@0kpyQ1k_Y(|Oe7$m(^ zNYX>mI||sUbmn+c3<&FnE=4u#()KBS^SH8e)Qs5i!#lY=$-1gbH6VluzU=m=EP78&5vQ z-?+fFP-G2l&l_QzYealK$;1Rl?FkzXR&Jv@fBPNjCr#AYRyJ7UJQ0v#?)7Ott=>3`#-pV!7>9}>Q1jL)H6h&gkP@3nI=+F3nA~M>u#(n* z8T!#8oEw&-mED4!h4s!N@Jo3S7N&Q6%6l3}nlcd~X@>;uelvPsSkXIgg~e+^T1zSf z3SNj(5%jK~i8@b;CFZj9*=u@@4&g|7erBn|Ebu&JU%m$={t4j zMA?=F80s{QH%n(hsfF%mohhehBz1^t6ID+NGJzBtYm#sZbA{ZEu?vrT)(Lb!?K~){ zH(Aw`uB}Xq9=*Zczi=_)|A3QuQ}znM~D7~ zjUb95oVKv23l4|e@$lZ*dJFeEA1zqO!B_8JKbXnR;M>>lDE=(2>_dXN zph(~`!iy8(2_#ButL^3%VaH2WCpD^U)OZxp@C)2#hU)y+@T%ZNzJigNk%37 zz-WYJwT%teVfiEI+B*@v4ey@58(ld4VY_&5-ox`e@AKg+0U-I`y79bmuw_~y6+4rZ zBG5EdFDS+@M0OSE`>d7SUDOzKZ&h*4eB1iX7tOd9RiYtW2mQ--bUahxr1`i{RG@dM zL#}_X=DDO1{;UI$pFu=dLYT_=5d8WC-sLfjr7UO-HKMAwa=!>)kEhvuwre zuW3yF@ZxFCkI*+ad|5kOX%5zu8IQjhan)UqgSrFGA_0nQFn@Z08DSEUToCSz4Z1ls z&fDbq$T&7|6iq$_uDI$@q1_kQ@dfqk*0>{SDL6V)94@)ete)j++*>bIc9sj}Y;R1o z#OpH+Yt-^4wfv{nern^iVag8`NY~_X_4^RN+9OmbDu*=G*+_}E z3jR}&gbG0=R0#?Z-=09KI|YP8=#E5@+>uO|=1VUCOole%Li*0J2^Gy8+;b?&km6gg zf;aDGp1r#I_V|We$e$~WifFF9R7MCMwsmwsME9<<@yx?a+v)qKuKbNe>k1{IrVt}k zbbSs~bXr8Se}V_b4opa0GhLA`RHceaP=N}IElbSa8@d(ij1Q|4CvOirm9 { + ToolItem item = (ToolItem) event.widget; + String string = (String) item.getData(); + if (string.equals(Messages.HelpDialog_0)) + browser.back(); + else if (string.equals(Messages.HelpDialog_1)) + browser.forward(); + else if (string.equals(Messages.HelpDialog_2)) + browser.stop(); + else if (string.equals(Messages.HelpDialog_3)) + browser.refresh(); + else if (string.equals(Messages.HelpDialog_4)) + browser.setUrl(location.getText()); + }; + browser.addProgressListener(new ProgressListener() { + @Override + public void changed(ProgressEvent event) { + if (event.total == 0) return; + int ratio = event.current * 100 / event.total; + progressBar.setSelection(ratio); + } + @Override + public void completed(ProgressEvent event) { + progressBar.setSelection(0); + } + }); + browser.addStatusTextListener(event -> status.setText(event.text)); + browser.addLocationListener(LocationListener.changedAdapter(event -> { if (event.top) location.setText(event.location); })); + itemBack.addListener(SWT.Selection, listener); + itemForward.addListener(SWT.Selection, listener); + itemStop.addListener(SWT.Selection, listener); + itemRefresh.addListener(SWT.Selection, listener); + itemGo.addListener(SWT.Selection, listener); + location.addListener(SWT.DefaultSelection, e -> browser.setUrl(location.getText())); + browser.setUrl(Messages.HelpDialog_6); + } catch (SWTError e) { + MessageDialog.openWarning(container.getDisplay().getActiveShell(), Messages.HelpBrowser_7,Messages.HelpBrowser_8+e.getMessage()); + } + return container; + } + + +} \ No newline at end of file