Editing User:Shainasabarwal/Openscad UI Brushup
From BRL-CAD
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 17: | Line 17: | ||
*Working in C, C++, Wt(www.webtoolkit.eu) for last 2 years. I, in a team of 4 students developed a blogging engine in Wt. It is released under open source GPL license and the code is at https://github.com/GreatDevelopers/LBE | *Working in C, C++, Wt(www.webtoolkit.eu) for last 2 years. I, in a team of 4 students developed a blogging engine in Wt. It is released under open source GPL license and the code is at https://github.com/GreatDevelopers/LBE | ||
*Deeply interested in front-end development. Recently developing a wordpress theme for our blog cpp-tricks.com where C++11 will be promoted and different tutorials will be provided for Fundamentals of C++, Wt, Qt, boost. Screen Shots of the theme are: http://bit.ly/PDdNfq | *Deeply interested in front-end development. Recently developing a wordpress theme for our blog cpp-tricks.com where C++11 will be promoted and different tutorials will be provided for Fundamentals of C++, Wt, Qt, boost. Screen Shots of the theme are: http://bit.ly/PDdNfq | ||
− | *I am an active member of Linux User Group, Ludhiana where the students are made | + | *I am an active member of Linux User Group, Ludhiana where the students are made awared about the open source technologies and motivated to contribute in them. |
*I am quite familiar with git. Commit my work on git using github account(github.com/shaina7837). | *I am quite familiar with git. Commit my work on git using github account(github.com/shaina7837). | ||
Line 46: | Line 46: | ||
hide widgets and use Qt size policy to keep the editor expanding when | hide widgets and use Qt size policy to keep the editor expanding when | ||
viewer is hidden and vice versa. | viewer is hidden and vice versa. | ||
+ | |||
+ | '''Ribbon UI:- ''' | ||
+ | Finding the right menu through the menubar is a hectic task for the | ||
+ | user. It takes lots of clicks and hassle going through various menus | ||
+ | and submenus to just say change the font-size. So Instead of menu | ||
+ | Based interface, icons are provided directly on the editing area so | ||
+ | that user does not have to waste time digging inside menus to do a | ||
+ | simple task. | ||
+ | I am not talking here about Microsoft's Ribbon UI specifically (as it | ||
+ | has some patent issues that we may not want to be involved in) but | ||
+ | about the concept of having Icons at top instead of multi-level menus. | ||
+ | Other examples of Ribbon UI can be found in | ||
+ | http://qt-project.org/forums/viewthread/4214 | ||
+ | We can even use the QtRibbon library for creating Ribbon widgets or | ||
+ | just create buttons on the top to provide easy access. | ||
+ | [Will upload a mockup for this, please stay tuned] | ||
'''Better Code Editor Colors:- ''' | '''Better Code Editor Colors:- ''' | ||
Line 58: | Line 74: | ||
* Solarized http://ethanschoonover.com/solarized | * Solarized http://ethanschoonover.com/solarized | ||
Can add more if required by developers. | Can add more if required by developers. | ||
+ | |||
This will require diving into highlighter.cc and adding more color themes. | This will require diving into highlighter.cc and adding more color themes. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
'''Better Model Colors:- ''' | '''Better Model Colors:- ''' | ||
Line 74: | Line 82: | ||
rendered model. Currently, we can have figures in yellow and green | rendered model. Currently, we can have figures in yellow and green | ||
color. That must have more options. | color. That must have more options. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | '''Adding smart Indentation in code editor:- ''' | |
− | + | Identation is very important to the code readability. Almost any basic | |
− | + | code editor would ident automatically when it encounters '{'. | |
− | + | Currently In editor.cc, we have functions indentselection( ) and | |
+ | unindentselection( ) which are used to provide indentation on | ||
+ | selecting the option from edit menu. Every time going to Edit menu and | ||
+ | clicking on indent option is vey tedious task. The indentation should | ||
+ | be smart, like an enter after { should put an indent of '\t' | ||
− | + | This can be done via two approaches:- | |
− | + | * Built our own simple indentation mechanism or | |
+ | * Use a complete formatting library like http://astyle.sourceforge.net/ | ||
− | + | '''Code line numbers:- ''' | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | '''Code line numbers''' | ||
An option will be provided in the menu to add line number before each | An option will be provided in the menu to add line number before each | ||
line of the code. | line of the code. | ||
− | '''Error Highlighting''' | + | '''Error Highlighting:- ''' |
− | + | (Some doubts need to be cleared from mentor) | |
==MILESTONES== | ==MILESTONES== | ||
+ | |||
'''Community Bonding Period''' | '''Community Bonding Period''' | ||
* Talk to the community members | * Talk to the community members | ||
* Get to know the code | * Get to know the code | ||
− | '''Week 1( | + | '''Week 1(19 May)''' |
− | *Get started and remove | + | *Get started and remove a bug |
* Get comfortable with the code | * Get comfortable with the code | ||
+ | * Allow users to use Ctrl+C to copy | ||
− | '''Week 2( | + | '''Week 2/3(26 May)''' |
− | * | + | * Make the editor beautiful |
− | * | + | * Add Color schemes to the code editor |
− | + | * Give users to choose color schemes or make their own | |
− | + | * Show Line numbers | |
− | * | ||
'''Week 4(9 June)''' | '''Week 4(9 June)''' | ||
− | * | + | *Highlight errors and warnings. |
− | |||
− | |||
'''Week 5(16 June)''' | '''Week 5(16 June)''' | ||
− | * | + | *Make the View pane detatchable |
− | |||
− | |||
'''Week 6(23 June)''' | '''Week 6(23 June)''' | ||
− | * | + | *Start working on menus |
− | |||
− | |||
− | |||
'''MID TERM EVALUATION''' | '''MID TERM EVALUATION''' | ||
'''Week 7(30 June)''' | '''Week 7(30 June)''' | ||
− | * | + | *Continue working on menus and start working on Ribbon |
− | |||
'''Week 8(7 July)''' | '''Week 8(7 July)''' | ||
− | *Add | + | *Add Ribbon UI |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | '''Week 10( | + | '''Week 9/10(14 JuLy)''' |
− | * | + | *Beautify the viewer. |
+ | *Give more colors to it. | ||
− | '''Week | + | '''Week 11(28 July)''' |
− | * | + | *Add the auto-indent feature to code editor. |
'''Week 12(4 August)''' | '''Week 12(4 August)''' | ||
+ | *Icons to change formatting (font-size, font-family) on code editor | ||
*Do heavy testing and clean the code. | *Do heavy testing and clean the code. | ||
− | |||
'''Week 13(11 July)''' | '''Week 13(11 July)''' | ||
Line 194: | Line 169: | ||
===Email/Mailing List=== | ===Email/Mailing List=== | ||
− | My email address is | + | My email address is shainasabarwal@gmail.com, I have subscribed to both brlcad and openscad mailing lists. I have been in contact through these mailing lists with other community members. |
===Real-Time Contact=== | ===Real-Time Contact=== | ||
Line 246: | Line 221: | ||
designing, so I can understand well what a user can expect while | designing, so I can understand well what a user can expect while | ||
working with these softwares. | working with these softwares. | ||
+ | <will write here about patch after submission> | ||
==Future scope== | ==Future scope== |