Skip to content

Commit

Permalink
add action and fix layout
Browse files Browse the repository at this point in the history
  • Loading branch information
JustinBeBoy committed Jan 24, 2021
1 parent 56bfecb commit 35f2d24
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 21 deletions.
2 changes: 1 addition & 1 deletion ui/page.go
Original file line number Diff line number Diff line change
Expand Up @@ -764,7 +764,7 @@ func (page pageCommon) subpageEventHandler(sp SubPage) {
}
}

func (page pageCommon) SubPageLayoutWithoutInfo(gtx layout.Context, sp SubPage) layout.Dimensions {
func (page pageCommon) SubPageLayoutWithoutWallet(gtx layout.Context, sp SubPage) layout.Dimensions {
page.subPageEventHandle(sp)

if page.subPageInfoButton.Button.Clicked() {
Expand Down
55 changes: 35 additions & 20 deletions ui/security_tools_page.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package ui

import (
"image"

"gioui.org/layout"
"gioui.org/widget"
"github.com/planetdecred/godcr/ui/values"
Expand All @@ -11,15 +13,16 @@ import (
const PageSecurityTools = "Security_Tools"

type securityToolsPage struct {
theme *decredmaterial.Theme

dummyText decredmaterial.Label
theme *decredmaterial.Theme
verifyMess *widget.Clickable
validateAdd *widget.Clickable
}

func (win *Window) SecurityToolsPage(common pageCommon) layout.Widget {
pg := &securityToolsPage{
theme: common.theme,
dummyText: common.theme.H5("Coming soon"),
theme: common.theme,
verifyMess: new(widget.Clickable),
validateAdd: new(widget.Clickable),
}

return func(gtx C) D {
Expand All @@ -37,24 +40,27 @@ func (pg *securityToolsPage) Layout(gtx layout.Context, common pageCommon) layou
*common.page = PageMore
},
body: func(gtx C) D {
gtx.Constraints.Min = gtx.Constraints.Max
return layout.Inset{Top: values.MarginPadding5}.Layout(gtx, func(gtx C) D {
return layout.Flex{Spacing: layout.SpaceBetween}.Layout(gtx,
layout.Flexed(.5, pg.message(common)),
layout.Rigid(func(gtx C) D {
size := image.Point{X: 15, Y: gtx.Constraints.Min.Y}
return layout.Dimensions{Size: size}
}),
layout.Flexed(.5, pg.validateAddress(common)),
)
})
},
infoTemplate: SecurityToolsInfoTemplate,
}
return common.SubPageLayoutWithoutInfo(gtx, page)
return common.SubPageLayoutWithoutWallet(gtx, page)
}
return common.Layout(gtx, body)
}

func (pg *securityToolsPage) message(common pageCommon) layout.Widget {
return func(gtx C) D {
return pg.pageSections(gtx, common.icons.verifyMessageIcon, func(gtx C) D {
return pg.pageSections(gtx, common.icons.verifyMessageIcon, pg.verifyMess, func(gtx C) D {
return layout.Flex{Axis: layout.Horizontal}.Layout(gtx,
layout.Rigid(func(gtx C) D {
return common.theme.Body1("Verify Message").Layout(gtx)
Expand All @@ -66,7 +72,7 @@ func (pg *securityToolsPage) message(common pageCommon) layout.Widget {

func (pg *securityToolsPage) validateAddress(common pageCommon) layout.Widget {
return func(gtx C) D {
return pg.pageSections(gtx, common.icons.locationPinIcon, func(gtx C) D {
return pg.pageSections(gtx, common.icons.locationPinIcon, pg.validateAdd, func(gtx C) D {
return layout.Flex{Axis: layout.Horizontal}.Layout(gtx,
layout.Rigid(func(gtx C) D {
return common.theme.Body1("Validate Address").Layout(gtx)
Expand All @@ -76,24 +82,33 @@ func (pg *securityToolsPage) validateAddress(common pageCommon) layout.Widget {
}
}

func (pg *securityToolsPage) pageSections(gtx layout.Context, icon *widget.Image, body layout.Widget) layout.Dimensions {
func (pg *securityToolsPage) pageSections(gtx layout.Context, icon *widget.Image, action *widget.Clickable, body layout.Widget) layout.Dimensions {
return layout.Inset{Bottom: values.MarginPadding10}.Layout(gtx, func(gtx C) D {
return pg.theme.Card().Layout(gtx, func(gtx C) D {
return layout.UniformInset(values.MarginPadding15).Layout(gtx, func(gtx C) D {
gtx.Constraints.Min.X = gtx.Constraints.Max.X
return layout.Flex{Axis: layout.Vertical, Alignment: layout.Middle, Spacing: layout.SpaceAround}.Layout(gtx,
layout.Rigid(func(gtx C) D {
icon := icon
icon.Scale = 1
return icon.Layout(gtx)
}),
layout.Rigid(body),
)
return decredmaterial.Clickable(gtx, action, func(gtx C) D {
return layout.UniformInset(values.MarginPadding15).Layout(gtx, func(gtx C) D {
return layout.Flex{Axis: layout.Vertical, Alignment: layout.Middle, Spacing: layout.SpaceAround}.Layout(gtx,
layout.Rigid(func(gtx C) D {
icon := icon
icon.Scale = 1
return icon.Layout(gtx)
}),
layout.Rigid(body),
layout.Rigid(func(gtx C) D {
size := image.Point{X: gtx.Constraints.Max.X, Y: gtx.Constraints.Min.Y}
return layout.Dimensions{Size: size}
}),
)
})
})
})
})
}

func (pg *securityToolsPage) handle(common pageCommon) {
if pg.verifyMess.Clicked() {
}

if pg.validateAdd.Clicked() {
}
}

0 comments on commit 35f2d24

Please sign in to comment.