run-program: Fix a crash when destroying the plugin
[anjuta.git] / TODO.tasks
blob0f5671f82cc610ec5f0d1d48884daa05fb7e7dcc
1 <?xml version="1.0"?>
2 <gtodo>
3 <category title="Unfiled" place="0">
4 <item>
5 <attribute id="1098255975" priority="2" done="1" start_date="731874" completed_date="731972" notify="0" last_edited="1106752594"/>
6 <summary>Anjuta 2.0 write up</summary>
7 <comment>Write a publication describing what's happening with anjuta
8 development and what's new in Anjuta 2.0 release.</comment>
9 </item>
10 <item>
11 <attribute id="1108355059" priority="1" done="1" start_date="731991" completed_date="732012" enddate="99999999" notify="0" endtime="-60" last_edited="1110211623"/>
12 <summary>Update credit list in AUTHORS file</summary>
13 <comment>Update credit list in AUTHORS file and use this file in about dialog
14 box (instead of hardcoded names in the source).</comment>
15 </item>
16 <item>
17 <attribute id="1142156772" priority="1" done="1" start_date="732382" completed_date="732391" notify="0" last_edited="1142930663"/>
18 <summary>Implement IAnjutaPrint</summary>
19 <comment>A generic print interface</comment>
20 </item>
21 <item>
22 <attribute id="1159907660" priority="1" done="0" start_date="732587" enddate="99999999" notify="0" endtime="-60" last_edited="1159907660"/>
23 <summary>Automated tests for Anjuta</summary>
24 <comment>[Skill: Basic, Work: 20hrs]
26 Implement automated tests for Anjuta using either LDTP (http://ldtp.freedesktop.org/wiki/) or Dogtail (http://people.redhat.com/zcerza/dogtail/), which ever is better. Test cases should cover existing features and be able to easily extend for future features. The implementation should alow running the test cases in an automated setup (such as a remote server with a sutable running platform).</comment>
27 </item>
28 <item>
29 <attribute id="1142156720" priority="1" done="0" start_date="732382" enddate="99999999" notify="0" endtime="-60" last_edited="1170019417"/>
30 <summary>Implement IAnjutaEditorPrint</summary>
31 <comment>Implement it using Gtk 2.10 Printing stuff</comment>
32 </item>
33 <item>
34 <attribute id="1159555748" priority="1" done="1" start_date="732583" completed_date="732709" notify="0" last_edited="1170409063"/>
35 <summary>Performance Profiler plugin</summary>
36 <comment>[Skill: medium, Work: 30hrs, Bounty: $500, Status: Completed, Bug: #359478]
38 gprof is a command line tool for profiling program performance. The executable is required to be compiled with -p flag and when the program is executed, a profiling info is collected in a file. After the execution is done, gprof can be used to interpret the profile data. This plugin parses the output from gprof and presents the information in different views -- text, lists and graphs.</comment>
39 </item>
40 <item>
41 <attribute id="1159556116" priority="1" done="0" start_date="732583" enddate="99999999" notify="0" endtime="-60" last_edited="1194519562"/>
42 <summary>Relocate 'Autoformat' code from document-manager plugin</summary>
43 <comment>[Skill: Basic, Work: 3hr, Bounty: $50]
45 Relocate 'Autoformat' code from document-manager plugin to language-support-cpp-java plugin.
47 Currently Autoformat code that is specific to c and c++ (uses indent program) is located in document-manager plugin (legacy). It should now be moved to language-support-cpp-java plugin that specializes in c/c++ processing. Preferences, UI, and processing should all be moved to the new place. At the same time, the indent configuration dialog should be fixed to fit in smaller size, presumably using notebook widget (currently it is huge and not screen appropriate for lower resolution).
49 This is partly done but somebody has to fix the new "indent" plugin!</comment>
50 </item>
51 <item>
52 <attribute id="1172700477" priority="1" done="1" start_date="732736" completed_date="732998" notify="0" last_edited="1195386488"/>
53 <summary>Better toolbar and plugins icons</summary>
54 <comment>[Skill: medium, Work: 30h, Bounty: $100, Status: Completed, Bug: #480093]
55 Create better icons for toolbars and plugin icons following the tango style guidelines to make them consistent with rest of the GNOME icons.</comment>
56 </item>
57 <item>
58 <attribute id="1159907132" priority="1" done="0" start_date="732587" enddate="99999999" notify="0" endtime="-60" last_edited="1272100803"/>
59 <summary>Bug fixing batch #1</summary>
60 <comment>[Skill: Medium, Work: 12hrs, Bounty: $25]
62 * Bug #346777 Cannot change the editor font (fixed)
63 * Bug #351214 Anjuta doesn't respect Gnome blinking cursor preference
64 * Bug #357151 a + character in a directory name confuses anjuta (fixed)
65 * Bug #357541 can't launch Anjuta project file from Nautilus (fixed)
66 * Bug #357820 Goto / Previous history should return to previous cursor (fixed)</comment>
67 </item>
68 </category>
69 <category title="libanjuta" place="2">
70 <item>
71 <attribute id="1098253934" priority="1" done="1" start_date="731874" completed_date="731901" notify="0" last_edited="1100584623"/>
72 <summary>Key notification API</summary>
73 <comment>Add anjuta_preferences_add_notify(), anjuta_preferences_remove_notify()
74 and anjuta_preferences_get_prefix() API.</comment>
75 </item>
76 <item>
77 <attribute id="1098256119" priority="1" done="1" start_date="731874" completed_date="731901" notify="0" last_edited="1100584631"/>
78 <summary>Plugins unloading</summary>
79 <comment>Do not destroy plugin objects when they are deactivated.
80 We have problem with dynamic class registeration.
81 Until we figure out that, the plugins should not be unloaded
82 when deactivated.</comment>
83 </item>
84 <item>
85 <attribute id="1107253918" priority="1" done="1" start_date="731978" completed_date="732118" notify="0" last_edited="1119330389"/>
86 <summary>Progress bar</summary>
87 <comment>Implement multiple progress bars in AnjutaStatus class. Any
88 number of progressbar should be acceptable. All of them
89 should be shown side-by-side in status bar.</comment>
90 </item>
91 <item>
92 <attribute id="1107255619" priority="1" done="0" start_date="731978" enddate="99999999" notify="0" endtime="-60" last_edited="1159483386"/>
93 <summary>Plugins reference counting</summary>
94 <comment>Implement plugins reference counting. Loading a plugin gets 1 ref and when ref count reaches 0, plugin is deactivated.</comment>
95 </item>
96 <item>
97 <attribute id="1109399546" priority="1" done="1" start_date="732003" completed_date="732583" notify="0" last_edited="1159555532"/>
98 <summary>Implement preferences as interface</summary>
99 <comment>Create the preference dialog only if it is shown and destroy it afterwards.</comment>
100 </item>
101 <item>
102 <attribute id="1098253494" priority="2" done="0" start_date="731874" enddate="99999999" notify="0" endtime="-60" last_edited="1159560595"/>
103 <summary>Preferences keys with no defaults do not register</summary>
104 <comment>Preferences keys without default values (defined in .glade file) are not registered during preferences registeration. This results in gconf type mismatch when the keys are queried.</comment>
105 </item>
106 <item>
107 <attribute id="1174914002" priority="1" done="1" start_date="732761" completed_date="732874" notify="0" last_edited="1184685742"/>
108 <summary>Add a 'Remembered plugins' page in Settings-&gt;plugins dialog</summary>
109 <comment>Add a new page in Settings-&gt;plugins dialog, along side Available plugins page, that lists the plugins that have been remembered from plugin query and selection dialog. And for 'Forget' and 'Forget all' buttons.</comment>
110 </item>
111 <item>
112 <attribute id="1159555613" priority="1" done="1" start_date="732583" completed_date="732874" enddate="99999999" notify="0" endtime="-60" last_edited="1184685821"/>
113 <summary>On demand preferences widgets creation</summary>
114 <comment>[Skill: High, Work: 30hrs, Bounty: $150, Status: Completed, Bug: #445314]
116 Currently, preferences are registered at plugins activation time. This has a real drawback that we spend unnecessary time at startup that could easily be avoided by on-demand creation of the preferences. One reason why it isn't straightforward is because preferences dialogs contain the schemas for preference keys, so unless the glade files (of the plugin preferences dialogs) are loaded, the default values of the keys are not available.
118 It should be fixed such that gconf schema files are automatically generated from the dialogs by grepping for the preferences keys schemas defined in the widget names (in the glade files) during build time and installed correctly during install time.
120 Then AnjutaPreferences class should be fixed not to preemptively create the dialog widgets on plugin activations, but rather do it at IAnjutaPreferences::merge() and IAnjutaPreferences::unmerge() implementations in plugins. The plugins would still need to setup notifications in IAnjutaPreferences::init() implementation. To accomplish all this, it might involve substantial changes in AnjutaPreferences class.</comment>
121 </item>
122 <item>
123 <attribute id="1098255692" priority="1" done="1" start_date="731874" completed_date="733068" notify="0" last_edited="1201438779"/>
124 <summary>Move encodings source files</summary>
125 <comment>Move encodings source files (anjuta-encodings.h and anjuta-encodings.c) by CVS surgery into editor plugin.</comment>
126 </item>
127 </category>
128 <category title="Plugin: Editor" place="5">
129 <item>
130 <attribute id="1098255400" priority="1" done="1" start_date="731874" completed_date="731902" notify="0" last_edited="1100696776"/>
131 <summary>Add "saved" signal</summary>
132 <comment>Saved signal to notify that document has been just saved.</comment>
133 </item>
134 <item>
135 <attribute id="1107240087" priority="1" done="1" start_date="731978" completed_date="731987" notify="0" last_edited="1108058172"/>
136 <summary>Enable 'Tab' auto-indentation</summary>
137 <comment>Automatic indentation (ala emacs) is working in Editor. For cpp lexer,
138 'Tab' should be be trapped from the editor and used to auto-indent
139 current line. Currently, trapping 'Tab' key in editor does not work.</comment>
140 </item>
141 <item>
142 <attribute id="1100696849" priority="1" done="1" start_date="731902" completed_date="732042" notify="0" last_edited="1112766406"/>
143 <summary>Update UI based on save point state.</summary>
144 <comment>Connect to save point state signal of editor and
145 accordingly update undo/redo ui sensitivity.</comment>
146 </item>
147 <item>
148 <attribute id="1107240796" priority="1" done="1" start_date="731978" completed_date="732042" notify="0" last_edited="1112766570"/>
149 <summary>Add editor view on idle</summary>
150 <comment>Add editor view using gtk_idle_add() to minimize UI freeze. Also set
151 busy/unbusy on AnjutaStatus during split operation</comment>
152 </item>
153 <item>
154 <attribute id="1108352735" priority="1" done="1" start_date="731991" completed_date="732042" notify="0" last_edited="1112766585"/>
155 <summary>Hover tooltip on editor tabs</summary>
156 <comment>Implement a hover tooltip (similar to gedit) giving details of the
157 current file. Details like Directory path, cvs rev number etc. should be there.</comment>
158 </item>
159 <item>
160 <attribute id="1107253663" priority="1" done="1" start_date="731978" completed_date="732049" notify="0" last_edited="1113397470"/>
161 <summary>gnome vfs notification for 'File changed on disk'</summary>
162 <comment>Implement gnome vfs monitor for file changed on disk and
163 prompt user to reload it.</comment>
164 </item>
165 <item>
166 <attribute id="1107240185" priority="1" done="1" start_date="731978" completed_date="732419" notify="0" last_edited="1145355619"/>
167 <summary>Expose editor functions to IAnjutaEditor</summary>
168 <comment>Currently, only a limited numbers of Editor are exposed through
169 IAnjutaEditor, IAnjutaMarkable and IAnjutaFileSavable interface.
170 Most of the API should be exposed.</comment>
171 </item>
172 <item>
173 <attribute id="1098253642" priority="1" done="0" start_date="731874" enddate="99999999" notify="0" endtime="-60" last_edited="1159483408"/>
174 <summary>Apply prefererences</summary>
175 <comment>Hidden editor preferences (those which are not settable from preferences dialog) are not applied now.</comment>
176 </item>
177 <item>
178 <attribute id="1098253712" priority="2" done="0" start_date="731874" enddate="99999999" notify="0" endtime="-60" last_edited="1159483581"/>
179 <summary>Update on configure syntax highlighting</summary>
180 <comment>When syntax highlighting colors/fonts are changed, the changes are not propagated to all editors, but it should, just like a gconf key.</comment>
181 </item>
182 <item>
183 <attribute id="1107240279" priority="1" done="0" start_date="731978" enddate="99999999" notify="0" endtime="-60" last_edited="1159560523"/>
184 <summary>Move CVS directories</summary>
185 <comment>Move data/properties/ and scintilla/ directories (by CVS surgery, and not by add/remove) into plugins/editor/ directory.</comment>
186 </item>
187 </category>
188 <category title="Plugin: Project Manager" place="8">
189 <item>
190 <attribute id="1100059875" priority="1" done="1" start_date="731895" completed_date="731972" notify="0" last_edited="1106752638"/>
191 <summary>Error messages for loading project</summary>
192 <comment>Display error messages after loading of project fails.</comment>
193 </item>
194 <item>
195 <attribute id="1107240342" priority="1" done="1" start_date="731978" completed_date="732058" notify="0" last_edited="1114162543"/>
196 <summary>Implemente IAnjutaProjectManager</summary>
197 <comment>Implemente IAnjutaProjectManager interface.</comment>
198 </item>
199 <item>
200 <attribute id="1100059926" priority="1" done="1" start_date="731895" completed_date="732058" notify="0" last_edited="1114162550"/>
201 <summary>Display progress window</summary>
202 <comment>Display a "Loading project" window before loading a project and update gtk events.</comment>
203 </item>
204 <item>
205 <attribute id="1098254033" priority="1" done="1" start_date="731874" completed_date="732058" notify="0" last_edited="1114162746"/>
206 <summary>Context menu</summary>
207 <comment>Add target and source selected signals in gbf project.
208 Export currenct selected target or source.
209 Added context menu based on current selected target or source.</comment>
210 </item>
211 <item>
212 <attribute id="1114162826" priority="1" done="1" start_date="732058" completed_date="732119" notify="0" last_edited="1119425386"/>
213 <summary>Implemente "Properties" method</summary>
214 <comment>Implement "Configure" method in gnome-build for the automake backend.
215 This will correspond to the "Properties" method in our project manager.</comment>
216 </item>
217 <item>
218 <attribute id="1159539525" priority="1" done="0" start_date="732583" enddate="99999999" notify="0" endtime="-60" last_edited="1159550650"/>
219 <summary>Complete Makefile project manager backend</summary>
220 <comment>[Skill: High, Work: 50hrs, Bounty: $700]
222 There is some initial work done for makefile based project management in gnome-build (src/backends/libgbf_mkfile) and Anjuta. Most of the base implementations have been done. The tasks is to completed this backend so that it works just like automake-backend. All the project interfaces from Anjuta via gnome-build should work meaningfully for this backend (as far as Makefile based structure would allow). Further details can be acquired by following the mailing list thread:
224 http://sourceforge.net/mailarchive/message.php?msg_id=12687933</comment>
225 </item>
226 </category>
227 <category title="Plugin: File Manager" place="7"/>
228 <category title="Plugin: Automake Build" place="4">
229 <item>
230 <attribute id="1098254207" priority="1" done="1" start_date="731874" completed_date="732059" notify="0" last_edited="1114205327"/>
231 <summary>Project manager watch</summary>
232 <comment>Watch current project's target or source and depending on it,
233 merge context menu into project manager.</comment>
234 </item>
235 <item>
236 <attribute id="1100521161" priority="1" done="0" start_date="731900" enddate="99999999" notify="0" endtime="-60" last_edited="1159482687"/>
237 <summary>Define compile commands</summary>
238 <comment>Define compile commands for various file extensions. Normally, plugin should search for a Makefile and invoke it with correct target (for example for a c file, it will be 'make file.o'). There should be a file that contains regexs for deriving target from a file name for invoking 'make'. Also, if there is no Makefile found in the directory with which to invoke the compile command, user should be prompted to create a Makefile (possibly filling it up with some template contents).</comment>
239 </item>
240 <item>
241 <attribute id="1174914425" priority="1" done="0" start_date="732761" enddate="99999999" notify="0" endtime="-60" last_edited="1174914425"/>
242 <summary>Build parameters dialog</summary>
243 <comment>Add a 'Build parameters dialog' in Build menu that brings up a dialog to configure environment variables and make parameters for the build. They would be set when ever the build is started. Also they need to be session saved and restored.</comment>
244 </item>
245 </category>
246 <category title="Plugin: Symbol Browser" place="10">
247 <item>
248 <attribute id="1098256806" priority="1" done="1" start_date="731874" completed_date="731874" notify="0" last_edited="1098286218"/>
249 <summary>Destroy file tags</summary>
250 <comment>Connect to "destroy" signal of editor and destroy file tags when
251 the editor is destroyed.</comment>
252 </item>
253 <item>
254 <attribute id="1098255828" priority="1" done="1" start_date="731874" completed_date="732042" notify="0" last_edited="1112766624"/>
255 <summary>Apply autocompletion patch</summary>
256 <comment>Apply class autocompletion patch from SF traker.</comment>
257 </item>
258 <item>
259 <attribute id="1107253892" priority="1" done="1" start_date="731978" completed_date="732058" notify="0" last_edited="1114161970"/>
260 <summary>Refresh symbol-view on idle</summary>
261 <comment>Implement symbol-view refresh on idle and show progress in a progress bar.</comment>
262 </item>
263 <item>
264 <attribute id="1100059961" priority="1" done="1" start_date="731895" completed_date="732058" notify="0" last_edited="1114161986"/>
265 <summary>Display progress window</summary>
266 <comment>Display progress window when refreshing symbols.</comment>
267 </item>
268 <item>
269 <attribute id="1107240408" priority="1" done="1" start_date="731978" completed_date="732058" notify="0" last_edited="1114162066"/>
270 <summary>Update on Add/Remove files in project</summary>
271 <comment>Using IAnjutaProjectManager interface, update symbol database
272 on add/remove of sources.</comment>
273 </item>
274 <item>
275 <attribute id="1098255485" priority="1" done="1" start_date="731874" completed_date="732058" notify="0" last_edited="1114162225"/>
276 <summary>Updated tags image on file save</summary>
277 <comment>Connect to "saved" signal of editor and update necessary
278 tags in database.</comment>
279 </item>
280 <item>
281 <attribute id="1114162285" priority="1" done="1" start_date="732058" completed_date="732065" notify="0" last_edited="1114713785"/>
282 <summary>Add dialog to create symbol tags in preferences</summary>
283 <comment>Add dialog to create symbol tags in preferences</comment>
284 </item>
285 <item>
286 <attribute id="1114330128" priority="1" done="1" start_date="732060" completed_date="732072" notify="0" last_edited="1115364308"/>
287 <summary>Create IAnjutaSymbols interface</summary>
288 <comment>Create and implement IAnjutaSymbols interface for symbol-browser
289 plugin that can work with most languages type system.</comment>
290 </item>
291 <item>
292 <attribute id="1107240571" priority="1" done="0" start_date="731978" enddate="99999999" notify="0" endtime="-60" last_edited="1159483466"/>
293 <summary>Possible memory leak</summary>
294 <comment>Investigate possible memory lead on load/unload of symbol-browser.</comment>
295 </item>
296 <item>
297 <attribute id="1100698396" priority="1" done="0" start_date="731902" enddate="99999999" notify="0" endtime="-60" last_edited="1159483495"/>
298 <summary>Workspace symbols not updated</summary>
299 <comment>Although, file symbols are updated when the file is saved, corresponding workspace symbols are not updated. That is when "goto symbol" to a symbol in this file from some other place is activated (eg. symbol pane), the old location is used.</comment>
300 </item>
301 <item>
302 <attribute id="1107240520" priority="1" done="0" start_date="731978" enddate="99999999" notify="0" endtime="-60" last_edited="1159483529"/>
303 <summary>Tags search do not retrieve all matching symbols</summary>
304 <comment>Tags search (plugins/editor/aneditor.cxx) during calltips query do not retrieve all matching function prototypes. Perhaps, the tags are not sorted, leading to incomplete binary search. Investigate it in tag-manager/ directory.</comment>
305 </item>
306 <item>
307 <attribute id="1159539232" priority="1" done="1" start_date="732583" completed_date="733382" notify="0" last_edited="1228522106"/>
308 <summary>Rewrite symbol-browser plugin</summary>
309 <comment>[Skill: High, Work: 200hr, Bounty: $1500, Status: Assigned, Bug: #358479]
311 A rewrite of symbol-browser plugin is in place. The rewrite is about view/model/store of the symbols database. It will use sqllite for the database for primary storage and implement a GtkTreeModel interface exclusively for using it in Views. A store class will be created that proxies the sqllite database and provide GtkTreeModel interface. The design for this work is still under sketch. Following the given thread for more details:
313 http://sourceforge.net/mailarchive/message.php?msg_id=36842046</comment>
314 </item>
315 </category>
316 <category title="Documentation" place="21">
317 <item>
318 <attribute id="1098255636" priority="1" done="0" start_date="731874" notify="0" last_edited="1101603303"/>
319 <summary>Update</summary>
320 <comment>All documents need update.</comment>
321 </item>
322 <item>
323 <attribute id="1107512738" priority="1" done="1" start_date="731981" completed_date="732090" notify="0" last_edited="1116916023"/>
324 <summary>Update README, HACKING and ROADMAP files</summary>
325 <comment>Update README, HACKING and ROADMAP files</comment>
326 </item>
327 </category>
328 <category title="Plugin: File Loader" place="6">
329 <item>
330 <attribute id="1098256384" priority="1" done="1" start_date="731874" completed_date="732012" notify="0" last_edited="1110230616"/>
331 <summary>Open with plugins</summary>
332 <comment>Add open with plugins menus along with open with programs menus.</comment>
333 </item>
334 <item>
335 <attribute id="1098254131" priority="1" done="1" start_date="731874" completed_date="732059" notify="0" last_edited="1114205338"/>
336 <summary>Project manager watch</summary>
337 <comment>Watch current project target or source and merge open
338 with context menu in project manager.</comment>
339 </item>
340 </category>
341 <category title="libanjuta-interfaces" place="3">
342 <item>
343 <attribute id="1107240705" priority="1" done="0" start_date="731978" enddate="99999999" notify="0" endtime="-60" last_edited="1107240705"/>
344 <summary>Documentation</summary>
345 <comment>Add gdoc API documentation in libanjuta.idl.</comment>
346 </item>
347 </category>
348 <category title="Plugin: Task Manager" place="11">
349 <item>
350 <attribute id="1107240984" priority="1" done="1" start_date="731978" completed_date="731978" notify="0" last_edited="1107250499"/>
351 <summary>Scrollbars</summary>
352 <comment>Set horizontal and vertical scrollbars AUTOMATIC.</comment>
353 </item>
354 <item>
355 <attribute id="1107241255" priority="1" done="1" start_date="731978" completed_date="731978" notify="0" last_edited="1107250502"/>
356 <summary>Remove text nodes during save</summary>
357 <comment>Remove text nodes between tags that do not have text contents.
358 It can be done either during save or load. Without this fix, the save xml is distorted.</comment>
359 </item>
360 <item>
361 <attribute id="1107253814" priority="1" done="1" start_date="731978" completed_date="732012" notify="0" last_edited="1110211719"/>
362 <summary>Column sorting</summary>
363 <comment>Implement column sorting (ala evolution).</comment>
364 </item>
365 <item>
366 <attribute id="1107241016" priority="1" done="1" start_date="731978" completed_date="732583" notify="0" last_edited="1159555711"/>
367 <summary>Text wrap</summary>
368 <comment>Text (title and description) are not automatically wrapped for long lines.</comment>
369 </item>
370 <item>
371 <attribute id="1107241155" priority="1" done="1" start_date="731978" completed_date="733426" notify="0" last_edited="1232385464"/>
372 <summary>Create text version TODO file</summary>
373 <comment>Create human readable TODO file, which will be plain text, during save.</comment>
374 </item>
375 <item>
376 <attribute id="1107240955" priority="1" done="1" start_date="731978" completed_date="733426" notify="0" last_edited="1232385465"/>
377 <summary>Proper deactivation</summary>
378 <comment>Some stuffs are left out during deactivation of the plugin. For example, gnome-vfs monitor for TODO.tasks is not removed, leading to crash when the file changes when the plugin is not active.</comment>
379 </item>
380 </category>
381 <category title="Plugin: Project Wizard" place="9">
382 <item>
383 <attribute id="1107241649" priority="1" done="0" start_date="731978" enddate="99999999" notify="0" endtime="-60" last_edited="1107241649"/>
384 <summary>More templates</summary>
385 <comment>Create more project templates, such as gnome, sdl, x11 etc..</comment>
386 </item>
387 <item>
388 <attribute id="1107241699" priority="1" done="1" start_date="731978" completed_date="731999" notify="0" last_edited="1109054075"/>
389 <summary>Prompt error when autogen could not be found</summary>
390 <comment>Prompt user with an error when 'autogen' could not be found and
391 abort the process.</comment>
392 </item>
393 <item>
394 <attribute id="1107241611" priority="1" done="1" start_date="731978" completed_date="731999" notify="0" last_edited="1109054089"/>
395 <summary>Proper message output</summary>
396 <comment>Produce a proper message output when files are created from
397 templates. For example, 'Creating project-name/file-path/file-name.c'
398 instead of full path names.</comment>
399 </item>
400 <item>
401 <attribute id="1159556062" priority="1" done="1" start_date="732583" completed_date="732761" notify="0" last_edited="1174914110"/>
402 <summary>Test and fix all project wizards templates</summary>
403 <comment>[Skill: basic, Work: 5hr, Bounty: $50, Status: Completed, Bug: #394184 ]
405 Test and fix all project wizard templates and set reasonable version numbers for the dependencies</comment>
406 </item>
407 </category>
408 <category title="anjuta" place="1">
409 <item>
410 <attribute id="1107253772" priority="1" done="1" start_date="731978" completed_date="732405" notify="0" last_edited="1144149839"/>
411 <summary>Show toolbars</summary>
412 <comment>Show toolbars that were shown in last session.</comment>
413 </item>
414 <item>
415 <attribute id="1159555638" priority="1" done="0" start_date="732583" enddate="99999999" notify="0" endtime="-60" last_edited="1159556331"/>
416 <summary>Apply http://live.gnome.org/GnomeGoals</summary>
417 <comment>[Skill: Low, Work: 20hrs]
419 Investigate general usability and HIG issues in Anjuta, come up with solutions that counter them and solve them. Issues such as Dialog consistencies, Navigational usabilities, Menus organization, features usablities should be investigated.</comment>
420 </item>
421 <item>
422 <attribute id="1159556239" priority="1" done="1" start_date="732583" completed_date="732709" notify="0" last_edited="1170409095"/>
423 <summary>Use class macros for type casting in all plugin classes</summary>
424 <comment>[Skill: Basic, Work: 1hr, Bounty: $20, Status: Completed, Bug: #374665]
426 As a bad trend from the beginning, all plugin classes (derived from AnjutaPluing class) do not define any class macros, resulting in bad type castings in wherever these classes are used. These need to be fixed to follow the right procedure.
428 The work is mostly search and replace work and could possibly be done quickly using sed and friends. Go through all the plugins in plugins/ directory, locate the class definitions of plugins (usually defined in plugin.h), add class macros and use them wherever there are force typecasting used.
430 Example: (DocmanPlugin*)plugin -&gt; DOCMAN_PLUGIN (plugin)</comment>
431 </item>
432 <item>
433 <attribute id="1159539123" priority="1" done="1" start_date="732583" completed_date="732998" notify="0" last_edited="1195386472"/>
434 <summary>Improve subvestion and cvs plugins</summary>
435 <comment>[Skill: Medium, Work: 40hrs, Bounty: $300, Status: Completed, Bug: #457477]
437 Implement missing features of CVS and subversion in their respective plugins. Basic features are already implemented, but we are missing many advanced yet powerful features of these version control systems.</comment>
438 </item>
439 <item>
440 <attribute id="1107253737" priority="1" done="1" start_date="731978" completed_date="733068" notify="0" last_edited="1201438867"/>
441 <summary>Save and load user sessions</summary>
442 <comment>Save and load user sessions</comment>
443 </item>
444 </category>
445 <category title="Plugin: Macros" place="13">
446 <item>
447 <attribute id="1107522700" priority="1" done="1" start_date="731981" completed_date="732012" enddate="99999999" notify="0" endtime="-60" last_edited="1110211761"/>
448 <summary>Dialogs do not close with escape</summary>
449 <comment>Pressing escape should close all dialogs.</comment>
450 </item>
451 </category>
452 <category title="Plugin: Message Manager" place="14">
453 <item>
454 <attribute id="1108060925" priority="1" done="1" start_date="731988" completed_date="731992" notify="0" last_edited="1108466518"/>
455 <summary>Make next/previous work</summary>
456 <comment>Make next/previous action work</comment>
457 </item>
458 <item>
459 <attribute id="1110343095" priority="1" done="1" start_date="732014" completed_date="732087" notify="0" last_edited="1116682790"/>
460 <summary>Next/Prev shortcuts</summary>
461 <comment>Next and prev menuitems should have shortcuts similar
462 to anjuta 1.x.</comment>
463 </item>
464 <item>
465 <attribute id="1110343137" priority="1" done="1" start_date="732014" completed_date="732087" notify="0" last_edited="1116682791"/>
466 <summary>Save messages</summary>
467 <comment>There should be a menuitem "Save messages ..." similar to anjuta 1.x.</comment>
468 </item>
469 <item>
470 <attribute id="1114162476" priority="1" done="1" start_date="732058" completed_date="732113" notify="0" last_edited="1118908979"/>
471 <summary>Complete preferences hooks</summary>
472 <comment>Tab position preferences does not work.</comment>
473 </item>
474 </category>
475 <category title="Plugin: Debugger" place="15">
476 <item>
477 <attribute id="1108355482" priority="1" done="1" start_date="731991" completed_date="732054" notify="0" last_edited="1113828071"/>
478 <summary>Executable choices when starting debugger</summary>
479 <comment>In debugger-manager, when the debugger is started, the user
480 should be presented with a list available exec targets in the
481 project and prompted to select one. If there is only one exec
482 target in the project, that should be considered selected and
483 user should be not prompted. If there is no project open,
484 the debugger should start anyway without loading any exec.</comment>
485 </item>
486 <item>
487 <attribute id="1108355236" priority="2" done="1" start_date="731991" completed_date="732090" notify="0" last_edited="1116915999"/>
488 <summary>Use gdb MI interface</summary>
489 <comment>Current CLI parsing is inefficient and prone to failures across different gdb
490 releases. Use gdb's MI interface to communicate with it.</comment>
491 </item>
492 <item>
493 <attribute id="1108355203" priority="2" done="1" start_date="731991" completed_date="732526" notify="0" last_edited="1154629179"/>
494 <summary>Complete UI and other porting</summary>
495 <comment>Complete debugger UI in gdb plugin. Complete porting of debugger.</comment>
496 </item>
497 <item>
498 <attribute id="1159648774" priority="1" done="0" start_date="732584" enddate="99999999" notify="0" endtime="-60" last_edited="1159648774"/>
499 <summary>Remote debugging support</summary>
500 <comment>[Skill: medium, Work: 40h]
501 Remote debugging support in Anjuta debugger.</comment>
502 </item>
503 <item>
504 <attribute id="1159648963" priority="1" done="0" start_date="732584" enddate="99999999" notify="0" endtime="-60" last_edited="1159648963"/>
505 <summary>Rewrite a working inspect/evaluate dialog</summary>
506 <comment>[Skill: Medium, Work: 20hrs]
508 Currently, this dialog use the same debug tree widget used by the local variables and watch display. I think we should keep the same widget for all this but we need perhaps to add a few options (local variables cannot be removed by example).</comment>
509 </item>
510 <item>
511 <attribute id="1159648879" priority="1" done="1" start_date="732584" completed_date="733068" notify="0" last_edited="1201438903"/>
512 <summary>Add a disassembly window</summary>
513 <comment>[Skill: Medium, Work: 40hrs]
515 The same widget that it already used for the memory view can possibly used for this view with a few improvements. It's a text widget allocating memory only for displayed text. This widget should be improved too, as currently it doesn't free any memory.</comment>
516 </item>
517 <item>
518 <attribute id="1159648703" priority="1" done="1" start_date="732584" completed_date="733116" enddate="99999999" notify="0" endtime="-60" last_edited="1205536857"/>
519 <summary>Multi-thread support</summary>
520 <comment>[Skill: medium, Work: 30h, Bounty: $150, Status: Completed, Bug: #522474]
521 Displaying all threads and selecting one should be rather easy. But this might have some impact on the display of local variables.</comment>
522 </item>
523 <item>
524 <attribute id="1159649070" priority="1" done="1" start_date="732584" completed_date="733116" enddate="99999999" notify="0" endtime="-60" last_edited="1205536884"/>
525 <summary>Cleaning the debugger plugin code</summary>
526 <comment>[Skill: Basic, Work: 10hrs, Bounty: $20, Status: Completed, Bug #522478]
527 There are some warning when compiling the gdb plugin code and some useless code that should be removed.
528 </comment>
529 </item>
530 </category>
531 <category title="Plugin: Terminal" place="16">
532 <item>
533 <attribute id="1109412369" priority="1" done="0" start_date="732003" enddate="99999999" notify="0" endtime="-60" last_edited="1109412369"/>
534 <summary>Be able to create multiple terminals</summary>
535 <comment>Be able to create multiple terminals</comment>
536 </item>
537 <item>
538 <attribute id="1114162428" priority="1" done="1" start_date="732058" completed_date="732061" notify="0" last_edited="1114423086"/>
539 <summary>Fix crash on docking</summary>
540 <comment>Terminal plugin crashes Anjuta when docking. A serious bug (could be in GDL).</comment>
541 </item>
542 </category>
543 <category title="Plugin: Default Profile" place="17">
544 <item>
545 <attribute id="1110343521" priority="1" done="1" start_date="732014" completed_date="732117" notify="0" last_edited="1119260206"/>
546 <summary>The profile should record user activated plugins</summary>
547 <comment>During the course of usage, the user could have activated
548 or deactived various plugins. The profile plugin should record this
549 events as a diff of the default selected plugins. That is, if any
550 of the default plugins have been deactivated or non-default
551 plugins have been deactivated. Then these should be
552 saved in session. If project is open, the session should be
553 project session and the default plugins are the ones determined
554 by the project file. Other the session is global and default plugins
555 are the system default plugins.</comment>
556 </item>
557 </category>
558 <category title="Plugin: Subversion" place="18">
559 <item>
560 <attribute id="1114163071" priority="1" done="1" start_date="732058" completed_date="733083" enddate="99999999" notify="0" endtime="-60" last_edited="1202735826"/>
561 <summary>Completed the remaining subversion operations</summary>
562 <comment>Completed the remaining subversion operations.</comment>
563 </item>
564 </category>
565 <category title="Plugin: Executer" place="12">
566 <item>
567 <attribute id="1114329750" priority="1" done="1" start_date="732060" completed_date="732068" notify="0" last_edited="1115021443"/>
568 <summary>Create executor plugin</summary>
569 <comment>Create executer plugin that implements IAnjutaFile interface
570 and merges a menuitem called "Execute" in 'Project' submenu
571 that will prompt the user with the list of executatable targets
572 in the project. User then selects one of them and executes.</comment>
573 </item>
574 </category>
575 <category title="Plugin: Glade" place="19">
576 <item>
577 <attribute id="1114329978" priority="1" done="0" start_date="732060" enddate="99999999" notify="0" endtime="-60" last_edited="1114329978"/>
578 <summary>Polish up interface</summary>
579 <comment>Add a label before the list of loaded glade projects ("Files:").
580 Add stock icon. Deactivate glade plugin when last glade file is closed.</comment>
581 </item>
582 <item>
583 <attribute id="1114330065" priority="1" done="0" start_date="732060" enddate="99999999" notify="0" endtime="-60" last_edited="1159483571"/>
584 <summary>Connect callback signal</summary>
585 <comment>Connect signal callback selection signal from glade and goto the signal implementation when a signal handler is selected in glade. Create the signal prototype if it is not found.</comment>
586 </item>
587 <item>
588 <attribute id="1159555859" priority="1" done="0" start_date="732583" enddate="99999999" notify="0" endtime="-60" last_edited="1159560780"/>
589 <summary>Complete Glade 3 integration</summary>
590 <comment>[Skill: High, Work: 30hrs, Bounty: $100]
592 We already have glade3 integration in anjuta working. But the implementation is incomplete and not fully usable. It should interface with Anjuta glade plugin for signals navigation, stubs creations and project files negotiations.
594 Signals navigation" means when user selects a signal in glade properties editor, Anjuta automatically brings up the implementation of that signal in its editor. This can be accomplished with SymbolBrowser plugin in anjuta, that keeps tab on all symbol updates in the project. Using the signal handler signature, Anjuta glade plugin can take help of symbol-browser plugin to find the location of function definitions in the project.
596 "Stubs creation" means when the user adds new signals, Anjuta glade plugin automatically creates the stub for the signal handler using gtk signal introspection. The signal prototype can be identified with the introspection. Where and how the stubs are added in project is a matter
597 of dissussion.
599 "Project files negotiation" means when user adds file via glade (e.g. images in dialogs), glade will notify anjuta to add the file in project and give a change to relocate it within the project. Anjuta needs to handle this request and add the files in project (possibly prompting user for relocation). Anjuta also needs to make sure glade is able to find them later.
601 Also, the the glade widget editor should be embed in Anjuta (glade-3 already has the necessary widgets).</comment>
602 </item>
603 </category>
604 <category title="Pluing: Class wizard" place="20">
605 <item>
606 <attribute id="1159534023" priority="1" done="1" start_date="732583" completed_date="732709" notify="0" last_edited="1170409133"/>
607 <summary>Improve class wizard</summary>
608 <comment>[Skill: Medium, Work: 20hrs, Bounty: $200, Status: Completed, Bug: #359862]
610 Fix c++/gobject class generator to allow adding members, methods, signals, properties and other class elements.</comment>
611 </item>
612 </category>
613 <category title="Plugin: Indent" place="22"/>
614 </gtodo>