Review Request: Refactoring of FileType, get Type from Database, some Code Changes as Example of the Advantage of the Refactoring

Stefan Derkits stefan at derkits.at
Tue Oct 19 17:10:19 CEST 2010



> On 2010-10-19 15:00:10, Ian Monroe wrote:
> > what's the goal of this refactor?

The Goal was, to have an easy way to get all possible FileTypes in a suitable DataStructure.
Take MetaQueryWidget as Example. If new FileTypes would have been added to FileType.h and used in the Database, there would also have been the need to add them there.
Also I changed some Functions that worked by comparing the FileExtension to some known FileExtensions and create the corresponding FileType Enum to compare the fileExtension with the List of possibleFileTypes


- Stefan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/100088/#review132
-----------------------------------------------------------


On 2010-10-18 23:57:36, Stefan Derkits wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/100088/
> -----------------------------------------------------------
> 
> (Updated 2010-10-18 23:57:36)
> 
> 
> Review request for Amarok.
> 
> 
> Summary
> -------
> 
> Refactoring of FileType & some Changes that use the advantages of the new FileType Class:
> -) Old enum FileType is now FileTypeEnum (still in there because it's needed to create the new FileType Objects)
> -) Created new Class & some Helper Functions
> -) Changed MetaQueryWidget to use the QStringList that contains all Filetypes
> -) Meta::SqlTrack.type() now gets it's Information from the Database instead of the FileExtension
> 
> Please give me your Feedback on this Patch.
> One thing I don't really like that much is the Constructor. But without the enums the Constructor would have to use ugly Ints.
> An Option would be an additional Constructor that takes a QString as Argument (e.g. I could think of Amarok::FileType = "mp3"), and creates an Object by looking up the FileType in the QStringList.
> 
> 
> Diffs
> -----
> 
>   shared/FileType.h 55c80b9 
>   shared/FileType.cpp PRE-CREATION 
>   src/CMakeLists.txt c55bb83 
>   src/browsers/CollectionTreeItemModelBase.cpp c25549b 
>   src/core-impl/collections/sqlcollection/CMakeLists.txt f530d67 
>   src/core-impl/collections/sqlcollection/SqlMeta.h 9434b03 
>   src/core-impl/collections/sqlcollection/SqlMeta.cpp 97969be 
>   src/core-impl/collections/support/MemoryFilter.cpp ecb92ff 
>   src/widgets/MetaQueryWidget.cpp 5316ec6 
>   tests/core-impl/collections/sqlcollection/CMakeLists.txt 93d24e3 
>   tests/synchronization/CMakeLists.txt e5df2df 
>   utilities/collectionscanner/CollectionScanner.cpp 033ea84 
> 
> Diff: http://git.reviewboard.kde.org/r/100088/diff
> 
> 
> Testing
> -------
> 
> Tested in the App, found no wrong Behaviour
> 
> 
> Thanks,
> 
> Stefan
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/amarok-devel/attachments/20101019/d1934274/attachment.htm 


More information about the Amarok-devel mailing list