コード例 #1
0
        public FolderView()
        {
            InitializeComponent();

            this.textBox1.ShortcutsEnabled = true;
            _ListViewItemCache             = new ListViewItem[0];

            // SuggestAppend is nice, but if you hit ctrl + A while its suggesting it just empties the textbox
            this.textBox1.AutoCompleteMode   = AutoCompleteMode.Suggest;
            this.textBox1.AutoCompleteSource = AutoCompleteSource.FileSystemDirectories;

            _iconList16.ImageSize  = new Size(16, 16);
            _iconList16.ColorDepth = ColorDepth.Depth24Bit;

            _iconList16.Images.Add(ApplicationStyles.Resources.Folder16);

            ListView_.RetrieveVirtualItem += new RetrieveVirtualItemEventHandler(listView1_RetrieveVirtualItem);
            ListView_.CacheVirtualItems   += new CacheVirtualItemsEventHandler(listView1_CacheVirtualItems);
            ListView_.ItemActivate        += ListView1_ItemActivate;
            ListView_.KeyUp += OnKeyUp;

            ListView_.SmallImageList  = _iconList16;
            ListView_.GridLines       = false;
            ListView_.VirtualMode     = true;
            ListView_.VirtualListSize = 0;
            ListView_.Sorting         = SortOrder.None;
            ListView_.FullRowSelect   = true;
            ListView_.AllowDrop       = true;

            _FolderWatcher = new FolderWatcher(PathHelper.GetScreenshotFolder());
            _FolderWatcher.WatcherNotifyFilter  = NotifyFilters.FileName | NotifyFilters.DirectoryName;
            _FolderWatcher.FilterFileExtensions = InternalSettings.Readable_Image_Formats.ToArray();
            _FolderWatcher.FileRemoved         += _FolderWatcher_FileRemoved;
            _FolderWatcher.DirectoryRemoved    += _FolderWatcher_DirectoryRemoved;
            _FolderWatcher.FileAdded           += _FolderWatcher_FileAdded;
            _FolderWatcher.DirectoryAdded      += _FolderWatcher_DirectoryAdded;
            _FolderWatcher.DirectoryRenamed    += _FolderWatcher_DirectoryRenamed;
            _FolderWatcher.FileRenamed         += _FolderWatcher_FileRenamed;
            _FolderWatcher.ItemChanged         += _FolderWatcher_ItemChanged;
            _FolderWatcher.SortOrderChanged    += _FolderWatcher_SortOrderChanged;

            ListView_.UpdateTheme();
            ListView_.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
            ListView_.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);

            _ListviewRefreshTimer.Tick += _ListviewRefreshTimer_Tick;
            _ListviewRefreshTimer.SetInterval(500);

            UpdateTheme();
            ApplicationStyles.UpdateThemeEvent += UpdateTheme;
        }
コード例 #2
0
        public ApplicationForm()
        {
            InitializeComponent();
            SuspendLayout();

            for (int i = 0; i < 7; i++)
            {
                FileSizeUnit  fsu = (FileSizeUnit)i;
                ToolStripItem tsi = new ToolStripMenuItem();
                tsi.Text   = EnumToString.FileSizeUnitToString(fsu);
                tsi.Tag    = fsu;
                tsi.Click += CopySelectedFileSize_Click;
                copySizeToolStripMenuItem.DropDownItems.Add(tsi);
            }

            folderView1.ListView_.View = View.Details;
            folderView1.ListView_.Columns.Add(new ColumnHeader()
            {
                Name = "Filename", Text = "Filename", Width = 500
            });
            folderView1.ListView_.Columns.Add(new ColumnHeader()
            {
                Name = "Size", Text = "Size", Width = 30
            });
            folderView1.SetCurrentDirectory(PathHelper.GetScreenshotFolder());

            _preventOverflow = true;

            tsMain.ClickThrough = true;

            tsmiCaptureCursor.Checked     = SettingsManager.RegionCaptureSettings.Capture_Cursor;
            tsmiCaptureCursorTray.Checked = SettingsManager.RegionCaptureSettings.Capture_Cursor;

            cbInterpolationMode.Items.Add(InterpolationMode.NearestNeighbor);
            cbInterpolationMode.Items.Add(InterpolationMode.HighQualityBicubic);
            cbInterpolationMode.Items.Add(InterpolationMode.HighQualityBilinear);
            cbInterpolationMode.SelectedItem = SettingsManager.MiscSettings.Default_Interpolation_Mode;

            cbDrawMode.Items.Add(WinkingCat.HelperLibs.Controls.ImageDrawMode.ActualSize);
            cbDrawMode.Items.Add(WinkingCat.HelperLibs.Controls.ImageDrawMode.FitImage);
            cbDrawMode.Items.Add(WinkingCat.HelperLibs.Controls.ImageDrawMode.DownscaleImage);
            cbDrawMode.Items.Add(WinkingCat.HelperLibs.Controls.ImageDrawMode.Resizeable);
            cbDrawMode.SelectedItem = SettingsManager.MiscSettings.Default_Draw_Mode;

            _trayClickTimer.SetInterval(SettingsManager.MainFormSettings.Tray_Double_Click_Time);
            _loadImageTimer.SetInterval(SettingsManager.MainFormSettings.Load_Image_Delay);
            _imageLoadFailedTimer.SetInterval(SettingsManager.MainFormSettings.Image_Failed_To_Load_Message_Time);

#if !DEBUG
            MaximizeBox        = SettingsManager.MainFormSettings.Show_Maximize_Box;
            TopMost            = SettingsManager.MainFormSettings.Always_On_Top;
            niTrayIcon.Visible = SettingsManager.MainFormSettings.Show_In_Tray;
#endif
            tsmiAlwaysOnTop.Checked = TopMost;
            imageDisplay1.ClearImagePathOnReplace = true;
            imageDisplay1.DisposeImageOnReplace   = true;
            imageDisplay1.ResetOffsetButton       = MouseButtons.None;
            imageDisplay1.TextArgs.AutoBounds     = true;


            RegisterEvents();

            _preventOverflow = false;
            ResumeLayout();
            // this.pbPreviewBox.previewOnClick = true;
        }