Statistics
| Branch: | Revision:

root / dev-notes.txt

History | View | Annotate | Download (2.7 kB)

1 1:b8a296c9fa6d loverdos
A few development notes while working on this project
2 1:b8a296c9fa6d loverdos
3 3:196142c859ec loverdos
[0] Master XUL Reference
4 3:196142c859ec loverdos
5 3:196142c859ec loverdos
		* https://developer.mozilla.org/En/XUL
6 3:196142c859ec loverdos
7 1:b8a296c9fa6d loverdos
[1]		Javascript Development
8 1:b8a296c9fa6d loverdos
		May need to use a javascript framework for:
9 1:b8a296c9fa6d loverdos
		*		 better code organization
10 1:b8a296c9fa6d loverdos
		*		 whichever other utilities present (e.g. JSON)
11 1:b8a296c9fa6d loverdos
		Possible candidates are:
12 1:b8a296c9fa6d loverdos
		*				 jQuery [http://jquery.com/]
13 1:b8a296c9fa6d loverdos
		*				 Dojo [http://www.dojotoolkit.org/]
14 1:b8a296c9fa6d loverdos
		*				 ExtJS [http://extjs.com/]
15 1:b8a296c9fa6d loverdos
16 1:b8a296c9fa6d loverdos
		jQuery integrates well with Firefox extensions and is licensed as MIT/GPL.
17 1:b8a296c9fa6d loverdos
		For widgets, an external library [http://jqueryui.com/] is present.
18 1:b8a296c9fa6d loverdos
19 1:b8a296c9fa6d loverdos
		Dojo has a rich set of widgets but there is evidense of not integrating well
20 1:b8a296c9fa6d loverdos
		with Firefox extensions. Licensed as BSD.
21 1:b8a296c9fa6d loverdos
22 1:b8a296c9fa6d loverdos
		ExtJS is commercial.
23 1:b8a296c9fa6d loverdos
24 1:b8a296c9fa6d loverdos
[2]	Useful Firefox Extensions
25 1:b8a296c9fa6d loverdos
26 1:b8a296c9fa6d loverdos
		* Console2 [https://addons.mozilla.org/en-US/firefox/addon/1815]
27 1:b8a296c9fa6d loverdos
		HomePage @ http://console2.mozdev.org/
28 1:b8a296c9fa6d loverdos
		Much better Javascript console
29 1:b8a296c9fa6d loverdos
30 1:b8a296c9fa6d loverdos
		* Dom Inspector [https://developer.mozilla.org/En/DOM_Inspector]
31 1:b8a296c9fa6d loverdos
		Very useful viewing the DOM hierarchy of XUL windows.
32 1:b8a296c9fa6d loverdos
33 1:b8a296c9fa6d loverdos
		* Extension Developer [https://addons.mozilla.org/en-US/firefox/addon/7434]
34 1:b8a296c9fa6d loverdos
		Provides a wealth of tools, such as
35 1:b8a296c9fa6d loverdos
				* interactive JS shell,
36 1:b8a296c9fa6d loverdos
				* HTML editor
37 1:b8a296c9fa6d loverdos
				* XUL editor
38 1:b8a296c9fa6d loverdos
				* live preview
39 1:b8a296c9fa6d loverdos
				* regular expressions tester
40 1:b8a296c9fa6d loverdos
				* XPath tester
41 1:b8a296c9fa6d loverdos
				* extension packaging utility
42 1:b8a296c9fa6d loverdos
43 1:b8a296c9fa6d loverdos
		* CCK Wizard [https://addons.mozilla.org/en-US/firefox/addon/2553]
44 1:b8a296c9fa6d loverdos
		HomePage @ http://www.mozilla.org/projects/cck/firefox
45 1:b8a296c9fa6d loverdos
		Helps creating an extension.
46 1:b8a296c9fa6d loverdos
		Lots of features.
47 1:b8a296c9fa6d loverdos
48 2:bee4634db976 loverdos
		* Firefly [http://firefly.mozdev.org/index.php]
49 2:bee4634db976 loverdos
		A File Manager
50 2:bee4634db976 loverdos
		--> Use ideas for code that handles local disk access
51 2:bee4634db976 loverdos
		-->
52 2:bee4634db976 loverdos
53 1:b8a296c9fa6d loverdos
[3] UI Considerations
54 1:b8a296c9fa6d loverdos
55 1:b8a296c9fa6d loverdos
		* Extend the GWT interface to use one more pane for local disk
56 1:b8a296c9fa6d loverdos
		This is classical IExplorer functionality
57 1:b8a296c9fa6d loverdos
58 1:b8a296c9fa6d loverdos
		* Use ideas from tools like
59 1:b8a296c9fa6d loverdos
			* Midnight Commander [http://www.midnight-commander.org/]
60 1:b8a296c9fa6d loverdos
			* muCommander [http://www.mucommander.com/]
61 1:b8a296c9fa6d loverdos
62 3:196142c859ec loverdos
[5] Extension examples
63 3:196142c859ec loverdos
64 3:196142c859ec loverdos
		* http://kb.mozillazine.org/Getting_started_with_extension_development
65 3:196142c859ec loverdos
66 3:196142c859ec loverdos
[6] xulrunner
67 3:196142c859ec loverdos
68 3:196142c859ec loverdos
		* Getting Started with XULRunner
69 3:196142c859ec loverdos
			https://developer.mozilla.org/en/Getting_started_with_XULRunner
70 3:196142c859ec loverdos
71 3:196142c859ec loverdos
[7] RFC2104
72 3:196142c859ec loverdos
73 3:196142c859ec loverdos
		* HMAC: Keyed-Hashing for Message Authentication
74 3:196142c859ec loverdos
			http://www.ietf.org/rfc/rfc2104.txt
75 3:196142c859ec loverdos
76 3:196142c859ec loverdos
		* Javascript implementation (BSD License)
77 3:196142c859ec loverdos
		  http://pajhome.org.uk/crypt/md5/scripts.html
78 3:196142c859ec loverdos
			http://pajhome.org.uk/crypt/md5/jshash-2.2.zip
79 9:f8b3a57f616e loverdos
80 9:f8b3a57f616e loverdos
[8] Native File I/O
81 9:f8b3a57f616e loverdos
82 9:f8b3a57f616e loverdos
		* https://developer.mozilla.org/en/Code_snippets/File_I%2f%2fO
83 9:f8b3a57f616e loverdos
84 23:5d1c4169b462 loverdos
[9] How to fix name collisions in Mercurial
85 23:5d1c4169b462 loverdos
		I need that durin dev :-) Take a look at changesets 21:53c52498e7c2 & 22:f4b0d0a342e5
86 23:5d1c4169b462 loverdos
		* http://mercurial.selenic.com/wiki/FixingCaseCollisions
87 52:0c5b97d26063 loverdos
88 52:0c5b97d26063 loverdos
[10] Plugin auto-update
89 52:0c5b97d26063 loverdos
		 * http://www.borngeek.com/firefox/automatic-firefox-extension-updates/
90 52:0c5b97d26063 loverdos
		* https://developer.mozilla.org/en/Extension_Versioning,_Update_and_Compatibility