from vois.vuetify import settings
settings.dark_mode = True
settings.color_first = '#808dc4'
settings.button_rounded = False
from vois.vuetify import mainPage, page, dialogGeneric
from ipywidgets import widgets, Layout
from random import randrange
output = widgets.Output(layout=Layout(width='0px', height='0px'))
display(output)
title = 'Multipage Demo'
loremipsum = '''
Lorem ipsum dolor sit amet. Non quas aliquam ad iste amet ut vero delectus sed dolores inventore est autem atque id nostrum ipsam et veritatis Quis?
Est impedit amet non odio molestiae qui dolore omnis ut enim officia ea tempora accusantium id ipsam mollitia id veritatis fugit.
Quo quidem quas rem eligendi Quis ea quam dolor. Qui quisquam autem et molestiae ipsa aut commodi laborum sed illum deserunt
qui illo molestias qui esse velit eum quod quos.
'''
# Create the main page
m = mainPage.mainPage(title=title,
subtitle='Showcase how easy is to create a multi-page application using vois',
credits="vois library development team",
titlebox_widthpercent=50, titlebox_opacity=0.2, titlebox_border=0,
vois_show=True, vois_opacity=0.1,
button_widthpercent=23, button_heightpercent=14, button_elevation=16, button_opacity=0.6,
background_image=55, #1+randrange(59),
#background_filter='grayscale(0.85)',
background_filter='blur(2px) brightness(1.2) contrast(0.7) sepia(0.05) saturate(1.2)',
creditbox_opacity=0,
text_color='#222222')
# Manage clicks on the icons on top of the secondary pages
def on_pageclick():
dlg = dialogGeneric.dialogGeneric(title=title,
text=loremipsum,
titleheight='dense', show=True, addclosebuttons=True, width=500,
fullscreen=False, content=[], output=output)
# Create the page for Function 1
def on_page1():
p = page.page(title, 'Function 1', output,
titlecolor=settings.color_first, titledark=True, footercolor='#cccccc', footerdark=False,
logoappurl='https://jeodpp.jrc.ec.europa.eu/services/shared/pngs/BDAP_Logo1024transparent.png',
on_logoapp=on_pageclick, copyrighttext='European Commission - Joint Research Centre',
show_back=True, show_help=True, on_help=on_pageclick, show_credits=True, on_credits=on_pageclick)
card = p.create()
card.children = ['Put widgets into the empty space of the page']
p.open()
# Add to the main page the button to open Function 1 page
m.addButton('Function 1',
#subtitle='Launch calculation of ...',
tooltip='Tooltip text to display on hover',
image='https://picsum.photos/seed/%d/200/200'%randrange(1000),
onclick=on_page1)
# Add to the main page other buttons
for i in range(2,7): m.addButton('Function %d'%i, image='https://picsum.photos/seed/%d/200/200'%randrange(1000))
# Display the main page
m.open()