Develop category dailog

review the code and merge it with develop branch