public DirComboBox (MWFVFS vfs) { this.vfs = vfs; SuspendLayout (); DrawMode = DrawMode.OwnerDrawFixed; imageList.ColorDepth = ColorDepth.Depth32Bit; imageList.ImageSize = new Size (16, 16); imageList.Images.Add (ThemeEngine.Current.Images (UIIcon.PlacesRecentDocuments, 16)); imageList.Images.Add (ThemeEngine.Current.Images (UIIcon.PlacesDesktop, 16)); imageList.Images.Add (ThemeEngine.Current.Images (UIIcon.PlacesPersonal, 16)); imageList.Images.Add (ThemeEngine.Current.Images (UIIcon.PlacesMyComputer, 16)); imageList.Images.Add (ThemeEngine.Current.Images (UIIcon.PlacesMyNetwork, 16)); imageList.Images.Add (ThemeEngine.Current.Images (UIIcon.NormalFolder, 16)); imageList.TransparentColor = Color.Transparent; recentlyUsedDirComboboxItem = new DirComboBoxItem (imageList, 0, "Recently used", MWFVFS.RecentlyUsedPrefix, 0); desktopDirComboboxItem = new DirComboBoxItem (imageList, 1, "Desktop", MWFVFS.DesktopPrefix, 0); personalDirComboboxItem = new DirComboBoxItem (imageList, 2, "Personal folder", MWFVFS.PersonalPrefix, indent); myComputerDirComboboxItem = new DirComboBoxItem (imageList, 3, "My Computer", MWFVFS.MyComputerPrefix, indent); networkDirComboboxItem = new DirComboBoxItem (imageList, 4, "My Network", MWFVFS.MyNetworkPrefix, indent); ArrayList al = this.vfs.GetMyComputerContent (); foreach (FSEntry fsEntry in al) { myComputerItems.Add (new DirComboBoxItem (MimeIconEngine.LargeIcons, fsEntry.IconIndex, fsEntry.Name, fsEntry.FullName, indent * 2)); } al.Clear (); al = null; mainParentDirComboBoxItem = myComputerDirComboboxItem; ResumeLayout (false); }
public MWFFileView (MWFVFS vfs) { this.vfs = vfs; this.vfs.RegisterUpdateDelegate (new MWFVFS.UpdateDelegate (RealFileViewUpdate), this); SuspendLayout (); contextMenu = new ContextMenu (); toolTip = new ToolTip (); toolTip.InitialDelay = 300; toolTip.ReshowDelay = 0; // contextMenu // View menu item menuItemView = new MenuItem ("View"); smallIconMenutItem = new MenuItem ("Small Icon", new EventHandler (OnClickViewMenuSubItem)); smallIconMenutItem.RadioCheck = true; menuItemView.MenuItems.Add (smallIconMenutItem); tilesMenutItem = new MenuItem ("Tiles", new EventHandler (OnClickViewMenuSubItem)); tilesMenutItem.RadioCheck = true; menuItemView.MenuItems.Add (tilesMenutItem); largeIconMenutItem = new MenuItem ("Large Icon", new EventHandler (OnClickViewMenuSubItem)); largeIconMenutItem.RadioCheck = true; menuItemView.MenuItems.Add (largeIconMenutItem); listMenutItem = new MenuItem ("List", new EventHandler (OnClickViewMenuSubItem)); listMenutItem.RadioCheck = true; listMenutItem.Checked = true; menuItemView.MenuItems.Add (listMenutItem); previousCheckedMenuItemIndex = listMenutItem.Index; detailsMenutItem = new MenuItem ("Details", new EventHandler (OnClickViewMenuSubItem)); detailsMenutItem.RadioCheck = true; menuItemView.MenuItems.Add (detailsMenutItem); contextMenu.MenuItems.Add (menuItemView); contextMenu.MenuItems.Add (new MenuItem ("-")); // New menu item menuItemNew = new MenuItem ("New"); newFolderMenuItem = new MenuItem ("New Folder", new EventHandler (OnClickNewFolderMenuItem)); menuItemNew.MenuItems.Add (newFolderMenuItem); contextMenu.MenuItems.Add (menuItemNew); contextMenu.MenuItems.Add (new MenuItem ("-")); // Show hidden files menu item showHiddenFilesMenuItem = new MenuItem ("Show hidden files", new EventHandler (OnClickContextMenu)); showHiddenFilesMenuItem.Checked = showHiddenFiles; contextMenu.MenuItems.Add (showHiddenFilesMenuItem); LabelWrap = true; SmallImageList = MimeIconEngine.SmallIcons; LargeImageList = MimeIconEngine.LargeIcons; View = old_view = View.List; LabelEdit = true; ContextMenu = contextMenu; // Create columns, but only add them when view changes to Details columns = new ColumnHeader [4]; columns [0] = CreateColumnHeader (" Name", 170, HorizontalAlignment.Left); columns [1] = CreateColumnHeader ("Size ", 80, HorizontalAlignment.Right); columns [2] = CreateColumnHeader (" Type", 100, HorizontalAlignment.Left); columns [3] = CreateColumnHeader (" Last Access", 150, HorizontalAlignment.Left); AllowColumnReorder = true; ResumeLayout (false); KeyDown += new KeyEventHandler (MWF_KeyDown); }
internal FileDialog () { form = new DialogForm (this); vfs = new MWFVFS (); Size formConfigSize = Size.Empty; Point formConfigLocation = Point.Empty; object formWidth = MWFConfig.GetValue (filedialog_string, width_string); object formHeight = MWFConfig.GetValue (filedialog_string, height_string); if (formHeight != null && formWidth != null) formConfigSize = new Size ((int)formWidth, (int)formHeight); object formLocationX = MWFConfig.GetValue (filedialog_string, x_string); object formLocationY = MWFConfig.GetValue (filedialog_string, y_string); if (formLocationX != null && formLocationY != null) formConfigLocation = new Point ((int)formLocationX, (int)formLocationY); configFileNames = (string[])MWFConfig.GetValue (filedialog_string, filenames_string); fileTypeComboBox = new ComboBox (); backToolBarButton = new ToolBarButton (); newdirToolBarButton = new ToolBarButton (); searchSaveLabel = new Label (); mwfFileView = new MWFFileView (vfs); fileNameLabel = new Label (); fileNameComboBox = new ComboBox (); dirComboBox = new DirComboBox (vfs); smallButtonToolBar = new ToolBar (); menueToolBarButton = new ToolBarButton (); fileTypeLabel = new Label (); openSaveButton = new Button (); helpButton = new Button (); popupButtonPanel = new PopupButtonPanel (); upToolBarButton = new ToolBarButton (); cancelButton = new Button (); form.CancelButton = cancelButton; imageListTopToolbar = new ImageList (); menueToolBarButtonContextMenu = new ContextMenu (); readonlyCheckBox = new CheckBox (); form.SuspendLayout (); //imageListTopToolbar imageListTopToolbar.ColorDepth = ColorDepth.Depth32Bit; imageListTopToolbar.ImageSize = new Size (16, 16); // 16, 16 imageListTopToolbar.Images.Add (ResourceImageLoader.Get ("go-previous.png")); imageListTopToolbar.Images.Add (ResourceImageLoader.Get ("go-top.png")); imageListTopToolbar.Images.Add (ResourceImageLoader.Get ("folder-new.png")); imageListTopToolbar.Images.Add (ResourceImageLoader.Get ("preferences-system-windows.png")); imageListTopToolbar.TransparentColor = Color.Transparent; // searchLabel searchSaveLabel.FlatStyle = FlatStyle.System; searchSaveLabel.Location = new Point (6, 6); searchSaveLabel.Size = new Size (86, 22); searchSaveLabel.TextAlign = ContentAlignment.MiddleRight; // dirComboBox dirComboBox.Anchor = ((AnchorStyles)(((AnchorStyles.Top | AnchorStyles.Left) | AnchorStyles.Right))); dirComboBox.DropDownStyle = ComboBoxStyle.DropDownList; dirComboBox.Location = new Point (99, 6); dirComboBox.Size = new Size (261, 22); dirComboBox.TabIndex = 7; // smallButtonToolBar smallButtonToolBar.Anchor = ((AnchorStyles)((AnchorStyles.Top | AnchorStyles.Right))); smallButtonToolBar.Appearance = ToolBarAppearance.Flat; smallButtonToolBar.AutoSize = false; smallButtonToolBar.Buttons.AddRange (new ToolBarButton [] { backToolBarButton, upToolBarButton, newdirToolBarButton, menueToolBarButton}); smallButtonToolBar.ButtonSize = new Size (24, 24); // 21, 16 smallButtonToolBar.Divider = false; smallButtonToolBar.Dock = DockStyle.None; smallButtonToolBar.DropDownArrows = true; smallButtonToolBar.ImageList = imageListTopToolbar; smallButtonToolBar.Location = new Point (372, 6); smallButtonToolBar.ShowToolTips = true; smallButtonToolBar.Size = new Size (140, 28); smallButtonToolBar.TabIndex = 8; smallButtonToolBar.TextAlign = ToolBarTextAlign.Right; // buttonPanel popupButtonPanel.Dock = DockStyle.None; popupButtonPanel.Anchor = ((AnchorStyles)((((AnchorStyles.Top | AnchorStyles.Bottom) | AnchorStyles.Left)))); popupButtonPanel.Location = new Point (6, 35); popupButtonPanel.Size = new Size (87, 338); popupButtonPanel.TabIndex = 9; // mwfFileView mwfFileView.Anchor = ((AnchorStyles)((((AnchorStyles.Top | AnchorStyles.Bottom) | AnchorStyles.Left) | AnchorStyles.Right))); mwfFileView.Location = new Point (99, 35); mwfFileView.Size = new Size (450, 283); mwfFileView.MultiSelect = false; mwfFileView.TabIndex = 10; mwfFileView.RegisterSender (dirComboBox); mwfFileView.RegisterSender (popupButtonPanel); // fileNameLabel fileNameLabel.Anchor = ((AnchorStyles)((AnchorStyles.Bottom | AnchorStyles.Left))); fileNameLabel.FlatStyle = FlatStyle.System; fileNameLabel.Location = new Point (101, 326); fileNameLabel.Size = new Size (70, 21); fileNameLabel.Text = "File name:"; fileNameLabel.TextAlign = ContentAlignment.MiddleLeft; // fileNameComboBox fileNameComboBox.Anchor = ((AnchorStyles)(((AnchorStyles.Bottom | AnchorStyles.Left) | AnchorStyles.Right))); fileNameComboBox.Location = new Point (195, 326); fileNameComboBox.Size = new Size (246, 22); fileNameComboBox.TabIndex = 1; fileNameComboBox.MaxDropDownItems = MaxFileNameItems; fileNameComboBox.RestoreContextMenu (); UpdateRecentFiles (); // fileTypeLabel fileTypeLabel.Anchor = ((AnchorStyles)((AnchorStyles.Bottom | AnchorStyles.Left))); fileTypeLabel.FlatStyle = FlatStyle.System; fileTypeLabel.Location = new Point (101, 355); fileTypeLabel.Size = new Size (90, 21); fileTypeLabel.Text = "Files of type:"; fileTypeLabel.TextAlign = ContentAlignment.MiddleLeft; // fileTypeComboBox fileTypeComboBox.Anchor = ((AnchorStyles)(((AnchorStyles.Bottom | AnchorStyles.Left) | AnchorStyles.Right))); fileTypeComboBox.DropDownStyle = ComboBoxStyle.DropDownList; fileTypeComboBox.Location = new Point (195, 355); fileTypeComboBox.Size = new Size (246, 22); fileTypeComboBox.TabIndex = 2; // backToolBarButton backToolBarButton.ImageIndex = 0; backToolBarButton.Enabled = false; backToolBarButton.Style = ToolBarButtonStyle.PushButton; mwfFileView.AddControlToEnableDisableByDirStack (backToolBarButton); // upToolBarButton upToolBarButton.ImageIndex = 1; upToolBarButton.Style = ToolBarButtonStyle.PushButton; mwfFileView.SetFolderUpToolBarButton (upToolBarButton); // newdirToolBarButton newdirToolBarButton.ImageIndex = 2; newdirToolBarButton.Style = ToolBarButtonStyle.PushButton; // menueToolBarButton menueToolBarButton.ImageIndex = 3; menueToolBarButton.DropDownMenu = menueToolBarButtonContextMenu; menueToolBarButton.Style = ToolBarButtonStyle.DropDownButton; // menueToolBarButtonContextMenu menueToolBarButtonContextMenu.MenuItems.AddRange (mwfFileView.ViewMenuItems); // openSaveButton openSaveButton.Anchor = ((AnchorStyles)((AnchorStyles.Bottom | AnchorStyles.Right))); openSaveButton.FlatStyle = FlatStyle.System; openSaveButton.Location = new Point (474, 326); openSaveButton.Size = new Size (75, 23); openSaveButton.TabIndex = 4; openSaveButton.FlatStyle = FlatStyle.System; // cancelButton cancelButton.Anchor = ((AnchorStyles)((AnchorStyles.Bottom | AnchorStyles.Right))); cancelButton.FlatStyle = FlatStyle.System; cancelButton.Location = new Point (474, 353); cancelButton.Size = new Size (75, 23); cancelButton.TabIndex = 5; cancelButton.Text = "Cancel"; cancelButton.FlatStyle = FlatStyle.System; // helpButton helpButton.Anchor = ((AnchorStyles)((AnchorStyles.Bottom | AnchorStyles.Right))); helpButton.FlatStyle = FlatStyle.System; helpButton.Location = new Point (474, 353); helpButton.Size = new Size (75, 23); helpButton.TabIndex = 6; helpButton.Text = "Help"; helpButton.FlatStyle = FlatStyle.System; helpButton.Visible = false; // checkBox readonlyCheckBox.Anchor = ((AnchorStyles)(((AnchorStyles.Bottom | AnchorStyles.Left) | AnchorStyles.Right))); readonlyCheckBox.Text = "Open Readonly"; readonlyCheckBox.Location = new Point (195, 350); readonlyCheckBox.Size = new Size (245, 21); readonlyCheckBox.TabIndex = 3; readonlyCheckBox.FlatStyle = FlatStyle.System; readonlyCheckBox.Visible = false; form.SizeGripStyle = SizeGripStyle.Show; form.AcceptButton = openSaveButton; form.MaximizeBox = true; form.MinimizeBox = true; form.FormBorderStyle = FormBorderStyle.Sizable; form.ClientSize = new Size (555, 385); form.MinimumSize = form.Size; form.Controls.Add (smallButtonToolBar); form.Controls.Add (cancelButton); form.Controls.Add (openSaveButton); form.Controls.Add (mwfFileView); form.Controls.Add (fileTypeLabel); form.Controls.Add (fileNameLabel); form.Controls.Add (fileTypeComboBox); form.Controls.Add (fileNameComboBox); form.Controls.Add (dirComboBox); form.Controls.Add (searchSaveLabel); form.Controls.Add (popupButtonPanel); form.Controls.Add (helpButton); form.Controls.Add (readonlyCheckBox); form.ResumeLayout (true); if (formConfigSize != Size.Empty) { form.ClientSize = formConfigSize; } if (formConfigLocation != Point.Empty) { form.Location = formConfigLocation; } openSaveButton.Click += new EventHandler (OnClickOpenSaveButton); cancelButton.Click += new EventHandler (OnClickCancelButton); helpButton.Click += new EventHandler (OnClickHelpButton); smallButtonToolBar.ButtonClick += new ToolBarButtonClickEventHandler (OnClickSmallButtonToolBar); fileTypeComboBox.SelectedIndexChanged += new EventHandler (OnSelectedIndexChangedFileTypeComboBox); mwfFileView.SelectedFileChanged += new EventHandler (OnSelectedFileChangedFileView); mwfFileView.ForceDialogEnd += new EventHandler (OnForceDialogEndFileView); mwfFileView.SelectedFilesChanged += new EventHandler (OnSelectedFilesChangedFileView); mwfFileView.ColumnClick += new ColumnClickEventHandler(OnColumnClickFileView); dirComboBox.DirectoryChanged += new EventHandler (OnDirectoryChangedDirComboBox); popupButtonPanel.DirectoryChanged += new EventHandler (OnDirectoryChangedPopupButtonPanel); readonlyCheckBox.CheckedChanged += new EventHandler (OnCheckCheckChanged); #if NET_2_0 form.FormClosed += new FormClosedEventHandler (OnFileDialogFormClosed); custom_places = new FileDialogCustomPlacesCollection (); #else form.Closed += new EventHandler (OnFileDialogFormClosed); #endif }