Thursday, 22 August 2013

Clock with calendar : Gsoc update

Well , I have been working on clock with calendar right after I ported window list and trash can .

And yes , it is "beast" of all the plasmoids .

I managed to implement one ,yes,  a basic one for now .It shows the events of the clicked date's month and those events that touches it .Further , it shows "No events founds" when the clicked date does not conatins any events .I also implemented containsTodoItems apart from other functionalities :) under +Mark Gaiser  and +Marco Martin  guidance  .

At present +Mark Gaiser  's calendar component is  used for it .The current date is shown under the blue border as in c++ plasmoid .

It is a way alike now ;) .

Also I used split function to have only a substring (event,todo or journal ) in EventList from the called string .I used ScrollArea for the EventList .

And I did a few javascript functions to implement the functionalities as well as a few functions in calendar.cpp itself .

It looks a much better after +Marco Martin suggested to have some indentation and follow white space coding .It presently uses QDate as for now .

The toolbar shows current date and week number by default .

There are two models used : setSelectedDay model : which shows the clicked date's events,todo or journal and upcomingDays model : which shows the upcoming events in case no events ,todo or journal is found .


Do check it out ;)


It is available at heenamahour/gsoc branch under kde-workspace and kdepim-runtime


That is all for now :)

And yes , window-list and trashcan are ported to plasma 2 (work is in progress ;) in parallel with calendar plasmoid :D ..)


Tuesday, 16 July 2013

Window list QML : Update



Recently I tried to make window list using qml(kde-workspace/  branch : "heenamahour/gsoc")



The main thing to be taken care of in this plasmoid is "data engine" .I used tasksSource in window list .And also to highlight the selected menu item I used 
PlasmaCore.FrameSvgItem .The text displaying the menu items become italics in case that window is minimised .






Further I have made it a PopUpApplet .It shows the list of active windows on full view and collapses to icon on desktop panel . 



Further , I added cascade and unclutter actions in tasks data engine by using asynch call to kwin interface using QDBusInterface .This required more time since I was new to it ,but my mentor is awesome .



So,I managed to do it . I made new service for these actions since they require an empty source . Ofcourse ,these actions can be done by a source(by using the Ids on connectSources() also but then there is always a case when there is no window that is active at the moment) .Therefore , empty source is required.







Now , I have also used sections as suggested by my great mentor +Marco Martin and under his guidance it also displays windows under their respective desktop . If section > 0 then it displays Desktop + Desktop number else it displays on all desktop as in C++ plasmoid .



Also , the active window is enclosed withing PlasmaComponents.Highlight just like Actions and Desktop titles while highlight is shown by FrameSvg .












That's all for now .Hope you like it !



Thursday, 20 June 2013

Trashcan : Development Phase

                                                           Trashcan (QML)

Recently I developed trashcan which is available at kde-workspace ,branch:heenamahour/gsoc .
(not yet merged yet).

I have implemented a pop up menu having open and empty option .Just like the c++ plasmoid it can also be opened by left click on it .To confirm to empty the trash can on  using Empty Trash from the pop   up  menu  ,I have used a  QueryDialog.


It also displays the total number of items in trash using DirModel(plasma-mobile).It is resizable .Also ,I have added form factor  in it.
On Trash can  settings , config plugin is added using X-Plasma-ConfigPlugins .I have removed the background  by set.background hints(0).

I hope you will check it out ! :) 

Thursday, 6 June 2013

window-list using QML 1




 I tried to implement window-list using qml .Major functionalities are added to it using PlasmaCore ,plasma.graphicswidgets,plasma.graphicslayouts and qtextracomponents .
It involves quite a lot of javascript and qml to give a flexible ui .
Feels good to see it as it is my first plasmoid in qml . 
Looks similar ,isnt it :P


Dreams on fire :Gsoc 2013

I am selected for Gsoc 2013 for the project porting plasmoids to plasma 2 . The first person to congrats me is ofcourse my senior cum one of my most trustable friend +Puneet Goyal  .It was my dream to get into Gsoc :-) . 
Credits to my awsome mentor +Marco Martin  for selecting me as his student . Also to the  great +The KDE® Community  people like +Aleix Pol  and +Marco Calignano  because of whom I came to know more about kde , +Lydia Pintscher  for always answering my general queries :-) , +Kevin Krammer  and all the other Kde people for always helping me out . Thanks a lot ! I would like to continue contributing to Kde even after Gsoc :-)
Also ,how can I forgot about +Sharad Dixit  :P you always motivates me.Without you and +Puneet Goyal  it would have not been possible . You guys always pushed me towards Gsoc .Thanks for everything . Even thanks is a little word here .
And , +Puneet Goyal  hope you come soon :-) .
Further thanks to people like +Yash Shah and +Harsh Sharma  :-)
And yes a big thanks to +#bbg IRC Channel on Freenode  :P and the mailing list :P
Last but not the least , thanks to +Harshit Gupta :)


Thursday, 3 January 2013

Zig Zag motion

On clicking the start button
Changed the ball's color to hgb

Using stop button






Using java swings ,I tried to make the zig zag motion  of a ball when it strikes the boundaries of the rectangle on clicking the "start" button It has a "stop" button and another button to change the ball's color to HGB.
The code is quite simple .First of all create a frame using JFrame as follow
JFrame a = new JFrame("Zig Zag");
After declaring its attributes ,create a class  say zigzag which inherits JPanel and another class say bounce which inherits JPanel and an interface ActionListener.Now declare an object of class bounce say bounce b;
After that declare the constructor zigzag() as follow
Before clicking the start button
b = new bounce();
JButton startButton = new JButton("Start");
JButton hgbButton = new JButton("Change color to HGB");
JButton stopButton = new JButton("Stop");
JPanel buttonPanel = new JPanel();
buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.X_AXIS));
buttonPanel.add(startButton);
buttonPanel.add(hgbButton);
buttonPanel.add(stopButton);
 stopButton.setText("Stop now !");
this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
this.add(buttonPanel);

this.add(b);
Now,for the start button set animation to true and for stop button set animation to false .To change the color to hgb use :
b.setBallColor(Color.getHSBColor(TOP_ALIGNMENT, TOP_ALIGNMENT, TOP_ALIGNMENT));
 Now,inside the class bounce define the radius,diameter ,velocity across Xaxis and Yaxis , paint()..

Thursday, 27 December 2012

Graphics I made with inkscape,krita and gimp


I tried to make a logo for
the astronomy group
of my college using inkscape 
I used inkscape here .












It is an illusion .
There are three images embeded onto each other .
I used inkscape and gimp here.
Again,it is an illusion in which
 two images 
are embedded onto each other .
I used inkscape and gimp here.


Ascii art -It can be easily done by gimp 
Again it is ascii art -
It can be simply done by GIMP.
I tried my hands on making a 3-D logo using krita and inkscape .

Monday, 10 December 2012

Calculator





Tried to make a calculator using swings  that performs addition,subtraction,multiplication.division,exits and clear the data depending on the user requirements.It also includes a JButton  Help me ! to obtain further information about the application and JButton about to get information about the developer.Futher in case of indeterminate expression an exception is thrown and a pop up window appears .The JButton clear resets the data and set the variables to false .


Simple ChatBot using C++

I tried to make a chat with a bot ..after being inspired by a samsung app -Palingo .
This is a C++ prohram which is  konsole based.
It takes an input from user and the response is random .It includes header files like iostream,cstdlib,string and ctime .
I made a string -response having the script .And an infinte while loop to proceed the script .
It is a simple c++ program ,more improved version will be provided soon ..........
Mail me to obtain its source code and if interested to make chatbot using swings .



Saturday, 7 July 2012

Making of theme at pairs



A theme is basically a central topic ,subject or concept,the author is trying to point out not to be confused with whatever messege,moral or commentary it may send or be interpreted 

A theme for game pairs requires xml and web development skill and the use of inkscape.




Firstly,I made the images in .svg format using inkscape .Then,I connected all the images with the desired theme using xml .Most importantly after making the xml file it has to be saved in .game extension .




Then, simply the file is to replaced to .pairs.tar.bz2 .Have a look at it this link for reference






Hope this helps!



Cheers!!


Tuesday, 3 July 2012

Making of the layout for the editor

Initial layout.

Final layout of the editor.
Final layout of the editor

Everything disappeared at first



The making of the editor required some logic apart from some smart work .Initially I faced some difficulties in make and make install.But I soon over come it then I initially made a .ui file for it .



After that the corresponding .cpp files . Then I was soon able to resize the mainwindow as a whole but not the widgets independently .




So,I used splitters .When I firstly used then initially I was able to use them but the content in the widgets disappeared (It was due to the fact that I have not declared the function defination of readsettings() :P).But soon, these worked and I was able to make it.






Cheers!