Mercurial > libervia-web
changeset 48:153de5d461a4
added Social Contract \o. (in French only so far)
- new infoDialog, to show widget, it's used here to show an external webpage
- some CSS tuning
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 26 May 2011 18:44:31 +0200 (2011-05-26) |
parents | 7cabe3c1a5f2 |
children | f1d2eb9b2523 |
files | browser_side/dialog.py browser_side/panels.py public/contrat_social.html public/libervia.css |
diffstat | 4 files changed, 154 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/browser_side/dialog.py Thu May 26 17:17:48 2011 +0200 +++ b/browser_side/dialog.py Thu May 26 18:44:31 2011 +0200 @@ -26,6 +26,7 @@ from pyjamas.ui.ListBox import ListBox from pyjamas.ui.Button import Button from pyjamas.ui.HTML import HTML +from pyjamas.ui import HasAlignment from pyjamas.ui.KeyboardListener import KEY_ESCAPE class ContactsChooser(DialogBox): @@ -112,27 +113,36 @@ self.hide() self.callback(False) -class SimpleDialog(DialogBox): +class InfoDialog(DialogBox): + """Dialog which just show a widget and a close button""" - def __init__(self, title, body, callback = None): + def __init__(self, title, widget, callback = None): """Simple notice dialog box @param title: HTML put in the header - @param body: HTML put in the body""" + @param body: widget put in the body""" DialogBox.__init__(self, centered=True) self.callback = callback _body = VerticalPanel() + _body.setSize('100%','100%') + _body.setHorizontalAlignment(HasAlignment.ALIGN_CENTER) _body.setSpacing(4) - _body.add(HTML(body)) + _body.add(widget) + _body.setCellWidth(widget, '100%') _body.add(Button("Close", self.onClose)) - _body.setStyleName("dialogBody") self.setHTML(title) self.setWidget(_body) + self.panel.setWidth('100%') def onClose(self): self.hide() if self.callback: self.callback() +class SimpleDialog(InfoDialog): + + def __init__(self, title, body, callback = None): + InfoDialog.__init__(self, title, HTML(body), callback) + class PopupPanelWrapper(PopupPanel): """This wrapper catch Escape event to avoid request cancellation by Firefox"""
--- a/browser_side/panels.py Thu May 26 17:17:48 2011 +0200 +++ b/browser_side/panels.py Thu May 26 18:44:31 2011 +0200 @@ -34,9 +34,9 @@ from pyjamas.ui.MenuItem import MenuItem from pyjamas.ui.Label import Label from pyjamas.ui.HTML import HTML +from pyjamas.ui.Frame import Frame from pyjamas.ui.DropWidget import DropWidget from pyjamas.ui.ClickListener import ClickHandler -from pyjamas.ui import HasAlignment from pyjamas.ui.KeyboardListener import KEY_ENTER from pyjamas.Timer import Timer from pyjamas import Window @@ -50,7 +50,7 @@ from tools import html_sanitize from datetime import datetime from time import time -from dialog import ContactsChooser, PopupPanelWrapper +import dialog class MenuCmd: @@ -69,7 +69,8 @@ SimplePanel.__init__(self) menu_general = MenuBar(vertical=True) - menu_general.addItem("Properties", MenuCmd(self, "onProperties")) + menu_general.addItem("Social contract", MenuCmd(self, "onSocialContract")) + menu_general.addItem("About", MenuCmd(self, "onAbout")) menu_games = MenuBar(vertical=True) menu_games.addItem("Tarot", MenuCmd(self, "onTarotGame")) @@ -80,18 +81,28 @@ menubar.addItem(MenuItem("Games", True, menu_games)) self.add(menubar) - def onProperties(self): - Window.alert("Properties selected") + #General menu + def onSocialContract(self): + _frame = Frame('contrat_social.html') + _frame.setStyleName('infoFrame') + _dialog = dialog.InfoDialog("Contrat Social", _frame) + _dialog.setSize('80%', '80%') + _dialog.show() + + def onAbout(self): + dialog.SimpleDialog("About", "Libervia, a Salut à Toi project").show() + + #Game menu def onTarotGame(self): #Window.alert("Tarot selected") #self.host.tab_panel.add(EmptyPanel(self.host), "Tarot") def onPlayersSelected(other_players): self.host.bridge.call('launchTarotGame', None, other_players) - ContactsChooser(self.host, onPlayersSelected, 3, text="Please select 3 other players").getContacts() + dialog.ContactsChooser(self.host, onPlayersSelected, 3, text="Please select 3 other players").getContacts() def onXiangqiGame(self): - Window.alert("Xiangqi selected") + Window.alert("A Xiangqi is planed, but not available yet") class DropCell(DropWidget): """Cell in the middle grid which replace itself with the dropped widget on DnD""" @@ -245,7 +256,7 @@ return contents = HTML(msg) - self._popup = PopupPanelWrapper(autoHide=False, modal=False) + self._popup = dialog.PopupPanelWrapper(autoHide=False, modal=False) self._popup.target_data = target_data self._popup.add(contents) self._popup.setStyleName("warningPopup")
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/public/contrat_social.html Thu May 26 18:44:31 2011 +0200 @@ -0,0 +1,110 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<html><head> + + <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> + <title>Salut � Toi: Contrat Social</title> + + +</head><body> +Le projet � Salut � Toi � est n� d'un besoin de protection de nos +libert�s, de notre vie priv�e et de notre ind�pendance. Il se veut +garant des droits et libert�s qu'un utilisateur a vis � vis de ses +propres informations, des informations num�riques sur sa vie ou celles +de ses connaissances, des donn�es qu'il manipule; et se veut �galement +un point de contact humain, ne se substituant pas aux rapports r�els, +mais au contraire les facilitant.<br> + +Salut � Toi lutte et luttera toujours contre toute forme de main mise +sur les technologies par des int�r�ts priv�s. Le r�seau global doit +appartenir � tous, et �tre un point d'expression et de libert� pour +l'Humanit�.<br> + +<br> + +� ce titre, � Salut � Toi � et ceux qui y participent se basent sur un +contrat social, un engagement vis � vis de ceux qui l'utilisent. Ce +contrat consiste en les points suivants:<br> + +<ul> + + <li>nous pla�ons la <span style="font-style: italic;">Libert�</span> en t�te de nos priorit�s: libert� de +l'utilisateur, libert� vis � vis de ses donn�es. Pour cela, � Salut � +Toi � est un logiciel Libre - condition essentielle -, et son +infrastructure se base �galement sur des logiciels Libres, c'est � dire +des logiciels qui respectent ces 4 libert�s fondamentales + <ul> + + <li>la libert� d'ex�cuter le programme, pour tous les usages,</li> + + </ul> + <ul> + + <li>la libert� d'�tudier le fonctionnement du programme et de +l'adapter � ses besoins,</li> + + </ul> + <ul> + + <li>la libert� de redistribuer des copies du programme</li> + + </ul> + <ul> + + <li>la libert� d'am�liorer le programme et de distribuer ces +am�liorations au public, pour en faire profiter toute la communaut�.<br> +</li> + + </ul> +</li> + + + + + +Vous avez ainsi la possibilit� d'installer votre propre version de � +Salut � Toi � sur votre propre machine, d'en v�rifier - et de +comprendre - ainsi son fonctionnement, de l'adapter � vos besoins, d'en +faire profiter vos amis. + + <li>Les informations vous concernant vous appartiennent, et nous +n'aurons pas la pr�tention - et l'ind�cence ! - de consid�rer le +contenu que vous produisez ou faites circuler via � Salut � Toi � comme +nous appartenant. De m�me, nous nous engageons � ne jamais faire de +profit en revendant vos informations personnelles.</li> + <li>Nous incitons fortement � la <span style="text-decoration: underline;">d�centralisation g�n�ralis�e</span>. � +Salut � Toi � �tant bas� sur un protocole d�centralis� (XMPP), il l'est +lui-m�me par nature. La d�centralisation est essentielle pour une +meilleure protection de vos informations, une meilleure r�sistance � la +censure ou aux pannes, et pour �viter les d�rives autoritaires.</li> + <li>Luttant contre les tentatives de contr�le priv� et les abus +commerciaux du r�seau global, et afin de garder notre ind�pendance, +nous nous refusons � toute forme de publicit�: vous ne verrez <span style="font-weight: bold;">jamais</span> +de forme de r�clame commerciale de notre fait.</li> + <li>L'<span style="font-style: italic;">�galit�</span> des utilisateurs est essentielle pour nous, nous +refusons toute forme de discrimination, que ce soit pour une zone +g�ographique, une cat�gorie de la population, ou tout autre raison.</li> + <li>Nous ferons tout notre possible pour lutter contre toute +tentative de censure. Le r�seau global doit �tre un moyen d'expression +pour tous.</li> + <li>Nous refusons toute id�e d'autorit� absolue en ce qui concerne +les d�cisions prises pour � Salut � Toi � et son fonctionnement, et le +choix de la d�centralisation et l'utilisation de logiciel Libre permet +de lutter contre toute forme de hi�rarchie.</li> + + <li>L'id�e de <span style="font-style: italic;">Fraternit�</span> est essentielle, aussi: + <ul> + <li>nous ferons notre +possible pour aider les utilisateurs, quel que soit leur niveau</li> + <li>de m�me, des efforts seront fait quant � +l'accessibilit� aux personnes victimes d'un handicap</li> + <li>� Salut � Toi �, +XMPP, et les technologies utilis�es facilitent les �changes +�lectroniques, mais nous d�sirons mettre l'accent sur les rencontres +r�elles et humaines: nous favoriserons toujours le r�el sur le virtuel.</li> + </ul> +</li> + + +</ul> + +</body></html>
--- a/public/libervia.css Thu May 26 17:17:48 2011 +0200 +++ b/public/libervia.css Thu May 26 18:44:31 2011 +0200 @@ -133,6 +133,7 @@ margin: 2px; font-weight: bold; cursor: default; + text-align: center; } .gwt-DialogBox .Registration { @@ -150,6 +151,10 @@ text-align: center; } +.infoDialogBody { + width: 100%; + height: 100% +} /* Contact List */ .contactTitle { @@ -406,3 +411,8 @@ border: 3px dashed red; } +.infoFrame { + position: relative; + width: 100%; + height: 100%; +}