Refonte Qt5

Registered by air-dex

Big code review and refactoring done with the Qt 5 bump.

Blueprint information

Status:
Complete
Approver:
air-dex
Priority:
High
Drafter:
air-dex
Direction:
Approved
Assignee:
air-dex
Definition:
Approved
Series goal:
Accepted for trunk
Implementation:
Implemented
Milestone target:
None
Started by
air-dex
Completed by
air-dex

Sprints

Whiteboard

Beaucoup d'éléments de la refonte sont listés ici : https://code.google.com/p/reyn-tweets/issues/list -> Partie spéciale dans la refonte DONE

La vérification Linux se fera avec celle du bump vers Qt 5, c'est pourquoi il n'y en a pas ici.

Bug au rechargement d'une timeline. -> DONE (issue 110 sur Google Code)

(?)

Work Items

Work items:
Create the branch for the blueprint : DONE
Model refactoring (Serializables) : DONE
- Improve JSON parsers (to be used in new model architecture) : DONE
- Serializables architecture refactoring : DONE
- New model classes (Coordinates, Contributors, Places, User Entities) : DONE
- Remove QJSON legacy (variant2object and object2variant) : DONE
New "Core" Layer : DONE
- Move model in logic/core : DONE
- Add the ReynCore to the Core layer folder (logic/core) : DONE
- Use model objects / Core objects (now same name) in the ReynCore : DONE
- Improve Variantable::fillWithVariant(); implementations : DONE
- Simplify Mappable implementation : DONE
- Remove useless QVariantMap properties : DONE
- Creates structure for handling lists in QML (Timelines, UserLists...), aka ListHandlers : DONE
- Integrate some ListHandlers in the code : DONE
- Remove QVariantList properties : DONE
Logic Review (Controls and Processes) : DONE
- Review result treatment : DONE
- Simplify ProcessResults : (no isOK, no isFatal) : DONE
- Review ProcessResults building : DONE
- Transmit the results with signals only (no getter in the processes) : DONE
- Compare with the connection part : DONE
- Move ProcessUtils in logic/processes : DONE
- Less punctuation and '\n' in error messages : DONE
- Template for executeProcess() avec spécialisation pour chaque process (trying to avoid varargs) : POSTPONED
- Fix issue 110 in the Google Code bugtracker : DONE
- Classify and factorize processes (see when there are more processes in Reyn Tweets) : DONE
- Classify and factorize controls (thinking about timelines) (cannot do that now because of QML, postponed for new UI) : POSTPONED
- Classify JsonArrays and ListHandlers : DONE
- Remove TODOs : DONE
- Use HTMLParsers instead of reinventing the wheel with QWebPages and QWebFrames : DONE
Connection refactoring : DONE
- Create new folders for connection entities : DONE
- Move connection classes in right folders : DONE
- Improve and optimize connection part : DONE
- In model or logic, coding facades for connection calls (will be done in the "connection-lib" blueprint https://blueprints.launchpad.net/reyn-tweets/+spec/connection-lib ) : POSTPONED
- Reviewing how results are treated in general : DONE
- Reviewing how Twitter results are treated : DONE
- Authentication managers refactoring (now Authenticators) : DONE
- Communicator manager (like a Requester Manager ?) (will be done in the "connection-lib" blueprint https://blueprints.launchpad.net/reyn-tweets/+spec/connection-lib ) : POSTPONED
- Template for executeRequest() with specialization for each requester (no varargs if possible) : POSTPONED
- Errors due to the Twitter client (with CLIENT_ERROR ErrorType) (useless) : POSTPONED
Having only the int main(int argc, char ** argv(); function in main.cpp : DONE
- C++ modules for QVariant (initSystem) and QML declaration (declare QML) : DONE
- Translator in C++ module : DONE
- ReynTweets namespace : DONE
OAuth process refactoring : DONE
- Improve OAuth parsers with URLs and query strings (with the QUrlQuery class) : DONE
- Simplify OAuth in Twitter requesters (Google Code issue 33) : DONE
- Split the OAuthProcess into 2 sub-processes in order to simplify the OAuth authentication processus : DONE
- Refactor AuthorizeRequester : DONE
- Refactor AllowControl : DONE
- Refactor LoginComponents and LoginPopup (QML) : DONE
- Use the HTML page of authenticate to authorize the app (temporary because of future UI ?) : DONE
- Erase useless classes (PostAuthorizeRequester ? QML custom widgets ? AuthenticateRequester if they still exists) : DONE
- Clean code : DONE
Optimization with C++ macros (useless) : POSTPONED
Enums review : DONE
- Enums in ReynTweets namespace : DONE
- Enums OK for QVariant (postponed for a future review https://code.google.com/p/reyn-tweets/issues/detail?id=112 ) : POSTPONED
Better English, with the wrongly used word "issue" : DONE
Split sources and header files in .pri files located in subfolders : DONE
Fix some Google Code Review bugs : DONE
- Issue 33 : DONE
- Issue 38 (WONTFIX) : POSTPONED
- Issue 46 : DONE
- Issue 53 : DONE
- Issue 56 (dedicated blueprint independant from this one https://blueprints.launchpad.net/reyn-tweets/+spec/reyn-tweets-ui-components ) : POSTPONED
- Issue 67 : DONE
- Issue 78 (dedicated blueprint independant from this one https://blueprints.launchpad.net/reyn-tweets/+spec/myen-integration ) : POSTPONED
- Issue 79 : DONE
- Issue 88 : DONE
- Issue 109 : DONE
- Issue 110 : DONE
Going further in Qt 5 : DONE
- New Signal / Slot syntax : DONE
- QVariant, from and to json (POSTPONED in a dedicated review issue https://code.google.com/p/reyn-tweets/issues/detail?id=111 ) : POSTPONED
- Wrap twitter-text-js in a QJSEngine (postponed for new UI https://blueprints.launchpad.net/reyn-tweets/+spec/reyn-tweets-ui-components ) : POSTPONED
Templates review : DONE
- Utils function with templates (postponed for a future review http://code.google.com/p/reyn-tweets/issues/detail?id=113 ) : POSTPONED
- Special class for special values of tmplates parameters (meant "U extends blabla") : DONE
Simplify some methods : DONE
- Remove useless QTextStreams in favor of QString::append() : DONE
- More Constants (FAKE_ID = -1...) : DONE
- Typedefs for some types (TweetID, UserID...) (postponed for a future review http://code.google.com/p/reyn-tweets/issues/detail?id=114 ) : POSTPONED
Improve XML treatments with QVariant (postponed - do not remember what I meant) : POSTPONED
Fix configuration ("configuration" blueprint) : DONE
Signal-signal connections (remove useless slots) : DONE
Merge with qt5port : DONE

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.