<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3634089959753973558</id><updated>2011-12-06T20:31:00.966+02:00</updated><category term='planet-gnome'/><category term='anjuta'/><category term='gsoc'/><category term='gnome'/><title type='text'>dragos dena</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-3291040548498123303</id><published>2010-12-01T01:52:00.002+02:00</published><updated>2010-12-01T01:54:41.044+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><title type='text'>Getting the Anjuta Snippets Plugin</title><content type='html'>&amp;nbsp;&amp;nbsp; &amp;nbsp;Since some people asked me how to build and use the plugin, I guess I should update the status: right now it's in the current Anjuta release so the only thing you need to do is compile Anjuta to use it. Still, at this point it's pretty buggy (I need to port it to GTK+ 3) so it won't exactly offer the best user experience :).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-3291040548498123303?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/3291040548498123303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/12/getting-snippets-manager-plugin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/3291040548498123303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/3291040548498123303'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/12/getting-snippets-manager-plugin.html' title='Getting the Anjuta Snippets Plugin'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-6585486439175640723</id><published>2010-07-11T18:43:00.000+03:00</published><updated>2010-07-11T18:43:36.623+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Anjuta Snippets Plugin - weekly report #7</title><content type='html'>&amp;nbsp;&amp;nbsp; &amp;nbsp;The last weekly report is missing from my blog because I was halfway doing the Snippets Editor. I'm not 100% done yet, but now I only have some minor details that I have to implement. In the last 2 weeks I went trough 3 layout's for the editor, being helped by Johannes suggestions so I can clean it up a bit. Will present all 3 of them, as it may be interesting to see how it evolved (and how I learnt a few things about how the layout should look). For those that can't remember where the editor should have been place, you can see the screenshot from my&amp;nbsp;&lt;a href="http://1.bp.blogspot.com/_686kVBsV-R8/TCi5i6CTzkI/AAAAAAAACpM/AX2V9C9DUy0/s1600/snippets_browser_shown_editor.png"&gt;fifth weekly report&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;b&gt;The first one looked like this&lt;/b&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_686kVBsV-R8/TDnL5BQ3fPI/AAAAAAAACpU/rP-KU3zZUjQ/s1600/snippet_edit.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="218" src="http://3.bp.blogspot.com/_686kVBsV-R8/TDnL5BQ3fPI/AAAAAAAACpU/rP-KU3zZUjQ/s320/snippet_edit.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;I only have the screenshot from Glade with it, since I didn't actually got to import it. Besides the fact that I didn't aligned the entries (which could of been fixed), the main problem was that I had a notebook there and the UI was getting a bit heavy. The plan was to focus on one of the first 2 tabs depending on what you had selected (a group or a snippet) in the Snippets Browser which was attached. The 3rd one was there to edit global variables of course (which are now called "Anjuta variables").&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;b&gt;In the second one, I gave up on the notebook&lt;/b&gt; (not to mention that I aligned the entries):&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_686kVBsV-R8/TDnOzJevoyI/AAAAAAAACpk/gEkYJKlnJ-o/s1600/editor_shown.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_686kVBsV-R8/TDnOzJevoyI/AAAAAAAACpk/gEkYJKlnJ-o/s320/editor_shown.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;At the time I took the screenshot I didn't had anything implemented for the editor (except the model for the variables tree view there), but the functionality wasn't changed. The other 2 tabs: snippets group and global variables were dropped. The Snippets Group name is now editable from the browser. I also had a description field for the snippets group which I wanted to display as a tooltip, but having a special tab just for that was a bit pointless. The global variables editor was moved (again) to the preferences window, so the notebook wasn't needed anymore.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Now, &lt;b&gt;the third and current version looks like this&lt;/b&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_686kVBsV-R8/TDnSq1Fwx7I/AAAAAAAACps/zqjOgNGVlBA/s1600/new_layout.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_686kVBsV-R8/TDnSq1Fwx7I/AAAAAAAACps/zqjOgNGVlBA/s320/new_layout.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;There isn't a frame anymore around the editor, things were moved around a bit and I think I have proper padding and sizing for the items in the editor. As a note, the content shown there is in preview mode - the preview button is a toggle one and while in preview mode, the variables are evaluated and the text view isn't editable. As another note, the GtkTextView will be changed with a GtkSourceView when I will finish with some more important stuff. There will be a highlighting scheme for the snippet (so it will highlight variables) and while in preview mode it will show the resulting content with the highlighting scheme of one of the languages supported by the snippet.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;The combo box for the languages has 2 cell renderers: a checkbox and a text one - the language, so it will let you choose one or more languages for which the snippet is meant.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;The variables tree view on the right is there for a better management of variables and to avoid some frustrating moments. By the last thing I refer to the following situation: let's say a user has in the content of the snippet the text ${some_text}, which would mean a variable with the current syntax. If I wouldn't hold references to the variables which are used, I couldn't have a way to detect what the user meant with that string (though in 99% of the cases it would be a variable, but still ... you never know). Right now, if I don't find a reference to the variable "some_text" then I will just print out the string ${some_text} when evaluating the snippet. As a matter of fact, if "var" is a referenced snippet variable and it has it's default value "default", then "${some ${var} text}" will get evaluated to "${some default text}".&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Will also explain briefly the variables tree view there. A more detailed screenshot:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_686kVBsV-R8/TDnZsEUXSdI/AAAAAAAACp0/ZUHKdT5mI9U/s1600/variables_tree_view.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_686kVBsV-R8/TDnZsEUXSdI/AAAAAAAACp0/ZUHKdT5mI9U/s320/variables_tree_view.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;The variables which are in bold are the ones for which the snippet holds references, so if the string "${var_name}" will appear in the content, it must appear here on top to be treated as a variable. The other variables which can be seen are Anjuta (global) variables and are there just so the user can have a clear view of them and insert them if needed (inserting one in the content will also add it to the referenced ones).&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;As you can see, when you edit the name of the variable (just those which are referenced can be edited -- those are the only ones of which the snippet knows), there will also be a combo box entry so you can choose the name of an Anjuta variable easier (well, you can't see the popup because it seems I can't take screenshots if there is a popup). Choosing the name of a variable to an Anjuta one will also mark it as Anjuta in the type column.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Still, if that's not what you meant with the name of the variable (to get the Anjuta one), you can change it back since the column type is editable (it's a combo box with 2 entries: Anjuta and Snippet). But if you change the type of a variable to Anjuta and that variable doesn't exist (like in the screenshot, when I request the "license_file_name" Anjuta variabile, but it seems the database doesn't hold an entry for that), it will show a warning background and icon which has &amp;nbsp;a tooltip to inform the user he should add that variable if he wishes from the Preferences window. I say "if he wishes" because it isn't mandatory for an Anjuta variable to actually exist ... it will still work just fine, but it will get evaluated to the default value.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;The last editable column is the "Default Value" one which, obviously, let's you edit the default value. It's important to say that the default value is something that belongs to the snippet context (so Anjuta variables have default values only when they are referenced by a snippet and that default value belongs to the snippet, it's not global). The "Instant Value" column let's you see how that variable would be evaluated at that moment in the snippet context and is not editable.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;That's about it. I implemented some other minor features this week, but I don't think I can remember all of them (like tooltips with the snippet evaluated content in the Snippets Browser ... not the full content, but just 200 chars or something like that) and I still have some to implement, but still, most of the important stuff in the editor is done.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Not sure what I will do for next week, but will mention some of the goals, though they won't take me all the week:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Implement error detection in the editor, like: if the trigger already exists for one of the selected languages a warning icon should appear, if the user hasn't chosen a group for a new snippet or any language should also show an warning icon (these are to be shown next to the 2 combo-boxes). This will not allow the user to save the snippet.&lt;/li&gt;&lt;li&gt;Show a warning dialog if the user made changes and didn't saved them.&lt;/li&gt;&lt;li&gt;When changing the name of a variable in the tree view I should also change it in the content.&lt;/li&gt;&lt;li&gt;Clean up the preferences layout and actually implement some of the stuff there.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-6585486439175640723?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/6585486439175640723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/07/anjuta-snippets-plugin-weekly-report-7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/6585486439175640723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/6585486439175640723'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/07/anjuta-snippets-plugin-weekly-report-7.html' title='Anjuta Snippets Plugin - weekly report #7'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_686kVBsV-R8/TDnL5BQ3fPI/AAAAAAAACpU/rP-KU3zZUjQ/s72-c/snippet_edit.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-7654730171349356576</id><published>2010-06-28T19:21:00.000+03:00</published><updated>2010-06-28T19:21:42.975+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Anjuta Snippets Plugin - weekly report #5</title><content type='html'>&amp;nbsp;&amp;nbsp; &amp;nbsp;I know, I'm a bit late with this weekly report, but I had 2 exams in the past week and I preferred waiting one more day and finish the tasks I proposed to myself this week, rather than posting a half-empty report. The good news is that I have just one more exam, so no more whining from me about my exams soon :).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;As I said last week, I proposed to myself to make a basic Snippets Browser to show the database and implement the GUI prototype which I shown in my last weekly report (#4). Shocking enough, but I managed to pull off those 2 tasks (not mentioning the fact that I had to rewrite the TreeModel for the Snippets Database 2 times this week).&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;As you can see in the next 2 screenshots, this is how the Snippets Browser looks right now. There isn't an arrow as in the GUI prototype last week, but rather a toggle button (the one with the edit icon), because, as Johannes said, it's not necessarily the user will have the Snippets Browser on the left:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_686kVBsV-R8/TCi5baIs7tI/AAAAAAAACpE/RBi4X92Ve4Q/s1600/snippets_browser_hidden_editor.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="237" src="http://4.bp.blogspot.com/_686kVBsV-R8/TCi5baIs7tI/AAAAAAAACpE/RBi4X92Ve4Q/s400/snippets_browser_hidden_editor.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_686kVBsV-R8/TCi5i6CTzkI/AAAAAAAACpM/AX2V9C9DUy0/s1600/snippets_browser_shown_editor.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="237" src="http://1.bp.blogspot.com/_686kVBsV-R8/TCi5i6CTzkI/AAAAAAAACpM/AX2V9C9DUy0/s400/snippets_browser_shown_editor.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;A few explanations of the screenshots:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Right now only Delete and Insert works (delete erases the selected item - and recursively the snippets if the selected item is a snippets group. Had some problems with the memory, but after some debugging, it should be free'd properly right now). Add will be implemented when I make the Editor.&lt;/li&gt;&lt;li&gt;The plugin will have a preference that will allow showing just the snippets that support the language of the current document (so it won't show python snippets if the current document is a C++ file).&lt;/li&gt;&lt;li&gt;The edit button is a toggle one (as I said). Pushing it once makes the Snippets Browser maximize (it takes up all the space of the Anjuta UI) and pushing it again makes the exact same layout come back (so by pressing the edit button 3 times it will go exactly screenshot1 -&amp;gt; screenshot2 -&amp;gt; screenshot1).&amp;nbsp;&lt;/li&gt;&lt;li&gt;When I will make the SnippetsEditor widget it will be inside the frame on the right and will be sync'd with the selected item of the browser.&lt;/li&gt;&lt;li&gt;Will add the support of showing the browser on the right and the editor on the left if the user has it's browser placed on the right (if the user has the browser on the left, bottom, center or top it will up on the left as in the screenshot).&lt;/li&gt;&lt;li&gt;By pressing the "Add" button should make a popup appear with 2 options "Add Snippet ..." and "Add Snippets Group ...". Didn't wanted to have 2 add buttons (one for a snippet and one for a snippets group) since I felt that will burden the UI with too many buttons.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Right now, the maximizing works with any position of the Snippets Browser in the un-maximized layout.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;For the next week, I will try to replace the red big text right there with an actual editor :) (and a few more details that come with the editor, but I don't know exactly what - mainly the editor should be mostly done until this + some other stuff).&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-7654730171349356576?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/7654730171349356576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/06/anjuta-snippets-plugin-weekly-report-5.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/7654730171349356576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/7654730171349356576'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/06/anjuta-snippets-plugin-weekly-report-5.html' title='Anjuta Snippets Plugin - weekly report #5'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_686kVBsV-R8/TCi5baIs7tI/AAAAAAAACpE/RBi4X92Ve4Q/s72-c/snippets_browser_hidden_editor.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-4845748204547954743</id><published>2010-06-20T17:58:00.003+03:00</published><updated>2010-06-20T18:15:08.104+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Anjuta Snippets Plugin - weekly report #4</title><content type='html'>So it's time for my forth weekly report. &lt;b&gt;This is what I managed to do this week&lt;/b&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Done the trigger-key based insertion (at the moment it's Ctrl+E to insert the snippet, and the trigger-key considered is the word before the current position of the cursor -- similar to the way the Gedit Snippets insertion work). The shortcut for this will be configurable by the user.&lt;/li&gt;&lt;li&gt;Changed the file format and internal functions to make it possible for snippets to be common for more languages (considering most snippets from C will be found in C++ also). This was actually something I should have done from the start, but bad planning made me edit almost every single file, so I can add this feature.&lt;/li&gt;&lt;li&gt;Ported the macros which were used by the Macro Plugin to snippets used by my plugin.&lt;/li&gt;&lt;li&gt;Wrote some functions that will be used when making the snippets dynamic (and I actually have a plan for using them).&lt;/li&gt;&lt;li&gt;Reviewed a lot of my code until this point and changed even more :-). This means fixing some memory problems (and a very serious one which I didn't noticed until this point) or just rewriting some portions of code which were a mess.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;What I will do for the next week?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; Well ... after talking to Johannes, we decided I should start working on the UI right now. That means a Snippets Browser (for which the tree model should be the snippets database - and the snippets database already implements GtkTreeModel) and a Snippets Editor which should appear attached to the browser when an arrow is pressed. A GUI prototype for what I said looks like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_686kVBsV-R8/TB4mrfpY1FI/AAAAAAAACo0/GmZireWzK-I/s1600/before_arrow_push.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="216" src="http://2.bp.blogspot.com/_686kVBsV-R8/TB4mrfpY1FI/AAAAAAAACo0/GmZireWzK-I/s400/before_arrow_push.png" width="400" /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/_686kVBsV-R8/TB4mwf0fLnI/AAAAAAAACo8/VN_foCGRw10/s1600/after.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="220" src="http://1.bp.blogspot.com/_686kVBsV-R8/TB4mwf0fLnI/AAAAAAAACo8/VN_foCGRw10/s400/after.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Basically, before pushing the arrow on the Snippets Browser (first image) we have our standard Anjuta UI as it is arranged by the user. After pushing the arrow (second image), the browser will be placed on the left side with the editor attached (they actually are in the same dockable widget - which is maximized now), letting the user choose a snippet from the browser to edit. Pushing the arrow again at this point will bring up the layout which was chosen by the user (first image).&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;If anyone doesn't agree with my view about this, I'm waiting for feedback :-).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;I don't think I will do all of this stuff until my next weekly report, but here are 2 goals:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Implement the Snippets Browser (not sure if I can provide all the features it will have in the end until next week, but at least having a view of the database should be done).&lt;/li&gt;&lt;li&gt;Try to implement the prototype above, but without the editor, just some placeholder.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;How did I do compared to my plans?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;It actually was pretty okay. Last week I proposed some stuff I should do for the next 2 weeks and I did most of the stuff there (minus some bits which I will postpone until after the UI is done).&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;What I have learned this week?&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; Think a lot when planning ahead or you will be forced to rewrite about 500 lines of code just to fix your initial mess.&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-4845748204547954743?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/4845748204547954743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/06/anjutasnippetsplugin-weekly-report-4.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/4845748204547954743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/4845748204547954743'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/06/anjutasnippetsplugin-weekly-report-4.html' title='Anjuta Snippets Plugin - weekly report #4'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_686kVBsV-R8/TB4mrfpY1FI/AAAAAAAACo0/GmZireWzK-I/s72-c/before_arrow_push.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-470995243111052786</id><published>2010-06-13T20:28:00.006+03:00</published><updated>2010-06-14T15:16:03.090+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Anjuta Snippets Plugin - weekly report #3</title><content type='html'>&amp;nbsp;&amp;nbsp; &amp;nbsp;Before I start, I should note that the weekly report #2 is missing from my blog because the last week I haven't done that much due to an exam, but if you are curious you can see it&amp;nbsp;&lt;a href="http://mail.gnome.org/archives/gnome-soc-list/2010-June/msg00006.html"&gt;here&lt;/a&gt;. &amp;nbsp;As of this week, a good part of the back-end is done, though I only managed to code just the last 3 days once I was done with my exam. This is also my first major weekly report since I made a lot of changes and I have some results which are actually visible. Also, I managed to implement more stuff than what I proposed for myself this week.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;What I managed to pull off this week:&lt;br /&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Implemented the support for global variables, that includes the store where they are saved, the methods by which they are accessed and the view which is right now in the preferences window, but as jhs said, I should probably move it to the Snippets Editor. And I will, once I will make the Snippets Editor :-), but for now it will stay there.&lt;/li&gt;&lt;li&gt;Implemented the part of the insertion which can be done at this point. That includes:&lt;/li&gt;&lt;/ul&gt;&lt;ol&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Insertion at the cursor position in the document.&lt;/li&gt;&lt;li&gt;Indentation detecting and adjusting the snippet content for that.&lt;/li&gt;&lt;li&gt;Evaluating the global variables.&lt;/li&gt;&lt;li&gt;Replacing all the variables with their default value in the snippet content (if they are not global, or if they are global, but the database doesn't hold a value for that global variable).&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;ul&gt;&lt;li&gt;Made a hackergotchi and should be updated when daniel will have enough time (actually to be fair, I found a hackergotchi with me in my inbox in a morning a few days ago, done by a friend of mine and I just adjusted it a bit).&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Here you can see a screenshot with the result at this point:&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_686kVBsV-R8/TBUNj5tBwHI/AAAAAAAACoY/vRI_0GANFfA/s1600/weekly3_screen.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/_686kVBsV-R8/TBUNj5tBwHI/AAAAAAAACoY/vRI_0GANFfA/s320/weekly3_screen.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;As you can notice, the view in the preferences window let's you see and modify the global variables. Actually, the first 3 columns are editable (the last one is just the result of the variable at that point), but only if the global variable is not marked as internal (which means it also can't be deleted). The internal variables aren't even saved in a XML file like the other ones, they are just instant evaluations in a function.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Also, I inserted there a snippet (the first one in the &lt;a href="http://github.com/dragos-dena/Anjuta-Snippets-Plugin/blob/master/default-snippets.xml"&gt;XML file where the snippets are saved&lt;/a&gt;). Since I haven't done the interaction layer with the user, I just listened to some event to insert it. If you look carefully, you can see the global variables are evaluated and it takes care of indentation (On the first line I inserted a space before inserting the snippet).&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;What I will do next week I don't know exactly, but I have a list of things I should do for the next 2 weeks (actually I hope to be done faster with them, but it depends on how much time I will need for the rest of my exams, since I have 3 exams in these 2 weeks), after which I will start making the Snippets Browser and Snippets Editor:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Define the 2 functions used to save the XML files (this shouldn't last too long now, I lost a lot of time with the parsing of the XML files because I had to study a bit the libxml).&lt;/li&gt;&lt;li&gt;Properly free the memory of the snippets database (though the memory for the snippet and snippets-group objects is free'd properly right now, so don't have that much to do here).&lt;/li&gt;&lt;li&gt;Write some methods which weren't that important until this point (these should be just a few).&lt;/li&gt;&lt;li&gt;Review my code until this point and see if I can optimize some things and make sure all the memory is free'd properly.&lt;/li&gt;&lt;li&gt;Make the database know about the language of the current document and if the Snippets Manager has the option to show only the snippets for the language of the current document, then the iterator for the tree model should skip those snippets which are not relevant.&lt;/li&gt;&lt;li&gt;Make the trigger-key based insertion.&lt;/li&gt;&lt;li&gt;Convert the current macros in the Macro plugin to snippets for my plugin.&lt;/li&gt;&lt;li&gt;Modify the IAnjutaSnippetsManager interface and if jhs agrees push my plugin to master and replace the current Macro plugin.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;If you don't have time to look up where my source code is saved, you can view it &amp;nbsp;&lt;a href="http://github.com/dragos-dena/Anjuta-Snippets-Plugin"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;See you guys next week :-).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-470995243111052786?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/470995243111052786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/06/anjuta-snippets-plugin-weekly-report-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/470995243111052786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/470995243111052786'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/06/anjuta-snippets-plugin-weekly-report-3.html' title='Anjuta Snippets Plugin - weekly report #3'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_686kVBsV-R8/TBUNj5tBwHI/AAAAAAAACoY/vRI_0GANFfA/s72-c/weekly3_screen.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-6391432548223269907</id><published>2010-05-28T22:05:00.002+03:00</published><updated>2010-05-28T22:10:29.635+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Anjuta Snippets Plugin - weekly report #1 (part 2)</title><content type='html'>&amp;nbsp;&amp;nbsp; &amp;nbsp;Okay, maybe not really part 2, but had to come with a name to reset the counter to 1 :-). As a reminder, the source code for the plugin can be viewed &lt;a href="http://github.com/dragos-dena/Anjuta-Snippets-Plugin"&gt;here&lt;/a&gt;.&amp;nbsp;I had a pretty busy week at my university so I didn't managed to implement the tree model for the Snippets Database, but I am working at it as we speak.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Anyway, for the things I done this week:&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Implemented some stuff that were required to get more important things done (objects like Snippet or SnippetsGroup).&lt;/li&gt;&lt;li&gt;Changed a bit the design by adding support for global variables. Global variables will be shared by all snippets and will give a string depending on the global variable type: static (just a predefined string), command-based (the string will be the output of a command) or internal (for stuff like the name of the current document). The first two types should be editable by the user who will also be able to add new ones.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Done the XML parsing for the snippet-packet files and for the file where the global variables will be stored.&lt;/li&gt;&lt;li&gt;Fixed some things based on the feedback from my mentor. My code should be pretty clean right now.&lt;/li&gt;&lt;li&gt;Bought my airplane tickets for GUADEC :-)&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; Sadly, there aren't any "visual" results yet, as I got a lot of work to do before displaying anything, but here are the results from parsing the XML files:&lt;/div&gt;&lt;div class="separator" style="clear: both; margin-bottom: 1em; margin-top: 1em; text-align: center; width: 100%;"&gt;&lt;a href="http://2.bp.blogspot.com/_686kVBsV-R8/TAANZxHAwDI/AAAAAAAACiI/L6htidp8Z_E/s1600/debugging_snippets.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="157" src="http://2.bp.blogspot.com/_686kVBsV-R8/TAANZxHAwDI/AAAAAAAACiI/L6htidp8Z_E/s200/debugging_snippets.png" width="200" /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/_686kVBsV-R8/TAANwk1oyQI/AAAAAAAACiQ/l7WVUTDIzhw/s1600/debugging_global_vars.png" imageanchor="1" style="float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="158" src="http://1.bp.blogspot.com/_686kVBsV-R8/TAANwk1oyQI/AAAAAAAACiQ/l7WVUTDIzhw/s200/debugging_global_vars.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; margin-bottom: 1em; margin-top: 1em; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Until my next weekly report, I will try to implement the GtkTreeModel I should have done for this week and a few more dirty things so the snippets will be ready for insertion without the feature of being user-editable, but with global variables working properly.&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; margin-bottom: 1em; margin-top: 1em; text-align: left;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;See you guys next week.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-6391432548223269907?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/6391432548223269907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/05/anjuta-snippets-plugin-weekly-report-1_28.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/6391432548223269907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/6391432548223269907'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/05/anjuta-snippets-plugin-weekly-report-1_28.html' title='Anjuta Snippets Plugin - weekly report #1 (part 2)'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_686kVBsV-R8/TAANZxHAwDI/AAAAAAAACiI/L6htidp8Z_E/s72-c/debugging_snippets.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-6419108595536870537</id><published>2010-05-26T19:46:00.001+03:00</published><updated>2010-05-26T19:52:51.287+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>GUADEC 2010</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_686kVBsV-R8/S_1I5rvMI1I/AAAAAAAACh0/5CqDBVTRsoA/s320/sponsored-badge-simple.png" style="float: left; margin-right: 5px;" /&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;I received a few days ago a confirmation mail from Travel Committee that my sponsorship for attending GUADEC 2010 was accepted. I want to say a big "thank you" to GNOME and it's community for this opportunity and that I can't want for July 26 :-).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;As a note, I will post my weekly reports on Fridays from now on (since it seems we are required to do this). I wanted to post them on Tuesdays, and I had one ready for yesterday, but I'm gonna wait a bit with it.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Also, I will use as a wiki the one on github, which can be viewed &lt;a href="http://wiki.github.com/dragos-dena/Anjuta-Snippets-Plugin/"&gt;here&lt;/a&gt;. Not much you can see right now there, though, but I will work on it a bit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-6419108595536870537?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/6419108595536870537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/05/guadec-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/6419108595536870537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/6419108595536870537'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/05/guadec-2010.html' title='GUADEC 2010'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_686kVBsV-R8/S_1I5rvMI1I/AAAAAAAACh0/5CqDBVTRsoA/s72-c/sponsored-badge-simple.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3634089959753973558.post-4190744997112945740</id><published>2010-05-18T02:25:00.007+03:00</published><updated>2010-05-19T22:56:48.458+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='planet-gnome'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc'/><category scheme='http://www.blogger.com/atom/ns#' term='anjuta'/><category scheme='http://www.blogger.com/atom/ns#' term='gnome'/><title type='text'>Anjuta Snippets Plugin - weekly report #1</title><content type='html'>&amp;nbsp;&amp;nbsp; &amp;nbsp;This is my first weekly report for my GSoC project - Anjuta Snippets Plugin. This report should have been published on Saturday, but due to various reasons, I had to delay it until today.&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;First off, I made a brief explanation of my plugin which can be viewed&amp;nbsp;&lt;a href="http://dragos-dena.blogspot.com/p/anjuta-snippets-manager.html"&gt;here&lt;/a&gt;. Also, I made a github repository which can be viewed&amp;nbsp;&lt;a href="http://github.com/dragos-dena/Anjuta-Snippets-Plugin"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; Now, for the things I been doing for these past weeks:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Made a few design decisions, after talking some things in detail with jhs, my mentor, and after receiving some feedback from the anjuta-devel-list. Still have to decide where exactly I will put the Snippet Editor, but that's not crucial at this point, as it will be done in a later phase.&amp;nbsp;&lt;/li&gt;&lt;li&gt;Tried to predict the things I will use in my implementation and document myself.&lt;/li&gt;&lt;li&gt;Made the infrastructure of the plugin. It's of course subject of changing, but not much :-).&lt;/li&gt;&lt;li&gt;Started to write some actual code. Defined the objects and methods I will use in this phase (snippet.h/c, snippets-db.h/c, snippets-xml-parser.h/c) so I have a solid starting point for my plugin. Took care of stuff like implementing the Preferences interface, which, of course, is far from being the final version (though I pretty much thought of what it will look like), but I tried to define as clear as possible how my code will be organized.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; float: left; text-align: center; width: 100%;"&gt;&lt;a href="http://1.bp.blogspot.com/_686kVBsV-R8/S_HKZdmoU7I/AAAAAAAACgw/u-h78pwPmL4/s1600/Screenshot-1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-left: 30px; margin-right: 1em; margin-top: 10px;"&gt;&lt;img border="0" height="161" src="http://1.bp.blogspot.com/_686kVBsV-R8/S_HKZdmoU7I/AAAAAAAACgw/u-h78pwPmL4/s200/Screenshot-1.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Until my next weekly report I will try to:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Implement the XML parsing of the snippet packages and saving them in the internal format.&lt;/li&gt;&lt;li&gt;Implement the GtkTreeModel interface for the snippets database (the snippets themselves will be saved in that tree)&lt;/li&gt;&lt;/ul&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;After that is done (and after a few more lines of code), my plugin should have the needed functionality to replace the current Macro plugin (at least from other plugin's perspective, that make use of the current Macro plugin, if not for the user).&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Note: The current version on github will not compile since I changed the name of the IAnjutaMacro interface to IAnjutaSnippetsManager. I could have supplied a patch for that, but my plugin doesn't do anything interesting anyway at the moment. If anyone is actually interested in compiling it, ping me somehow (maybe leave a comment here), and I will make a patch with that.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3634089959753973558-4190744997112945740?l=dragos-dena.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dragos-dena.blogspot.com/feeds/4190744997112945740/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://dragos-dena.blogspot.com/2010/05/anjuta-snippets-plugin-weekly-report-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/4190744997112945740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3634089959753973558/posts/default/4190744997112945740'/><link rel='alternate' type='text/html' href='http://dragos-dena.blogspot.com/2010/05/anjuta-snippets-plugin-weekly-report-1.html' title='Anjuta Snippets Plugin - weekly report #1'/><author><name>Dragos Dena</name><uri>http://www.blogger.com/profile/05736270937776511755</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_686kVBsV-R8/S_HKZdmoU7I/AAAAAAAACgw/u-h78pwPmL4/s72-c/Screenshot-1.png' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
