From 79609904557b4a5a9b4008be93e850f88ee142de Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 14:26:22 +0100 Subject: [PATCH 01/10] Fixed a typo in doc. --- gwu/comp_addons.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gwu/comp_addons.go b/gwu/comp_addons.go index cbee9c8..5264f85 100644 --- a/gwu/comp_addons.go +++ b/gwu/comp_addons.go @@ -230,7 +230,7 @@ type cellFmtImpl struct { hasHVAlignImpl // Has horizontal and vertical alignment implementation styleImpl *styleImpl // Style builder. Lazily initialized. - attrs map[string]string // Explicitly set HTML attributes for the cell. Lazily initalized. + attrs map[string]string // Explicitly set HTML attributes for the cell. Lazily initialized. } // newCellFmtImpl creates a new cellFmtImpl. From d868c4f0c198a78d9b022c07659e9f07b9ec3bb4 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 14:31:42 +0100 Subject: [PATCH 02/10] Added changes file for v1.3.0. --- gwu/doc.go | 2 +- version-history/changes-v1.1.1.txt | 4 ++-- version-history/changes-v1.1.2.txt | 2 +- version-history/changes-v1.2.0.txt | 2 +- version-history/changes-v1.3.0.txt | 3 +++ 5 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 version-history/changes-v1.3.0.txt diff --git a/gwu/doc.go b/gwu/doc.go index 42cc311..7b20324 100644 --- a/gwu/doc.go +++ b/gwu/doc.go @@ -396,7 +396,7 @@ package gwu // Gowut version information. const ( - GowutVersion = "v1.2.0-dev" // Gowut version: "v"major.minor.maintenance[-dev] + GowutVersion = "v1.3.0-dev" // Gowut version: "v"major.minor.maintenance[-dev] GowutReleaseDate = "2017-01-16 CET" // Gowut release date GowutRelDateLayout = "2006-01-02 MST" // Gowut release date layout (for time.Parse()) ) diff --git a/version-history/changes-v1.1.1.txt b/version-history/changes-v1.1.1.txt index 00d6641..23f5cee 100644 --- a/version-history/changes-v1.1.1.txt +++ b/version-history/changes-v1.1.1.txt @@ -1,11 +1,11 @@ Changes and new features in v1.1.1: ----------------------------------- +----------------------------------- -Improvement: HTTP request and response writers are now exposed with Events. See issue #19. Not directly, but they are available after a type assertion. See HasRequestResponse type. --Fix: when something was selected in a ListBox, it was impossible to deselect everything from the UI. See issue #20. +-Fix: when something was selected in a ListBox, it was impossible to deselect everything from the UI. See issue #20. -Fix: open web page with xdg-open in linux diff --git a/version-history/changes-v1.1.2.txt b/version-history/changes-v1.1.2.txt index 7089b82..05c1204 100644 --- a/version-history/changes-v1.1.2.txt +++ b/version-history/changes-v1.1.2.txt @@ -1,6 +1,6 @@ Changes and new features in v1.1.2: ----------------------------------- +----------------------------------- -Many code optimization, code formatting and grammar fixing to have an A+ Go Report Card rating! https://goreportcard.com/report/github.com/icza/gowut diff --git a/version-history/changes-v1.2.0.txt b/version-history/changes-v1.2.0.txt index 124475c..c47f240 100644 --- a/version-history/changes-v1.2.0.txt +++ b/version-history/changes-v1.2.0.txt @@ -1,6 +1,6 @@ Changes and new features in v1.2.0: ----------------------------------- +----------------------------------- -BREAKING CHANGES! Renamed several interfaces and methods to conform to Go naming conventions. Gometalinter now gives 0 warnings. diff --git a/version-history/changes-v1.3.0.txt b/version-history/changes-v1.3.0.txt new file mode 100644 index 0000000..82dd18b --- /dev/null +++ b/version-history/changes-v1.3.0.txt @@ -0,0 +1,3 @@ + +Changes and new features in v1.3.0: +----------------------------------- From 779e4df38eea5a5ee11073141bf4351148b38e68 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 15:28:09 +0100 Subject: [PATCH 03/10] Replaced the home page with the Gowut Wiki. --- README.md | 6 ++---- _examples/showcase/showcasecore/showcasecore.go | 12 ++++++++---- gwu/doc.go | 6 +++--- version-history/changes-v1.3.0.txt | 3 +++ 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 8638ebc..c12fcf5 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,9 @@ Gowut (Go Web UI Toolkit) is a full-featured, easy to use, platform independent Web UI Toolkit written in pure Go, no platform dependent native code is linked or called. -Development takes place in the `dev` branch: https://github.com/icza/gowut/tree/dev - -For News, documentation and examples please visit the **Gowut Home Page** here: +For News, documentation and examples please visit the [**Gowut Wiki**](https://github.com/icza/gowut/wiki). -**https://sites.google.com/site/gowebuitoolkit/** +Development takes place in the `dev` branch: https://github.com/icza/gowut/tree/dev ## Quick install ## diff --git a/_examples/showcase/showcasecore/showcasecore.go b/_examples/showcase/showcasecore/showcasecore.go index 4d9e278..d6bf6d4 100644 --- a/_examples/showcase/showcasecore/showcasecore.go +++ b/_examples/showcase/showcasecore/showcasecore.go @@ -568,8 +568,8 @@ func buildLinkDemo(event gwu.Event) gwu.Comp { p := gwu.NewPanel() p.SetCellPadding(3) - p.Add(gwu.NewLink("Visit Gowut Home page", "https://sites.google.com/site/gowebuitoolkit/")) - p.Add(gwu.NewLink("Visit Gowut Project page", "https://github.com/icza/gowut")) + p.Add(gwu.NewLink("Visit the Gowut Wiki", "https://github.com/icza/gowut/wiki")) + p.Add(gwu.NewLink("Visit the Gowut Project page", "https://github.com/icza/gowut")) row := gwu.NewHorizontalPanel() row.SetCellPadding(3) @@ -580,7 +580,11 @@ func buildLinkDemo(event gwu.Event) gwu.Comp { row = gwu.NewHorizontalPanel() row.SetCellPadding(3) row.Add(gwu.NewLabel("Send e-mail to the Gowut author:")) - email := "iczaaa" + "@" + "gmail.com" + emailBytes := []byte("jd{bbbAhnbjm/dpn") + for i, v := range emailBytes { + emailBytes[i] = v - 1 + } + email := string(emailBytes) row.Add(gwu.NewLink("András Belicza <"+email+">", "mailto:"+email)) p.Add(row) @@ -836,7 +840,7 @@ func buildShowcaseWin(sess gwu.Session) { l.Style().SetFontStyle(gwu.FontStyleItalic).SetFontSize("95%") footer.Add(l) footer.AddHSpace(10) - link := gwu.NewLink("Visit Gowut Home page", "https://sites.google.com/site/gowebuitoolkit/") + link := gwu.NewLink("Visit Gowut Wiki page", "https://github.com/icza/gowut/wiki") link.Style().SetFontStyle(gwu.FontStyleItalic).SetFontSize("95%") footer.Add(link) setNoWrap(footer) diff --git a/gwu/doc.go b/gwu/doc.go index 7b20324..8fabc8b 100644 --- a/gwu/doc.go +++ b/gwu/doc.go @@ -18,8 +18,8 @@ Package gwu implements an easy to use, platform independent Web UI Toolkit in pure Go. -For additional documentation, News and more please visit the home page: -https://sites.google.com/site/gowebuitoolkit/ +For additional documentation, News and more please visit the Gowut Wiki: +https://github.com/icza/gowut/wiki Introduction @@ -382,7 +382,7 @@ Author: András Belicza Author email: gmail.com, user name: iczaaa -Home page: https://sites.google.com/site/gowebuitoolkit/ +Gowut Wiki: https://github.com/icza/gowut/wiki Source code: https://github.com/icza/gowut diff --git a/version-history/changes-v1.3.0.txt b/version-history/changes-v1.3.0.txt index 82dd18b..05b3819 100644 --- a/version-history/changes-v1.3.0.txt +++ b/version-history/changes-v1.3.0.txt @@ -1,3 +1,6 @@ Changes and new features in v1.3.0: ----------------------------------- + +-Replaced home page with the Gowut Wiki: +https://github.com/icza/gowut/wiki From 532fa41f3278baeea96f2323171247cfe101c667 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 16:55:52 +0100 Subject: [PATCH 04/10] Added _images folder for wiki. --- _images/full_app_example.png | Bin 0 -> 34177 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 _images/full_app_example.png diff --git a/_images/full_app_example.png b/_images/full_app_example.png new file mode 100644 index 0000000000000000000000000000000000000000..b668b0505e10932b125f53a85863028cda1b0ae1 GIT binary patch literal 34177 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%0AsuHB~lc7^=EJfjX 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 literal 0 HcmV?d00001 From 1e696ea7704c4188942c0d4a36704ab8d298b1ab Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 18:16:53 +0100 Subject: [PATCH 05/10] Made example commands shorter. --- _examples/showcase/showcasecore/showcasecore.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_examples/showcase/showcasecore/showcasecore.go b/_examples/showcase/showcasecore/showcasecore.go index d6bf6d4..1473c71 100644 --- a/_examples/showcase/showcasecore/showcasecore.go +++ b/_examples/showcase/showcasecore/showcasecore.go @@ -836,11 +836,11 @@ func buildShowcaseWin(sess gwu.Session) { footer.Style().SetFullWidth().SetBorderTop2(2, gwu.BrdStyleSolid, "#cccccc") footer.Add(hiddenPan) footer.AddHConsumer() - l = gwu.NewLabel("Copyright © 2013-2016 András Belicza. All rights reserved.") + l = gwu.NewLabel("Copyright © 2013-2017 András Belicza. All rights reserved.") l.Style().SetFontStyle(gwu.FontStyleItalic).SetFontSize("95%") footer.Add(l) footer.AddHSpace(10) - link := gwu.NewLink("Visit Gowut Wiki page", "https://github.com/icza/gowut/wiki") + link := gwu.NewLink("Visit the Gowut Wiki", "https://github.com/icza/gowut/wiki") link.Style().SetFontStyle(gwu.FontStyleItalic).SetFontSize("95%") footer.Add(link) setNoWrap(footer) From c60635a92ad3224d141147536e9e7254005889d6 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 18:18:24 +0100 Subject: [PATCH 06/10] And changed copyright year. --- README.md | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index c12fcf5..ecfa0dd 100644 --- a/README.md +++ b/README.md @@ -16,13 +16,16 @@ To quickly install (or update to) the **latest** version, type: ## Quick test ## -To quickly test it and see it in action, run the following example applications (assuming you're in the root of your `GOPATH`): +To quickly test it and see it in action, run the following example applications. +Let's assume you're in the root of the Gowut project: + + cd $GOPATH/src/github.com/icza/gowut **1. Showcase of Features.** This one auto-opens itself in your default browser. - go run src/github.com/icza/gowut/_examples/showcase/showcase.go + go run _examples/showcase/showcase.go The Showcase of Features is also available live: https://gowut-demo.appspot.com/show @@ -30,13 +33,16 @@ The Showcase of Features is also available live: https://gowut-demo.appspot.com/ This one auto-opens itself in your default browser. - go run src/github.com/icza/gowut/_examples/simple/simple_demo.go + go run _examples/simple/simple_demo.go **3. Login window example with session management.** - go run src/github.com/icza/gowut/_examples/login/login_demo.go +Change directory so that the demo can read the test cert and key files: + + cd _examples/login + go run login_demo.go -Open the page https://localhost:3434/guitest/ in your browser to see it. +Open the page `https://localhost:3434/guitest/` in your browser to see it. ## Godoc of Gowut ## From f5665869e487fd864596358be6bbd37fa785b106 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 18:24:54 +0100 Subject: [PATCH 07/10] Embedded screenshot of simple_demo. --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index ecfa0dd..79ff14e 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ To quickly install (or update to) the **latest** version, type: ## Quick test ## To quickly test it and see it in action, run the following example applications. + Let's assume you're in the root of the Gowut project: cd $GOPATH/src/github.com/icza/gowut @@ -35,6 +36,10 @@ This one auto-opens itself in your default browser. go run _examples/simple/simple_demo.go +And this is how it looks: + +[[[https://github.com/icza/gowut/raw/dev/_images/full_app_example.png|alt=Full App Screenshot]]](https://github.com/icza/gowut/wiki/Full-App-Example) + **3. Login window example with session management.** Change directory so that the demo can read the test cert and key files: From c1bef257f69a3b63aaa298083832f530f5624880 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 18:29:08 +0100 Subject: [PATCH 08/10] Fixed clickable image link. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 79ff14e..49f5af5 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ This one auto-opens itself in your default browser. And this is how it looks: -[[[https://github.com/icza/gowut/raw/dev/_images/full_app_example.png|alt=Full App Screenshot]]](https://github.com/icza/gowut/wiki/Full-App-Example) +[![Full App Screenshot](https://github.com/icza/gowut/raw/dev/_images/full_app_example.png)](https://github.com/icza/gowut/wiki/Full-App-Example) **3. Login window example with session management.** From d4785d84e38133515f914b2fafaf6df182304335 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 18:58:14 +0100 Subject: [PATCH 09/10] Updated docs. Preparing for release v1.2.1. --- README.md | 3 ++- gwu/doc.go | 16 ++++++++-------- .../{changes-v1.3.0.txt => changes-v1.2.1.txt} | 6 +++++- 3 files changed, 15 insertions(+), 10 deletions(-) rename version-history/{changes-v1.3.0.txt => changes-v1.2.1.txt} (52%) diff --git a/README.md b/README.md index 49f5af5..1380b18 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,8 @@ Gowut (Go Web UI Toolkit) is a full-featured, easy to use, platform independent Web UI Toolkit written in pure Go, no platform dependent native code is linked or called. -For News, documentation and examples please visit the [**Gowut Wiki**](https://github.com/icza/gowut/wiki). +For documentation please visit the Gowut Wiki: +[**Gowut Wiki**](https://github.com/icza/gowut/wiki) Development takes place in the `dev` branch: https://github.com/icza/gowut/tree/dev diff --git a/gwu/doc.go b/gwu/doc.go index 8fabc8b..7faf017 100644 --- a/gwu/doc.go +++ b/gwu/doc.go @@ -18,8 +18,7 @@ Package gwu implements an easy to use, platform independent Web UI Toolkit in pure Go. -For additional documentation, News and more please visit the Gowut Wiki: -https://github.com/icza/gowut/wiki +For documentation please visit the Gowut Wiki: https://github.com/icza/gowut/wiki Introduction @@ -66,9 +65,9 @@ change (during event handling) without having to reload the whole page to see the changes. To quickly test it and see it in action, run the "Showcase of Features" -application by typing: (assuming you're in the root of your GOPATH) +application by typing: - go run src/github.com/icza/gowut/_examples/showcase/showcase.go + go run $GOPATH/src/github.com/icza/gowut/_examples/showcase/showcase.go Features of Gowut @@ -135,6 +134,7 @@ windows. When such a window is requested and no private session associated with the client exists, a new session will be created. A registered SessionHandler can be used then to create the window prior to it being served. Here's an example how to do it: + // A SessionHandler implementation: type sessHandler struct {} func (h sessHandler) Created(s gwu.Session) { @@ -154,7 +154,7 @@ from localhost), security is only guaranteed if you configure the server to run in secure (HTTPS) mode. -Under the hood +Under the Hood User interfaces are generated HTML documents which communicate with the server with AJAX calls. The GUI server is based on the web server integrated in Go. @@ -206,7 +206,7 @@ definitions of the built-in style classes. For example you can define the Buttons will have red background without having to change their style individually. -Component palette +Component Palette Containers to group and lay out components: Expander - shows and hides a content comp when clicking on the header comp @@ -234,7 +234,7 @@ Other components: Timer -Full application example +Full App Example Let a full example follow here which is a complete application. It builds a simple window, adds components to it, registers event handlers which @@ -396,7 +396,7 @@ package gwu // Gowut version information. const ( - GowutVersion = "v1.3.0-dev" // Gowut version: "v"major.minor.maintenance[-dev] + GowutVersion = "v1.2.1-dev" // Gowut version: "v"major.minor.maintenance[-dev] GowutReleaseDate = "2017-01-16 CET" // Gowut release date GowutRelDateLayout = "2006-01-02 MST" // Gowut release date layout (for time.Parse()) ) diff --git a/version-history/changes-v1.3.0.txt b/version-history/changes-v1.2.1.txt similarity index 52% rename from version-history/changes-v1.3.0.txt rename to version-history/changes-v1.2.1.txt index 05b3819..2cd0e16 100644 --- a/version-history/changes-v1.3.0.txt +++ b/version-history/changes-v1.2.1.txt @@ -1,6 +1,10 @@ -Changes and new features in v1.3.0: +Changes and new features in v1.2.1: ----------------------------------- -Replaced home page with the Gowut Wiki: https://github.com/icza/gowut/wiki + +-Changed copyright year. + +-Other minor changes and improvements. From 143c76c913fc0b55aa9ceb4b2969c1329945ce25 Mon Sep 17 00:00:00 2001 From: Andras Belicza Date: Mon, 16 Jan 2017 19:02:18 +0100 Subject: [PATCH 10/10] Made README clearer. --- README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 1380b18..87321d0 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,9 @@ Gowut (Go Web UI Toolkit) is a full-featured, easy to use, platform independent Web UI Toolkit written in pure Go, no platform dependent native code is linked or called. -For documentation please visit the Gowut Wiki: -[**Gowut Wiki**](https://github.com/icza/gowut/wiki) +For documentation please visit the [**Gowut Wiki**](https://github.com/icza/gowut/wiki). -Development takes place in the `dev` branch: https://github.com/icza/gowut/tree/dev +Development takes place in the [`dev` branch](https://github.com/icza/gowut/tree/dev). ## Quick install ##