package Ġcom . jetbrains . edu . cpp . co def or ces Ċ Ċ import Ġcom . jetbrains . edu . Ed uc ational Core Icons Ċ import Ġcom . jetbrains . edu . cpp . Cpp Configurator Ċ import Ġcom . jetbrains . edu . cpp . Cpp Project Settings Ċ import Ġcom . jetbrains . edu . cpp . add CMake List Ċ import Ġcom . jetbrains . edu . learning . E du Names Ċ import Ġcom . jetbrains . edu . learning . co def or ces . Code forces Language Provider Ċ import Ġcom . jetbrains . edu . learning . configuration . E du Configurator Ċ import Ġcom . jetbrains . edu . learning . course Format . Task File Ċ import Ġcom . jetbrains . edu . learning . course Format . tasks . Task Ċ import Ġcom . jetbrains . edu . learning . course Generation . Generator Utils Ċ import Ġjavax . swing . Icon Ċ Ċ class ĠCpp Code forces Language Provider Ġ: ĠCode forces Language Provider Ġ{ ĊĠ Ġoverride Ġval Ġcode forces Language Nam ings : ĠList < String > Ġ= ĊĠĠĠ ĠlistOf (" GNU ĠC 1 1 ", Ġ" GNU ĠC ++ 1 1 ", Ġ" GNU ĠC ++ 1 4 ", Ġ" MS ĠC ++ ", Ġ" C lang ++ 1 7 ĠDi agnostics ", Ġ" GNU ĠC ++ 1 7 ", Ġ" MS ĠC ++ Ġ 2 0 1 7 ") ĊĠ Ġoverride Ġval Ġconfigur ator : ĠE du Configurator < Cpp Project Settings > Ġ= ĠCpp Configurator () ĊĠ Ġoverride Ġval Ġlanguage Id : ĠString Ġ= ĠE du Names . CPP ĊĠ Ġoverride Ġval Ġprefer able Code forces Language : ĠString Ġ= Ġ" GNU ĠC ++ 1 7 " ĊĠ Ġoverride Ġval Ġtemplate FileName : ĠString Ġ= Ġ" co def or ces . CPP Ġmain . cpp " ĊĠ Ġoverride Ġval Ġdisplay Template Name : ĠString Ġ= Ġ" main . cpp " ĊĠ Ġoverride Ġval Ġlanguage Icon : ĠIcon Ġ= ĠEduc ational Core Icons . Cpp Logo ĊĊĠ Ġoverride Ġfun Ġget Language Version ( co def or ces Language : ĠString ): ĠString ? Ġ= ĊĠĠĠ Ġwhen Ġ( co def or ces Language ) Ġ{ ĊĠĠĠĠĠ Ġin ĠlistOf (" GNU ĠC 1 1 ", Ġ" GNU ĠC ++ 1 1 ") Ġ-> Ġ" 1 1 " ĊĠĠĠĠĠ Ġin ĠlistOf (" GNU ĠC ++ 1 4 ", Ġ" MS ĠC ++ ") Ġ-> Ġ" 1 4 " ĊĠĠĠĠĠ Ġin ĠlistOf (" C lang ++ 1 7 ĠDi agnostics ", Ġ" GNU ĠC ++ 1 7 ", Ġ" MS ĠC ++ Ġ 2 0 1 7 ") Ġ-> Ġ" 1 7 " ĊĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġcreate Task Files ( task : ĠTask ): ĠList < Task File > Ġ{ ĊĠĠĠ Ġval ĠmoduleName Ġ= ĠGenerator Utils . getDefault Name ( task ) ĊĠĠĠ Ġtask . custom Present able Name Ġ= Ġtask . name ĊĠĠĠ Ġtask . name Ġ= ĠmoduleName ĊĠĠĠ Ġtask . add CMake List ( moduleName ) ĊĠĠĠ Ġreturn Ġsuper . create Task Files ( task ) ĊĠ Ġ} Ċ }