-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
115 lines (108 loc) · 6.52 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
Introduction:
Among various followings ideas, if you want to have one available in your favorite Gnoga:
- open a discussion: https://sourceforge.net/p/gnoga/mailman/
- open a ticket: https://sourceforge.net/p/gnoga/tickets/
To do 1.3:
1. Complete SVG DOM bindings
2. Direct connection to webkit via API instead of sockets for Gtk and Mac
3. Windows native
4. Database linked controls
5. IDE and GUI Builder
(see RAPID http://www.nongnu.org/rapid/)
6. Expanded support for Gtk and Gnome
7. Provide more enumerations for various properties in Gnoga.Gui.Element
8. Lots and lots more Gnoga specific elements as modules and JS bindigns as plugins to be placed in Marketplace
9. Complete Ace Editor plugin
10. Complete MacGap support for menus
11. Add coding style rules documentation
Some other ideas:
1. Install maker GUI installs using Gnoga
2. Gnoga_Doc - Documentation generator from Ada specs resulting in a Gnoga reference app
3. Add comments with gnatdoc tags
(see http://www.adacore.com/developers/documentation/gnatdoc-users-guide/)
4. Add Ada 2012 contracts
5. Use OAuth and/or OpenID, Stephane Carrez wrote the Ada-Security framework that do just that.
(see https://code.google.com/p/ada-security/)
1. Username/Password and would be nice OAuth with google and Facebook
2. Permission levels
3. Permissions by assignment of permission groups at Level
4. Tree structure of resources to ease assignment to groups
6. How GUI designers would want to do the design for Gnoga applications:
1 - The tools they use for web design cannot be changed at the request of Ada programmers.
2 - It might be necessary to alter the design without recompiling the program.
3 - a web page may need to present more content than the Gnoga application proper.
4 - Interoperation with CMSs and web site building setups may be required.
5 - placement of parts of the views might need to adapt to devices.
A minimum requirement would be that Gnoga be capable of creating static HTML 5 pages that would act as drawing
boards or mockup for designers. They shan't use Gnoga's GUI builder. Instead, what they produce
needs to be mapped to or merged with what the Create (I guess) family of functions of Gnoga needs to do.
7. How about a identity / login package which can validate via google or facebook to establish the identity?
8. How would you go about generating/sending mail from a gnoga app?
(There is mail support in AWS, pretty comprehesive.
Basil was made for MIME, http://hafdconsulting.com/projects/basil/)
9. How to get the content of the clipboard and how to modify it ?
(see https://w3c.github.io/clipboard-apis/)
http://sourceforge.net/p/gnoga/tickets/17/
DONE 10. Add tips or compile faq in a wiki
DONE 11. Add menu bar widget
(see https://github.com/manusa/mnmenu)
http://sourceforge.net/p/gnoga/tickets/18/
12. Equivalent of List_View_Control_Type (GWindows.Common_Controls) ?
The matching functionalities are roughly:
- headers
- possibility of fixing column widths
- possibly, multiple selection
Nice to have, features of Ex_List_View_Control_Type in
GWindows.Common_Controls.Ex_List_View :
- row colors
- alternate colors
- payload
- sorting on various columns
DONE 13. Add example with a JavaFX webview browser object (HTML5 rendering, minimal user interaction)
14. Add more support for HTML5 (header, hgroup, h, footer, section, aside, article, nav, time,
details, address, figure, role...)
15. ConnectFour : Some instruction on the nature of the game and how to play might be in order.
A way to start a new game other than reloading the page might be good.
A way to quit without closing the browser window/tab would help, too.
16. An installer using GNOGA would be a nice way to demonstrate package management.
You may get some inspiration from the GWindows installer, made completely in Ada and using GWindows for the UI:
http://sf.net/p/gnavi/code/HEAD/tree/gwindows/installer/
DONE 17. Provide components not just of Gnoga GUI elements but to also package up for use things like
Jeff's PargmArc (http://pragmada.x10hosting.com/pragmarc.htm) etc.
Added Jeff's PargmArc library.
18. Install also tutorials and demos
DONE 19. Internationalisation with language translation of displayed text.
(see http://zanyblue.sourceforge.net/)
20. How I can let a user choose a file for loading (and later saving).
21. Conventional dialogs like file selection, printer selection, color selection etc.
http://sourceforge.net/p/gnoga/tickets/4/
22. Create a CMS / web site system using Gnoga.
23. Screen update triggered by data change.
24. Add a way to disconnect if there is no activity on connection for a period of time.
Adding something to add for framework since will be easier to track if there has been connection traffic.
If not you will need to manually tell your watchdog to reset its disconnect timer.
25. Improve Gnoga.Gui.Plugin.jQueryUI.Widget with Make_Select_Menu, Refresh_Select_Menu, Clear_Select_Menu.
26. 3D graphics in GNOGA: possible/how?
(see http://www.puffgames.com/3d_rubiks_kube_puzzle/)
27. Chart functions inside gnoga for things like line or bar charts.
(see PLplot is a fully-featured plotting package with two thick Ada bindings. http://plplot.org/)
28. Support database compatible with OpenOffice Base (HSQLDB)
29. Getting good scientific 2D plots is a hard requirement, getting some nice 3D stuff would be a nice addition.
Added Jeff's plotting library.
30. Use Wide_Strings type for Gnoga APIs strings and keep UTF-8 support
DONE 31. Add AdaOthello port to Gnoga.
32. Support games with http://phaser.io/.
33. Instrument Gnoga tasks with a Ada.Task_Termination handler.
34. Simplified Gnoga built with plugins copied files and GPR project files with GPS
35. Make a Scrabble with Gnoga
36. Add a higher level "animated canvas" as a component that provided the double buffering
37. Add mouse scrolling wheel support
38. Explore ways to allow more controlled re-raising of exceptions in to the user code when it makes sense.
39. Add RTCDataChannel in Gnoga to support the creation of highly reactive HTML5 online games.
1. TCP can severely degrades online game experience when there is packet loss.
2. SCTP, the protocol backing RTCDataChannels, can be configured to act like UDP.
For highly reactive games this is wanted/needed because present time information
(e.g: position) is more important than reliability.
note: read http://gafferongames.com/networking-for-game-programmers/udp-vs-tcp/ for a
more in depth explanation.
40. Adapt to Gnoga Chess game: http://adachess.com