コード例 #1
0
ファイル: TagCloudCommand.cs プロジェクト: Arteeck/di
 public TagCloudCommand(
     TagCloudPainter tagCloudPainter,
     WordFrequency wordFrequency,
     IImageSizeProvider imageSizeProvider,
     IFontFamilyProvider fontFamilyProvider,
     Func <Point, ILayoutAlgorithm> algorithmGenerator,
     Func <ILayoutAlgorithm, TagCloudLayouter> layouterGenerator,
     FileReader fileReader)
 {
     this.tagCloudPainter    = tagCloudPainter;
     this.wordFrequency      = wordFrequency;
     this.imageSizeProvider  = imageSizeProvider;
     this.fontFamilyProvider = fontFamilyProvider;
     this.algorithmGenerator = algorithmGenerator;
     this.layouterGenerator  = layouterGenerator;
     this.fileReader         = fileReader;
 }
コード例 #2
0
ファイル: CloudDrawAction.cs プロジェクト: GH2OOST/di
 public CloudDrawAction(IFileReader reader,
                        IWordsPreprocessor[] preprocessors,
                        FrequencyCounter frequencyCounter,
                        WordsPreprocessorSettings preprocessorSettings,
                        IFilePathProvider filePath,
                        TagCloudPainter painter,
                        LayouterApplicator applicator,
                        PictureBoxImageHolder imageHolder)
 {
     this.reader               = reader;
     this.preprocessors        = preprocessors;
     this.frequencyCounter     = frequencyCounter;
     this.preprocessorSettings = preprocessorSettings;
     this.filePath             = filePath;
     this.painter              = painter;
     this.applicator           = applicator;
     this.imageHolder          = imageHolder;
 }
コード例 #3
0
ファイル: TagsCloudTests.cs プロジェクト: Arteeck/di
        public void SetUp()
        {
            var imageSavers = new List <IImageSaver> {
                new PngSaver(), new JpgSaver()
            };
            var fileReaders = new List <IFileAllLinesReader> {
                new TxtReader(), new DocReader()
            };
            var fileReader         = new FileReader(new FileReaderProvider(fileReaders));
            var imageHolder        = new ImageHolder(new ImageSaverProvider(imageSavers));
            var imageSettings      = new ImageSettings();
            var wordFrequency      = new WordFrequency(new GrammemeChecker());
            var painter            = new TagCloudPainter(imageHolder, imageSettings);
            var algorithmGenerator = new Func <Point, ILayoutAlgorithm>(x => new SpiralAlgorithm(x));
            var layoutGenerator    = new Func <ILayoutAlgorithm, TagCloudLayouter>(x => new TagCloudLayouter(x));

            tagCloudCommand = new TagCloudCommand(
                painter, wordFrequency, imageSettings, imageSettings, algorithmGenerator, layoutGenerator, fileReader);
            saveCommand         = new SaveCommand(imageHolder);
            addColorCommand     = new AddColorCommand(imageSettings);
            setFontCommand      = new SetFontCommand(imageSettings);
            setImageSizeCommand = new SetImageSizeCommand(imageSettings);
        }