Name: Sinny Kumari
Email Address: ksinny@gmail.com
Freenode IRC Nick: ksinny
IM Service and Username: GoogleTalk ksinny@gmail.com
Location (City, Country and/or Time Zone): Bangalore, India, UTC +0530
Proposal Title: Creating Plasma-based Presentation view for Calligra Stage
Motivation for Proposal / Goal:
Presentation view has a vital role while presenting our ideas in front of people during a conference, seminar, etc. Presently, Calligra Stage has a Presentation view but with restricted structure and less flexibility.
So, the idea is to create a Plasma-based presentation view for Stage by creating new set of plasmoids and containments using QML. The new improved plasmoids will have many features and will address limitations in Stage’s presentation view and will add much more flexibility e.g. resizing, positioning, placing, etc and some visual effects.
Use Cases:
What to expect?
After completion expected results are as follows:-
A hand sketch of the expected workflow can be found at
http://www.flickr.com/photos/49657487@N07/5573564764/
Implementation Details:
Plasma KPart will be used to show a Plasma containment specially written for Stage. Plasmoids in the containment will be used to display presentation and related details.
As Aaron J. Seigo suggested, KPart is only a run-time dependency, so it doesn’t create a hard dependency on Plasma.
Inside Stage, on the left side, list of plasmoids which can be added into the blank area. Plasmoids can be re-arranged and re-sized too by dragging it within the area. (See the sketch above)
List of plasmoids are:-
1) Slideshow plasmoid
It will display slideshow view of the the presentation (with option to start presentation from first slide, current slide or any specific slide number) which will have an option to show and hide from public.
2) Slide navigation Plasmoid
It will contain the present slide number which is getting displayed in slideshow and total number of slides in that presentation. Buttons to navigate to first, previous, next and last slide.
3) Slide list Plasmoid
It will contain list of slides for the opened presentation. User can select from here too which slide he want to display next in slideshow.
4) Presenter Notes Plasmoid
It will show presenter notes. Presenter can add the specified slide number whose notes want to be displayed.
5) Count-up and Count-down Timer Plasmoid
Taking help of Timer Plasmoid of Plasma, count up and count down timer for presentation will be implemented. Timer can be set in the setting from the setting option or by scrolling mouse over that widget. On right click option will be there to start, reset, stop count up and count down respectively.
Tentative Timeline:
April 25 - May 23 ( Community Bonding Period)
The first steps would be to get more comfortable with using QML for writing Plasmoids, collaboration with people working on QML Plasmoids will be helpful. This will be followed by understanding Calligra Stage’s code structure so as to have smooth communication between Stage and the Plasma KPart.
May 24- June 20 (Coding - Phase 1)
Embedding Plasma KPart in Calligra which will be used to contain different Plasmoids (very similar to whats currently in Skrooge/ Kontact)
Implement a basic QML plasmoid which can display an existing presentation ( 1) Slideshow plasmoid )
June 21 - July 17 (Coding - Phase 2)
Make it possible to start the slideshow in full screen mode.
Implement ( 2. Slide navigation ) to provide slide status and navigation.
Implement ( 3. Slide list Plasmoid ) to provide a slide list for the presenter.
July 18 - July 31 (Coding - Phase 3)
Implement ( 4. Presenter Notes Plasmoid ) for the presenter.
Implement ( 5. Count-up and Count-down Timer Plasmoid ) for the presenter.
August 1 - August 14 (UI Polishing, Bug fixing)
Refactoring code, making User Interface more impressive and fixing bugs which includes wish-list additions suggested by users or developers.
August 15 - August 26 (pencils down)
Rigorous Testing of the containment and Plasmoids to work properly. Writing documentation.
Do you have other obligations from late May to early August (school, work, etc.)?
I will have University exam in middle of June, but i am sure that it will not have any effect on my work and will manage my time accordingly.
About Me:
I am a student currently in 3rd year, doing Bachelor of Engineering course with Computer Science and Engineering as major in Dayananda Sagar College of Engineering, Bangalore, Karnataka, India. Apart from academics I have great interest in Free Software and am one of the lucky people who started using computers using a Free Operating System. Due to my passion towards Free Software, I have attended different seminars and conferences related to like Mukthi, foss.in, conf.kde.in etc.
On the community part, I helped organize conf.kde.in 2011, the first ever KDE Conference in India along with Pradeepto and team. We also helped students in KDE/Qt workshop which gave hands-on experience to them. It was lots of fun meeting with KDE contributors like Annie Marie, Boudewijn Rempt, Inge Wallin and others. While having lunch, I discussed the idea with Annie Marie and Lydia, and they encouraged me to apply for Summer of Code this year.
I first used KDE SC two years back and I loved it so much that I started using it in my day to day life. Feeling that even I can make a difference, I have been contributing to KDE since last 9 months. My code contributions to KDE at CIA.vc http://cia.vc/stats/author/Sinny%20Kumari and http://cia.vc/stats/author/sinnykumari (svn).
Apart from these, few other links are :-
http://git.reviewboard.kde.org/r/100764/
http://reviewboard.kde.org/r/5063/
http://reviewboard.kde.org/r/5060/
http://reviewboard.kde.org/r/4730/
Lastly, I assure that I will give around 40 hours per week for my work with no other obligations except my college which is quite obvious. If any part my proposal is not clear, I will be very happy to clarify it.