Commit graph libervia-backend/src/tools
Author SHA1 Message Date
souliane
76413b3679 memory, tools (config): move special config retrieval from memory to tools 2014-06-09 20:40:13 +02:00
souliane
6f5de58d6e tools (config): fixConfigOption creates the section if it doesn't exist 2014-06-08 17:27:03 +02:00
souliane
90115df6f1 tools: add missing file src/tools/config.py 2014-05-23 10:03:33 +02:00
souliane
2a74cd0c06 tools (xmlui): to click a button in a "param" form will automatically submit the parameters of the same category 2014-05-16 00:53:09 +02:00
Goffi
501bc92528 core: use of the new core.log module:
/!\ this is a massive refactoring and was largely automated, it probably did bring some bugs /!\
2014-04-19 19:19:19 +02:00
Goffi
c497e19b25 core (XMLUI): _cleanValue method to avoid issues with DBus types (must be deleted in the future) 2014-04-07 16:22:35 +02:00
souliane
38eb876e94 tools, frontends (xmlui): add Widget.setInternalCallback:
- to add UI callback not communication with the bridge
    - a list of predefined actions can be used to copy, move, select values
    - extra data can be passed within the 'internal_data' element
TODO: frontend side operation to retrieve the data from node to data structure should be generic
2014-04-03 14:56:16 +02:00
souliane
ec579aff81 reverted changeset 5c7707c958d8 (revision 969) 2014-04-03 14:38:48 +02:00
souliane
6608eafb9f tools, frontends (xmlui): add setter methods for widgets + new widget InternalButton to process UI operations 2014-04-01 21:30:21 +02:00
souliane
608e2ba9fa tools, frontends, memory: param definition and XMLUI handle multi-selection for list widgets:
- we need to update urwid_satext to revision 79
                          - no more "value" attribute value in the "list" element, use
                            HTML-style "select" attribute in the "option" elements instead
                          - /!\ param saving do not handle multiple values yet!
2014-04-01 21:21:13 +02:00
Goffi
005ec59a8a core: use of Const for profile_key + replaced '@DEFAULT@' default profile_key by '@NONE@' 2014-03-21 16:27:09 +01:00
Goffi
3be53bdc69 core (XMLUI): BoolWidget now accept real boolean for value 2014-03-21 15:03:56 +01:00
souliane
b0896b53b7 tools: xml_tools.ElementParser do not replace '\n' and '\t' with ' ' by default 2014-03-15 00:15:49 +01:00
souliane
647db64941 tools, plugin XEP-0077: small fixes 2014-02-25 22:58:42 +01:00
Goffi
8f0cf4697b core (xmlui), frontends: handling of "text" type in params xml + bug fixes 2014-02-25 23:01:26 +01:00
Goffi
171feb26d2 core (xmlui): fixed types with empty value are now correctly managed in _dataFormField2XMLUIData 2014-02-25 02:22:17 +01:00
Goffi
fa6e44507c core(XMLUI): empty options in ListWidget now just show a warning message, no more assert 2014-02-13 18:50:49 +01:00
Goffi
2ca6efd8cc dates update 2014-02-04 18:32:49 +01:00
Goffi
54f9e557e1 core (XMLUI): fixed labels management for lists in _dataFormField2XMLUIData 2014-02-04 18:32:46 +01:00
Goffi
18aeb3a6aa core (XMLUI), frontends: advancedListContainer part 2: 2014-02-04 18:21:51 +01:00
Goffi
edf3e1bc87 XMLUI (core, frontends): added JidWidget and DividerWidget + popup type + some bugfixes:
- JidWidget is a text container a Jabber ID, this can be used by frontends for special treatment (e.g.: possibility to click on it)
    - DividerWidget is a separator, like a blank or dashed line
    - popup type is similar to normal window, but designed for a smaller popping window
2014-02-04 18:19:32 +01:00
Goffi
9661c1c2c5 core, frontends: implementation of AdvancedListContainer first draft + misc:
/!\ Urwid SàText must be updated as the new TableContainer is used /!\
    - fixed button value in paramsXML2XMLUI
    - new Urwid SàText TabContainer is used in Primitivus for PairsContainer and AdvancedListContainer
    - fixed in core's XMLUI AdvanceListContainer
2014-02-04 18:19:29 +01:00
Goffi
b3fb68cb63 core, frontends: XMLUI refactoring:
- XMLUI now use objects with 2 main classes: widgets (button, label, etc), and container which contain widgets according to a layout
    - widgets and containers classes are found through introspection, thereby it's really easy to add a new one
    - there is still the AddWidgetName helper, for example AddText('jid', 'test@example.net') will add a StringWidget with name "jid" and default value "test@example.net"
    - container can be inside other containers. changeContainer change the first parent container
2014-02-04 18:19:00 +01:00
Goffi
3fdca75224 xmlui: added boolean type management in XMLUIResult2DataFormResult 2014-02-04 18:04:32 +01:00
Goffi
67df03f7bf core: XMLUI now use @property for session_id and submit 2014-02-04 18:02:40 +01:00
Goffi
256a110471 core, frontends: XMLUI refactoring:
- now there is a base XMLUI class. Frontends inherits from this class, and add their specific widgets/containers/behaviour
    - wix: param.py has been removed, as the same behaviour has been reimplemented through XMLUI
    - removed "misc" argument in XMLUI.__init__
    - severals things are broken (gateway, directory search), following patches will fix them
    - core: elements names in xml_tools.dataForm2XMLUI now use a construction with category_name/param_name to avoid name conflicts (could happen with 2 parameters of the same name in differents categories).
2014-02-04 18:02:35 +01:00
Goffi
5a00dc9503 core: i18n refactoring:
- _() is no more installed in __builtin__
    - instead, there is a new sat.core.i18n module
    - added D_() method for deferred translation
    - languageSwitch method allow to dynamically change translation language
    - import gettext is tested against ImportError, and dummy methods are used when not available (mainly useful for Libervia)
2013-12-29 17:06:01 +01:00
Goffi
3857fff974 core (xml_tools), frontends: added a prefix to XMLUI form names in result data, to avoid name conflicts (e.g.: if a form has name "submit", and this name is also used internally by SàT) 2013-12-24 15:43:22 +01:00
Goffi
4d15d4a4eb core (xml_tools): dataForm*2XML renamed to dataForm*2XMLUI and now return XMLUI instead of raw XML + submit_id is managed, and session_id is returned if present 2013-12-24 15:43:22 +01:00
Goffi
80a7423f02 backend, frontends: XMLUI refactoring:
- session_id is resent in result data if found in incoming data
    - list now use distinct labels and values (label is the one displayed, value is the one used for everything else)
    - misc refactoring

/!\ urwid SàtExt must be updated ! /!\
2013-12-24 15:19:18 +01:00
Goffi
069a250b04 backend, frontends: callbacks refactoring:
- launchAction is now async, and return a dictionary for its result
    - no more action_id, actionResult* are deprecated
    - callback system is about to be unified
2013-12-24 15:19:08 +01:00
Goffi
5723ee2ef2 core (xml tools): bad default parameter in XMLUI.addList 2013-12-24 01:31:18 +01:00
souliane
718bb98300 plugin XEP-0033: implementation of the addressing feature:
- frontends pass the recipients in the extra parameter of sendMessage
    - backend checks if the target server supports the feature (this is not done yet by prosody plugin)
    - features and identities are cached per profile and server
    - messages are duplicated in history for now (TODO: redesign the database)
    - echos signals are also duplicated to the sender (FIXME)
2013-12-11 17:16:53 +01:00
souliane
b674011891 core (tools): set min and max priorities for triggers and warn if several triggers have the same not null priority 2013-12-13 05:35:24 +01:00
souliane
d7d411d6ef frontends tools: moved src/tools/frontends to frontends/src/tools 2013-11-21 18:57:10 +01:00
souliane
674a3e958d plugin tools: turn src/plugin/games.py into a plugin and move it to src/plugins/plugin_misc_room_game.py 2013-11-21 18:23:08 +01:00
souliane
ea67ed7a61 plugins (games): more factorization and flexibility for launching and joining games:
- "MUC user joined", "MUC user left" and class XMPPHandler are managed directly in RoomGame
- renamed __init__ parameters 'player_init_data' to 'player_init' and 'options' to 'game_init'
- pass the players list in radiocol method 'createGame' and signal 'radiocolStarted' (needed for invitation system and for UI players identification)
- added some parameters to manage who can invite, who can join, who to wait for... managed with check***Auth methods
- joining a game that is already launched may be possible, regarding these parameters and the invitation list
- leave and join a game again is partly managed: new tarot round is launched, we should keep playing the same round instead
2013-11-21 15:49:53 +01:00
souliane
6a99705523 frontends tools: added symbols for MUC user activity identification 2013-11-21 15:38:53 +01:00
souliane
d3c12524c9 plugins (games): add a method to send messages more easily 2013-11-18 14:25:40 +01:00
souliane
8190f82caf plugins (MUC, tools, games): generalize the generation of a unique room name when joining a MUC and no room is specified:
- method to get the MUC service moved to plugin_xep_0045
- joinMUC returns the muc name (given by user or generated)
- getUniqueName can receive a specified service in argument
2013-11-17 16:59:12 +01:00
souliane
3be7c13314 plugins (tools): collective games (with no opponent, like radiocol) were handled like other games 2013-11-17 16:30:46 +01:00
souliane
f1cf1fb53f tools frontend: moved here from Libervia some definitions for message composition 2013-11-09 09:12:38 +01:00
souliane
f59304a2f6 misc: added a file for frontend's string operations:
- the method getURLParams defined here is needed for Libervia autologin feature
2013-11-08 19:14:13 +01:00
souliane
36cea6fc91 tools: renamed tools.jid.JID attribute "short" to "bare" 2013-10-29 16:26:55 +01:00
souliane
d792723caa core (tools): small fix in using imported methods 2013-10-24 08:47:45 +02:00
souliane
34947f8840 plugins radiocol, card_game, quiz: code factorization 2013-10-23 12:45:13 +02:00
souliane
ba4c9158ea tools: moved src/tools/games.py to src/tools/frontends/ 2013-10-18 11:58:42 +02:00
Goffi
33a1a7e1c3 new xml tools module (sat.tools.frontends.xml):
- inlineRoot display the first XHTML tag as inline.
2013-11-09 10:17:53 +01:00
Goffi
a96a957bfb moved sat.tools.frontend to sat.tools.frontends 2013-11-08 16:35:51 +01:00
souliane
7b4fa64df8 frontend, primitivus: added input history (mode-wise) 2013-11-07 16:58:20 +01:00